Bir Açık Modern (tam dışarı Unicode desteği ile) sisteme, bu olmamalı üzerinde durularak "olmamalı" - bir sorun. Bu cevapta belirtildiği gibi,
Varsayılan değer NAME_REGEX="^[a-z][-a-z0-9]*\$"
Bu, mevcut sistemler için aşırı katı olsa da, "endişe edilecek daha az şey" olduğu gibi daha kolay yönetim sağlar. Kullanıcı adının birçok yerde kullanıldığını unutmayın - örneğin ana dizininiz büyük olasılıkla formda olabilir /home/username
; çoğu aklı başında dosya sistemi tam Unicode desteğine sahiptir, ancak bilgisayarla ilgili herhangi bir şeyde olduğu gibi, her koşulda akıl sağlığı garanti edilmez.
Bir UID ile eşleştirilen sistem tarafından kullanılan gerçek giriş adının (bu kuralların altına girer) olduğunu /etc/passwd
ve bir dize olan "Tam Ad" olduğunu unutmayın (ve en geçerli karakterler, "ASCII dışı" uyarısı).
Ne yapmalıyım: Uygulanabilir olduğunda, adı kullanıcı adı için aksan içermeyen (veya Latin olmayan komut dosyalarında romanize edilmiş) ve Tam Ad için gerçek form kullanıyorum. Daha sonra / etc / passwd içindeki giriş şuna benzer:
martrang:x:1001:1001:Märt Rang,,,:/home/martrang:/bin/bash