일시 중단 후 마우스가 분리되어 가끔씩 시스템이 깨어나지 않도록하는 것은 정말 성가신 일입니다. 시스템 설정에서 인터넷 검색 으로이 기능을 비활성화 할 수있는 것을 찾지 못했습니다.
일시 중단 후 마우스가 분리되어 가끔씩 시스템이 깨어나지 않도록하는 것은 정말 성가신 일입니다. 시스템 설정에서 인터넷 검색 으로이 기능을 비활성화 할 수있는 것을 찾지 못했습니다.
답변:
아직 BIOS를 확인하지 않았지만 해결책을 찾았습니다!
간단한 요약 :에서 /proc/acpi/wakeup
현재 일시 중지 상태에서 재개 할 수있는 장치를 확인할 수 있습니다. 이 목록에는 소위 "장치"의 이름 (약칭)이 표시됩니다. 예를 들어 "PWRB"는 "전원 버튼"을 의미합니다.
해당 파일에 장치 이름을 쓰면 활성화 / 비활성화간에 전환합니다.
나는 그 정보를 찾은 블로그를 기반으로 한 wake-by-mouse 비활성화에 대한 작은 HowTo를 작성 했습니다 .
sudo
작동하지 않습니다 : 하나 관련이있다 sudo su
첫째, 다음에 에코 /proc/acpi/wakeup
. 그러나, 나는 사람이 할 수있는 방법을 발견했는지 궁금하네요 단지 ? 비활성화 마우스를 나는 모두가 (무선) USB를 통해 연결된 내 데스크탑에서 키보드에서 깨우기도 비활성화됩니다.
모든 포스터 덕분에 마우스 웨이크 업이 큰 불편 함을 느끼고 여기에 내 대답이 있습니다. 더 많은 경우 도움이 될 수 있으므로 솔루션에 왜곡을 추가하고 싶습니다. 에서 3 개의 다른 항목을 비활성화해야했습니다 /proc/acpi/wakeup
. 내 장치 : EHC1, EHC2, XHCI
. 첫 번째 2는 usb2이고 세 번째는 usb3 항목입니다. 마우스 용 USB 트랜시버가 usb2 포트에 꽂혀 있고 usb3 포트에 아무것도 없지만, 3 개의 항목이 모두 비활성화 될 때까지 컴퓨터는 마우스를 움직일 때 깨어납니다 .
$ cat /proc/acpi/wakeup | sort
Device S-state Status Sysfs node
EHC1 S3 *disabled pci:0000:00:1d.0
EHC2 S3 *disabled pci:0000:00:1a.0
GLAN S4 *enabled pci:0000:08:00.0
.. ,, ..
USB7 S3 *disabled
WLAN S3 *disabled pci:0000:03:00.0
XHCI S3 *disabled pci:0000:07:00.0
모든 시작시 깨우기 항목을 비활성화하려면 다음과 같이 추가하십시오 /etc/rc.local
.
echo EHC1 > /proc/acpi/wakeup
echo EHC2 > /proc/acpi/wakeup
echo XHCI > /proc/acpi/wakeup
cipricus로 편집 :
이 답변을 기반으로 위의 내용과 중복 되는 별도의 질문 을 닫기 위해 더 자세한 정보를 추가해야했기 때문에 이것을 편집 하고 있습니다. 별도의 답변으로 게시하는 것보다 더 유용하다고 생각합니다.
*** 항목을 사용할 수 있어야합니다 테스트 - 표시된 여기에 -로 게시 된 각 항목에 대해 enabled
아래에 cat /proc/acpi/wakeup | sort
마우스를 (다시 시작을위한 필요없이) 시스템을 깨어 경우 단말기에서 실행되는 다음 각 명령 다음 테스트하여 :
sudo sh -c "echo EHC1 > /proc/acpi/wakeup"
sudo sh -c "echo EHC2 > /proc/acpi/wakeup"
sudo sh -c "echo XHCI > /proc/acpi/wakeup"
(제 경우에는 다른 USB 포트로 테스트 한 후에도 첫 번째면 충분했습니다)
*** /etc/rc.local
파일이 존재하지 않는 경우 - 이 게시물 에 따르면 :
printf '%s\n' '#!/bin/bash' 'exit 0' | sudo tee -a /etc/rc.local
sudo chmod +x /etc/rc.local
파일은 다음과 같아야합니다.
#!/bin/bash
echo EHC1 > /proc/acpi/wakeup
echo EHC2 > /proc/acpi/wakeup
echo XHCI > /proc/acpi/wakeup
exit 0
재부팅하십시오.
그래도 문제가 해결되지 않으면 파일 /etc/systemd/system/rc-local.service
이 없거나 제대로 구성되지 않았을 수 있습니다.
로 테스트
sudo /etc/init.d/rc.local start
과
sudo systemctl status rc-local
Systemd로 /etc/rc.local을 활성화하는 방법에 따라 :
파일을 작성하십시오.
sudo nano /etc/systemd/system/rc-local.service
그런 다음 다음 내용을 추가하십시오.
[Unit]
Description=/etc/rc.local Compatibility
ConditionPathExists=/etc/rc.local
[Service]
Type=forking
ExecStart=/etc/rc.local start
TimeoutSec=0
StandardOutput=tty
RemainAfterExit=yes
SysVStartPriority=99
[Install]
WantedBy=multi-user.target
파일을 저장하고 닫습니다. Nano 텍스트 편집기에서 파일을 저장하려면 Ctrl + O를 누른 다음 Enter를 눌러 확인하십시오. 파일을 종료하려면 Ctrl + X를 누르십시오.
다음을 통해 오류가 없는지 확인하십시오.
sudo systemctl start rc-local.service
sudo systemctl status rc-local.service
변경 사항을 보려면 재부팅하십시오.
내 시스템은 우분투 15.10입니다
lsusb
마우스 장치가 무엇인지 찾기 위해 명령 을 사용하려고했습니다 . 매우 간단합니다. 입력 lsusb
한 다음 마우스를 뽑고 (필자의 경우 Bluetooth 수신기) lsusb
다시 입력 하십시오. 장치는 다음과 같습니다.
Bus 007 Device 008: ID 24ae:2000
이제 /sys/bus/usb/devices/
같은 방법으로 (플러그 / 플러그) 폴더 에서 폴더를 찾으십시오 . 필자의 경우 폴더가로 시작하는 폴더에 있음을 발견했습니다 7-2*
.
이제 idProduct와 idVendor를 읽으십시오. 예를 들어 cat /sys/bus/usb/devices/7-2.3/idProduct
=> 2000
, cat /sys/bus/usb/devices/7-2.3/idVendor
=> 24ae
입니다. 그게 다야.
마지막으로 /lib/systemd/system-sleep
디렉토리에 스크립트를 만들고 원하는 이름을 지정하십시오.
#! /bin/sh
if [ ! -r /sys/bus/usb/devices/7-2.3/power/wakeup ]; then
exit 0
fi
case "$1" in
pre )
echo disabled > /sys/bus/usb/devices/7-2.3/power/wakeup
;;
esac
다 했어요
이 스크립트는 내 문제를 해결했습니다. 확인 해봐.
#!/bin/bash
# allow only one instance
r=$(pidof -x -o $$ ssmonoff.sh)
set -- $r
if [ "${#@}" -ge 1 ]; then
echo "Script already running. Exit..."
exit
fi
dbus-monitor --session "type='signal',interface='org.gnome.ScreenSaver'" | ( while read line; do
if echo $line | grep "boolean true" &> /dev/null; then
xinput --set-prop "Dell Premium USB Optical Mouse" "Device Enabled" "0"
xset dpms force off
else
xinput --set-prop "Dell Premium USB Optical Mouse" "Device Enabled" "1"
fi
done )
먼저 실행 sudo xinput list
하고 지정된 USB 마우스 이름을 찾아 스크립트에 입력하기 만하면됩니다. 그런 다음 파일을 "ssmonoff.sh"로 저장하고 실행 가능하게 한 다음 시작시 실행되도록 설정하십시오.
이것은 당신을 위해 작동하게 만드는 단계별 "자습서"입니다.
cat /proc/acpi/wakeup
을 사용 하여 웨이크 업 장치 목록 표시sudo sh -c "echo XXXX >/proc/acpi/wakeup"
장치 상태 (활성화 / 비활성화)를 전환 하려면 명령을 사용하십시오 ( "XXXX"를 장치 코드로 대체). 한 번에 하나의 장치로 이동하여 해당 장치가 기계를 깨울 수 없을 때까지 비활성화하려는 장치를 사용하여 기계를 일시 중지하고 깨우십시오. 비활성화하지 않으려는 장치를 항상 다시 활성화하는 것을 잊지 마십시오.#!/bin/sh
printf "XXXX" > /proc/acpi/wakeup
하십시오 ( "XXXX"를 장치 코드로 바꾸는 것을 잊지 마십시오)./etc/init.d/
. 파일을 복사하려면 다음 명령을 사용
sudo cp /home/USERNAME/Desktop/acpi_wakeup /etc/init.d/acpi_wakeup
하십시오 ( "USERNAME"을 실제 사용자 이름으로 바꾸십시오)sudo chmod 755 /etc/init.d/acpi_wakeup
sudo update-rc.d acpi_wakeup defaults
(표시 WARNING: ...missing LSB tags and overrides
되지만 괜찮습니다. 걱정할 필요는 없습니다)출처와 추가 자료 :
http://www.das-werkstatt.com/forum/werkstatt/viewtopic.php?f=7&t=1985 http://ubuntuforums.org/showthread.php?t=814939&page=3