จะเริ่มหยุดและรีสตาร์ท rtorrent ได้อย่างไร?


22

ฉันเพียงแค่ติดตั้งrtorrentบนเครื่อง 12.04 apt-getอูบุนตูเซิร์ฟเวอร์ของฉันผ่านทาง

ฉันจะเริ่มต้นอย่างไร | หยุด | รีสตาร์ทบริการหรือไม่


คุณเคยลองsudo service start rtorrentไหม
BiggJJ

sudo service rtorrent startนั่นคือ แต่ใช่ฉันได้ลองแล้ว rtorrent: unrecognized serviceมันก็เอาท์พุท ถ้าผมเขียนและกดแท็บเสร็จสิ้นไปsudo service rto rtorrentInit.shฉันไม่รู้ว่ามันคืออะไร แต่ฉันจำได้ (จากมัคคุเทศก์ที่ไปไกลใน interwebs) ที่ฉันเขียนrtorrentและstopแต่ไม่ใช่ในลำดับที่และไม่ว่าจะมีคำอื่นในระหว่าง ฉันไม่ได้เขียนrtorrentInit.shครั้งแรก
lindhe

ใช่นั่นคือสิ่งที่ฉันหมายถึง มีรูปลักษณ์ที่นี่: Ubuntu 12.04 LTS Dedicated Server rTorrent 7-8 ขั้นตอนสุดท้ายเกี่ยวกับการติดตั้งและเริ่ม rtorrent บางทีมันอาจส่องแสงบางอย่าง
BiggJJ

ฉันได้อ่านแล้วจากบนลงล่าง แต่ขอบคุณนะยังไงก็ตาม สำหรับช่วงเวลาที่ฉันสามารถไปรอบ ๆ กับหน้าจอและเพียงแค่กระโดดลงไปใน rtorrent และออกจากที่นั่น แต่ฉันจะปล่อยให้หัวข้อนี้เปิดถ้ามีใครรู้คำตอบ
lindhe

คำตอบ:


22

ในการเริ่ม rtorrent เพียงกดCtrl+ Alt+ Tบนแป้นพิมพ์เพื่อเปิด Terminal เมื่อเปิดขึ้นให้เรียกใช้คำสั่งด้านล่าง:

rtorrent

เพื่อหยุดCtrl+ D เพื่อออกจากCtrl+q

คำสั่งข้างต้นที่คุณทำหลังจากกดEnterในหน้าต่าง rtorrent

สำหรับข้อมูลเพิ่มเติมดูผลลัพธ์ของ:

rtorrent -h

และ / หรือดูการใช้ rtorrent อย่างมืออาชีพ


นี่คือคำตอบที่ถูกต้อง ฉันกลัวว่าฉันอาจผสมคำแนะนำสำหรับโปรแกรมนี้กับโปรแกรมอื่น ๆ ดังนั้นสิ่งที่ฉันกำลังมองหาอาจไม่มีอยู่จริง ฉันขอโทษสำหรับปัญหา แต่หวังว่าคนอื่นจะได้ใช้หัวข้อนี้
lindhe

เป็นมูลค่าการกล่าวขวัญว่าอาจใช้เวลาสักครู่rtorrentเพื่อปิดไฟล์ทั้งหมดและออกหลังจากCtrl+ q- ไม่ได้หมายความว่ามันไม่ใช่ส่วนผสมที่ลงตัว
Skippy le Grand Gourou

4

คำตอบที่ยอมรับนั้นถูกต้อง แต่ไม่ได้ระบุวิธีการปิดrtorrentบริการ"ปลอดภัย" ด้วยsystemctlสคริปต์บริการ

คำตอบหรือสคริปต์ที่มีอยู่ส่วนใหญ่ "ฆ่า" ทั้งเซสชันหน้าจอหรือrtorrentกระบวนการเอง ในการทำเช่นนั้นพวกเขาส่งSIGINT (2)หรือSIGQUIT (3)สัญญาณที่หยุด / ฆ่าrtorrentกระบวนการ ข้อเสียเปรียบคือโดยทั่วไปแล้วไฟล์ล็อคของrtorrentจะไม่ถูกลบเพราะrtorrentไม่ได้ปิดอย่างถูกต้อง ดังนั้นการเริ่มต้นครั้งถัดไปของrtorrentจะล้มเหลวเนื่องจากไฟล์ล็อคถาวร

การดูที่มารหัสที่มาของการrtorrentSIGTERM (15)แสดงให้เห็นว่ามันคาดว่า ดังนั้นเมื่อพิจารณาsystemctlเซอร์วิสสคริปต์คำสั่ง stop อาจมีลักษณะดังนี้:

ExecStop=/usr/bin/kill -s 15 \`pidof rtorrent`

หากpidofไม่มีให้ใช้คุณสามารถใช้สิ่งต่อไปนี้:

ps -A | grep "rtorrent" | awk '{print $1}'
  • ps รายการกระบวนการปัจจุบัน
  • grep แยกรายละเอียดกระบวนการ rtorrent
  • awk เลือก pid และแสดงเป็น stdout

killall -wในกรณีที่คุณต้องรอจนกว่าจะปิดระบบเสร็จสมบูรณ์แล้วคุณสามารถใช้ โปรดทราบว่า:

killallอาจจะรอตลอดหากสัญญาณถูกละเว้นไม่มีผลหรือถ้าเข้าพักกระบวนการในรัฐผีดิบ (ที่มา: man killall)


1
kill -s 15 `pidof rtorrent`อาจเป็นได้ง่ายขึ้นkillall rtorrent(15 หรือSIGTERMเป็นสัญญาณเริ่มต้นที่ส่งมาจากkillและkillall)
David Foerster

1
นอกจากนี้ที่ในsignal_handler.ccที่คุณเห็น rtorrent ที่คาดว่าจะยุติ SIGTERM ตัวเองได้อย่างสง่างาม? ฉันเห็นรหัสการจัดการสัญญาณทั่วไปของสัญญาณเท่านั้น แต่ไม่มีตัวจัดการสัญญาณจริง
David Foerster

ไม่ควรที่จะ: /usr/bin/kill -n 15 `pidof rtorrent` หรือ/usr/bin/kill -s SIGTERM \$(pidof rtorrent)? คุณกำลังผสมชื่อและหมายเลขสัญญาณ - จากman kill, kill -lจริงจะให้รายชื่อของสัญญาณและสอดคล้องรหัสสัญญาณ - โปรดทราบว่าถึงแม้เครื่องหมายขีดด้านหลัง`cmd`จะไม่ถูกคัดค้านอย่างเป็นทางการ แต่ฉันได้อ่าน$(cmd)แล้วว่าเป็นที่ชัดเจนกว่า
Cbhihe

อย่าลืมpgrep:) คำสั่งpgrep rtorrentส่งคืนเพียง PID ดังนั้นจึงไม่จำเป็นต้องมีการวางท่อหรือการแยกวิเคราะห์
Zanna
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.