J'ai ajouté un nouveau disque dur (/dev/sdb
) vers Ubuntu Server 16, a exécuté parted /dev/sdb mklabel gpt
et Sudo parted /dev/sdb mkpart primary ext4 0G 1074GB
. Tout s'est bien passé. Ensuite, j'ai essayé de monter le lecteur
mkdir /mnt/storage2
mount /dev/sdb1 /mnt/storage2
Il en est résulté
mount: wrong fs type, bad option, bad superblock on /dev/sdb1,
missing codepage or helper program, or other error
In some cases useful info is found in syslog - try
dmesg | tail or so.
J'ai essayé mount -t ext4 /dev/sdb1 /mnt/storage2
avec un résultat identique. J'ai fait ce genre de choses plusieurs fois auparavant et je n'ai jamais rencontré quelque chose comme ça. J'ai déjà lu ceci montage: mauvais type de fs, mauvaise option, mauvais superbloc sur/dev/sdb sur CentOS 6. en vain.
sortie fdisk concernant le lecteur
Disk /dev/sdb: 1000 GiB, 1073741824000 bytes, 2097152000 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: gpt
Disk identifier: 0E136427-03AF-48E2-B56B-A467E991629F
Device Start End Sectors Size Type
/dev/sdb1 2048 2097149951 2097147904 1000G Linux filesystem
Vous devez toujours créer un système de fichiers
mkfs.ext4 /dev/sdb1
Manuel de l'utilisateur Parted https://www.gnu.org/software/parted/manual/html_node/mkpart.html :
2.4.5 mkpart
Commande: mkpart [nom de type fs de type de pièce] start end
Crée une nouvelle partition, sans créer de nouveau système de fichiers sur cette partition.
J'ai eu ce problème avec/dev/sda sur Ubuntu 16.04 Je l'ai résolu en démarrant dans une clé USB en direct et en procédant comme suit:
Pour voir vos disques, utilisez lsblk
Si vous voyez que votre disque est bon, exécutez fdisk -l
pour voir si le système peut l'utiliser.
Exécutez cette commande pour tenter de réparer les superblocs défectueux sur le lecteur.
fsck /dev/sda1
(remplacez/dev/sda1 par le lecteur que vous souhaitez réparer).
Quand il demande de réparer des blocs, sélectionnez oui en appuyant sur 'y'
Autoriser fsck à réparer tous les blocs défectueux.
Ensuite, j'ai pu monter l'appareil en utilisant
Sudo mount /dev/sda /media/ubuntu
Cela l'a résolu pour moi.
J'ai un processus différent pour cela qui a remplacé le mauvais superbloc par l'une des alternatives. FSCK peut être un processus "avec perte" car FSCK peut vouloir supprimer trop de données ou supprimer des données d'un emplacement sensible (par exemple, répertoire de données pour une base de données), donc il y a des moments où je ne veux pas l'utiliser ou il ne le fait pas ça marche pas.
Vous pouvez vous Sudo idiot ou simplement devenir racine pour le processus. N'oubliez pas que lorsque vous êtes root, Linux suppose que vous savez ce que vous faites lorsque vous émettez des commandes. Si tel est le cas, il livrera rapidement M. Bullet à M. Foot. Comme beaucoup d'autres choses, une grande puissance s'accompagne d'une grande responsabilité. Cela conclut mon avertissement sur l'exécution de votre système en tant que root.
Sudo -s
fdisk -l
Déterminez quel périphérique - en supposant/dev/sdc1 pour cet exemple avec EXT4 comme son plus commun pour cette explication.
fsck -N /dev/sdc1
Votre appareil et votre système de fichiers (ZFS, UFS, XFS, etc.) peuvent varier, alors sachez d'abord ce que vous avez. Ne présumez pas que c'est EXT4. Ignorer cette étape peut vous poser des problèmes ultérieurement s'il ne s'agit PAS d'un système de fichiers EXT4.
fsck.ext4 -v /dev/sdc1
Obtenez votre message d'erreur qui indique que le superbloc est mauvais. Vous ne voulez pas faire cela si votre superbloc est OK.
mke2fs -n /dev/sdc1
Cela produira les superblocs alternatifs stockés sur votre partition.
*Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208*
Choisissez un superbloc alternatif - gardez à l'esprit que le premier est le défaut et son mauvais donc ne l'utilisons pas. Vous voudrez également en choisir un dans la liste que vous obtenez de votre partition. N'utilisez pas l'exemple. Vos superblocs peuvent être stockés ailleurs.
e2fsck -b 98304 /dev/sdc1
Redémarrez et voyez si cela a fonctionné. Sinon, essayez le prochain superbloc de la liste. J'ai dû aller la troisième ou la quatrième à quelques reprises.
e2fsck -b 163840 /dev/sdc1
Essayez maintenant la commande pour valider à nouveau le disque. Voyez si vous obtenez le même message à propos des mauvais superblocs.
fsck.ext4 -v /dev/sdc1
Continuez à essayer jusqu'à ce que vous manquiez de superblocs ou que cela fonctionne. Si vous en manquez, vous avez probablement de plus gros problèmes et j'espère que vous avez de bonnes sauvegardes. Vous pouvez essayer d'exécuter FSCK à ce stade.
# create mount dir
Sudo mkdir /hdd6T
# new file system
Sudo mkfs.ext4 /dev/sdc
# mount drive
Sudo mount /dev/sdc /hdd6T/
# change ownership to specified user
Sudo chown your-user /hdd6T/
Dans mon cas, la solution était d'installer nfs-utils
côté client.
CentOS/Red Hat:
yum install nfs-utils
buntu/Debian:
apt update
apt install nfs-kernel-server
Pour moi, il y avait un fichier mystérieux à l'origine de ce problème.
J'ai dû effacer le répertoire en utilisant la commande suivante:
Sudo mkfs -t ext3 /dev/sdf
Avertissement: cela pourrait supprimer les fichiers que vous avez enregistrés. Vous pouvez donc exécuter ls
pour vous assurer de ne pas perdre les fichiers enregistrés importants et sauvegarder ces fichiers avant l'exécution.
Je sais que c'est une vieille question, mais au cas où cela aiderait toute personne qui tomberait dessus.
J'essayais de me connecter et de monter NFS mais échouais et obtenais la même erreur que OP.
Après avoir installé les dépendances, j'étais prêt à partir:
Sudo apt install nfs-common