Her iki cevap da doğru olsa da, tartışmaya iki kuruş eklemek istiyorum, çünkü aradığımda bazı talimatlar ve nasıl devam edileceğine dair örnekler eksikti.
- Dosya sistemini şuraya ekle:
/etc/fstab
- Tip
mount -a
fstab içinde belirtilen bütün dosya sistemlerini bağlar
- Şununla oluşturulmuş sistem birimini arayın:
systemctl list-units | grep '/path/to/mount' | awk '{ print $1 }'
(biten bir şey döndürmeli .mount
)
- Bulunan mount birimini dosyadaki
After=
ifadeye ekle*.service
my-daemon
Hizmeti önyüklemede başlatmanın bir örneği, ancak ağ hazır olduktan sonra, bir CIFS paylaşımına bağlı /mnt/cifs
ve vpn-launch
hizmet başladı:
/ Etc / fstab
//servername/sharename /mnt/cifs cifs defaults,some,other,options 0 0
Not: nofail
fstab seçeneklerinizi (örneğin harici bir sürücü kullanırken) eklemek isteyebilirsiniz . Aksi takdirde, cihaz bağlı değilse makineniz açılmaz. Bkz ArchWiki en fstab makaleye
/etc/systemd/system/my-daemon.service
[Unit]
Description=Launch My Daemon
Requires=vpn-launch.service mnt-cifs.mount
After=network.target vpn-launch.service mnt-cifs.mount
[Service]
ExecStart=/path/to/my-daemon
[Install]
WantedBy=multi-user.target
Hizmeti önyüklemede başlatılacak şekilde etkinleştirmeyi unutmayın: systemctl enable my-daemon
Bunun, diğer dosya sistemleri (NFS, HDD'ler, vb.) İçin de geçerli olduğunu unutmayın.
Daha önce de belirtildiği gibi, her iki cevap da doğrudur ve herkesi okumaya teşvik ediyorum ama benim için birkaç örnek bana zaman kazandırdı.
Güncelleme (2019-06-25):
- Harici sürücüler kullanırken önyükleme kilidini önlemek için fstab seçenekleriyle ilgili bir not eklendi
- cifs mount başarılı bir şekilde monte edilmediğinde, hatanın başlamasına neden
mnt-cifs.mount
olan Requires=
listeye eklendi .my-daemon.service
systemd-remount-fs
Listenize eklerseniz işe yarar mıAfter
?