web-dev-qa-db-ja.com

Ubuntu 16.04で本当に遅いブートを高速化するには?

Ubuntu 16.04で起動を高速化するために必要なことを理解しようとしています。 dmesgを実行し、出力を保存しました here 。約10秒後にはすべてうまくいかないようです。

39
Packwood

Systemdで最も時間がかかっているものを調べることができます。

systemd-analyze blame
44
user536489

スワップスペースの/ etc/fstabのUUIDを編集すると(Sudo blkidの出力と一致するように)チャームのように機能しました。

:その後、/etc/crypttabファイルにスワップエントリがある場合、UUIDまたはパス(つまり、UUID = somethingまたは/ path/to/swap)。

私のSSDでは、起動が2分から10秒未満に短縮されました。

問題は、この問題が始まったときに、パーティションをめちゃくちゃにすることなく、14.04から16.04に通常のアップグレードを行っただけです。明らかに、アップグレード手順にはいくつかの問題があります。

29
M Dub

アップグレード後に起動時間が長くなるという同様の問題が発生しました。

問題は何でしたか?スワップ領域を削除したため、/ etc/fstabファイルと新しいファイルシステムに競合がありました。ブートローダーは、それを見つけるために約1分30秒待機しました。

問題の解決方法 Sudo blkidを実行する

/ etc/fstabファイルを開き、uuidと一致するパーティションを比較します。不一致がある場合は、それを変更して再起動します。

10
Gokul Palwe

これは回避策ですが、これによりブート時間が大幅に短縮されました(1分24秒から16秒に)。

Sudo vim /etc/systemd/system.conf

これらの2つのパラメーターのコメントを解除し、必要なタイムアウトを設定します。

DefaultTimeoutStartSec=10s
DefaultTimeoutStopSec=10s

注:ハードウェアのニーズに合わせてこれらの値を最適化してください。5〜60秒。

here これらのパラメーターは、ユニットの開始と停止のデフォルトのタイムアウト、およびユニットの自動再起動間のデフォルトのスリープ時間を、TimeoutStartSec=TimeoutStopSec=、およびRestartSec=(サービス。ユニットごとの設定の詳細については、systemd.service(5)を参照してください。

非サービスユニットの場合、DefaultTimeoutStartSec=はデフォルトのTimeoutSec= valueを設定します。 DefaultTimeoutStartSec=およびDefaultTimeoutStopSec=のデフォルトは90です。 DefaultRestartSec=のデフォルトは100ミリ秒です。


編集-詳細:

systemd-analyze plot > sequence.svgを使用してブートシーケンスを分析し、新しくアップグレードしたOSでサービスが開始できないことを示しました。 3つありました-1つは誤って構成されたsendmailデーモン、その後powerd.serviceNetworkManager-wait-online.service。 NetworkManagerサービスを完全に無効にするのは得策ではないので、10秒後にタイムアウトさせ、このルールをグローバルに適用しました。

9
Mirek

これは、ファイルシステムの問題に関連している可能性があります。このリンクをチェックして、ファイルシステムを修復するとブート時間が改善されるかどうかを確認できます。 https://help.ubuntu.com/community/FilesystemTroubleshooting

1
Chris J Arges

解決したばかりの同様の問題がありました。SSDでUbuntu 16.04を実行しています。フラッシュドライブをスワップパーティションとして使用します。ドライブが偶発的にわずかに移動し、起動に3分以上かかりました。私はそれを正しく元に戻し、今ではすべてがうまくいきました。 smartctlまたはfsckを試し、ファイルシステムがo.kの場合、フラッシュドライブ(または他の周辺機器)を削除して、どのように動作するかを確認してください。幸運を!

0
joham34

Pastebinの出力に基づいて、いくつかのことが飛び出します。

EXT4-fs (sda5): re-mounted

fsck このボリュームを使用して、そのドライブの Smart Data を確認できます。

そして

[   31.022220] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
[   45.720952] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
[   45.761548] IPv6: ADDRCONF(NETDEV_UP): wlan0: link is not ready

接続でサポートされていない場合は、ネットワーク接続で IPV6を無効にする を試してください。

0
Elder Geek

User536489のヒントに従ってください:

systemd-analyzeのせい

開始に時間がかかるサービスがあるかどうかを確認し、より低いタイムアウトを設定します。

Sudo vim /lib/systemd/system/networking.service

TimeoutStartSec10sなどに変更します。 manページ states秒単位の単位なしの値、または「5min 20s」などのタイムスパン値を取ります。タイムアウトロジックを無効にするには、「無限」を渡します。

0
max