echo 1 > /proc/sys/kernel/sysrq
sysrq 키를 활성화하기 위해 부팅 할 때마다 간단한 쉘 명령을 실행하고 싶습니다 . 부팅 할 때이 작업을 수행해야하며 스크립트를 어디에 배치해야합니까?
systemd
Arch Linux와 같은 배포판 에는 없습니다 . 그들을 참조함으로써, 우리는 야생 거위 추적으로 Demetri를 보낼 수 있습니다. 때때로 일부 업데이트를 수행해야합니다.
echo 1 > /proc/sys/kernel/sysrq
sysrq 키를 활성화하기 위해 부팅 할 때마다 간단한 쉘 명령을 실행하고 싶습니다 . 부팅 할 때이 작업을 수행해야하며 스크립트를 어디에 배치해야합니까?
systemd
Arch Linux와 같은 배포판 에는 없습니다 . 그들을 참조함으로써, 우리는 야생 거위 추적으로 Demetri를 보낼 수 있습니다. 때때로 일부 업데이트를 수행해야합니다.
답변:
배포판에 따라 다릅니다.
데비안에서 파생 된 배포판에 있다면 /etc/rc.local과 crontab과 같은 두 곳 이상의 적절한 장소가 있습니다. crontab을 루트로 호출 할 수 있습니다.
crontab -e
이 줄을 삽입
@reboot /home/my_name/bin/my_command
my_command
실행 파일은 어디 입니까 ( chmod 755 my_command
).
또는 이와 같은 줄을 배치 할 수 있습니다
/home/my_name/bin/my_command
/etc/rc.local에서 마지막으로 실행됩니다. 어쨌든 pls는 귀하가 아닌 루트 환경을 사용하고 있음을 기억합니다. 또한 이러한 이유로 절대 경로를 사용하는 것이 가장 좋습니다.
당신은에있는 경우 systemd 배포판 더 이상 존재하지 않는 두 번째 (/etc/rc.local에) 동안 (아치 리눅스, 페도라 19, ...) 첫 번째 옵션 (crontab을)은 여전히 유효합니다. 이 systemctl
경우을 (를) 실행하기 위해 서비스를 시작하는 방법을 배워야 하지만 이는 간단한 질문으로 협상 한 것 이상일 수 있습니다.
시스템 cron
에서 지원 하는 버전 (특히 Vixie cron)을 실행중인 경우 @reboot
cron 작업에서 사용할 수 있습니다 .
이것은 지원하는 8 개의 특수 문자열 중 하나입니다.
crontab(5)
맨 페이지 인용 (내 Ubuntu 12.04 시스템에서) :
처음 5 개의 필드 대신 8 개의 특수 문자열 중 하나가 나타날 수 있습니다.
string meaning
------ -------
@reboot Run once, at startup.
@yearly Run once a year, "0 0 1 1 *".
@annually (same as @yearly)
@monthly Run once a month, "0 0 1 * *".
@weekly Run once a week, "0 0 * * 0".
@daily Run once a day, "0 0 * * *".
@midnight (same as @daily)
@hourly Run once an hour, "0 * * * *".
시작
@reboot
은 cron (8) 데몬이 시작 되는 시간 입니다. 특히 일부 시스템 데몬 또는 기타 기능이 시작되기 전에있을 수 있습니다. 시스템의 부팅 순서 순서 때문입니다.
이것은 부팅 할 때 무언가를 실행 하는 유일한 방법과 는 거리가 멀지 만 대안입니다.