명령 줄에서 절전 및 최대 절전 모드를 일시적으로 비활성화하는 방법 것 같습니다. 그러나 이들은 표준 정책을 일시적으로

미리 결정된 조건이 충족되는 한 원하는 경우 우분투의 설정을 영구적으로 잠들도록 조작하는 방법은 여러 가지가있는 것 같습니다. 그러나 이들은 표준 정책을 일시적으로 앞당기 고자하는 드문 작업을 고려하지 않는보다 영구적 인 솔루션입니다. 내가 겪고있는 문제는 백업을 수행하기 위해 매우 오래 실행되는 스크립트가 있고 특정 프로세스가 실행되는 동안 일반적으로 30-50 분이 걸리는 동안 컴퓨터가 절전 모드 또는 최대 절전 모드로 전환되는 것을 원하지 않습니다. 따라서 백업 스크립트가 실행되는 동안 시스템이 최대 절전 모드 / 절전 상태가되지 않도록하는 백업 스크립트에 포함시킬 수있는 명령이 있습니까? 또한 백업이 완료된 후 정상적인 기본 전원 정책을 복원하는 명령이 있습니까?

같은

#!/usr/bin/bash
#disable normal powerpolicy
disable-power-policies
backup /dev/sda /dev/sdb /dev/fioa /dev/fiob
#enable power policies.
enable-power-policies



답변

Ubuntu 16.04 LTS에서 다음을 사용하여 일시 중단을 비활성화했습니다.

sudo systemctl mask sleep.target suspend.target hibernate.target hybrid-sleep.target

그리고 이것을 다시 활성화하려면 :

sudo systemctl unmask sleep.target suspend.target hibernate.target hybrid-sleep.target


답변

당신이 사용할 수있는 gsettings자동 해제는 전원 설정에 중단하고 다시 전원 설정의 기본 동작을 복원하는 스크립트.

다음은 먼저 절전에 대한 현재 시간 초과를 가져 와서 비활성화 한 다음 일부 작업을 수행 한 후 다시 활성화하는 간단한 구성입니다.

#!/bin/bash   

#get the current timeout for automatic suspend both for on battey power and when plugged in.
a=$(gsettings get org.gnome.settings-daemon.plugins.power sleep-inactive-ac-timeout)
b=$(gsettings get org.gnome.settings-daemon.plugins.power sleep-inactive-battery-timeout)


#Disable automatic suspend 
gsettings set org.gnome.settings-daemon.plugins.power sleep-inactive-ac-timeout 0
gsettings set org.gnome.settings-daemon.plugins.power sleep-inactive-battery-timeout 0

#Your task here
sleep 5

#Enable the automatic suspend
gsettings set org.gnome.settings-daemon.plugins.power sleep-inactive-ac-timeout $a
gsettings set org.gnome.settings-daemon.plugins.power sleep-inactive-battery-timeout $b


답변

작년에 몇 시간이 걸리는 백업에 대해 똑같은 문제가있었습니다!

Keep.Awake https://launchpad.net/keep.awake 시도 할 수 있습니다
. 최소 임계 값에 대한 CPU로드, 네트워크 트래픽 및 사용자 활동을 모니터링 할 수 있습니다.

나는 여전히 그것에 대한 스냅 또는 토론을 만들지 않았습니다. 그러나 일시적으로 Launchpad 에서 프로그램을 다운로드 할 수 있습니다.

현재 버전은 안정적이며 14.04에서 16.04까지 모든 Ubuntu 버전에서 작동합니다. 나는 그것을 지속적으로 개선하고 있으며 새로운 기능을 추가 할 것이라고 말했다.

적절한 명령처럼 작동합니다. 수행 할 수있는 작업의 전체 목록을 보려면 –help를 입력하십시오. 아래 예제는 몇 가지에 불과합니다.

./keepawake.py --help

대화식으로 실행하려면

./keepawake.py

백그라운드 서비스로 실행하려면 다음을 수행하십시오.

nohup ./keepawake.py -r > /dev/null 2>&1 &

백그라운드 서비스로 실행하고 사용자가 유휴 상태임을 확인하기 전에 사용자 활동 유휴 시간으로 15 분 (900 초)을 설정하려면 다음을 수행하십시오.

nohup ./keepawake.py -u 900 -r > /dev/null 2>&1 &

백그라운드 서비스로 실행하고 최소 CPU로드를 13 %로 설정하려면 다음을 수행하십시오.

nohup ./keepawake.py -c 13 -r > /dev/null 2>&1 &

백그라운드 서비스로 실행하고 최소 네트워크 트래픽을 5KB (5120 바이트)로 설정하려면 다음을 수행하십시오.

nohup ./keepawake.py -s 5120 -r > /dev/null 2>&1 &

위의 세 가지 설정 (네트워크, CPU, 사용자 유휴)을 모두 한 번에 실행하려면 :

nohup ./keepawake.py -s 5120 -c 13 -u 900 -r > /dev/null 2>&1 &


답변

Xfce에서이를 수행하는 방법은 다음과 같습니다. (내 자신의 공을 굴리는 그들의 대답에 대해 g_p에게 감사합니다.)

#!/bin/bash

# Grab current sleep timeout on battery and ac
a=$(xfconf-query -c xfce4-power-manager -p /xfce4-power-manager/inactivity-on-ac)
b=$(xfconf-query -c xfce4-power-manager -p /xfce4-power-manager/inactivity-on-battery)

# Set sleep to never on battery and ac
xfconf-query -c xfce4-power-manager -p /xfce4-power-manager/inactivity-on-ac -s 14
xfconf-query -c xfce4-power-manager -p /xfce4-power-manager/inactivity-on-battery -s 14

# Your task here
sleep 5

# Reset sleep to what it was before on battery and ac
xfconf-query -c xfce4-power-manager -p /xfce4-power-manager/inactivity-on-ac -s "$a"
xfconf-query -c xfce4-power-manager -p /xfce4-power-manager/inactivity-on-battery -s "$b"


답변