GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Problem beim Anhängen und Mounten eines vorhandenen EBS-Volumes an das Dateisystem der EC2-Instanz

Ich bin auch auf dieses Problem gestoßen, nachdem ich ein neues 16-GB-Volume hinzugefügt und an eine vorhandene Instanz angehängt hatte. Zunächst einmal müssen Sie wissen, welche Festplatten Sie zur Verfügung habenRun

  sudo fdisk -l 

Sie erhalten eine Ausgabe, die wie die unten gezeigte aussieht und detaillierte Informationen zu Ihren Laufwerken (Volumes"

enthält
 Disk /dev/xvda: 12.9 GB, 12884901888 bytes
  255 heads, 63 sectors/track, 1566 cylinders, total 25165824 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
  Disk identifier: 0x00000000

Device Boot      Start         End      Blocks   Id  System
/dev/xvda1   *       16065    25157789    12570862+  83  Linux

 Disk /dev/xvdf: 17.2 GB, 17179869184 bytes
 255 heads, 63 sectors/track, 2088 cylinders, total 33554432 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
 Disk identifier: 0x00000000

 Disk /dev/xvdf doesn't contain a valid partition table

Wie Sie sehen können, ist die neu hinzugefügte Festplatte /dev/xvdf vorhanden. Um es verfügbar zu machen, müssen Sie ein Dateisystem darauf erstellen und es an einem Einhängepunkt einhängen. Das erreichen Sie mit den folgenden Befehlen

 sudo mkfs -t ext4 /dev/xvdf

Durch das Erstellen eines neuen Dateisystems wird alles im Volume gelöscht, also tun Sie dies auf einem neuen Volume ohne wichtige Daten

Mounten Sie es dann vielleicht in einem Verzeichnis unter dem /mnt-Ordner

 sudo mount /dev/xvdf /mnt/dir/

Bestätigen Sie, dass Sie das Volume auf der Instanz gemountet haben, indem Sie

ausführen
  df -h

Das sollten Sie haben

Filesystem      Size  Used Avail Use% Mounted on
 udev            486M   12K  486M   1% /dev
 tmpfs           100M  400K   99M   1% /run
 /dev/xvda1       12G  5.5G  5.7G  50% /
 none            4.0K     0  4.0K   0% /sys/fs/cgroup
 none            5.0M     0  5.0M   0% /run/lock
 none            497M     0  497M   0% /run/shm
 none            100M     0  100M   0% /run/user
 /dev/xvdf        16G   44M   15G   1% /mnt/ebs

Und schon haben Sie das Volumen für die dortige Verwendung an Ihre vorhandene Instanz angehängt.Guthaben


Mir ist aufgefallen, dass sich das Volume aus irgendeinem Grund unter /dev/xvdf1 befindet , nicht /dev/xvdf .

Verwenden von

sudo mount /dev/xvdf1 /vol -t ext4

funktionierte wie ein Zauber


Der One-Liner

ð¥ Mounten Sie die Partition (wenn die Festplatte partitioniert ist) :

sudo mount /dev/xvdf1 /vol -t ext4

Mounten Sie die Festplatte (falls nicht partitioniert) :

sudo mount /dev/xvdf /vol -t ext4

wo:

  • /dev/xvdf wird auf das EBS Volume Gerät geändert wird montiert
  • /vol wird in den Ordner geändert Sie mounten möchten.
  • ext4 ist der Dateisystemtyp des zu mountenden Volumes

Häufige Fehler Anleitung:

✳️ Liste der angeschlossenen Geräte

Überprüfen Sie Ihren Mount-Befehl auf richtig EBS-Volume Gerätename und Dateisystemtyp . Im Folgenden werden sie alle aufgelistet:

sudo lsblk --output NAME,TYPE,SIZE,FSTYPE,MOUNTPOINT,UUID,LABEL

Wenn Ihr EBS-Volume mit einem angehängten partition angezeigt wird , mounten Sie die partition; nicht die Festplatte.

✳️ Wenn Ihr Volume nicht aufgeführt ist

Wenn es nicht angezeigt wird, haben Sie Attach nicht getan Ihr EBS-Volumen in der AWS-Webkonsole

✳️ Automatisches Remounten beim Neustart

Diese Geräte werden wieder ausgehängt, wenn die EC2-Instanz jemals neu gestartet wird.

Eine Möglichkeit, sie beim Start wieder einzuhängen, besteht darin, das Volume zu /etc/fstab des Servers hinzuzufügen Datei.

ð¥ Achtung:ð¥
Wenn Sie die Datei /etc/fstab beschädigen Datei, wird es Ihr System nicht bootfähig machen. Lesen Sie den kurzen Artikel von AWS, damit Sie wissen, ob Sie es richtig gemacht haben.

https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-using-volumes.html#ebs-mount-after-reboot

Zuerst :
Mit dem lsblk Befehl oben finden Sie den UUID Ihres Volumes &FSTYPE .

Zweiter :
Bewahren Sie eine Kopie Ihres Originals fstab auf Datei.

sudo cp /etc/fstab /etc/fstab.original

Dritter :
Fügen Sie eine Zeile für das Volumen in sudo nano /etc/fstab hinzu .

Die Felder von fstab sind 'tabulatorgetrennt' und jede Zeile hat die folgenden Felder:

<UUID>  <MOUNTPOINT>    <FSTYPE>    defaults,discard,nofail 0   0

Hier ist ein Beispiel, um Ihnen zu helfen, mein eigenes fstab lautet wie folgt:

LABEL=cloudimg-rootfs   /   ext4    defaults,discard,nofail 0   0
UUID=e4a4b1df-cf4a-469b-af45-89beceea5df7   /var/www-data   ext4    defaults,discard,nofail 0   0

Das ist es, du bist fertig. Überprüfen Sie Ihre Arbeit auf Fehler, indem Sie Folgendes ausführen:

sudo mount --all --verbose

Sie werden so etwas sehen, wenn die Dinge ð:

sind
/                   : ignored
/var/www-data       : already mounted

Ich bin auf dieses Problem gestoßen und habe es jetzt,

[[email protected] ~]$ lsblk
NAME    MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
xvda    202:0    0   8G  0 disk
└─xvda1 202:1    0   8G  0 part /
xvdf    202:80   0   8G  0 disk
└─xvdf1 202:81   0   8G  0 part

Sie sollten partition mounten

/dev/xvdf1 (welcher Typ eine Partition ist)

disk nicht mounten

/dev/xvdf (welcher Typ eine Festplatte ist)


Linux
  1. Inodes und das Linux-Dateisystem

  2. Mounten eines Cifs-Dateisystems direkt oder über Fstab?

  3. Ubuntu – Was machen Mkfs.xfs und Modprobe beim Mounten einer Amazon Ebs-Instanz?

  4. So mounten und unmounten Sie Dateisysteme/Partitionen unter Linux (Mount/Umount-Befehlsbeispiele)

  5. So aktivieren und mounten Sie 2 Volume-Gruppen mit demselben Namen in CentOS/RHEL

So erstellen und fügen Sie ein EBS-Volume in einer AWS-Instanz (EC2) hinzu

Richten Sie eine einfache CI/CD-Pipeline mit Github und Jenkins auf einer AWS EC2-Linux-Instance ein

Docker in Docker kann Volume nicht mounten

So installieren Sie jq auf einer Amazon EC2-Instanz

Ist das Mounten und Ändern einer Loopback-Datei ohne sudo/root möglich?

Ich habe meine /etc/sudoers-Datei auf Amazon EC2 beschädigt