Зависит от команды. Для наиболее распространенных случаев вам не нужна команда.
Если вы хотите настроить SYSCTL (файл в
/proc/sys
), те могут быть сконфигурированы/etc/sysctl.d/*.conf
( как правило,99-sysctl.conf
или99-local.conf
, страница руководства ):kernel.sysrq = 1 kernel.pid_max = 4194304
Если это параметр модуля
/sys/modules
, он должен быть установлен при первой загрузке модуля, в/etc/modprobe.d/*.conf
(обычноmodprobe.conf
; см. Страницу руководства):options kafs rootcell=stacken.kth.se
Если вы хотите записать в параметр устройства
/sys
или запустить программу для изменения настроек устройства, напишите правило udev, которое будет делать это при подключении устройства, и вставьте его/etc/udev/rules.d/*.rules
. Страница руководства естьudev(7)
, и вы найдете ееudevadm info
полезной при попытке подобрать подходящее устройство.ACTION=="add", SUBSYSTEM=="net", KERNEL=="eth*", \ RUN+="/usr/bin/ethtool -s %k wol d" # This rule checks if a device has an attribute in its /sys subdir: ACTION=="add", \ SUBSYSTEM=="scsi_host", \ TEST=="link_power_management_policy", \ ATTR="medium_power"
Если вы хотите записать файл в другом месте или создать файл или каталог, используйте
/etc/tmpfiles.d
( страница руководства ).Если вы хотите загрузить модуль, укажите его имя в файле
/etc/modules-load.d/*.conf
( страница руководства ).Наконец, если вы хотите выполнить общую команду или запустить демон, напишите
.service
файл модуля ( одну из многих страниц справочника ). Вставьте/etc/systemd/system/*.service
и используйте множество примеров/lib/systemd/system
. Это будет сделано черезsystemctl
.Несколько вещей, на которые следует обратить внимание:
Type=
параметр должен быть задан правильно (simple
vs противforking
vsoneshot
), аExecStart=
параметр требует простой командной строки и не принимает подобный оболочке синтаксис (нет>
, нет&&
, нет$(...)
и т. Д., Только простые$ENVVAR
и%x
.)Можно заказать услуги после появления определенного устройства, используя (например ).
After=name.device
After=sys-subsystem-net-devices-%i.device
И #archlinux, и #systemd имеют свои IRC-каналы в сети freenode .