Если вы хотите убедиться, что cron не будет запускать что-то, что будет мешать или вызывать проблемы во время обновления, временно остановите демон cron перед обновлением а потом снова запустите.
То, как именно вы это делаете, зависит от вашей системы. например в системе sysvinit
вы должны использовать /etc/init.d/cron stop
и /etc/init.d/cron start
. Если вы используете systemd
, вы должны использовать systemctl stop cron.service
и systemctl start cron.service
Убедитесь, что noexec
не влияет на рассматриваемую точку монтирования. Или выберите лучшее место для запуска вашего скрипта.
$ mount | grep noexec
[ snip ]
shm on /dev/shm type tmpfs (rw,nosuid,nodev,noexec,relatime)
$ cat > /dev/shm/some_script
#!/bin/sh
echo hi
$ chmod +x /dev/shm/some_script
$ /dev/shm/some_script
bash: /dev/shm/some_script: Permission denied
$ mv /dev/shm_script .
$ ./some_script
hi
noexec
существует специально для предотвращения проблем с безопасностью, возникающих из-за того, что исполняемые файлы хранятся в доступных для записи местах; вы можете поместить туда файл, но кто-то другой может переписать его до того, как вы его выполните, и теперь вы выполняете не тот код, о котором думали.