我最近為我的筆記型電腦購買了 SSD,並在上面安裝了新的 Debian Jessie(我之前使用過 Wheezy)。結果,筆記型電腦上的大多數操作都加快了速度,特別是其中一項操作甚至大幅加快。事實上,現在 a 大約需要 1 秒鐘才能sudo shutdown now
完成。即使在像 QNX 這樣的即時系統中,1 秒的關閉也被認為是倉促的,特別是如果任何網路介面已經啟動,所以我認為這不是正常的。問題是,我在任何地方都找不到任何相關的錯誤訊息。最後一秒syslog
沒有什麼特別的(我冒昧地刪除了openobex
我認為不重要的訊息):
Oct 12 23:58:21 hostname kernel: [17080.034445] wlan0: deauthenticating from XX:XX:XX:XX:XX:XX by local choice (Reason: 3=DEAUTH_LEAVING)
Oct 12 23:58:21 hostname kernel: [17080.050734] brcmsmac bcma0:0: brcmsmac: brcms_ops_bss_info_changed: disassociated
Oct 12 23:58:21 hostname kernel: [17080.050754] brcmsmac bcma0:0: brcms_ops_bss_info_changed: arp filtering: 1 addresses (implement)
Oct 12 23:58:21 hostname kernel: [17080.050763] brcmsmac bcma0:0: brcms_ops_bss_info_changed: qos enabled: false (implement)
Oct 12 23:58:21 hostname kernel: [17080.052458] cfg80211: Calling CRDA to update world regulatory domain
Oct 12 23:58:21 hostname kernel: [17080.098666] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
Oct 12 23:58:21 hostname rsyslogd: [origin software="rsyslogd" swVersion="8.4.2" x-pid="574" x-info="http://www.rsyslog.com"] exiting on signal 15.
我結帳了這個systemd
錯誤經檢查似乎無關。該錯誤已在我的版本中修復systemd 215-17+deb8u2
,並rsyslog
報告退出於SIGTERM
,而不是SIGKILL
。
有其他人遇到這個問題嗎?我意識到對於許多用戶來說,它看起來更像是一個不錯的功能,因此他們不會在谷歌上搜尋它或在任何地方報告它,直到丟失數據。關於如何診斷或在哪裡尋找更多資訊有什麼建議嗎?
編輯:
既然我已經sshd
安裝了,我就趁機調查它的行為。事實上,當我手動啟動和停止服務時(例如service ssh stop
),相應的訊息會出現在/var/log/auth
.服務啟動或停止時也會出現明顯的延遲。但是當我shutdown
或 時,沒有出現有關下降的systemctl isolate runlevel1.target
消息。sshd
此服務使用預設配置參數進行配置,並透過以下方式進行管理/etc/systemd/system/sshd.service
:
[Unit]
Description=OpenBSD Secure Shell server
After=network.target auditd.service
ConditionPathExists=!/etc/ssh/sshd_not_to_be_run
[Service]
EnvironmentFile=-/etc/default/ssh
ExecStart=/usr/sbin/sshd -D $SSHD_OPTS
ExecReload=/bin/kill -HUP $MAINPID
KillMode=process
Restart=on-failure
[Install]
WantedBy=multi-user.target
Alias=sshd.service
我的shutdown.target
是:
[Unit]
Description=Shutdown
Documentation=man:systemd.special(7)
DefaultDependencies=no
RefuseManualStart=yes
添加符號鏈接/etc/rc1.d/K00ssh
可以sshd
在系統進入運行級別1 時正確停止,但這不是真正的解決方案:我不應該在新安裝的系統上手動創建此類符號鏈接,而且無論如何,此類符號鏈接都會被棄用,以支持.service
文件。
答案1
作為一個快速而骯髒的解決方案,我已切換到System V
(在 中創建了適當的符號鏈接/etc/rcX.d/
),然後返回SystemD
:
sudo apt-get install sysvinit
sudo apt-get remove systemd
reboot
sudo apt-get install systemd systemd-ui
sudo apt-get remove sysvinit