Das wichtigste Problem, mit dem ich in letzter Zeit Probleme hatte, war ps unter Solaris (10). Dadurch werden die Zeichen ab dem 9. Platz abgeschaltet. Wenn Sie also beispielsweise nach dem Benutzernamen suchen müssen, stimmt dieser nicht überein.
$ 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
Wenn Sie in einem Verzeichnis mit Dateien, die zu diesem Benutzer gehören, ein ls -l ausführen, werden die Spalten nicht mehr richtig ausgerichtet.
$ 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
Grundsätzlich müssten Sie sich vor jedem Tool hüten, das sich mit Anmeldenamen und nicht nur mit UIDs befasst. Dies können Dinge sein, die aus Protokolldateien oder Datenbanken gelesen oder in diese geschrieben werden oder die die Ausgabe von Tools wie last, who, finger, ls, ps usw. verwenden.
Ein kurzer Blick auf Google zeigte diese Seite:
http://fixunix.com/sun/113647-username-lenght-more-then-8-characters.html
Das fügt noch einige Gründe hinzu.
In Bezug auf Best Practices für die Erstellung von Benutzernamen kann es auch zu Komplikationen kommen, wenn Sie sich nicht in Kleinbuchstaben, sondern in Großbuchstaben anmelden. Daher sollte dies ebenfalls vermieden werden.
Wenn auf einigen (älteren) Systemen die Anmeldung nur in Großbuchstaben erfolgt, wird standardmäßig davon ausgegangen, dass das Terminal des Benutzers Kleinbuchstaben nicht unterstützt. Setzen Sie daher ALLES auf Großbuchstaben (wodurch die Eingabe des Kennworts und die Eingabe verhindert werden kann) Unix-Befehle nach dem Einloggen!)
Bearbeiten (16/04/2019):
Mir ist gerade auf RHEL 7.5 aufgefallen, dass die Ausgabe von ps auch nicht gut funktioniert:
$ 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
Es schneidet den Benutzernamen mit einem '+' ab, was nicht hilfreich ist, wenn Sie nicht wissen, um welchen Benutzer es sich handelt, und bedeutet, dass Sie sich nicht auf die Ausgabe von ps verlassen können, z. B. als Eingabe für ein Skript, das wissen muss, wer es ist besitzt einen Prozess.