SSH를 사용하여 Fedora 21 워크스테이션에 연결했지만 사용하지 않은 연결이 몇 분 지나면 시스템이 절전 모드로 전환되어 연결이 끊어집니다.
그렇다면 시스템이 일시 중지/절전 모드로 들어가는 것을 완전히 비활성화하려면 어떻게 해야 합니까?
답변1
systemd-inhibit 명령을 사용하여 init.d 스크립트를 생성하여 문제를 해결했습니다.
#!/bin/bash
nohup systemd-inhibit --why="Disable sleep" --mode=block /usr/bin/bash -c "while true; do sleep 120; done" >/dev/null 2>&1 &
exit 0
답변2
사용:
sudo systemctl mask suspend.target
sudo systemctl mask sleep.target
이유:
Systemd가 모든 것을 관리합니다. gnome/kde 및 NetworkManager
systemd 자체를 포함하여 종료를 실행하는 방법은 백만 가지가 있습니다 . 종료와 같은 절전 및 일시 중지 대상은 "정적"입니다. 즉, 비활성화할 수 없는 핵심 내장 장치입니다. 그러나 이를 마스킹하고 systemd
액세스를 차단할 수 있습니다.
답변3
편집: --what=idle
명령에서 제거되었습니다. 충분하지 않은 것 같습니다. 기본값은 이며 --what=shutdown:sleep:idle
더 잘 작동합니다(하지만 --what=sleep:idle
작동해야 함).
오래된 질문이지만 systemd-inhibit 솔루션의 또 다른 변형은 다음을 넣는 것입니다 ~/.profile
(제 경우에는 byobu가 시작되기 직전에). 그러면 로그인 셸이 열려 있는 동안(즉, GUI가 아닌 콘솔에서도 로그인하지 않은 한 주로 SSH 세션) 절전 모드가 비활성화됩니다.
# Inhibit idle sleep. This background process waits for the current shell to exit.
nohup systemd-inhibit --who=Bash --why="Byobu running" tail --pid=$$ -f /dev/null &
여기서 이 tail --pid
부분을 찾았습니다.https://stackoverflow.com/a/41613532/827828