Основной проблемой, с которой я недавно столкнулся, был ps в Solaris (10), он отключает 9-й символ +, так что, например, если вам нужно grep для имени пользователя, оно не будет совпадать.
$ 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
Если вы выполните ls -l для каталога с файлами, принадлежащими этому пользователю, столбцы будут выровнены.
$ 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
По сути, вам нужно с осторожностью относиться к любому инструменту, который имеет дело с именами для входа, а не только с UID. Сюда могут входить вещи, которые читаются или записываются в файлы журналов или базы данных, или используются выходные данные инструментов, таких как last, who, finger, ls, ps и т. Д.
Быстрый Google обнаружил эту страницу:
http://fixunix.com/sun/113647-username-lenght-more-then-8-characters.html
Что добавляет еще несколько причин.
Что касается передовых методов создания имени пользователя, могут возникнуть сложности при использовании имен входа в столицах, а не в нижнем регистре, поэтому этого также следует избегать.
Когда некоторые (более старые) системы, когда видят логин только в заглавных буквах, они услужливо по умолчанию предполагают, что терминал пользователя не поддерживает строчные буквы, поэтому установите ВСЕ в заглавные буквы (что может помешать вводу пароля и возможности ввода Команды Unix после входа в систему!)
Изменить (16/04/2019):
Я только что заметил на RHEL 7.5, что вывод ps тоже не очень приятный:
$ 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
Он усекает имя пользователя с помощью «+», что бесполезно, если вы не знаете, каким пользователем он будет, и означает, что вы не можете полагаться на вывод ps, например, как на вход в скрипт, который должен знать, кто владеет процессом.