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

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

  • как монтировать UUID без использования / etc / fstab
  • установка локальной сетевой папки в Ubuntu
  • Как подключить файл NRG в Linux?
  • настройки sudoers для подключения сетевых ресурсов и устройств loop и разного рода
  • Почему mount устанавливает бит SUID?
  • Проверьте, является ли каталог точкой монтирования
  • Что такое «молчащий флаг» для монтирования?
  • Как я могу понять, что мешает монтированию привязки отключиться?
  • 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)}' 
    Interesting Posts
    Linux и Unix - лучшая ОС в мире.