External drive cannot be mounted

Exhausted of manually entering my password every time I want to mount my external disk, I followed this tutorial: [Tutorial] How to Permanently Mount External/Internal Drives in Linux

I don’t know what have I done, but this cannot be mounted anymore. If I use sudo mount -a I get this error:

[user@eOS ~]$ sudo mount -a
mount: /mnt/Disk1: wrong fs type, bad option, bad superblock on /dev/sda1, missing codepage or helper program, or other error.
       dmesg(1) may have more information after failed mount system call.
mount: (hint) your fstab has been modified, but systemd still uses
       the old version; use 'systemctl daemon-reload' to reload.
[user@eOS ~]$ systemctl daemon-reload
[user@eOS ~]$ sudo mount -a
mount: /mnt/Disk1: wrong fs type, bad option, bad superblock on /dev/sda1, missing codepage or helper program, or other error.
       dmesg(1) may have more information after failed mount system call.

If I try to mount it manually I get a similar error:

An error occurred while accessing '931,5 GiB Internal Drive (sda1)', the system responded: The requested operation has failed: Error mounting system-managed device /dev/sda1: wrong fs type, bad option, bad superblock on /dev/sda1, missing codepage or helper program, or other error

I followed the guide step by step, looked it several times and repeated the whole process multiple times. I do not know what’s wrong and I can’t provide info because I did everything well! I only want my external disk to be mounted at startup, it’s annoying to put the password every time, I ask for very little.

Can we see the output of sudo parted -l and cat /etc/fstab

Yes, of course.

sudo parted -l


Model: ATA TOSHIBA DT01ACA1 (scsi)
Disk /dev/sda: 1000GB
Sector size (logical/physical): 512B/4096B
Partition Table: msdos
Disk Flags: 

Number  Start   End     Size    Type     File system  Flags
 1      1049kB  1000GB  1000GB  primary  fat32


Model: SK hynix BC501 HFM256GDJTNG-8310A (nvme)
Disk /dev/nvme0n1: 256GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags: 

Number  Start   End     Size    File system  Name         Flags
 1      2097kB  1051MB  1049MB  fat32                     boot, esp
 2      1051MB  256GB   255GB   ext4         endeavouros

cat /etc/fstab

# /etc/fstab: static file system information.
#
# Use 'blkid' to print the universally unique identifier for a device; this may
# be used with UUID= as a more robust way to name devices that works even if
# disks are added and removed. See fstab(5).
#
# <file system>             <mount point>  <type>  <options>  <dump>  <pass>
UUID=16E0-04DF                            /boot/efi      vfat    defaults,noatime 0 2
UUID=f24f4bb4-f833-4baa-8a23-093123c5af7d /              ext4    defaults,noatime 0 1
tmpfs                                     /tmp           tmpfs   defaults,noatime,mode=1777 0 0
# External drives
UUID=EF4E-2C6F                            /mnt/Disk1     ext4    noatime,x-systemd.automount,x-systemd.device-timeout=10,x-systemd.idle-timeout=1min 0 2

Is /dev/sda1 the partition you are trying to mount? If so, it is fat32.

However, you /etc/fstab is setup for ext4. That would explain the errors you are getting.

You need to change the filesystem and the options in /etc/fstab to be appropriate for fat32.

The Arch wiki has some information on this:
https://wiki.archlinux.org/title/FAT#Writing_to_FAT32_as_normal_user

1 Like

you shouldn’t even bother with the vfat system that is for the uefi booting and needs to remain as is. you also have a lot of options added to your disk. This is my fstab and I never have issues with my external drives mounting

UUID=894C-B3C4 /efi vfat defaults,noatime 0 2
UUID=3353533f-02e2-405f-8705-2be3b02526d5 / ext4 defaults,noatime 0 1
tmpfs /tmp tmpfs defaults,noatime,mode=1777 0 0
UUID=0eda2724-d62d-4acb-8947-ff9d6f18fdb8 /home/thefrog/Downloads ext4 defaults,noatime 0 2
UUID=b04912fa-c1c6-4803-a864-5a1ab376aeae /home/thefrog/Media ext4 defaults,noatime 0 2
UUID=97f494ab-5b62-4241-98ad-17d9ca07ad76 /home/thefrog/Legion ext4 defaults,noatime 0 2

try rewritting the fstab and only put defaults,noatime and see if that helps

Thanks. I wanted it to be ext4, I already formatted but it ignored it? Regardless it’s ext4 now and it figures.

A new problem occured however following again the guide at the start. I cannot create folders in /mnt/, they do not appear anywhere and commands are contradicting. Watch this:

[user@eOS ~]$ sudo mkdir /mnt/Disk1/
mkdir: cannot create directory ‘/mnt/Disk1/’: File exists
[user@eOS ~]$ sudo chown -R user:user /mnt/Disk1/
chown: cannot access '/mnt/Disk1/': No such device

File exists but there is no such file???

placing it in mount you will need the root password for mounting the drive.
I would just put it in my home directory.

where you chown is the disk1 itself and not the /mnt. /mnt still belongs to root and you will have to enter a password to connect to /mnt

1 Like

This did it, mounted from home it finally stays mounted, thanks.

There is one last problem, though. My disk used to be 935 GB in size, after the tutorial and mounting it’s only 915, and apparently 5% of space is used even though the disk is completely empty. Those are 66 GB lost. Why is this and how to get all my space back?

I’m not sure never had that one happen.

Getting the space back may take a reformat. I would check for hidden files and directories maybe run testdisk and see if it shows any error’s

testdisk is in the repo

to run
sudo testdisk

1 Like

:eye: https://wiki.archlinux.org/title/Ext4#Reserved_blocks

:warning:
Be careful if you use: mkfs.ext4 -m 0 /dev/device as it will (re-) format your partition and you will loose any data you might have.

1 Like

This topic was automatically closed 2 days after the last reply. New replies are no longer allowed.