Làm thế nào để bắt đầu, dừng và khởi động lại rtorrent?


22

Tôi vừa cài đặt rtorrenttrên máy Ubuntu Server 12.04 của mình thông qua apt-get.

Làm thế nào để tôi bắt đầu | dừng lại | Khởi động lại dịch vụ?


bạn đã thử sudo service start rtorrentchưa
BiggJJ

sudo service rtorrent startđó là, nhưng có, tôi đã thử nó. Nó chỉ là đầu ra rtorrent: unrecognized service. Nếu tôi viết sudo service rtovà nhấn tab, nó sẽ hoàn thành rtorrentInit.sh. Tôi không biết đó là gì, nhưng tôi nhớ (từ một hướng dẫn đã đi xa vào các interwebs) mà tôi đã viết rtorrentstop, nhưng không theo thứ tự và liệu có một từ khác ở giữa. Tôi đã không viết rtorrentInit.shđiều đó lần đầu tiên.
lindhe

Vâng, đó là những gì tôi có nghĩa. Hãy xem tại đây: Ubuntu 12.04 LTS Máy chủ chuyên dụng rTorrent . 7-8 bước cuối cùng là về cài đặt và bắt đầu rtorrent. Có lẽ nó có thể làm sáng tỏ một số.
BiggJJ

Tôi đã đọc nó từ trên xuống dưới. Nhưng dù sao cũng cảm ơn bạn. Hiện tại tôi có thể đi xung quanh với màn hình và chỉ cần nhảy vào rtorrent và thoát khỏi đó, nhưng tôi sẽ để chủ đề này mở nếu có ai đó biết câu trả lời.
lindhe

Câu trả lời:


22

Để bắt đầu rtorrent, chỉ cần nhấn Ctrl+ Alt+ Ttrên bàn phím để mở Terminal. Khi nó mở, chạy (các) lệnh bên dưới:

rtorrent

Dừng lại Ctrl+ D Để thoát Ctrl+q

Các lệnh trên bạn làm sau khi nhấn Enter, trong cửa sổ rtorrent.

Để biết thêm thông tin, xem đầu ra của:

rtorrent -h

và / hoặc xem Sử dụng rtorrent như một chuyên gia


Đây là câu trả lời chính xác. Tôi sợ rằng tôi có thể đã trộn lẫn các hướng dẫn cho chương trình này với một số chương trình khác, vì vậy chính xác những gì tôi đang tìm kiếm có lẽ không tồn tại. Tôi xin lỗi vì sự cố này, nhưng hy vọng người khác sẽ sử dụng chủ đề này.
lindhe

Điều đáng nói là có thể mất một lúc rtorrentđể đóng tất cả các tệp và thoát sau Ctrl+ q- điều đó không có nghĩa đó không phải là sự kết hợp đúng.
Skippy le Grand Gourou

4

Câu trả lời được chấp nhận là đúng nhưng không chỉ định cách thực hiện tắt rtorrentdịch vụ "an toàn" với systemctltập lệnh dịch vụ.

Hầu hết các câu trả lời hoặc tập lệnh hiện có "giết" cả phiên màn hình hoặc rtorrentchính quá trình. Khi làm như vậy, họ gửi một SIGINT (2)hoặc SIGQUIT (3)tín hiệu dừng / giết rtorrentquá trình. Hạn chế là thông thường tệp khóa của rtorrentkhông bị xóa vì rtorrentkhông được tắt đúng cách. Do đó, sự khởi đầu tiếp theo rtorrentsẽ thất bại vì tệp khóa liên tục.

Nhìn vào mã nguồn củartorrent chương trình mà nó mong đợi a SIGTERM (15). Do đó, xem xét một systemctlkịch bản dịch vụ, lệnh dừng có thể trông giống như:

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

Nếu pidofkhông có sẵn, bạn cũng có thể sử dụng một cái gì đó như:

ps -A | grep "rtorrent" | awk '{print $1}'
  • ps liệt kê các quy trình hiện tại
  • grep trích xuất các chi tiết quá trình rtorrent
  • awk chọn pid và hiển thị nó thành thiết bị xuất chuẩn

Trong trường hợp bạn cần đợi cho đến khi tắt máy xong, bạn có thể sử dụng killall -w. Lưu ý rằng:

killallcó thể đợi mãi nếu tín hiệu bị bỏ qua, không có hiệu lực hoặc nếu quá trình vẫn ở trạng thái zombie (nguồn man killall:).


1
kill -s 15 `pidof rtorrent`có thể đơn giản hơn killall rtorrent(15 hoặc SIGTERMlà tín hiệu mặc định được gửi bởi killkillall).
David Foerster

1
Ngoài ra, ở signal_handler.ccđâu bạn thấy rằng rtorrent mong SIGTERM tự chấm dứt một cách duyên dáng? Tôi chỉ thấy mã quản lý tín hiệu chung xử lý tín hiệu nhưng không có trình xử lý tín hiệu thực tế.
David Foerster

Không nên như vậy: /usr/bin/kill -n 15 `pidof rtorrent` hay /usr/bin/kill -s SIGTERM \$(pidof rtorrent)? Bạn đang trộn lẫn tên tín hiệu và số. - Từ man kill, kill -lthực sự sẽ cung cấp cho bạn danh sách tên tín hiệu và mã tín hiệu tương ứng. - Cũng lưu ý rằng mặc dù đánh dấu lại, như trong `cmd`, không chính thức bị phản đối, tôi đã đọc rằng $(cmd)nó thực sự được ưa chuộng như rõ ràng hơn.
Cbhihe

Đừng quên pgrep:) Lệnh chỉ pgrep rtorrenttrả về PID, vì vậy không cần đường ống hoặc phân tích cú pháp
Zanna
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.