TTY 없이 cron 프로그램에 연결하는 가장 좋은 방법은 무엇입니까

TTY 없이 cron 프로그램에 연결하는 가장 좋은 방법은 무엇입니까

내 우분투 VM은 TTY를 사용하여 작업을 실행하지 않습니다 cron(로그인하여 사용자 환경에서 명령을 실행하는 경우에도).

따라서 cron tmux또는 cron을 실행할 수 없으므로 screen프로그램(특히 rtorrent이 경우)이 간단하고 연결 가능한 방식으로 백그라운드에서 실행되지 않습니다.

rtorrent모든 터미널에서 프로세스를 쉽게 연결, 분리 및 종료하면서 프로그램을 실행(예: 시작 시)하는 가장 좋은 방법은 무엇입니까?

나는 동등한 것을 실행하는 것만으로도 효과가 있을 것이라고 생각 rtorrent &하지만 screen/tmux만큼 편리하지는 않습니다.

답변1

-d이 옵션을 와 함께 사용 하면 tmux newtty에 연결되거나 필요하지 않습니다. 에서 man tmux:

new-session [-AdDEP] [-c start-directory] [-F format] [-n window-name]
            [-s session-name] [-t group-name] [-x width] [-y height]
            [shell-command]
            (alias: new)

session-name이라는 새 세션을 만듭니다.

-d지정하지 않으면 새 세션이 현재 터미널에 연결됩니다. [...]

예를 들어:

tmux new -d -s rtorrent rtorrent

tmux그러면 "rtorrent"라는 새 세션이 생성되어 rtorrent실행됩니다.

런타임 환경을 올바르게 설정하려면 시작하기 위한 스크립트 (단순한 명령이 아닌 )를 구성 ~/.tmux.conf하고 실행 해야 할 수도 있습니다 .rtorrentrtorrent

cron 작업을 소유한 사용자는 다음을 통해 언제든지 세션에 연결할 수 있습니다.

tmux attach -t rtorrent

화면에 해당하는 것은

screen -d -m -S rtorrent rtorrent

크론 작업에서 screen -S rtorrent -rd나중에 추가합니다.

관련 정보