Il principale con cui ho riscontrato problemi di recente è stato ps su Solaris (10), elimina i caratteri 9th +, quindi ad esempio se avessi bisogno di grep per il nome utente non corrisponderebbe.
$ sudo -u longusername ps -fu longusername
UID PID PPID C STIME TTY TIME CMD
longuser 14012 11985 0 09:58:39 pts/2 0:00 ps -fu longusername
Se si esegue ls -l in una directory con file appartenenti a quell'utente, le colonne vengono rimosse dall'allineamento.
$ ls -ld /export/home/l*
drwxr-xr-x 2 lauser users 6 Mar 23 10:21 /export/home/lzuser
drwxr-xr-x 2 longusername users 6 May 4 10:02 /export/home/longusername
drwxr-xr-x 2 lzuser users 6 Mar 12 11:21 /export/home/lzuser
Fondamentalmente dovresti stare attento a qualsiasi strumento che si occupasse dei nomi di accesso e non solo degli UID. Ciò potrebbe includere elementi che hanno letto o scritto su file di log o database o che hanno utilizzato l'output di strumenti come last, who, finger, ls, ps ecc.
Un rapido Google ha aperto questa pagina:
http://fixunix.com/sun/113647-username-lenght-more-then-8-characters.html
Il che aggiunge alcuni altri motivi.
Per quanto riguarda le migliori pratiche per la creazione di nomi utente, possono esserci anche complicazioni nell'uso degli accessi in maiuscolo anziché in minuscolo, quindi anche questo dovrebbe essere evitato.
Quando alcuni sistemi (più vecchi), quando vedono un login solo in maiuscolo, sono utili per impostazione predefinita nel presupporre che il terminale dell'utente non supporti le lettere minuscole, quindi imposta TUTTO in maiuscolo (che può impedire l'inserimento della password e la possibilità di digitare Comandi Unix dopo il login!)
Modifica (16/04/2019):
Ho appena notato su RHEL 7.5 che l'output di ps non funziona bene neanche:
$ ps -fulongusername
UID PID PPID C STIME TTY TIME CMD
longuse+ 1230 27243 0 Apr13 pts/0 00:00:00 vim somescript.sh
longuse+ 1701 27243 0 Apr05 pts/0 00:00:00 vim another-script.sh
longuse+ 3116 27243 0 Apr12 pts/0 00:00:01 vim test_script.sh
Tronca il nome utente con un '+', che non è utile se non hai familiarità con l'utente che sarà e significa che non puoi fare affidamento sull'output di ps, ad esempio come input per uno script che deve sapere chi possiede un processo.