BASH_ENV
배포 를 통해 /etc/environment
크론 작업에 영향을 미치지 않는 것으로 나타났습니다.
SHELL=/bin/bash
사용자의 crontab에 추가하는 것만으로도 효과가 있다는 것을 알았습니다 ! 예! (crontab에) 그냥 추가하면:
SHELL=/bin/bash
... 효과가있다. 나할 수 있는루트로 입력하고 간단한 작업을 수행합니다.
sed -i 1iSHELL=/bin/bash /var/spool/cron/*
하지만 이 설정을 전역(또는 기본값)으로 설정하고 싶습니다.
기본 cron SHELL을 bash로 설정할 수 있습니까?
나는 성공하지 않고 다음을 시도했습니다.
- 행 추가
/etc/crontab
/etc/crontab 자체에만 영향을 미칩니다모든 사용자는 아니지만 - 크론 추가
/etc/sysconfig/crond
및 재시작 - 크론 추가
/etc/environment
및 재시작 - 크론에 추가하고 다시 시작
session required pam_env.so readenv=1
하세요 ./etc/pam.d/crond
- 라인을 추가
/etc/default/cron
하고 다시 시작하세요
기본 cron SHELL을 bash로 설정하는 방법은 무엇입니까?
답변1
cron 작업에 대한 전역 기본 셸을 설정할 수 없습니다.
답변2
또는 crontab에서 쉘 스크립트를 실행하는 경우 이를 스크립트 상단에 배치할 수 있습니다.
#!/bin/bash -l
이렇게 하면 로그인 쉘처럼 작동하게 됩니다.