Mengapa output "ps" tidak menyelesaikan proses saya?

8

Konteks : di Linux ubuntu 2.6.24-22-xen # 1 SMP x86_64 GNU / Linux

Saya memulai daemon melalui skrip init.d tetapi dalam output "ps", ia menampilkan pengguna daemon dalam bentuk angka. misalnya

1000  17560  1  1 11:04 ?  00:00:09 /usr/lib/jvm/java-6-sun/bin/java -server 
        -jar /home/superduperadmin/server/daemon.jar

1000 dipetakan ke superduperadmin di / etc / passwd.

Kenapa ini ? Apakah itu karena superduperadmin terlalu panjang?


sumber
ok, di samping itu, apa yang sedang Anda hadapi?
Ini belum menjadi masalah. Saya hanya ingin tahu mengapa beberapa userids proses diselesaikan ke rekan-rekan tekstual mereka sementara daemon saya tidak.

Jawaban:

17

Ya, itu karena terlalu lama ...

dari halaman manual ps (1) ...

euser EUSER nama pengguna yang efektif. Ini akan menjadi ID pengguna tekstual,
              jika dapat diperoleh dan lebar bidang memungkinkan, atau 
              representasi desimal sebaliknya. Opsi n bisa
              digunakan untuk memaksa representasi desimal. 
Stobor
sumber
IIRC batas untuk ps adalah 8 karakter dan tidak dapat diubah, tidak peduli seberapa lebar terminal Anda. \ o /
David Pashley
Saya sendiri bertanya-tanya, apakah mungkin ada hubungannya dengan pengguna LDAP, tetapi tidak. Terima kasih.
TRS-80
3

Nama pengguna terlalu panjang untuk ditampilkan - lebih dari 8 karakter.

Jika Anda ingin psdaftar dengan nama yang lebih panjang, Anda harus mengatur sendiri panjang maksimum yang dibolehkan:

$ ps -e -o "pid,user:16,command"
cweiske
sumber
0
  1. ganti nama pengguna 'superduperadmin' menjadi 'sda'.

    mengganti nama direktori home agar sesuai adalah opsional, tetapi Anda harus mengedit skrip, file konfigurasi, dll. yang merujuk nama pengguna itu (atau direktori jika Anda DO mengganti nama direktori home).

  2. beri diri Anda pukulan keras di bagian belakang kepala untuk membuat akun pengguna yang membutuhkan Pengetikan Terlalu Banyak untuk mengingatkan diri Anda untuk tidak melakukannya lagi :)

cas
sumber