语境:在 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 是 /etc/passwd 中 superduperadmin 的映射。
这是为什么?是因为超级管理员太长 ?
答案1
是的,因为太长了……
来自ps(1) 手册页...
euser EUSER 有效用户名。这将是文本用户 ID, 如果可以获得并且字段宽度允许,或者 否则为十进制表示。n 选项可以是 用于强制十进制表示。
答案2
用户名太长,无法显示 - 超过 8 个字符。
如果您想要一个ps
包含更长名称的列表,则必须自己设置允许的最大长度:
$ ps -e -o "pid,user:16,command"
答案3
将用户“superduperadmin”重命名为“sda”。
重命名主目录以匹配是可选的,但您确实需要编辑引用该用户名(或目录,如果您确实重命名了主目录)的任何脚本、配置文件等。
因为创建了需要输入太多内容的用户账户,所以给自己一个后脑勺重击一下,提醒自己不要再这样做了:)