web-dev-qa-db-ja.com

ランレベル3のsshサーバー

デスクトップにリモートアクセス用にsshサーバーをセットアップしようとしていますが、いくつかの問題が発生しています。私が最初に見つけたのは、sshdが起動時に起動していないということです。私が走るとすぐに:

Sudo service sshd start

手動で自分自身からコンピューターにSSHで接続できるので、sshデーモンが正しくインストールされていることがわかります。今、私はそれを起動時に開始したいだけです。

それを調べた後、私はで見つけました

/etc/rc.d/rc3.d 

スクリプトを見つけました

K##sshd

またはそれらの線に沿った何か。 Kは、ランレベル3に入ると、sshdをシャットダウンしていることを意味していると思います。起動するために必要なのは、ファイルS ## sshdを作成して再起動することだけです。それとも、これを実行するためのより良い方法があります。名前を変更してランダムなファイルを作成する前に、もっと知識のある意見を聞く必要があると思いました。

2
Godric Seer

Kは、ランレベル3に入ると、sshdをシャットダウンしていることを意味すると思います。

はい。 Kはキルを表します。

これは古いSystemVスタイルのスタートアップです。基本スクリプトはすべてinit.dにあり、実際に実行されるrc?.dディレクトリには特定の命名規則(S00 ...、K99 ...)のさまざまなシンボリックリンクがあります。

ランレベルをたとえば1から3に変更すると、initプロセスは、古いランレベルのディレクトリ(/etc/rc.d/rc1.d/)に移動するスクリプトを生成し、Kで始まるすべてのスクリプトを次のように実行します。

K_NUMBER_some_service stop

次に、新しいランレベルのディレクトリ(この場合は/etc/rc.d/rc3.d)に移動し、Sで始まるすべてのスクリプトを次のように実行します。

S_NUMBER_some_service start

スクリプトはアルファベット順に実行されます。この順序は通常、00〜99の範囲の[〜#〜] number [〜#〜]によって決定されます。順序は重要です。ネットワーキングを開始する前にsshdを開始したくない場合です。

理論的には、実行する番号/順序を決定する方法を知っている場合は、シンボリックリンクを手動で実行できます。ほとんどのスクリプトには、コメントとしてこの注文番号があります(head /etc/rc.d/init.d/sshdを試してください)。しかし、あなたは仕事に適切なツールを使用する方がはるかに良いです。 Redhatには、ntsysvと、system-config-servicesがあります。必要に応じて、コマンドラインツールchkconfigを使用することもできます。おもう

chkconfig --level 2345 sshd on

あなたがやりたいことをするでしょう。 chkconfig --list sshdで確認してください

6
Rich Homolka

Redhatは、ntsysvツールを使用してrcN.dディレクトリのサービスを有効/無効にします。

2
ott--

ランレベル3(マルチユーザーモード、コンソールログインのみ)でログインしようとしている場合、やりたいことは$ Sudo init 3。これを行う別の方法は、カーネルパラメータ「3」を追加することです。grubが起動しているときに「e」を押してカーネル起動オプションを変更します。

警告:これをランレベル5で実行されているマシン(マルチユーザーモード、ディスプレイマネージャーとコンソールログイン)に適用すると、X11が強制終了され、コンソールモードでのログインが強制されます。

0
Maxwell S.