予期せず再起動した後、Debian コンピュータは GUI の代わりにターミナル画面で起動します。
問題を診断する方法がわかりません。しかし、/etc/rc2.d/(inittabでは実行レベル2と呼ばれる)のすべてのサービスが実行されていないことがわかりました。
たとえば、cronを使用します。
S17cronを実行すると機能しませんが、シンボリックリンクされたファイルを直接実行すると機能する理由を誰かが理解するのに役立ちます。
私は何を見逃していますか?私のシステムがどのように、なぜこのような状態なのかを知っている人はいますか?どうすれば修正できますか?
答え1
/etc/inittab
レベルを忘れて実行してください。
systemd docoが言ったように、ランレベルの概念はsystemdの世界で「古い」です。 systemd自体の動作原理は次のとおりです。ターゲット、ランレベルではない。
あなたのファイルも最新バージョンではありません/etc/inittab
。 Debian 7からDebian 8へのアップグレードinitシステムをSystem 5+からsystemdinit
に切り替えますrc
。/etc/inittab
Debian 7では、ファイルがパッケージの属性として正しく指定されていないため、誤って配置されました。
何も言う必要はありません/etc/inittab
。 systemdはこのファイルを完全に無視するだけでなく、それに関する概念もありません。現在のランレベル最初。
Systemv 5rc
スクリプトを忘れてください。
やや強いかもしれませんが、あなたが壊すべきいくつかの悪い習慣を明らかにしたことを指摘する価値があります。実際、一つのことを忘れなければなりません。以前のバージョンの Debian。
/etc/rc*.d/
スクリプトを直接実行しないでください。 まず、ここでやったように何か間違ったことをすることになり、それではうまくいかないでしょう。第二に、シンボリックリンクフィールドが存在するという保証はない。でもシステムではなく、システムから。 1つは利用可能ですファイル-rc変えるsysv-rc、例えば。/etc/init.d/
スクリプトを直接実行しないでください。 システムオペレーティングシステムでは、これらのスクリプトがあなたのサービスに固有のスクリプトであることはもちろん、存在するという保証もありません。 Debian 7には、System 5スクリプトを置き換えたsystemdデバイスもありますrc
。 Debian 8ではさらにそうです。使用する正しいコマンドは次のとおりです。systemctl
および対応するサブコマンドstatus
、、、、およびstart
stop
enable
disable
service
update-rc.d
invoke-rc.d
しかし、〜しない限りあなたはパッケージマネージャスクリプトです
したがって、観察されたコマンドの動作は完全な赤いニシンであり、システムがそのように起動する理由とは何の関係もありません。
問題を正確に診断するには、利用可能なツールを使用してください。
この時点で実行する必要があるいくつかのプログラムがあります。これには以下が含まれます。
systemctl get-default
システムがgraphical.target
最初に起動するように設定されていることを確認します。systemctl list-units
実行中のサービスとターゲットを表示します。 Xディスプレイマネージャはサービスです。systemctl status
表示するなぜ失敗したサービスが失敗しました。journalctl -x -b
起動後にログを表示します。
追加読書
- https://unix.stackexchange.com/a/196197/5132
- ウェイドリー、スティーブン(2014)。 「8. systemd を使用したサービスの管理」 Red Hat Enterprise Linux 7 システム管理者ガイド。赤い帽子。
- レナート・ペトリング(2013-10-07)。
systemctl
。システムのマニュアルページ。 freedesktop.org. - https://unix.stackexchange.com/a/196014/5132