酷!學園

技術討論區 => Linux 討論版 => 主題作者是: endure 於 2008-04-29 13:57

主題: ps -aux 顯示的問題
作者: endure2008-04-29 13:57
Dear all
OS: Linux 7.3 Red Hat
    請教一下,當我下ps -aux時,我發現當帳號大於8碼(不含),產生的USER那欄會變成數字,而不是他的帳號.
    1.adduser  -u a123456789 ( 共十碼)
    2.a123456789 login linux

    3.我用ps -aux 看,User 並不是以他的帳號出現,如下
USER       PID %CPU %MEM   VSZ  RSS TTY      STAT START   TIME COMMAND
1479     11996  0.0  0.0  2724  608 pts/13   Ss   13:04   0:00 -ksh
1479     12018  0.0  0.0  2724  548 pts/13   S+   13:04   0:00 /bin/ksh /u1/tiptop/ds4gl2/bin/udm2

    4.但假設我單純下ps -ao '%u',又能正常出現, 但下 ps -ao '%u%a' ,則不能
a123456789
a123456789
-------------- ps -ao '%u%a'
1479     /bin/ksh /u1/tiptop/ds4gl2/bin/udm2
1479     fglrun /u1/tiptop/azz/4gi41/udm4

看樣子好像是長度問題,ps 好像會自動轉成數字...
請問有什麼方式可以解決的嗎 ? 我 man ps , 沒找到可以指定某一欄的顯示長度.
能幫忙解決我的疑惑嗎 ? 謝謝.       
主題: 回覆: ps -aux 顯示的問題
作者: harrier2008-04-30 10:23
Dear all
OS: Linux 7.3 Red Hat
    請教一下,當我下ps -aux時,我發現當帳號大於8碼(不含),產生的USER那欄會變成數字,而不是他的帳號.
    1.adduser  -u a123456789 ( 共十碼)
    2.a123456789 login linux

Linux 可接受帳號大於 8 碼,但許多工具程式可能會遇到一些狀況,記得某個地方的文件中有提到。

超過 8 碼的帳號,ps 會顯示 UID 而非 account name,因不是個大問題(UN*X 其實是靠 UID 識別而非 account name),所以迄今都還沒修正..起碼 CentOS 5.1 還沒修正。

註:ps aux 即可,ps -aux 是錯誤語法(輸出第一列就會有錯誤訊息),但 Linux 裡面的 ps 自動幫你當成 ps aux 用。
主題: 回覆: ps -aux 顯示的問題
作者: endure2008-04-30 12:41
嗯嗯..了解...謝謝你的解說...
那我知道要怎麼做了..謝謝..

Dear all
OS: Linux 7.3 Red Hat
    請教一下,當我下ps -aux時,我發現當帳號大於8碼(不含),產生的USER那欄會變成數字,而不是他的帳號.
    1.adduser  -u a123456789 ( 共十碼)
    2.a123456789 login linux

Linux 可接受帳號大於 8 碼,但許多工具程式可能會遇到一些狀況,記得某個地方的文件中有提到。

超過 8 碼的帳號,ps 會顯示 UID 而非 account name,因不是個大問題(UN*X 其實是靠 UID 識別而非 account name),所以迄今都還沒修正..起碼 CentOS 5.1 還沒修正。

註:ps aux 即可,ps -aux 是錯誤語法(輸出第一列就會有錯誤訊息),但 Linux 裡面的 ps 自動幫你當成 ps aux 用。