Smuxi(名前はおかしくないですか?)は、サーバーとクライアントの設定が分離されたIRCクライアントです。サーバーは「クラウド」の一部で常にオンになっているコンピューターにあり、クライアントはローカルコンピューターからサーバーに接続されています。これは、クライアントコンピュータの接続が良好でないか安定していない場合に特に便利です。クライアントが切断されたら、進行中のチャットを失うことなくサーバーに再接続できます。
だからこれは私の質問につながります。これSmuxiサーバードキュメントちょっとまれです。
システム起動時にsmuxi-serverがバックグラウンドで自動的に起動されるようにするには、次のセクションを読んでください。各システムはサービスを自動的に開始する独自の方法を提供するため、これはオペレーティングシステムによって大きく異なります。
その後、「Debian」、「Ubuntu」、「Other Linux」という単語で始まる非常に目立つスペースがあります。
その後、セクションに
Linuxサーバーの起動時に常にsmuxi-serverを自動的に起動するには、/etc/rc.localファイルに追加します。
sudo -u your_linux_user bash -c 'nohup smuxi-server > $HOME/smuxi-server.log &'
このアドバイスを受け入れるべきかどうかはわかりません。私はDebianを使用していますが、このスクリプトには次のようなものがあります。
このスクリプトは、各マルチユーザーランレベルの終わりに実行されます。
これが何を意味するのかよく分からない。これは何度も実行されるという意味ですか?これは悪いことではありませんか?
とにかく、起動時にサーバーを自動的に起動する方法と、サーバーを手動で実行し、バックグラウンドで自動的に実行する方法を見つけるための提案(またはスクリプト)を探しています。画面内で実行できますが、少し…昔ながらの感じがします。
私はDebian wheezyを使っているので、そのシステムのデフォルト設定として機能する方法が欲しいです。
答え1
これが何を意味するのかよく分からない。これは何度も実行されるという意味ですか?これは悪いことではありませんか?
2
いいえ、スクリプトは各ランレベルの終了時に一度だけ実行されます5
。内部にDebian ランレベルシステムはmultiuser runlevel
実行レベル2から実行レベル5まで定義される。デフォルトの Debian インストールは、2 つの間に違いはありません。
Debian では、デフォルトのランレベルは、以下を2
読み、編集することで、デフォルトのランレベルを確認/変更できます/etc/inittab
。
$ grep initdefault /etc/inittab
id:2:initdefault:
とにかく、起動時にサーバーを自動的に起動する方法を見つけるための提案(またはスクリプト)を探しています。
文書によると。rc.local
トリックを使用すると、起動時に自動的に起動するのに十分だと思います。より複雑なコントロールが必要な場合は、次のことを行う必要がありますsmuxi-server
。
例を読むことができますここ/etc/init.d/
または、参照用ディレクトリからスクリプトをインポートします。
#!/bin/bash
USER=michael
GROUP=michael
PIDFILE=/var/run/smuxi.pid
case "${1:-''}" in
'start')
start-stop-daemon -S -c $USER -g $GROUP --make-pidfile --pidfile $PIDFILE --background --startas /usr/bin/smuxi-server -v
;;
'stop')
start-stop-daemon -K --pidfile $PIDFILE -v
;;
*)
echo "Usage: $SELF start|stop"
exit 1
;;
esac
このスクリプトは使用しません最下位ビット仕様、しかし利用可能です。man start-stop-daemon
より多くの理解を得るために読むことができます。
ノート
答え2
私はこのシステムを使う。提供するsmuxi-serverを起動するためのファイル:
/etc/systemd/system/smuxi-server.service
[Unit]
Description=smuxi irc
After=network.target
[Service]
User=yourusername
Environment=HOME=/home/yourusername
ExecStart=/usr/bin/smuxi-server
Restart=always
[Install]
WantedBy=multi-user.target
テストするには:
$ sudo systemctl start smuxi-server
システムの起動時に起動するには、次のようにします。
$ sudo systemctl enable smuxi-server