если не устраивают параметры юнита

вот вообщем столкнулся с таким делом на примере hddtemp: юнит который в /usr/lib/systemd/system/hddtemp.service поумолчанию не мониторит винты и некоторых параметров для меня нехватало, ну вообщем как я понял если его изменить именно там, то после обновления он перезапишется и все мои старанья как воду через сито таскать. Ну я взял его и скопировал в /etc/systemd/system/ с таким же именем как и исходный, добавил в него параметры, прописал в автозагрузку указав полный путь к нему, тобиш systemctl enable /etc/systemd/system/hddtemp.service , вроде работает, но меня мучает несколько вопросов.
Во-первых: идеалогически правильно ли я поступил?
Во-вторых: если правильно, то так со всеми юнитами делать если им требуется настройка или параметры надо добавить/убрать?
В-третьих: при удалении пакета initscripts, а я его снёс, совместимости с /etc/conf.d/ нет? Если нету, то может быть вообще rm -rf его?
Во-четвёртых: у sshd юнита есть зависимость sshgenkeys.service который при enable sshd.service добавляется как зависимость, я конечно руками disable сделал, но может существуют другие способы и я про них в танке
Во-первых: идеалогически правильно ли я поступил?
Вполне (см. https://wiki.archlinux.org/index.php/Sy … unit_files ).
Во-вторых: если правильно, то так со всеми юнитами делать если им требуется настройка или параметры надо добавить/убрать?
Да.
В-третьих: при удалении пакета initscripts, а я его снёс, совместимости с /etc/conf.d/ нет? Если нету, то может быть вообще rm -rf его?
Есть совместимость. Например:
cat /usr/lib/systemd/system/lm_sensors.service 
[Unit]
Description=Initialize hardware monitoring sensors
After=syslog.target
[Service]
EnvironmentFile=-/etc/conf.d/lm_sensors
Type=oneshot
RemainAfterExit=yes
ExecStart=-/sbin/modprobe -qab $BUS_MODULES $HWMON_MODULES
ExecStart=/usr/bin/sensors -s
ExecStop=-/sbin/modprobe -qabr $BUS_MODULES $HWMON_MODULES
[Install]
WantedBy=multi-user.target
Обратите внимание на строку EnvironmentFile=-/etc/conf.d/lm_sensors.
Во-четвёртых: у sshd юнита есть зависимость sshgenkeys.service который при enable sshd.service добавляется как зависимость, я конечно руками disable сделал, но может существуют другие способы и я про них в танке
Если я правильно помню, то systemctl mask servicename.service
Во-вторых: если правильно, то так со всеми юнитами делать если им требуется настройка или параметры надо добавить/убрать?
Можно еще инклудить системный файл и добавлять свои параметры http://archlinux.org.ru/forum/viewtopic.php?f=34&t=9134&p=88886.
Но, если не ошибаюсь, убрать старые не получится.

Если я правильно помню, то systemctl mask servicename.service
Это, кстати, гарантирует, что юнит не будет снова включен при добавлении любой другой службы, зависящей от него.
А хорошо это, или плохо - смотрите сами.
я бы черточку убрал бы, чтобы в лог сыпалось, очень нужный файлик(для юнита), лучшеб знать когда он начнет вдруг изчезать ;)
Лозунг у них был такой: "Познание бесконечности требует бесконечного времени". С этим я не спорил, но они делали из этого неожиданный вывод: "А потому работай не работай — все едино". И в интересах неувеличения энтропии Вселенной они не работали. (с)
 
Зарегистрироваться или войдите чтобы оставить сообщение.