Why your external drive is read-only and how to fix it
When you plug an external hard drive into Ubuntu and can't write files to it, the problem is almost always permissions — the operating system's rules about who can read, write, or run files. Ubuntu treats external drives differently than your main hard drive, and by default it often mounts them in a way that locks you out of writing. The fix usually takes two or three commands in the terminal, or you can change permissions through the file manager's properties window.
The reason this happens: Ubuntu mounts external drives with restrictive permissions to protect against accidental damage. If you're the only person using the drive, you need to change those permissions to your user account. If multiple people use the drive, you'll need to decide whether to open it fully or keep restrictions in place.
Key Takeaways
- External drives mounted as read-only need permission changes either through the file manager's Properties window or the terminal using the chmod command.
- The terminal method is faster and more reliable: sudo chmod -R 755 /media/username/drivename gives your user account full read and write access.
- If the drive is NTFS formatted (from Windows), you may need to install the NTFS write driver first, which Ubuntu doesn't include by default.
- Permissions changes stick to the drive itself only if it's formatted as ext4; NTFS and FAT32 drives reset permissions each time you mount them.
- If you don't know the exact mount path, the lsblk command shows every connected drive and where Ubuntu mounted it.
Check what file system your drive is using
Before you change permissions, you need to know whether your drive is formatted as NTFS (Windows), FAT32 (older universal format), or ext4 (Linux native). This matters because NTFS drives need a different approach — Ubuntu can't write to NTFS without an extra driver installed. Right-click the drive in your file manager, select Properties, and look for the file system type listed near the top.
If it says NTFS, stop here and install the NTFS write driver first. Open a terminal and run sudo apt install ntfs-3g, then unplug and replug the drive. That driver lets Ubuntu write to NTFS drives. After it's installed, come back to this guide and follow the permission steps below.
If it says ext4 or FAT32, you can proceed directly to changing permissions. These formats let Ubuntu write without extra drivers, but they handle permissions differently — ext4 remembers your permission changes permanently, while FAT32 resets them each time you mount the drive.
Find your drive's mount path using the terminal
The terminal method is faster than clicking through menus, and it's the most reliable way to fix permissions. First, you need to find where Ubuntu mounted your drive. Open a terminal (Ctrl+Alt+T on most Ubuntu systems) and type lsblk, then press Enter. This shows every disk connected to your computer.
Look for your external drive in the list — it usually appears as sdb, sdc, or similar, with a size that matches your drive. Under it, you'll see the partition name (often sdb1) and the mount point — the folder path where Ubuntu put it. That path typically looks like /media/username/DriveName or /mnt/DriveName. Write down the full mount path; you'll need it in the next step.
If the mount point column is empty, your drive isn't mounted yet. Unplug it, plug it back in, wait three seconds, and run lsblk again. Ubuntu should mount it automatically.
Change permissions using the terminal
Once you have the mount path, changing permissions takes one command. In the terminal, type this exactly, replacing /media/username/drivename with your actual mount path:
sudo chmod -R 755 /media/username/drivename
Press Enter, and Ubuntu will ask for your password. Type it (you won't see the characters appear) and press Enter again. The command runs silently — no message means it worked. The -R flag means "recursive," so it changes permissions on the drive and everything inside it. The 755 means the owner (you) can read, write, and execute; everyone else can read and execute but not write.
If you want to be more restrictive and allow only yourself to access the drive, use 700 instead of 755. If you want everyone on the computer to have full read and write access, use 777. For most single-user setups, 755 is the right choice.
After the command finishes, try writing a file to the drive. It should work now. If you still can't write, the drive may be NTFS and the driver didn't install correctly — go back and check that step.
Change permissions through the file manager if you prefer not to use the terminal
If you'd rather not open a terminal, you can change permissions through the file manager, though it's slower. Right-click the drive, select Properties, and look for a Permissions tab. Click it, and you'll see checkboxes for Read and Write access.
Check the Write box next to your username, then click Change Permissions for Enclosed Files. Ubuntu will ask for your password and explore the changes. This method works, but it only changes permissions on files that already exist — new files you create may still be read-only depending on your drive's format and how Ubuntu mounts it. The terminal method is more thorough.
If you don't see a Permissions tab, your drive is likely NTFS and needs the write driver installed (see the file system section above). The Properties window won't show permission options for NTFS drives until the driver is in place.
Remount the drive if permissions don't stick
If you changed permissions but they reset the next time you plugged in the drive, your drive is probably FAT32 formatted. FAT32 doesn't store Linux permissions — it resets them every time you mount it. The fix is to tell Ubuntu to mount it with permanent write permissions.
Open a terminal and type sudo blkid to find your drive's UUID (a long unique identifier). Copy the UUID for your external drive. Then type sudo nano /etc/fstab to open the mount configuration file. Add this line at the bottom, replacing the UUID and mount path with yours:
UUID=your-uuid-here /media/username/drivename vfat uid=1000,gid=1000,umask=0000 0 0
Press Ctrl+O to save, then Ctrl+X to exit. Unplug and replug the drive. Ubuntu will now mount it with write permissions every time. This is a more advanced step — if you're not comfortable editing system files, stick with the chmod command and accept that you'll need to run it again after unplugging the drive.
Frequently Asked Questions
Why does Ubuntu make external drives read-only by default?
Ubuntu mounts external drives with restrictive permissions as a safety measure. If you accidentally run a command or script that tries to delete or modify files, the read-only setting stops it from doing damage. Once you confirm the drive is yours and you trust what's on it, you can safely open up permissions.
Will changing permissions erase my files?
No. Changing permissions only changes who can read and write files — it doesn't touch the files themselves. Your data stays exactly as it is. The only risk is if you use chmod 000, which locks everyone out, but that's not what this guide does.
Do I have to run the chmod command every time I plug in the drive?
Only if your drive is FAT32 formatted. ext4 drives remember permission changes permanently. If you're tired of running the command, you can either reformat the drive as ext4 (which erases it) or follow the fstab method in the Remount section to make permissions stick automatically.
What if I get a "permission denied" error when I try to run chmod?
Make sure you typed sudo at the start of the command — that tells Ubuntu to run it with administrator privileges. Also check that you copied the mount path correctly from lsblk. If you're still stuck, run sudo chmod -R 755 /media/*/ to explore permissions to all mounted external drives at once.
Can I change permissions on just one folder instead of the whole drive?
Yes. Instead of the full mount path, use the path to the specific folder: sudo chmod -R 755 /media/username/drivename/foldername. This is useful if you want to keep some folders locked and open others, though it's more work to manage.
