起動時に外付けハードドライブをマウントする際に問題が発生しました。
短い質問
起動プロセス中にmount -a
を起動する必要がありますか?そして、どうすればそれを確認できますか?
ストーリー全体
次の行を追加して、fstabファイルを使用してハードドライブをマウントしました。
#device mountpoint fstype options dump fsck
/dev/sda2 /home/yourname/mydata vfat defaults 0 0
mount -a
を呼び出したときにマウントされますが、起動時にマウントされません。
Auto/noautoマウントオプションを試しました。予想どおり、noauto
を使用すると、mount -a
はドライブをマウントしません。したがって、デフォルトの自動値は適切なはずです。
それが、mount -a
呼び出しが起動時に実行されないように思える理由です...
システムは、ナノヘッドレス cubian X1 cubieboard A10(raspeberry piとほぼ同じ)で実行されています
アドバイスをありがとう。
このトピック とは異なり、ハードドライブは手動で正しく起動するため、問題は起動時のみです。
Fstabのデフォルト設定を持つものはすべて自動的にマウントされるはずですので、正しいデバイスを指すように設定することはできません(特に、内部ドライブは通常sdaであり、外部ドライブは通常sdb、sdcなどであるため)。起動時に自動的にマウントする外部ドライブをセットアップします。
1。デバイスを識別します
Sudo fdisk -l
を実行して、接続されているドライブのリストを取得します。自動的にマウントするドライブのサイズとパーティションの設定に一致するものを見つける必要があります。たとえば、16GBフラッシュドライブは次のようになります。
Disk /dev/sdd: 14.9 GiB, 16007561216 bytes, 31264768 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos Disk identifier: 0x00000000
Device Boot Start End Sectors Size Id Type
/dev/sdd1 8192 31264767 31256576 14.9G c W95 FAT32 (LBA)
これはシステム上で正しいサイズに近い唯一のデバイスなので、リムーバブルドライブはsddでなければならず、プライマリパーティションはsdd1でなければなりません。 (おそらくあなたはsdbまたはsdcです;私のコンピューターにはたくさんのドライブがあるので、私のものはとても高い手紙です。)
Sudo mount /dev/device /mnt
を実行し、そのパーティションの内容が正しいかどうかを確認するために/ mntフォルダーをチェックすることにより、正しいデバイスがあることを確認するためにテストできます。 (必ず「デバイス」を独自のブロックデバイスに置き換えてください。たとえば、Sudo mount /dev/sdb1 /mnt
。)デバイスを再度マウント解除するには、Sudo umount /dev/device
を使用します。
2。デバイスのUUIDを見つける
これは、ブロックデバイスが変更される可能性があるためです。たとえば、現在16 GBのドライブはsddですが、コンピューターにさらにドライブを追加すると、sdeまたはsdfとして表示される場合があります。この時点で、私のfstabは間違ったドライブをマウントしようとしています!ブロックデバイス識別子とは異なり、UUIDはパーティションに組み込まれ、変更することはありません(ドライブを再フォーマットしない限り)。これにより、リムーバブルドライブをマウントする信頼性の高い方法になります。
デバイスのUUIDを見つけるには、blkidコマンドを使用します。
Sudo blkid
私のドライブの場合、探している行は次のようになります(実際のUUIDをXに置き換えました)。
/ dev/sdd1:UUID = "XXXX-XXXX" TYPE = "vfat"
これにより、UUIDだけでなく、ファイルシステムの種類(後で必要になる)もわかります。
3。 fstabファイルを編集します
これが最も難しいステップです。まず、お気に入りのテキストエディタで/ etc/fstabをルートとして開きます。
Sudo gedit /etc/fstab
(Mateデスクトップ環境を使用している場合は、geditではなくplumaを使用する必要があります。KDEには独自のテキストエディターもあります。)
ここで、ブート時にドライブが自動的にマウントされるようにする行をこのファイルの最後に追加します。 (エントリの前に説明行(#
で始まる)を追加して、この行が追加された理由を知った後に来る人に知らせてください。)私の場合、これは次のようになります(注意してください前の手順で収集した情報と一致するように、この行を変更する必要があります)。
#External hard drive
UUID=XXXX-XXXX /media/exdrive vfat defaults,user 0 0
行の最初のセクションは、マウントするパーティションのUUIDです。 blkid
の実行から取得したUUIDを使用します。
2番目のセクションは、パーティションをマウントするフォルダーです。フォルダーが実際に存在することを確認してください!この例では、Sudo mkdir /media/exdrive
を使用して、使用するフォルダーを作成できます。他のユーザーが引き続きドライブにアクセスできるように、このフォルダーをホームフォルダーの外側に配置することをお勧めします。よりアクセスしやすくしたい場合は、いつでもリンクを作成できます。
3番目のセクションは、パーティションをマウントするファイルシステムを定義します。 blkid
からの出力を使用して、ファイルシステムのタイプを見つけます。私の例のドライブには、fat32ファイルシステムがあるため、vfat
を使用する必要があります。代わりに、ntfs、ext4、またはその他のタイプを完全に使用できます。
4番目のセクションは、マウントオプションを指定します。これは複雑になるので、このテーマについてもっと読みたい場合は、ここで行うことができます。 https://help.ubuntu.com/community/Fstab#Optionsdefaults,user
は正常に動作するはずです。
最後の2つのセクション(この例では0と0)は、バックアップユーティリティダンプと、fsckがディスクをチェックするかどうか、およびその順序に関係しています。セットアップではどちらも必要ないので、両方を0のままにしておいても安全です。
4。テストしてください!
これで、コンピューターはブート時にドライブを自動的にマウントし、ブート後に接続された場合でも正しい場所にマウントする必要があります。