Kabul edilen cevap doğrudur, ancak rtorrent
hizmetin bir systemctl
servis betiği ile "güvenli" kapatmanın nasıl gerçekleştirileceğini belirtmez .
Mevcut cevapların veya komut dosyalarının çoğu ekran oturumunu veya rtorrent
sürecin kendisini “öldürür” . Bunu yaparken , süreci durduran / öldüren bir SIGINT (2)
veya SIGQUIT (3)
sinyal gönderirler rtorrent
. Bunun dezavantajı, genellikle kilitlenmeyen dosyanın kilitlenmediğinden rtorrent
silinmesidir rtorrent
. Sonuç olarak, bir sonraki başlangıcı rtorrent
kalıcı kilit dosyası nedeniyle başarısız olur.
Kaynak kodunartorrent
göz atarak beklediğini gösterir SIGTERM (15)
. Bu nedenle, bir systemctl
servis betiği düşünüldüğünde stop komutu şöyle görünebilir:
ExecStop=/usr/bin/kill -s 15 \`pidof rtorrent`
pidof
Mevcut değilse , aşağıdakileri de kullanabilirsiniz:
ps -A | grep "rtorrent" | awk '{print $1}'
ps
mevcut süreçleri listeler
grep
rtorrent işlem detaylarını çıkarır
awk
pid'i seçer ve stdout'a görüntüler
Kapatma tamamlanana kadar beklemeniz gerekirse kullanabilirsiniz killall -w
. Bunu not et:
killall
eğer sinyal görmezden gelindiyse, etkisizse ya da işlem zombi durumunda kalırsa (kaynak:) sonsuza kadar bekleyebilir man killall
.
sudo service start rtorrent
mi