I want to copy any file to my external hard drive. But always when I tried to do this I have next output:

cp: cannot create regular file /media/NameOfCard/[file]' : Read only file system

I also tried:

sudo chmod -R 775 /media/NameOfCard
sudo chmod -R 777 /media/NameOfCard

But the same effect - ... Read only file system


After mount I have next output:

nazar_art@nazar-desctop:~$ mount
/dev/sda1 on / type ext4 (rw,errors=remount-ro)
proc on /proc type proc (rw,noexec,nosuid,nodev)
sysfs on /sys type sysfs (rw,noexec,nosuid,nodev)
none on /sys/fs/fuse/connections type fusectl (rw)
none on /sys/kernel/debug type debugfs (rw)
none on /sys/kernel/security type securityfs (rw)
udev on /dev type devtmpfs (rw,mode=0755)
devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=0620)
tmpfs on /run type tmpfs (rw,noexec,nosuid,size=10%,mode=0755)
none on /run/lock type tmpfs (rw,noexec,nosuid,nodev,size=5242880)
none on /run/shm type tmpfs (rw,nosuid,nodev)
/dev/sdb1 on /media/sdb1 type vfat (rw)
binfmt_misc on /proc/sys/fs/binfmt_misc type binfmt_misc (rw,noexec,nosuid,nodev)
gvfs-fuse-daemon on /home/nazar_art/.gvfs type fuse.gvfs-fuse-daemon (rw,nosuid,nodev,user=nazar_art)

Any suggestions?

  • How to solve this trouble and let permission to copy and delete files to hard drive?

Try this:

mount -o rw,remount /dev/<devicename> /path/of/device/mount/directory


mount -o rw,remount /dev/sdb1 /media
  • 5
    I tried and output is: mount: you must specify the filesystem type – catch23 Aug 21 '13 at 10:04

Also try this Open nautilus file manager as root by typing following command in terminal

sudo -i

Now enter your password

Now open nautilus file manager by typing nautilts in the terminal

Now find your external hard disk on nautilus file manager and open properties of your external hard disk.

Now click permissions tab and change file access to read write.

  • Wouldn't work for me in Lubuntu 18.04 LTS. – rdtsc Mar 8 '19 at 21:31

As the message says, it is the whole external disk file system that is mounted read-only.

Use the mount command in a terminal to check the status of the disk - e.g.

/dev/sdc1 on /media/davidp/PHOTOGRAPHS type vfat (rw,nosuid,nodev,uid=1001,gid=1001,shortname=mixed,dmask=0077,utf8=1,showexec,flush,uhelper=udisks2)

For my example the first indicator in () is rw, which means read-write. I am betting yours says ro.

If that is the case, then the next trick is to find out why. Is the device set to be read only (some media has a switch to set it read only)? Is the file system corrupt? Could be many things.

  • No command 'vfat' found, did you mean: Command 'vcat' from package 'atfs' (universe) vfat: command not found . On windows OS all work perfect with this card. – catch23 Aug 21 '13 at 10:02
  • No - the line I quoted was the result, not the command. In a terminal window, at the shell prompt, type mount - it is the result of that you want to see. The result of that will also show you the file system type, which will help with @papseddy 's answer – David Purdue Aug 21 '13 at 22:21
  • I updated question and sdc isn't present as mount? How to solve this at right way? – catch23 Aug 22 '13 at 7:39
  • sdc was just an example, your mileage may vary. Looks like the card is mounted on /media/sdb1, and is mounted read-write. What happens now if you cd /media/sdb1 ; ls -l ; sudo touch example – David Purdue Aug 23 '13 at 0:01

used windows 10 disk management and resolved the external hard drive dilemma and now I can access my external hard drive with Ubuntu without problems

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.