スワップファイルは Linux の起動を遅くする可能性がありますか?

スワップファイルは Linux の起動を遅くする可能性がありますか?

しばらく前から、Linux Ubuntu 18.04 の起動が非常に遅い (5 ~ 10 分かかることもあります) という問題があります。不思議なことに、この問題は Swapfile を編集したか、Gparted を使用した後に始まったようです。コマンドtopswapon -sコマンドは、Swapfile が動作していることを示しています (4 GB を予約しました)。

しかし、次のコマンドを実行すると奇妙なことが起こりました。

sudo findmnt --verify --verbose

以下の行を除いてすべて問題ありません警告表示されます:

[W] non-bind mount source /swapfile is a directory or regular file

その行は正確にはどういう意味ですか? スワップファイルをマウントできなかったという意味ですか? (実際には最終的には動作していますが)。そこで、fstab ファイルに何か問題があるのではないかと考えました。

cat /etc/fstab

スワップ ラインは次のようになります。

/swapfile none swap sw 0 0

起動中にスワップファイルを見つけてマウントする問題により、プロセス全体が遅くなる可能性があると聞きました。スワップファイルはメイン ディスクから実行されるため、上記の行を次のように変更する必要があるかどうか疑問に思いました。

UUID=xx9999x9-9x99-9xx9-9999-xx9x9xx99xx9/swapfile none swap sw 0 0

UUID はハードディスクです。パーティション分割は使用しませんでした。

Systemd-analyze blame を実行すると、次の出力が得られます。

systemd-analyze blame | head

     17.041s dev-sda1.device
     11.192s dev-loop9.device
     11.056s dev-loop16.device
     10.964s dev-loop14.device
     10.704s dev-loop6.device
     10.703s dev-loop1.device
     10.703s dev-loop7.device
     10.703s dev-loop2.device
     10.702s dev-loop4.device
     10.687s dev-loop13.device

使用後はsudo apt-get purge snapd以下のようになります。

systemd-analyze blame | head
    7.902s dev-sda1.device
    7.152s NetworkManager-wait-online.service
    5.121s ufw.service
    4.792s systemd-udevd.service
    4.539s docker.service
    4.298s accounts-daemon.service
    4.152s systemd-journal-flush.service
    3.970s apparmor.service
    3.808s avahi-daemon.service
    3.751s bluetooth.service

コマンドはsudo blkid1行を返します(IDは匿名化しました)。以前は、多くの行がありました /dev/loopX: TYPE="squashfs"

    /dev/sda1: UUID="xx9999x9-9x99-9xx9-9999-xx9x9xx99xx9" TYPE="ext4"   PARTUUID="9999xx999-01"

Disksパラメータのスクリーンショット:

スマートデータ

syslogの出力:

grep -i FPDMA /var/log/syslog*

[   48.245514] ata6.00: failed command: READ FPDMA QUEUED
[   48.247916] ata6.00: failed command: READ FPDMA QUEUED
[   48.250316] ata6.00: failed command: READ FPDMA QUEUED
[   48.252774] ata6.00: failed command: READ FPDMA QUEUED

以下は Gparted のスクリーンショットです。

Gparted

もう一つの観察: コンピュータを起動すると、画面が 5 ~ 10 分間真っ黒のままになります。その後、長い待ち時間の後、ラップトップ マークのタイトル画面が表示されます。そこからはすべてスムーズに実行されているようです。起動中に何か問題が発生している可能性があるので、これをお伝えしたいと思いました。以前このシステムでデュアル ブートを実行し、最近 Windows 7 を削除したので、ブート ローダー (Grub) が壊れている可能性があるのではないかと考えました。

ファイルシステムテーブル

sudo cat /etc/fstab

    # <file system> <mount point>   <type>  <options>       <dump>  <pass>
    # / was on /dev/sda1 during installation
    UUID=ae2158a5-6f28-4da8-8082-cc6d6bb20ed2 /               ext4       errors=remount-ro 0       1
    /swapfile none            swap    sw              0       0


sudo blkid
    /dev/sda1: UUID="ae2158a5-6f28-4da8-8082-cc6d6bb20ed2" TYPE="ext4"  PARTUUID="630bb523-01"

BIOSバージョン

sudo dmidecode -s bios-version
1.03.05

マザーボード情報:

TUXEDO Book DC1504
Model: W650SJ
Clevo CO

sudo dmidecode -t 2
# dmidecode 3.1
Getting SMBIOS data from sysfs.
SMBIOS 2.8 present.

Handle 0x0002, DMI type 2, 15 bytes
Base Board Information
Manufacturer: Notebook                        
Product Name: W65_67SJ                        
Version: Not Applicable                  
Serial Number: Not Applicable                  
Asset Tag: Tag 12345
Features:
    Board is a hosting board
    Board is replaceable
Location In Chassis: Not Applicable
Chassis Handle: 0x0003
Type: Motherboard
Contained Object Handles: 0

Ubuntu 18.04.5 LTS を実行しています。

グラブ

このコマンドのdpkg -l grub* | grep ii出力は次のようになります。

ii  grub-common           2.02-2ubuntu8.18 amd64        GRand Unified Bootloader (common files)

ii  grub-gfxpayload-lists 0.7              amd64        GRUB gfxpayload blacklist

ii  grub-pc               2.02-2ubuntu8.18 amd64        GRand Unified Bootloader, version 2 (PC/BIOS version)

ii  grub-pc-bin           2.02-2ubuntu8.18 amd64        GRand Unified Bootloader, version 2 (PC/BIOS binaries)

ii  grub2-common          2.02-2ubuntu8.18 amd64        GRand Unified Bootloader (common files for version 2)

助けてくれてありがとう!

答え1

おそらく、/swapfile を「編集」したときに間違いを犯したのでしょう。

  • 「スワップファイルを編集してから始まったようです」

  • 「/swapfile はディレクトリまたは通常のファイルです」

正しい4G の /swapfile を作成/サイズ変更するプロセス...

注記:ddコマンドを誤って使用するとデータが失われる可能性があります。コピー/貼り付けをお勧めします。

sudo swapoff -a           # turn off swap
sudo rm -i /swapfile      # remove old /swapfile

sudo dd if=/dev/zero of=/swapfile bs=1M count=4096

sudo chmod 600 /swapfile  # set proper file protections
sudo mkswap /swapfile     # init /swapfile
sudo swapon /swapfile     # turn on swap
free -h                   # confirm nnG RAM and 4G swap

/etc/fstab のこの行を確認し、他の「スワップ」行がないことを確認します...

/swapfile    none    swap    sw      0   0

reboot                    # reboot and verify operation

アップデート#1:

ディスクに NCQ エラーがいくつかあります。

ネイティブ コマンド キューイング (NCQ) は、シリアル ATA プロトコルの拡張機能であり、ハード ディスク ドライブが受信した読み取りコマンドと書き込みコマンドの実行順序を内部的に最適化できるようにします。

sudo -H gedit /etc/default/grub次の行を編集して、この追加パラメータを含めます。次に、sudo update-grub変更をディスクに書き込みます。再起動します。ハングしているかどうかを監視し、エラー メッセージが続くかどうかを確認し/var/log/syslogますdmesg

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash libata.force=noncq"

これで問題が解決しない場合は、再度ディスクを不良ブロックします。

アップデート#2:

まだ問題が解決していないため、起動時間が遅い問題を解決するためにこれを実行します。

/etc/default/grub を編集します。

この行を変更します:

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash libata.force=noncq"

これに:

GRUB_CMDLINE_LINUX_DEFAULT="libata.force=noncq"

それから:

sudo update-grub

reboot

これで、再起動中に画面に多くのテキストが表示されます。停止または一時停止した場合は、画面の最後の項目から何が問題なのかがわかります。その鮮明な写真を撮って質問にアップロードし、私に連絡してください。

SMART データには不良ブロックの問題は表示されません。読み取りエラーが多数表示されていますが、NCQ パッチで解決されている可能性があります。

アップデート#3:

注記: 問題が発生した場合に備えて、適切なバックアップを用意しておく必要があります。

RAM ディスクを更新し、GRUB を再インストールします。


ls -al /boot/initrd*# これらのファイルのサイズに注意してください

sudo update-initramfs -c -k $(uname -r)# RAMディスクファイルを再作成する

ls -al /boot/initrd*# ファイルサイズが変更されたかどうかを確認します

reboot# 起動が速くなったか確認してみましょう


dpkg -l grub* | grep ii# 現在インストールされている grub ファイル パッケージを表示します

sudo apt install --reinstall package_name_here# 上記の各GRUBパッケージについて

sudo update-grub# GRUB を更新する

reboot# 起動が速くなったか確認してみましょう

アップデート#4:

新しいBIOSを確認するには、次の場所でユーザーアカウントを作成する必要があります。https://www.tuxedocomputers.com/index.php?module=account

Tuxedoサポートに連絡するには、電話:+4982189982992、または電子メール:https://www.tuxedocomputers.com/en/Contact.tuxedo

関連情報