Как проверить, установлен ли раздел как «noexec»?

В настоящее время я использую grep '\s/location/\s.*noexec' /proc/mounts .
(Это правильный способ проверить это?)

2 Solutions collect form web for “Как проверить, установлен ли раздел как «noexec»?”

Вы должны использовать команду mount (8), которая доступна из коробки во всех системах Linux и UNIX.

Если вы запустите mount без каких-либо дополнительных аргументов, в нем будут перечислены все текущие смонтированные разделы в вашей системе, тип файловой системы и любые параметры монтирования, такие как noexec , rw или nosuid .

Например:

 % mount proc on /proc type proc (rw,nosuid,nodev,noexec,relatime) /dev/sda1 on /boot type ext4 (rw,relatime,data=ordered) /dev/mapper/basement-root on / type ext4 (rw,relatime,data=ordered) 

Предполагая, что вы используете это в Linux, да, это нормально. Было бы немного более надежно проверять, что noexec находится между запятыми или в начале или в конце его столбца.

 grep -Eq '^[^ ]+ /location [^ ]+ ([^ ]*,)?noexec[, ]' /proc/mounts 

Это может быть яснее в awk:

 awk -v location="/location" '$2 == location {exit(!($4 ~ /(^|,)noexec($|,)/))} END {exit(2)}' 
  • Всегда ли монтируется root?
  • Как изменить точки монтирования
  • Жесткие диски
  • Каков длинный идентификатор, который Linux присваивает диску в / media /?
  • ошибка монтирования "не является блочным устройством"
  • Клонирование и повторная установка SD-карты
  • Есть ли команда, чтобы увидеть, где установлен диск?
  • umount: устройство занято. Зачем?
  • Как монтировать раздел?
  • Ошибка при установке CF-карты
  • Проверьте, является ли каталог точкой монтирования
  • Linux и Unix - лучшая ОС в мире.