Centos 6.6でコマンドを実行すると、ps
最初の列はユーザー名ではなくユーザーIDです。
root@cluster:mahmood# ps aux | grep Xvnc
506 11881 0.6 0.1 168580 63164 ? S Jun03 24:56 /usr/bin/Xvnc :6 -desktop cluster.hpc.org:6 (haghsheno) -auth /home/mahmood/.Xauthority -geometry 1000x900 -rfbwait 30000 -rfbauth /home/mahmood/.vnc/passwd -rfbport 5906 -fp catalogue:/etc/X11/fontpath.d -pn
なぜこれが起こるのですか?自分のユーザー名にどのように変更できますか?
ベストアンサー1
残念ながら、psはデフォルトでユーザー名が8文字より長い場合は表示しません。システムがLDAPでsssdを実行している場合getentパスワードユーザーID"ユーザーがLDAPデータベースまたはパスワードファイルに存在することを確認します。私のユーザー名"tvb"がほとんど常に表示されます。しかし、ユーザー名"城「ほとんどの場合そうではありません。次のような他のコマンド」勝つ「最初の8文字が表示されます」プロングラス「そして残りは切る。上の@KevinOの例では」ハルダモン「は9文字なので、psにはユーザー名で表示されず、ユーザーIDで表示されます。
% getent passwd haldaemon
haldaemon:x:68:68:HAL daemon:/:/sbin/nologin
また、答えは次のとおりです。blog.dbi-services.comBSD形式ps出力でも、ユーザー名フィールドのフィールド長を指定するのに役立ちます。アドバイスを少し簡単にするには、次のようにします。
env PS_FORMAT='user:12,pid,%cpu,%mem,vsz,rss,tty,stat,start,time,command' ps ax | grep haldaemon
haldaemon 2032 0.0 0.0 53100 2020 ? Ssl Aug 12 00:01:10 hald
必要な出力を提供します。