※ 引述《stephen7710 (YA)》之銘言:
: 我記得我是用my $user_name = getpwuid($uid);
: print 出來的 $uid 是0或1或2之類的
: 然後去/etc/passwd 看確實對應的就是root那些的
: 不過並不是我ls看到的owner
UNIX 允許不同的 user 對應到同一個 uid
例如
usera:x:1000:...
userb:x:1000:...
userc:x:1000:...
ls 時 owner 會顯示某一個 (例如 userc)
: /etc/passwd 下也沒有一般的使用者列表
有可能其它使用者放在 NIS 或 ldap 裡
看一下 /etc/nsswitch.conf 裡 passwd 的設定
可以用 getent passwd 看一下完整的列表
我猜那個檔案的 owner uid
在 /etc/passwd 和 NIS 或 ldap 裡都有
然後 ls 顯示是抓 NIS 或 ldap 裡那個
所以你在 /etc/passwd 裡找不到