CTRL + ALT + SYSRQ + REISUO 키 입력을 자동화하는 터미널 명령 별칭을 만들 수 있습니까?

CTRL + ALT + SYSRQ + REISUO 키 입력을 자동화하는 터미널 명령 별칭을 만들 수 있습니까?

어떤 이유로든 내 외장 하드 드라이브에 부팅 시 계속 initramfs 문제가 발생하여 $ fsck /dev/sdb2 -y모든 것을 정상으로 되돌리려고 실행하게 됩니다.

하지만 한 가지 알아낸 점은 title 명령을 사용하여 시스템을 종료하거나 다시 시작하면 이 오류 발생이 크게 줄어든다는 것입니다.

이러한 키를 누르는 것을 "완료"하는 스크립트 또는 터미널 별칭을 만드는 방법이 있습니까(각 문자 사이에 약간의 지연이 있음)? 그러면 손가락과 발가락을 사용하여 디지털 체조를 하는 대신 타이핑만 하면 자동 $ reisuo으로 동작을 해준다는 건가요?

답변1

#!/bin/sh

for c in r s u o; do
  echo $c > /proc/sysrq-trigger
  sleep 1
done

(단, CTRL 키는 시뮬레이션되지 않으며 어쨌든 아무런 효과가 없습니다)

편집: e i현재 셸을 포함한 프로세스가 종료되고 나머지 스크립트가 계속 진행되지 않으므로 제거되었습니다. 어쨌든 killor 을 사용하는 것이 좋습니다 slay. 당신 SysRQ s u o이 무엇을 하고 있는지는 r중요하지 않습니다.

답변2

저와 같이 쉘 스크립팅을 처음 접하는 사람들을 위해 @Radovan 스크립트를 시작하고 실행하는 방법에 대한 단계별 지침은 다음과 같습니다.

  1. $ cd /usr/local/bin여기에 스크립트가 저장됩니다. 이 디렉터리에 스크립트를 저장하는 데에는 새 경로를 추가할 필요가 없습니다.
  2. sudo vim rsuo.sh이 디렉터리와 제대로 상호 작용하려면 sudo 권한이 있는 스크립트를 생성해야 합니다.
  3. 훌륭한 제안을 해준 @JdeBP 덕분에 위에 @Radovan의 스크립트가 추가되었습니다. 이제 SIGTERM 및 SIGKILL 명령이 생략되어 스크립트가 완료될 때까지 실행될 수 있습니다.
  4. 파일이 저장되면 루트가 아닌 사용자가 $ sudo chmod u+x rsuo.sh다음을 사용하여 파일에 액세스할 수 있도록 권한을 확장해야 합니다.$ sudo chown <user_name> rsuo.sh
  5. 이제 파일이 모두 설정되었으므로 명령에 대한 별칭을 만들려면 .bashrc( $ vim ~/.bashrc)를 열고 다음을 추가하세요.alias rsuo="cd /usr/local/bin && sudo rsuo.sh"
  6. 저장한 후 터미널을 닫고 다시 시작하면 $ rsuo입력할 때 sudo 비밀번호를 묻는 메시지가 표시되고 스크립트가 실행됩니다.
  7. 시스템을 재부팅할 수 있도록 rsub 명령을 사용하여 위 단계를 반복했습니다.
  8. 원하는대로 오레오를 두 배로 드세요 ;)

관련 정보