เดเดฎเตเดเด
เดฒเดฟเดจเดเตเดธเดฟเดจเดพเดฏเดฟ เดตเดฟเดเดธเดฟเดชเตเดชเดฟเดเตเดเตเดฎเตเดชเตเตพ, เดธเดฟเดธเตเดฑเตเดฑเด เดเดฃเดพเดเตเดเตเดฎเตเดชเตเดดเต เดทเดเตเดเตเดกเตเตบ เดเตเดฏเตเดฏเตเดฎเตเดชเตเดดเต เดเดเตเดธเดฟเดเตเดฏเตเดเตเดเต เดเตเดฏเตเดฏเดชเตเดชเตเดเตเดจเตเดจ เดเดจเตเดฑเดฑเดพเดเตเดเตเดตเต เดธเตเดเตเดฐเดฟเดชเตเดฑเตเดฑเตเดเตพ เดธเตเดทเตเดเดฟเดเตเดเตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เดเตเดฎเดคเดฒ เดเดฏเตผเดจเตเดจเตเดตเดฐเตเดจเตเดจเต. เดธเดฟเดธเตเดฑเตเดฑเด V-เตฝ เดเดคเต เดเดณเตเดชเตเดชเดฎเดพเดฏเดฟเดฐเตเดจเตเดจเต, เดเดจเตเดจเดพเตฝ systemd-เตฝ เดเดคเต เดเตเดฐเดฎเตเดเดฐเดฃเดเตเดเตพ เดเตเดฏเตเดฏเตเดจเตเดจเต. เดเดจเตเดจเดพเตฝ เด เดคเดฟเดจเต เด เดคเดฟเดจเตเดฑเตเดคเดพเดฏ เดเตเดฎเดฑเตเดเตพ เดเดฃเตเดเดพเดเดพเด.
เดเดจเตเดคเตเดเตเดฃเตเดเดพเดฃเต เดจเดฎเตเดเตเดเต เดฒเดเตเดทเตเดฏเดเตเดเตพ เดตเตเดฃเตเดเดคเต?
เดธเดฟเดธเตเดฑเตเดฑเด V -init-เตฝ เดฑเตบเดฒเดตเดฒเดฟเดจเตเดฑเต เด เดจเดฒเตเดเต เดเดฏเดฟ เดเดพเตผเดเตเดฑเตเดฑเต เดชเตเดฐเดตเตผเดคเตเดคเดฟเดเตเดเตเดจเตเดจเต เดเดจเตเดจเต เดชเดฒเดชเตเดชเตเดดเตเด เดเดดเตเดคเดพเดฑเตเดฃเตเดเต. เดเดพเตป เด เดเดฟเดธเตเดฅเดพเดจเดชเดฐเดฎเดพเดฏเดฟ เดตเดฟเดฏเตเดเดฟเดเตเดเตเดจเตเดจเต. เด เดตเดฏเดฟเตฝ เดเตเดเตเดคเตฝ เดเดฃเตเดเต, เดจเดฟเดเตเดเตพเดเตเดเต เดชเดพเดเตเดเตเดเตเดเดณเต เดเตเดฐเตเดชเตเดชเตเดเดณเดพเดฏเดฟ เดตเดฟเดญเดเดฟเดเตเดเดพเด, เดเดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต, เดเดฐเต เดเดฎเดพเตปเดกเต เดเดชเดฏเตเดเดฟเดเตเดเต เดเดฐเต เดเตเดเตเดเด เดธเตเดตเดจเดเตเดเตพ เดธเดฎเดพเดฐเดเดญเดฟเดเตเดเต เด เดงเดฟเด เดชเตเดฐเดตเตผเดคเตเดคเดจเดเตเดเตพ เดจเดเดคเตเดคเตเด. เดฎเดพเดคเตเดฐเดฎเดฒเตเดฒ, เด เดตเตผเดเตเดเต เด เดงเดฟเดเดพเดฐเดถเตเดฐเตเดฃเดฟ เดเดฒเตเดฒ, เดเดถเตเดฐเดฟเดคเดคเตเดตเด เดฎเดพเดคเตเดฐเด.
เดชเตเดฐเดตเตผเดคเตเดคเดจเดเตเดทเดฎเดฎเดพเดฏ เดเดจเตเดฑเดฑเดพเดเตเดเตเดตเต เดธเตเดเตเดฐเดฟเดชเตเดฑเตเดฑเต เดเดชเดฏเตเดเดฟเดเตเดเต เดชเตเดฐเดตเตผเดคเตเดคเดจเดเตเดทเดฎเดฎเดพเดเตเดเตเดฎเตเดชเตเตพ เดฒเดเตเดทเตเดฏเดคเตเดคเดฟเดจเตเดฑเต เดเดฆเดพเดนเดฐเดฃเด (เดธเดตเดฟเดถเตเดทเดค เด เดตเดฒเตเดเดจเด).
เดฒเดเตเดทเตเดฏเดคเตเดคเดฟเดจเตเดฑเต เดตเดฟเดตเดฐเดฃเด เดคเดจเตเดจเต:
cat installer.target
[Unit]
Description=My installer
Requires=multi-user.target
Conflicts=rescue.service rescue.target
After=multi-user.target rescue.service rescue.target
AllowIsolate=yes
Wants=installer.service
multi-user.target เดธเดฎเดพเดฐเดเดญเดฟเดเตเดเต installer.service-เดฒเตเดเตเดเต เดตเดฟเดณเดฟเดเตเดเตเดฎเตเดชเตเตพ เด เดฒเดเตเดทเตเดฏเด เดเดฐเดเดญเดฟเดเตเดเตเด. เดเดจเตเดจเดฟเดฐเตเดจเตเดจเดพเดฒเตเด, เด เดคเตเดคเดฐเด เดจเดฟเดฐเดตเดงเดฟ เดธเตเดตเดจเดเตเดเตพ เดเดฃเตเดเดพเดฏเดฟเดฐเดฟเดเตเดเดพเด.
cat installer.service
[Unit]
# ะพะฟะธัะฐะฝะธะต
Description=installer interactive dialog
[Service]
# ะะฐะฟัััะธัั ะพะดะธะฝ ัะฐะท, ะบะพะณะดะฐ ะพััะฐะปัะฝะพะต ะฑัะดะตั ะทะฐะฟััะตะฝะฝะพ
Type=idle
# ะะพะผะฐะฝะดะฐ ะทะฐะฟััะบะฐ - ะฒัะทะพะฒ ัะบัะธะฟัะฐ
ExecStart=/usr/bin/installer.sh
# ะะฝัะตัะฐะบัะธะฒะฝะพะต ะฒะทะฐะธะผะพะดะตะนััะฒะธะต ั ะฟะพะปัะทะพะฒะฐัะตะปะตะผ ัะตัะตะท tty3
StandardInput=tty
TTYPath=/dev/tty3
TTYReset=yes
TTYVHangup=yes
[Install]
WantedBy=installer.target
เดเดเตเดตเดฟเตฝ, เดธเตเดเตเดฐเดฟเดชเตเดฑเตเดฑเต เดเดเตเดธเดฟเดเตเดฏเตเดเตเดเต เดเตเดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเตเดฑเต เดเดฐเต เดเดฆเดพเดนเดฐเดฃเด:
#!/bin/bash
# ะะตัะตั
ะพะดะธะผ ะฒ tty3
chvt 3
echo "Install, y/n ?"
read user_answer
เดเดฑเตเดฑเดตเตเด เดชเตเดฐเดงเดพเดจเดชเตเดชเตเดเตเด เดเดพเดฐเตเดฏเด final.target เดคเดฟเดฐเดเตเดเตเดเตเดเตเดเตเด เดเดจเตเดจเดคเดพเดฃเต - เดธเดฟเดธเตเดฑเตเดฑเด เดธเตเดฑเตเดฑเดพเตผเดเตเดเดชเตเดชเดฟเตฝ เดเดคเตเดคเตเดฃเตเด เดฒเดเตเดทเตเดฏเด. เดธเตเดฑเตเดฑเดพเตผเดเตเดเดชเตเดชเต เดชเตเดฐเดเตเดฐเดฟเดฏเดฏเดฟเตฝ, systemd เดกเดฟเดชเตปเดกเตปเดธเดฟเดเดณเดฟเดฒเตเดเต เดเดเดจเตเดจเตเดชเตเดเตเดเดฏเตเด เดเดตเดถเตเดฏเดฎเตเดณเตเดณเดคเตเดฒเตเดฒเดพเด เดธเดฎเดพเดฐเดเดญเดฟเดเตเดเตเดเดฏเตเด เดเตเดฏเตเดฏเตเด.
final.target เดคเดฟเดฐเดเตเดเตเดเตเดเตเดเตเดจเตเดจเดคเดฟเดจเต เดตเตเดฏเดคเตเดฏเดธเตเดค เดตเดดเดฟเดเดณเตเดฃเตเดเต, เดเดคเดฟเดจเดพเดฏเดฟ เดเดพเตป เดฒเตเดกเตผ เดเดชเตเดทเตป เดเดชเดฏเตเดเดฟเดเตเดเต.
เด เดตเดธเดพเดจ เดฒเตเดเตเดเต เดเดคเตเดชเตเดฒเต เดเดพเดฃเดชเตเดชเตเดเตเดจเตเดจเต:
- เดฌเตเดเตเดเตเดฒเตเดกเตผ เดเดฐเดเดญเดฟเดเตเดเตเดจเตเดจเต
- final.target เดชเดพเดฐเดพเดฎเตเดฑเตเดฑเตผ เดชเดพเดธเตเดธเดพเดเตเดเดฟ เดฌเตเดเตเดเตเดฒเตเดกเตผ เดซเตเดเดตเตเดฏเตผ เดธเดฎเดพเดฐเดเดญเดฟเดเตเดเดพเตป เดคเตเดเดเตเดเตเดจเตเดจเต
- Systemd เดธเดฟเดธเตเดฑเตเดฑเด เดเดฐเดเดญเดฟเดเตเดเดพเตป เดคเตเดเดเตเดเตเดจเตเดจเต. เด เดเดฟเดธเตเดฅเดพเดจเด. เดเดพเตผเดเตเดฑเตเดฑเดฟเตฝ เดจเดฟเดจเตเดจเต เดเตปเดธเตเดฑเตเดฑเดพเดณเตผ. เดเดพเตผเดเตเดฑเตเดฑเดฟเดฒเตเดเตเดเต เดคเตเดเตผเดเตเดเดฏเดพเดฏเดฟ เดชเตเดเตเดจเตเดจเต (เดเดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต, multi-user.target). เดฐเดฃเตเดเดพเดฎเดคเตเดคเตเดคเต เดเดตเดถเตเดฏเดฎเตเดณเตเดณ เดฎเตเดกเดฟเตฝ เดชเตเดฐเดตเตผเดคเตเดคเดฟเดเตเดเดพเตป เดธเดฟเดธเตเดฑเตเดฑเด เดเตเดฃเตเดเตเดตเดฐเตเดจเตเดจเต
เดฒเตเดเตเดเดฟเดจเดพเดฏเดฟ เดซเตเดเดตเตเดฏเตผ เดคเดฏเตเดฏเดพเดฑเดพเดเตเดเตเดจเตเดจเต
เดซเตเดเดตเตเดฏเตผ เดธเตเดทเตเดเดฟเดเตเดเตเดฎเตเดชเตเตพ, เดธเตเดฑเตเดฑเดพเตผเดเตเดเดชเตเดชเดฟเตฝ เดธเดฟเดธเตเดฑเตเดฑเด เด เดตเดธเตเดฅ เดชเตเดจเดเดธเตเดฅเดพเดชเดฟเดเตเดเตเดจเตเดจเดคเดฟเดจเตเด เดทเดเตเดเตเดกเตเตบ เดเตเดฏเตเดฏเตเดฎเตเดชเตเตพ เด เดคเต เดธเดเดฐเดเตเดทเดฟเดเตเดเตเดจเตเดจเดคเดฟเดจเตเดฎเตเดณเตเดณ เดเตเดฎเดคเดฒ เดเดฒเตเดฒเดพเดฏเตเดชเตเดชเตเดดเตเด เดเดฏเตผเดจเตเดจเตเดตเดฐเตเดจเตเดจเต. เดธเดเดธเตเดฅเดพเดจเด เดเดจเตเดจเดพเตฝ เดเตเตบเดซเดฟเดเดฑเตเดทเตป เดซเดฏเดฒเตเดเตพ, เดกเดพเดฑเตเดฑเดพเดฌเตเดธเต เดกเดฎเตเดชเตเดเตพ, เดเดจเตเดฑเตผเดซเตเดธเต เดเตเดฐเดฎเตเดเดฐเดฃเดเตเดเตพ เดฎเตเดคเดฒเดพเดฏเดต.
Systemd เดเดฐเต เดฒเดเตเดทเตเดฏเดคเตเดคเดฟเตฝ เดธเดฎเดพเดจเตเดคเดฐเดฎเดพเดฏเดฟ เดชเตเดฐเดเตเดฐเดฟเดฏเดเตพ เดชเตเดฐเดตเตผเดคเตเดคเดฟเดชเตเดชเดฟเดเตเดเตเดจเตเดจเต. เดธเตเดเตเดฐเดฟเดชเตเดฑเตเดฑเตเดเดณเตเดเต เดธเตเดฑเตเดฑเดพเตผเดเตเดเดชเตเดชเต เดธเตเดเตเดตเตปเดธเต เดจเดฟเตผเดฃเตเดฃเดฏเดฟเดเตเดเดพเตป เดจเดฟเดเตเดเดณเต เด เดจเตเดตเดฆเดฟเดเตเดเตเดจเตเดจ เดกเดฟเดชเตปเดกเตปเดธเดฟเดเตพ เดเดฃเตเดเต.
เดเดจเตเดฑเต เดชเตเดฐเตเดเดเตเดฑเตเดฑเดฟเตฝ เดเดคเต เดเดเตเดเดจเต เดชเตเดฐเดตเตผเดคเตเดคเดฟเดเตเดเตเดจเตเดจเต (
- เดธเดฟเดธเตเดฑเตเดฑเด เดเดฐเดเดญเดฟเดเตเดเตเดจเตเดจเต
- settings_restore.service เดธเตเดตเดจเด เดธเดฎเดพเดฐเดเดญเดฟเดเตเดเต. เดกเดพเดฑเตเดฑ เดตเดฟเดญเดพเดเดคเตเดคเดฟเดฒเต settings.txt เดซเดฏเดฒเดฟเดจเตเดฑเต เดธเดพเดจเตเดจเดฟเดงเตเดฏเด เดเดคเต เดชเดฐเดฟเดถเตเดงเดฟเดเตเดเตเดจเตเดจเต. เด
เดคเต เดเดฒเตเดฒเตเดเตเดเดฟเตฝ, เดเดฐเต เดฑเดซเดฑเตปเดธเต เดซเดฏเตฝ เด
เดคเดฟเดจเตเดฑเต เดธเตเดฅเดพเดจเดคเตเดคเต เดธเตเดฅเดพเดชเดฟเดเตเดเตเดจเตเดจเต, เด
เดเตเดคเตเดคเดคเดพเดฏเดฟ, เดธเดฟเดธเตเดฑเตเดฑเด เดเตเดฐเดฎเตเดเดฐเดฃเดเตเดเตพ เดชเตเดจเดเดธเตเดฅเดพเดชเดฟเดเตเดเตเดจเตเดจเต:
- เด เดกเตเดฎเดฟเดจเดฟเดธเตเดเตเดฐเตเดฑเตเดฑเตผ เดชเดพเดธเตเดตเตเดกเต
- เดนเตเดธเตเดฑเตเดฑเต เดจเดพเดฎเด,
- เดธเดฎเดฏ เดฎเตเดเดฒ
- เดชเตเดฐเดฆเตเดถเด
- เดเดฒเตเดฒเดพ เดฎเตเดกเดฟเดฏเดฏเตเด เดเดชเดฏเตเดเดฟเดเตเดเตเดจเตเดจเตเดฃเตเดเต เดเดจเตเดจเต เดจเดฟเตผเดฃเตเดฃเดฏเดฟเดเตเดเตเดจเตเดจเต. เดกเดฟเดซเตเตพเดเตเดเดพเดฏเดฟ, เดเดฎเตเดเต เดตเดฒเตเดชเตเดชเด เดเตเดฑเตเดคเดพเดฃเต - เดฎเตเดกเดฟเดฏเดฏเดฟเดฒเตเดเตเดเต เดชเดเตผเดคเตเดคเดพเดจเตเด เดฑเตเดเตเดเตเตผเดกเตเดเตเดฏเตเดฏเดพเดจเตเดฎเตเดณเตเดณ เดเดณเตเดชเตเดชเดคเตเดคเดฟเดจเดพเดฏเดฟ. เดเดฐเดเดญเดฟเดเตเดเตเดฎเตเดชเตเตพ, เดเดชเดฏเตเดเดฟเดเตเดเดพเดคเตเดค เดเดเด เดเดชเตเดชเตเดดเตเด เดเดฃเตเดเต เดเดจเตเดจเต เดชเดฐเดฟเดถเตเดงเดฟเดเตเดเตเดจเตเดจเต. เดเดฃเตเดเตเดเตเดเดฟเตฝ, เดกเดฟเดธเตเดเต เดตเตเดฃเตเดเตเด เดชเดพเตผเดเตเดเตเดทเตป เดเตเดฏเตเดฏเตเดจเตเดจเต.
- MAC เดตเดฟเดฒเดพเดธเดคเตเดคเดฟเตฝ เดจเดฟเดจเตเดจเต เดฎเตเดทเตเตป เดเดกเดฟ เดธเตเดทเตเดเดฟเดเตเดเตเดจเตเดจเต. DHCP เดตเดดเดฟ เดเดฐเต เดตเดฟเดฒเดพเดธเด เดฒเดญเดฟเดเตเดเตเดจเตเดจเดคเดฟเดจเต เดเดคเต เดชเตเดฐเดงเดพเดจเดฎเดพเดฃเต
- เดจเตเดฑเตเดฑเตโเดตเตผเดเตเดเต เดเตเดฐเดฎเตเดเดฐเดฃเดเตเดเตพ
- เดฒเตเดเตเดเดณเตเดเต เดตเดฒเตเดชเตเดชเด เดชเดฐเดฟเดฎเดฟเดคเดชเตเดชเตเดเตเดคเตเดคเตเดจเตเดจเต
- เดเดเตโเดธเตโเดฑเตเดฑเตเดฃเตฝ เดกเตเดฐเตเดตเต เดเตเดฒเดฟเดเตเดเดพเดฏเดฟ เดคเดฏเตเดฏเดพเดฑเตเดเตเดเตเดเตเดเดฏเดพเดฃเต (เด เดจเตเดฌเดจเตเดง เดเดชเตเดทเตป เดชเตเดฐเดตเตผเดคเตเดคเดจเดเตเดทเดฎเดฎเดพเดเตเดเดฟเดฏเดฟเดฐเดฟเดเตเดเตเดเดฏเตเด เดกเตเดฐเตเดตเต เดชเตเดคเดฟเดฏเดคเดพเดฃเตเดเตเดเดฟเตฝ)
- postgresq เดเดฐเดเดญเดฟเดเตเดเตเด
- เดชเตเดจเดเดธเตเดฅเดพเดชเดฟเดเตเดเตฝ เดธเตเดตเดจเด เดเดฐเดเดญเดฟเดเตเดเตเดจเตเดจเต. Zabbix เดคเดจเตเดจเตเดฏเตเด เด
เดคเดฟเดจเตเดฑเต เดกเดพเดฑเตเดฑเดพเดฌเตเดธเตเด เดคเดฏเตเดฏเดพเดฑเดพเดเตเดเดพเตป เดเดคเต เดเดตเดถเตเดฏเดฎเดพเดฃเต:
- เดเดคเดฟเดจเดเด เดเดฐเต zabbix เดกเดพเดฑเตเดฑเดพเดฌเตเดธเต เดเดฃเตเดเต เดเดจเตเดจเต เดชเดฐเดฟเดถเตเดงเดฟเดเตเดเตเดจเตเดจเต. เดเดฒเตเดฒเตเดเตเดเดฟเตฝ, เดเดคเต เดเดจเตเดทเตเดฏเดฒเตเดธเตเดทเตป เดกเดฎเตเดชเตเดเดณเดฟเตฝ เดจเดฟเดจเตเดจเดพเดฃเต (zabbix เดเตพเดชเตเดชเตเดเตเดคเตเดคเดฟเดฏเดฟเดฐเดฟเดเตเดเตเดจเตเดจเดคเต)
- เดธเดฎเดฏ เดฎเตเดเดฒเดเดณเตเดเต เดเดฐเต เดฒเดฟเดธเตเดฑเตเดฑเต เดธเตเดทเตเดเดฟเดเตเดเต (เดตเตเดฌเต เดเดจเตเดฑเตผเดซเตเดธเดฟเตฝ เด เดต เดชเตเดฐเดฆเตผเดถเดฟเดชเตเดชเดฟเดเตเดเดพเตป เดเดตเดถเตเดฏเดฎเดพเดฃเต)
- เดจเดฟเดฒเดตเดฟเดฒเต เดเดชเดฟ เดเดฃเตเดเตเดคเตเดคเดฟ, เด เดคเต เดชเตเดฐเดถเตเดจเดคเตเดคเดฟเตฝ เดชเตเดฐเดฆเตผเดถเดฟเดชเตเดชเดฟเดเตเดเดฟเดฐเดฟเดเตเดเตเดจเตเดจเต (เดเตบเดธเตเดณเดฟเดฒเตเดเตเดเต เดฒเตเดเดฟเตป เดเตเดฏเตเดฏเดพเดจเตเดณเตเดณ เดเตเดทเดฃเด)
- เดเตเดทเดฃเด เดฎเดพเดฑเตเดจเตเดจเต - เดเตเดฒเดฟ เดเตเดฏเตเดฏเดพเตป เดคเดฏเตเดฏเดพเดฑเดพเดฃเต เดเดจเตเดจ เดตเดพเดเดเด เดฆเตเดถเตเดฏเดฎเดพเดเตเดจเตเดจเต
- เดซเตเดเดตเตเดฏเตผ เดเดชเดฏเตเดเดคเตเดคเดฟเดจเต เดคเดฏเตเดฏเดพเดฑเดพเดฃเต
เดธเตเดตเดจ เดซเดฏเดฒเตเดเตพ เดชเตเดฐเดงเดพเดจเดฎเดพเดฃเต, เด เดตเดฏเดพเดฃเต เด เดตเดฏเตเดเต เดธเดฎเดพเดฐเดเดญเดคเตเดคเดฟเดจเตเดฑเต เดเตเดฐเดฎเด เดธเดเตเดเดฎเดพเดเตเดเตเดจเตเดจเดคเต
[Unit]
Description=restore system settings
Before=network.service prepare.service postgresql.service systemd-networkd.service systemd-resolved.service
[Service]
Type=oneshot
ExecStart=/usr/bin/settings_restore.sh
[Install]
WantedBy=multi-user.target
เดจเดฟเดเตเดเตพเดเตเดเต เดเดพเดฃเดพเดจเดพเดเตเดจเตเดจเดคเตเดชเตเดฒเต, เดเดพเตป เดกเดฟเดชเตปเดกเตปเดธเดฟเดเตพ เดเตปเดธเตเดฑเตเดฑเดพเตพ เดเตเดฏเตเดคเดคเดฟเดจเดพเตฝ เดเดจเตเดฑเต เดธเตเดเตเดฐเดฟเดชเตเดฑเตเดฑเต เดเดฆเตเดฏเด เดชเตเดฐเดตเตผเดคเตเดคเดฟเดเตเดเตเด, เด เดคเดฟเดจเตเดถเตเดทเด เดฎเดพเดคเตเดฐเดฎเต เดจเตเดฑเตเดฑเตโเดตเตผเดเตเดเต เดเดฏเดฐเตเดเดฏเตเด DBMS เดเดฐเดเดญเดฟเดเตเดเตเดเดฏเตเด เดเตเดฏเตเดฏเตเด.
เดฐเดฃเตเดเดพเดฎเดคเตเดคเต เดธเตเดตเดจเด (zabbix เดคเดฏเตเดฏเดพเดฑเตเดเตเดชเตเดชเต)
#!/bin/sh
[Unit]
Description=monitor prepare system
After=postgresql.service settings_restore.service
Before=zabbix-server.service zabbix-agent.service
[Service]
Type=oneshot
ExecStart=/usr/bin/prepare.sh
[Install]
WantedBy=multi-user.target
เดเดตเดฟเดเต เดเดคเต เด เตฝเดชเตเดชเด เดธเดเตเดเตเตผเดฃเตเดฃเดฎเดพเดฃเต. เดฒเตเดเตเดเต multi-user.target-เดฒเตเด เดเดฃเต, เดเดจเตเดจเดพเตฝ postgresql DBMS-เดเด เดเดจเตเดฑเต setting_restore-เดเด เดเดฐเดเดญเดฟเดเตเดเดคเดฟเดจเต เดถเตเดทเด. เดเดจเตเดจเดพเตฝ zabbix เดธเตเดตเดจเดเตเดเตพ เดเดฐเดเดญเดฟเดเตเดเตเดจเตเดจเดคเดฟเดจเต เดฎเตเดฎเตเดชเต.
เดฒเตเดเตเดฐเตเดเตเดเตเดฑเตเดฑเดฟเดจเตเดณเตเดณ เดเตเดฎเตผ เดธเตเดตเดจเด
Systemd-เดจเต CRON เดฎเดพเดฑเตเดฑเดฟเดธเตเดฅเดพเดชเดฟเดเตเดเดพเตป เดเดดเดฟเดฏเตเด. เดเตเดฐเดตเดฎเดพเดฏเดฟ. เดฎเดพเดคเตเดฐเดฎเดฒเตเดฒ, เดเตเดคเตเดฏเดค เดฎเดฟเดจเดฟเดฑเตเดฑเตเดเตพ เดตเดฐเตเดฏเดฒเตเดฒ, เดฐเดฃเตเดเดพเดฎเดคเตเดคเตเดคเต เดตเดฐเต (เดเดตเดถเตเดฏเดฎเตเดเตเดเดฟเตฝ เดเดจเตเดคเต) เด
เดฒเตเดฒเตเดเตเดเดฟเตฝ เดเดฐเต เดเดตเดจเตเดฑเดฟเตฝ เดจเดฟเดจเตเดจเต เดเดพเดฒเดนเดฐเดฃเดชเตเดชเตเดเตเดเดพเตฝ เดตเดฟเดณเดฟเดเตเดเดชเตเดชเตเดเตเดจเตเดจ เดเดฐเต เดเดเดคเดพเดจเดฎเดพเดฏ เดเตเดฎเตผ เดจเดฟเดเตเดเตพเดเตเดเต เดธเตเดทเตเดเดฟเดเตเดเดพเตป เดเดดเดฟเดฏเตเด.
เดเดพเตป เดธเตเดทเตเดเดฟเดเตเด เดฎเตเดทเตเดจเตเดฑเต เดคเตเดเดเตเดเด เดฎเตเดคเดฒเตเดณเตเดณ เดธเดฎเดฏเด เดเดฃเดเตเดเดพเดเตเดเตเดจเตเดจเดคเต เดเดเดคเดพเดจเดฎเดพเดฏ เดเตเดฎเตผ เดเดฏเดฟเดฐเตเดจเตเดจเต.
เดเดคเดฟเดจเต 2 เดซเดฏเดฒเตเดเตพ เดเดตเดถเตเดฏเดฎเดพเดฃเต
logrotateTimer.service - เดธเตเดตเดจเดคเตเดคเดฟเดจเตเดฑเต เดฏเดฅเดพเตผเดคเตเดฅ เดตเดฟเดตเดฐเดฃเด:
[Unit]
Description=run logrotate
[Service]
ExecStart=logrotate /etc/logrotate.conf
TimeoutSec=300
เดเดคเต เดฒเดณเดฟเดคเดฎเดพเดฃเต - เดฒเตเดเตเดเต เดเดฎเดพเตปเดกเดฟเดจเตเดฑเต เดตเดฟเดตเดฐเดฃเด.
เดเตเดฎเดฑเตเดเตพ เดชเตเดฐเดตเตผเดคเตเดคเดฟเดเตเดเตเดจเตเดจ เดฐเดฃเตเดเดพเดฎเดคเตเดคเต เดซเดฏเตฝ logrotateTimer.timer เดเดฃเต:
[Unit]
Description=Run logrotate
[Timer]
OnBootSec=15min
OnUnitActiveSec=15min
[Install]
WantedBy=timers.target
เดเดตเดฟเดเต เดเดจเตเดคเดพเดฃเตเดณเตเดณเดคเต:
- เดเตเดฎเตผ เดตเดฟเดตเดฐเดฃเด
- เดธเดฟเดธเตเดฑเตเดฑเด เดฌเตเดเตเดเดฟเตฝ เดจเดฟเดจเตเดจเต เดเดฐเดเดญเดฟเดเตเดเตเดจเตเดจ เดเดฆเตเดฏ เดเดฐเดเดญ เดธเดฎเดฏเด
- เดเตเดเตเดคเตฝ เดตเดฟเดเตเดทเตเดชเดฃเดเตเดเดณเตเดเต เดเดพเดฒเดฏเดณเดตเต
- เดเตเดฎเตผ เดธเตเดตเดจเดคเตเดคเต เดเดถเตเดฐเดฏเดฟเดเตเดเตเด. เดตเดพเดธเตเดคเดตเดคเตเดคเดฟเตฝ, เดเดคเดพเดฃเต เดเตเดฎเตผ เดจเดฟเตผเดฎเตเดฎเดฟเดเตเดเตเดจเตเดจเดคเต
เดทเดเตเดเตเดกเตเตบ เดเตเดฏเตเดฏเตเดฎเตเดชเตเตพ เดเดจเตเดฑเดฑเดพเดเตเดเตเดตเต เดธเตเดเตเดฐเดฟเดชเตเดฑเตเดฑเตเด เดจเดฟเดเตเดเดณเตเดเต เดทเดเตเดเตเดกเตเตบ เดฒเดเตเดทเตเดฏเดตเตเด
เดฎเดฑเตเดฑเตเดฐเต เดธเดเดญเดตเดตเดฟเดเดพเดธเดคเตเดคเดฟเตฝ, เดฎเตเดทเตเตป เดเดซเต เดเตเดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เดเตเดเตเดคเตฝ เดธเดเตเดเตเตผเดฃเตเดฃเดฎเดพเดฏ เดเดฐเต เดชเดคเดฟเดชเตเดชเต เดเดจเดฟเดเตเดเต เดเตเดฏเตเดฏเตเดฃเตเดเดฟเดตเดจเตเดจเต - เดเดจเตเดฑเต เดธเตเดตเดจเตเดคเด เดฒเดเตเดทเตเดฏเดคเตเดคเดฟเดฒเตเดเต, เดจเดฟเดฐเดตเดงเดฟ เดชเตเดฐเดตเตผเดคเตเดคเดจเดเตเดเตพ เดจเดเดคเตเดคเตเดจเตเดจเดคเดฟเดจเต. RemainAfterExit เดเดชเตเดทเตป เดเดชเดฏเตเดเดฟเดเตเดเต เดเดฐเต เดตเตบเดทเตเดเตเดเต เดธเตเดตเดจเด เดธเตเดทเตเดเดฟเดเตเดเดพเตป เดธเดพเดงเดพเดฐเดฃเดฏเดพเดฏเดฟ เดถเตเดชเดพเตผเดถ เดเตเดฏเตเดฏเดชเตเดชเตเดเตเดจเตเดจเต, เดเดจเตเดจเดพเตฝ เดเดคเต เดเดฐเต เดเดจเตเดฑเดฑเดพเดเตเดเตเดตเต เดธเตเดเตเดฐเดฟเดชเตเดฑเตเดฑเต เดธเตเดทเตเดเดฟเดเตเดเตเดจเตเดจเดคเดฟเตฝ เดจเดฟเดจเตเดจเต เดจเดฟเดเตเดเดณเต เดคเดเดฏเตเดจเตเดจเต.
เดเดจเตเดจเดพเตฝ ExecOnStop เดเดชเตเดทเตป เดฒเตเดเตเดเต เดเตเดฏเตเดฏเตเดจเตเดจ เดเดฎเดพเตปเดกเตเดเตพ TTY เดจเต เดชเตเดฑเดคเตเดคเต เดเดเตเดธเดฟเดเตเดฏเตเดเตเดเต เดเตเดฏเตเดฏเดชเตเดชเตเดเตเดจเตเดจเต เดเดจเตเดจเดคเดพเดฃเต เดตเดธเตเดคเตเดค! เดเดคเต เดชเดฐเดฟเดถเตเดงเดฟเดเตเดเตเดจเตเดจเดคเต เดเดณเตเดชเตเดชเดฎเดพเดฃเต - tty เดเดฎเดพเตปเดกเต เดเดเตเดเดฟเดเตเดเต เด เดคเดฟเดจเตเดฑเต เดเดเตเดเตเดชเตเดเตเดเต เดธเดเดฐเดเตเดทเดฟเดเตเดเตเด.
เด
เดคเดฟเดจเดพเตฝ, เดเดจเตเดฑเต เดฒเดเตเดทเตเดฏเดคเตเดคเดฟเดฒเตเดเต เดเดพเตป เดทเดเตเดเตเดกเตเตบ เดจเดเดชเตเดชเดฟเดฒเดพเดเตเดเดฟ. 100% เดถเดฐเดฟเดฏเดพเดฃเตเดจเตเดจเต เดเดพเตป เด
เดตเดเดพเดถเดชเตเดชเตเดเตเดจเตเดจเดฟเดฒเตเดฒ, เดชเดเตเดทเต เด
เดคเต เดชเตเดฐเดตเตผเดคเตเดคเดฟเดเตเดเตเดจเตเดจเต!
เดเดคเต เดเดเตเดเดจเต เดเตเดฏเตเดคเต (เดชเตเดคเตเดตเดพเดฏ เดฐเตเดคเดฟเดฏเดฟเตฝ):
เดเดพเตป my_shutdown.target เดเดฐเต เดเดพเตผเดเตเดฑเตเดฑเต เดธเตเดทเตเดเดฟเดเตเดเต, เด
เดคเต เดเดฐเตเดฏเตเด เดเดถเตเดฐเดฏเดฟเดเตเดเตเดจเตเดจเดฟเดฒเตเดฒ:
my_shutdown.target
[Unit]
Description=my shutdown
AllowIsolate=yes
Wants=my_shutdown.service
เด เดฒเดเตเดทเตเดฏเดคเตเดคเดฟเดฒเตเดเตเดเต เดชเตเดเตเดฎเตเดชเตเตพ (systemctl isolate my_shutdwn.target เดตเดดเดฟ), เด เดคเต my_shutdown.service เดธเตเดตเดจเด เดธเดฎเดพเดฐเดเดญเดฟเดเตเดเต, เดเดคเดฟเดจเตเดฑเต เดเตเดฎเดคเดฒ เดตเดณเดฐเต เดฒเดณเดฟเดคเดฎเดพเดฃเต - my_shutdown.sh เดธเตเดเตเดฐเดฟเดชเตเดฑเตเดฑเต เดเดเตเดธเดฟเดเตเดฏเตเดเตเดเต เดเตเดฏเตเดฏเตเด:
[Unit]
Description=MY shutdown
[Service]
Type=oneshot
ExecStart=/usr/bin/my_shutdown.sh
StandardInput=tty
TTYPath=/dev/tty3
TTYReset=yes
TTYVHangup=yes
WantedBy=my_shutdown.target
- เด เดธเตเดเตเดฐเดฟเดชเตเดฑเตเดฑเดฟเดจเตเดณเตเดณเดฟเตฝ เดเดพเตป เดเดตเดถเตเดฏเดฎเดพเดฏ เดชเตเดฐเดตเตผเดคเตเดคเดจเดเตเดเตพ เดเตเดฏเตเดฏเตเดจเตเดจเต. เดซเตเดฒเตเดเตเดธเดฟเดฌเดฟเดฒเดฟเดฑเตเดฑเดฟเดเตเดเตเด เดธเตเดเดฐเตเดฏเดคเตเดคเดฟเดจเตเดฎเดพเดฏเดฟ เดจเดฟเดเตเดเตพเดเตเดเต เดจเดฟเดฐเดตเดงเดฟ เดธเตเดเตเดฐเดฟเดชเตเดฑเตเดฑเตเดเตพ เดเดพเตผเดเตเดฑเตเดฑเดฟเดฒเตเดเตเดเต เดเตเตผเดเตเดเดพเตป เดเดดเดฟเดฏเตเด:
my_shutdown.sh
#!/bin/bash --login
if [ -f /tmp/reboot ];then
command="systemctl reboot"
elif [ -f /tmp/shutdown ]; then
command="systemctl poweroff"
fi
#ะะพั ะทะดะตัั ะฝัะถะฝัะต ะบะพะผะฐะฝะดั
#ะะฐะฟัะธะผะตั, cp /home/user/data.txt /storage/user/
$command
เดเตเดฑเดฟเดชเตเดชเต. /tmp/reboot, /tmp/shutdown เดซเดฏเดฒเตเดเตพ เดเดชเดฏเตเดเดฟเดเตเดเตเดจเตเดจเต. เดชเดพเดฐเดพเดฎเตเดฑเตเดฑเดฑเตเดเตพ เดเดชเดฏเตเดเดฟเดเตเดเต เดจเดฟเดเตเดเตพเดเตเดเต เดเดพเตผเดเตเดฑเตเดฑเดฟเดจเต เดตเดฟเดณเดฟเดเตเดเดพเตป เดเดดเดฟเดฏเดฟเดฒเตเดฒ. เดธเตเดตเดจเด เดฎเดพเดคเตเดฐเดฎเต เดธเดพเดงเตเดฏเดฎเดพเดเต.
เดเดจเตเดจเดพเตฝ เดเตเดฒเดฟเดฏเดฟเตฝ เดตเดดเดเตเดเดตเตเด เดชเตเดฐเดตเตผเดคเตเดคเดจเดเตเดเดณเตเดเต เดเดฑเดชเตเดชเตเดณเตเดณ เดเตเดฐเดฎเดตเตเด เดฒเดญเดฟเดเตเดเดพเตป เดเดพเตป เดเดพเตผเดเตเดฑเตเดฑเต เดเดชเดฏเตเดเดฟเดเตเดเตเดจเตเดจเต.
เดเดจเตเดจเดฟเดฐเตเดจเตเดจเดพเดฒเตเด, เดเดฑเตเดฑเดตเตเด เดฐเดธเดเดฐเดฎเดพเดฏ เดเดพเดฐเตเดฏเด เดชเดฟเดจเตเดจเตเดเต เดตเดจเตเดจเต. เดฎเตเดทเตเตป เดเดซเต/เดชเตเดจเดฐเดพเดฐเดเดญเดฟเดเตเดเตเดฃเตเดเดคเตเดฃเตเดเต. เดเตเดเดพเดคเต 2 เดเดชเตเดทเดจเตเดเตพ เดเดฃเตเดเต:
- เดจเดฟเดเตเดเดณเตเดเต เดธเตเดเตเดฐเดฟเดชเตเดฑเตเดฑเต เดเดชเดฏเตเดเดฟเดเตเดเต เดฑเตเดฌเตเดเตเดเต, เดทเดเตเดเตเดกเตเตบ, เดฎเดฑเตเดฑเต เดเดฎเดพเตปเดกเตเดเตพ (เด เดต เดเดชเตเดชเตเดดเตเด systemctl-เดฒเตเดเตเดเตเดณเตเดณ เดธเดฟเดเดฒเดฟเดเตเดเตเดเตพ) เดฎเดพเดฑเตเดฑเดฟเดธเตเดฅเดพเดชเดฟเดเตเดเตเด. เดธเตเดเตเดฐเดฟเดชเตเดฑเตเดฑเดฟเดจเตเดณเตเดณเดฟเตฝ, my_shutdown.target เดเดจเตเดจเดคเดฟเดฒเตเดเตเดเต เดชเตเดเตเด. เดเดพเตผเดเตเดฑเตเดฑเดฟเดจเตเดณเตเดณเดฟเดฒเต เดธเตเดเตเดฐเดฟเดชเตเดฑเตเดฑเตเดเตพ systemctl-เดจเต เดจเตเดฐเดฟเดเตเดเต เดตเดฟเดณเดฟเดเตเดเตเด, เดเดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต, systemctl เดฑเตเดฌเตเดเตเดเต
- เดเดฐเต เดฒเดณเดฟเดคเดฎเดพเดฏ เดเดชเตเดทเตป, เดชเดเตเดทเต เดเดจเดฟเดเตเดเดคเต เดเดทเตเดเดฎเดฒเตเดฒ. เดเดฒเตเดฒเดพ เดเดจเตเดฑเตผเดซเตเดธเตเดเดณเดฟเดฒเตเด, เดทเดเตเดเตเดกเตเตบ/เดฑเตเดฌเตเดเตเดเต/เดฎเดฑเตเดฑเตเดณเตเดณเดต เดเดจเตเดจเต เดตเดฟเดณเดฟเดเตเดเดฐเตเดคเต, เดเดจเตเดจเดพเตฝ เดเดพเตผเดเตเดฑเตเดฑเต systemctl เดเดธเตเดฒเตเดฑเตเดฑเต my_shutdown.target-เดฒเตเดเตเดเต เดจเตเดฐเดฟเดเตเดเต เดตเดฟเดณเดฟเดเตเดเตเด.
เดเดพเตป เดเดฆเตเดฏ เดเดชเตเดทเตป เดคเดฟเดฐเดเตเดเตเดเตเดคเตเดคเต. systemd-เตฝ, reboot (poweroff เดชเตเดฒเต) systemd-เดฒเตเดเตเดเตเดณเตเดณ เดธเดฟเดเดฒเดฟเดเตเดเตเดเดณเดพเดฃเต.
ls -l /sbin/poweroff
lrwxrwxrwx 1 root root 14 ัะตะฝ 30 18:23 /sbin/poweroff -> /bin/systemctl
เด
เดคเดฟเดจเดพเตฝ, เดจเดฟเดเตเดเตพเดเตเดเต เด
เดต เดจเดฟเดเตเดเดณเตเดเต เดธเตเดตเดจเตเดคเด เดธเตเดเตเดฐเดฟเดชเตเดฑเตเดฑเตเดเตพ เดเดชเดฏเตเดเดฟเดเตเดเต เดฎเดพเดฑเตเดฑเดฟเดธเตเดฅเดพเดชเดฟเดเตเดเดพเด:
เดฑเตเดฌเตเดเตเดเต เดเตเดฏเตเดฏเตเด
#!/bin/sh
touch /tmp/reboot
sudo systemctl isolate my_shutdown.target
fi
เด เดตเดฒเดเดฌเด: www.habr.com