Debian
不需要的自動啟動 tmpfs 和 lib/systemd/systemd –user 程序用於未登錄使用者
Debian 11 Bullseye pc,systemd,無顯示管理器,
startx
用於啟動 X,多使用者。當我使用使用者登錄時,假設 auser-UID 1000,我在程序列表中看到:
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND foo 550 0.0 0.1 15280 8928 ? Ss 16:18 0:00 /lib/systemd/systemd --user foo 554 0.0 0.0 166520 2732 ? S 16:18 0:00 (sd-pam) auser 657 0.0 0.1 15280 8928 ? Ss 16:18 0:00 /lib/systemd/systemd --user auser 658 0.0 0.0 166520 2732 ? S 16:18 0:00 (sd-pam)
顯然它們與這些掛載(foo-UID 1001)有關:
裁剪
mount
命令結果:tmpfs on /run/user/1001 type tmpfs (rw,nosuid,nodev,relatime,size=791080k,nr_inodes=197770,mode=700,uid=1001,gid=1001) tmpfs on /run/user/1000 type tmpfs (rw,nosuid,nodev,relatime,size=791080k,nr_inodes=197770,mode=700,uid=1000,gid=1000)
那是在啟動 X 之前,很少有程序,據我所知,沒有任何
foo
未登錄的程序會自動啟動。我怎樣才能找到啟動這兩個
foo
過程的原因?它在啟動時自動發生,日誌中有一個條目:systemd[542]: pam_unix(systemd-user:session): session opened for user foo(uid=1001) by (uid=0)
系統上還有其他本地使用者,但沒有為他們自動啟動 tmpfs。
我找到了:
sudo loginctl disable-linger foo
顯然在搜尋我在該使用者上啟用了 linger 的其他東西,它正是這樣做的,在啟動時啟動 systemd 使用者實例而不是登錄。