我正在使用 从用户名为 John、ID 为 501 的 iMac 连接到用户名为 John、ID 为 501 的 MacMini ssh
。
当我远程运行时,ps -U 501
系统提示没有用户 ID 501。如果我在本地运行该命令,该命令将按预期返回 501 拥有的进程。我缺少哪些知识?
所有命令都从ssh
会话运行
08:42:09.626 iMac191 ~
➜ ssh 169.254.1.1
([email protected]) Password:
Last login: Tue Sep 17 14:51:28 2024
john@MacMini ~ % whoami
501
john@MacMini ~ % id
uid=501 gid=20(staff) groups=20(staff),12(everyone),61(localaccounts),79(_appserverusr),80(admin),81(_appserveradm),98(_lpadmin),398(com.apple.access_screensharing),704,703,716,702,706,705,701,100(_lpoperator)
john@MacMini ~ % ps -U 501
ps: No ruser name or ID matches '501'
john@MacMini ~ % su john
su: who are you?
john@MacMini ~ % ps -Af | grep 501
501 2739 1 0 Tue02PM ?? 0:00.59 /Applications/DiskWarrior.app/Contents/Helpers/DiskWarriorDaemon
501 55207 55204 0 8:42AM ?? 0:00.61 sshd: john@ttys002
501 55898 1 0 8:46AM ?? 0:00.59 /System/Library/CoreServices/loginwindow.app/Contents/MacOS/loginwindow console
501 55899 1 0 8:46AM ?? 0:01.87 /usr/sbin/distnoted agent
501 55937 1 0 8:47AM ?? 0:03.81 /usr/sbin/cfprefsd agent
501 55939 1 0 8:47AM ?? 0:00.99 /usr/libexec/UserEventAgent (Aqua)
john@MacMini ~ % dscacheutil -q user | grep 501
john@MacMini ~ % login root
Password:
Login incorrect
login: login john
Login incorrect
man ps
关键字
ruid 真实用户 ID
ruser 用户名(来自 ruid)
uid 有效用户 ID
查看
man
页面:因此这样做是有效的。
创建配置文件
我的配置文件的内容使用一个空格作为分隔符:
对于 Host,您可以输入任何您想要的简写。在这种情况下,我将输入
ssh macmini
连接到我的 macmini169.254.1.1
,它会使用我生成、存储和配置服务器的安全密钥以用户“john”的身份登录我。如果您使用 macOS Keychain 来管理密钥(默认),则可以省略最后一行。