テキストモードで起動するには
sudo vim / etc / default / grub
次の行を変更します。
GRUB_CMDLINE_LINUX_DEFAULT="text"
終了して入力:
sudo update-grub
ユーザーIDまたはパスワードを指定せずにテキストモードで自動的にログインする
Ubuntuのスタートアップバージョン
-a <your-user-name>
行に追加します。
exec /sbin/getty -8 38400 tty1
ファイル/etc/init/tty1.conf内
そのようです:
exec /sbin/getty -8 38400 tty6 -a gruber
/etc/init/tty1.confは、tty1でターミナルセッションを開始する適切なタイミングで実行されるupstartジョブです。この-a
オプションを追加すると、gettyは-fオプションを指定してログインプログラムを呼び出し、そのユーザーにサインインして、gettyからユーザープロンプトを、ログインからパスワードプロンプトをバイパスするように指示します。
Upstartは、カーネルの初期化プロセス(プロセス1)として動作するUbuntuシステムです。
私はこれをtty6でテストし、うまく機能しました。upstart respawn行のため、シェルを終了すると、自動的に再起動します。
Ubuntuのシステムバージョン
Ubuntuの新しいバージョンでは、ほとんどsystemdを使用してシステムプロセスを管理します。したがって、物事を行うための新しい方法があります。
systemd ttyの使用法も、グラフィックス端末と最初のいくつかの仮想端末で実行される可能性があるため、少し異なります。tty6はsystemdを備えたテキスト仮想端末として予約されており、おそらく他にもあります。
入力時にtty6をサインオンさせるには:
sudo systemctl edit getty@tty6
nanoエディターが一時ファイルに表示されます。そのエディターに以下を入力します。
[Service]
ExecStart=
ExecStart=-/sbin/agetty -o '-p -f gruber' -a gruber --noclear %I $TERM
エディターを終了します。
余分なExecStart =行を入力するのはタイプミスではありません。systemdに(/lib/systemd/system/getty@.serviceから)既に知っている元のExecStartパラメーターを忘れるように指示し、ExecStartを置き換えることができるため、非常に重要です。
次のコマンドで結果を確認できます。
systemd-analyze verify getty@tty6.service
これを試すと警告が表示されますが、ここで行っていることについては表示されません。
tty6ですでにttyプロセスが実行されている場合、結果を確認するには再起動する必要があります。
これを理解するために、https://askubuntu.com/a/659268/63886の優れた回答を参照しました。そこで、Muruはsystemdを調整する方法の例と同じ目標をたまたま使用しました。彼のExecStart行は次のとおりです。
ExecStart=-/sbin/agetty -a muru --noclear %I $TERM
違いは、私のバージョンではsystemd関連の環境変数がさらに2つ表示されているようです。
上記の編集の最終結果は、/ etc / systemd / system / getty @ tty6.service.d /にoverride.confと呼ばれるファイルを作成し、上記で入力した内容のみを含むことです。そのようなファイルを自分で作成する場合は、systemctl daemon-reload
コマンドを実行してsystemdに認識させ、その仮想コンソールで既存のagettyプロセスを再起動する必要があります。systemctl --editがdaemon-reloadを処理します。