Каково различие между “dnl” и “dnl #\” в sendmail.mc файле?

Быстрый и простой способ к вершине, но не пуленепробиваемый, состоит в том, чтобы дать им псевдоним в их ~/.bashrc (или определенный для оболочки соответствующий файл запуска/псевдонима), который просто выполняет вершину, смотрящую на их собственное имя пользователя:

alias top="top -u $USER"

Это ничего не делает для ps или курс, но кроме помещения пользователей в chroot или среде тюрьмы или selinux как Sacx упомянул, нет много, что можно сделать для сокрытия системы от них.

9
задан 8 February 2014 в 07:17
2 ответа

Здесь есть тонкое, но важное различие между dnl и # .

dnl означает «удалить через новую строку» . Когда вы обрабатываете свой sendmail.mc в sendmail.cf , используя m4 (или, возможно, какой-нибудь интерфейс), символы dnl и все остальное после них , включая следующий символ новой строки, будет удален. (И все эти строки заканчиваются на dnl , чтобы подавить лишние пустые строки в выводе sendmail.cf .)

Ничего не начинается с dnl С до конца строки он перейдет из sendmail.mc в sendmail.cf .

15
ответ дан 2 December 2019 в 22:24

DNL означает "удалять через новую строку", что на самом деле означает "игнорировать всё после 'dnl' до следующей строки".

'dnl #' - это всего лишь искусственная номенклатура. Когда отправляется почта.mc файл был впервые разработан, они хотели, чтобы Вы знали, что все, что было "dnl ..." - это команда/установка, которая была прокомментирована, а все, что было "dnl #..." - это действительно описательный комментарий, который не является командой/установкой, которая может быть прокомментирована, потому что "#" часто используется в начале строки для обозначения того, "что следует до конца строки" - это комментарий.

3
ответ дан 2 December 2019 в 22:24

Теги

Похожие вопросы