
Я знаком с подавлением вывода на машинах Unix, а именно:
cat /file/that/doesnt/exist > /dev/null 2>&
Однако я не могу подавить вывод mount, когда файловая система ext3 монтируется n-ный раз, и он рекомендует fsck. Как это часто бывает, fscks регулярно запускаются другой машиной, поэтому эти предупреждающие сообщения напрасно прерывают поток вывода в мой симпатичный bash-скрипт. Вот ошибки:
# mount -t ext3 /dev/sda1 /mnt > /dev/null 2>&
kjournald starting. Commit interval 5 seconds
EXT3-fs warning: maximal mount count reached, running e2fsck is recommended
EXT3 FS 2.4-0.9.19, 19 August 2002 on sd(8,1), internal journal
EXT3-fs: mounted filesystem with ordered data mode.
Может кто-нибудь пролить свет на это? Я явно блокирую оба fd, но каким-то образом вывод все равно проходит.
Это GNU Bash v2.05a
решение1
Я почти уверен, что эти сообщения исходят от ядра, а не от самой команды mount, так что перенаправление выводов не поможет. Попробуйте подправить kernel.printk в sysctl, пока не получите уровень детализации, который вас устроит.
Когда вы говорите, что fscks регулярно запускается другой машиной, я предполагаю, что это на общем блочном устройстве хранения, таком как DRBD? Я бы проверил, что ваша другая машина на самом деле fsckит эти тома, так как количество монтирований хранится в метаданных файловой системы, а не в самой машине.