root以外のユーザーとしてTMUXを起動できますが、Linuxの起動時に自動的に起動する方法を見つけようとしています。
少なくともそれが私に必要だと思います。私は何ですか?考える上記のユーザーを使用してリモートシステムにSSHで接続し、「tmux Attach」と入力すると、TMUXの起動時に実行されるランチャーを表示できます。
問題は、rc.localファイル(Linux CentOS 6.3)を介して選択したユーザーでTMUXを起動できないようですが、TMUXセッションがルートに属しているようです。一般的に問題ではありませんが、SSHを使用したいと思い、rootでSSHを試したくありません。
rc.localスクリプトを実行するときに別のユーザーに「切り替える」方法はありますか?ただし、スクリプトを介してプログラムを起動して実行するにはTMUXがありますが、SSHを使用してプログラムを表示するにはそのユーザーとしてログインする必要があります。
答え1
すべてのユーザーは、@reboot
時間の代わりにcrontabエントリを追加して、起動時に何かを実行できます。ユーザーのcrontab(crontab -u joe -e
rootまたはcrontab -e
joe)を編集し、次の行を追加します。
@reboot /home/joe/bin/start-tmux
その中にはstart-tmux
tmuxセッションを開始するスクリプトがあります。
答え2
初期化スクリプトは root ユーザーとして実行されます。su
そのユーザーに変更するには:
su nonprivileged_user -c 'tmux commands go here'
答え3
このトピックについて短い記事を書いたので、確認してください。 https://kerpanic.wordpress.com/2017/03/30/loading-tmux-on-boot-in-linux/