Назад | Перейти на главную страницу

Почему вывод «ps» не разрешает uid моего процесса?

Контекст: в Ubuntu Linux 2.6.24-22-xen # 1 SMP x86_64 GNU / Linux

Я запускаю демон через сценарий init.d, но в выводе "ps" он отображает пользователя демона в числовой форме. например

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 отображается на superduperadmin в / etc / passwd.

Почему это ? Это потому что супердуперадмин слишком долго?

Да, потому что это слишком долго ...

из ps (1) справочная страница...

euser  EUSER  effective user name. This will be the textual user ID, 
              if it can be obtained and the field width permits, or 
              a decimal representation otherwise. The n option can be 
              used to force the decimal representation. 

Имя пользователя слишком длинное для отображения - более 8 символов.

Если вы хотите ps листинг с более длинными именами, вы должны сами установить допустимую максимальную длину:

$ ps -e -o "pid,user:16,command"
  1. переименуйте пользователя superduperadmin в sda.

    переименование домашнего каталога в соответствие необязательно, но вам нужно отредактировать любые сценарии, файлы конфигурации и т. д., которые ссылаются на это имя пользователя (или каталог, если вы ДЕЙСТВИТЕЛЬНО переименуете домашний каталог).

  2. дать себе удар по затылку за создание учетной записи пользователя, которая требует слишком много ввода, чтобы напомнить себе не делать этого снова :)