Все ли скрипты в /etc/network/if-up.d запускаются при открытии сетевого интерфейса?
Если да, то для чего нужна команда post-up в файле интерфейсов?
Да, обычно запускается любой сценарий, помеченный как исполняемый и помещенный в эту папку. Имеющиеся файлы ограничены определенным набором имен, поскольку используются run-parts.
В post-up
делает то же самое, что и использование up
. Размещение скрипта в if-up.d аналогично простому использованию post-up
это указывает на сценарий или команду в другом месте. Обычно вы использовали up | post-up, когда вам просто нужно было запустить одну команду для одного интерфейса. Если у вас есть что-то более сложное, вы можете создать сценарий.
человек интерфейсы
...
up command
post-up command
Run command after bringing the interface up. If this command
fails then ifup aborts, refraining from marking the interface as
configured (even though it has really been configured), prints
an error message, and exits with status 0. This behavior may
change in the future.
...
There exists for each of the above mentioned options a directory
/etc/network/if-<option>.d/ the scripts in which are run (with no argu-
ments) using run-parts(8) after the option itself has been processed.
запчасти для мужчин
run-parts runs all the executable files named within constraints
described below,
If the --lsbsysinit option is not given then the names must consist
entirely of upper and lower case letters, digits, underscores, and
hyphens.
...
Files are run in the lexical sort order of their names unless the
--reverse option is given, in which case they are run in the opposite
order.