сценарий оболочки для добавления «noexec» и «nosuid» в раздел / var - PullRequest
0 голосов
/ 13 декабря 2018

Я пытаюсь создать небольшой скрипт для добавления noexec и nosuid в раздел /var, изменив файл /etc/fstab.

В настоящее время /etc/fstab также содержит раздел / var / log, кроме раздела /var.

Когда я запускаю свой скрипт, изменения вносятся как в /var, так и в /var/log.я только хочу добавить "noexec" и "nosuid" в раздел /var.

Вот что я написал

#cat test.sh
#!/bin/bash
egrep -q  '/var/.+noexec' /etc/fstab || sed -ri '/\/var/ s/defaults/defaults,noexec/' /etc/fstab
egrep -q  '/var/.+noexec' /etc/fstab || sed -ri '/\/var/ s/defaults,nodev/defaults,nodev,noexec/' /etc/fstab
egrep -q  '/var/.+nosuid' /etc/fstab || sed -ri '/\/var/ s/defaults/defaults,nosuid/' /etc/fstab
  1. текущая запись в / etc / fstab wrt / var и / var / log приведена ниже,
cat /etc/fstab

/dev/mapper/system-var  /var                    ext4    defaults,nodev        1 2

/dev/mapper/system-varlog /var/log                ext4    defaults,nodev        1 2
после запуска скрипта вывод будет таким, как показано ниже,
/dev/mapper/system-var  /var                    ext4    defaults,nosuid,noexec,nodev        1 2

/dev/mapper/system-varlog /var/log                ext4    defaults,nosuid,noexec,nodev        1 2
Ожидаемый результат приведен ниже,
cat /etc/fstab

/dev/mapper/system-var  /var                    ext4    defaults,nosuid,noexec,nodev        1 2

/dev/mapper/system-varlog /var/log                ext4    defaults,nodev        1 2
...