systemctlはnetctl.serviceを有効にしますか


10

Archを実行する小さなarmサーバーがあります。dhcpcdイーサネット接続にのみ使用したかったので、とを無効にnetctl.serviceしましたnetctl-ifplugd.service。それはうまくいかず、私はもはやマシンに接続する手段がありません。サーバーには、デスクトップにマウントできるUSBキーのルートがあるため、問題は次のとおりです。

systemctl enable netctl.serviceそのUSB上のファイルやシンボリックリンクを操作して、どうすればよいですか?

同等の代替質問は、何をsystemctl enable netctl.serviceするかです。


netctlは、グラフィカルNetworkManagerに相当するコマンドラインです。dhcpd.serviceが有効になっていない場合、netctlはdhcpdサービスを開始します。ifplugdはケーブル接続の喪失を監視します。サービスが相互依存しているので私が知る唯一の方法は、を使用するsystemctl enable netctl && systemctl start netctlsystemctl enable dhcpd && systemctl start dhcpd、接続できないマシンから使用することです。
eyoung100 2014

dhcpcdが有効なままです。静的IPを持つように構成を変更しましたが、dhcpcd.confの変更を元に戻しました。ただし、サーバーがルーターのクライアントリストに表示されません。接続するモニターもキーボードもないため、armサーバーと対話する方法はありません。
Azrael3000 2014

シリアルポートはありますか?
eyoung100 2014

いいえ、ありません。
Azrael3000 2014

初めてインストールする方法... netctlはdhcpdに静的なIPを使用するように指示するため、netctlサービスを再起動する必要があります
eyoung100

回答:


12

Archを実行する小さなarmサーバーがあります。イーサネット接続にdhcpcdのみを使用したかったため、netctl.serviceおよびnetctl-ifplugd.serviceを無効にしました。それはうまくいかず、私はもはやマシンに接続する手段がありません。

netctlを無効にした後、dhcpcdを確実に有効にしましたか?

そのUSB上のファイルやシンボリックリンクを操作して「systemctl enable netctl.service」を実行するにはどうすればよいですか?

同等の代替質問は、「systemctl enable netctl.service」は何をするのですか?

すべてはsystemctl enableありませんからシンボリックリンクを作成している/usr/lib/systemd/system//etc/systemd/system/で、適切なターゲットディレクトリに/etc/systemd/system/後者のディレクトリ内のサービスは前者ではものをオーバーライドして、。

systemctl(1)のmanページ:

enable NAME...
    Enable one or more unit files or unit file instances, as
    specified on the command line. This will create a number 
    of symlinks as encoded in the "[Install]" sections of the
    unit files.

使用systemctl enableする代わりに、次のコマンドを使用して手動でnetctlサービスを有効にすることができます。

ln -s /usr/lib/systemd/system/netctl.service \
      /etc/systemd/system/multi-user.target.wants/netctl.service

また、手動で無効にするには、次のコマンドを使用して、前のlnコマンドで作成されたシンボリックリンクを削除します。

rm /etc/systemd/system/multi-user.target.wants/netctl.service

問題のサービスファイルのセクションでWantedBy設定を探すことで、適切なターゲットディレクトリを見つけることができます[Install]。ただし、古いサービスファイルのAlias代わりにWantedBy、代わりに使用することもできますWantedByが、どちらも同様に機能します。

代わりにnetctlを使用してに戻すのは、最初にdhcpcdを、サービスが正常に有効になっていることを確認することができ、そしてそれはあなたが使用することができた場合journalctl--directoryか、--rootあなたの他のマシン上のファイルシステムをマウントした後、dhcpcdをサービスのログをチェックし、そのことができるかどうかを確認するためのフラグをそれが正しく機能しなかった理由についての手がかりを与えます。


残念ながら、今すぐ再インストールする前に確認する必要がありました。ご回答有難うございます。今はテストできませんが、あなたの答えを受け入れます。
Azrael3000 2014年

1
これは最高のアンサーです!そして、このanwserは、実行するたびにsystemctl enable netctl.serviceanwserを示すCLI出力が表示されるため、どういうわけか明白です=)
71GA
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.