permiso de lectura y escritura para la partición FAT32 en Ubuntu

16

Este es un problema extraño. Tengo la siguiente tabla de particiones

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1          13      102400    7  HPFS/NTFS
Partition 1 does not end on cylinder boundary.
/dev/sda2              13        5737    45978624    7  HPFS/NTFS
/dev/sda3            5738       10600    39062047+  83  Linux
/dev/sda4           10601       19457    71143852+   5  Extended
/dev/sda5           10601       11208     4883728+  82  Linux swap / Solaris
/dev/sda6           11209       15033    30720000    b  W95 FAT32
/dev/sda7           15033       19457    35537920    7  HPFS/NTFS

Arranqué dual Win7 (sda2) y Ubuntu (sda3) y quería usar la partición FAT32 para compartir archivos en dos sistemas operativos.

Seguí un tutorial en línea y he hecho esto:

sudo mkdir /media/FAT32
sudo chmod 777 /media/FAT32
sudo mount /dev/sda6/ /media/FAT32

después de montar el archivo, solo puedo leer pero no puedo escribir en él.

Revisé el permiso del archivo, se convierte en:

drwxr-xr-x

pero después de desmontarlo se convierte en

drwxrwxrwx

y puedo leerlo y escribirle.

No sé dónde me he equivocado.

Decano
fuente

Respuestas:

18

Intente montar con rw y especifique el tipo:

mount -t vfat /dev/sda6 /media/FAT32 -o rw,uid=xxx,gid=xxx

donde uid y gid son los de su cuenta de usuario.

John T
fuente
El umask tiene efecto al crear nuevos archivos.
geek
usery autoson opciones para la fstabentrada; No son muy útiles en la línea de comandos.
quack quijote
Sí, acabo de traducir una de mis entradas fstab a una línea de comando. Dejó en algunos bits que no son útiles, pero tampoco son exactamente dañinos.
John T
2
sudo mount -t vfat /dev/sda6 /media/FAT32 -o rw,uid=$(id -u),gid=$(id -g)
chefarov
1

Para los sistemas de archivos FAT, la disponibilidad de lectura / escritura se rige por las opciones de montaje.

Consulte la página de manual para el montaje y lea sobre las opciones de montaje uid y gid para FAT.

friki
fuente
1

¿Has intentado escribir en los archivos con un sudocomando? Eso debería funcionar con su configuración actual.

Para que las escrituras de archivos funcionen para su usuario normal, debe usar las opciones uidy para configurar el propietario de los archivos de la partición con su ID de usuario actual. Probablemente también quiera, ya sea o y opciones.gidmountumaskdmaskfmask

Su mountcomando se vería así:

sudo mount -t vfat /dev/sda6 /media/FAT32 -o uid=1000,gid=1000,umask=022
# assuming your user's UID is 1000, GID is 1000
# umask=022 sets permission mode 755 for all files on the partition
quijote curandero
fuente
1

Tiene el orden incorrecto en los comandos que desea:

sudo mkdir /media/FAT32
sudo mount /dev/sda6 /media/FAT32
sudo chmod 777 /media/FAT32

Lo que sucede es que / media / FAT32 representa diferentes directorios antes y después del montaje. Antes es el directorio que creó, y que modificó 777. Después, es el directorio raíz del sistema de archivos en / dev / sda6.

jneves
fuente
1

Si simplemente se olvida de la línea de comandos y monta con Nautilus, debería configurarlo como desee.

Desde el terminal, los permisos de la carpeta antes del montaje no importan. Son las opciones de montaje las que cuentan. Tratar:

mount -t vfat /dev/sda6 /media/FAT32 -o rw,uid=xxx,gid=xxx,umask=133,dmask=022

Esto establecerá archivos rw-r--r--y carpetas en rwxr-xr-x.

Si desea otro usuario / grupo y permisos, por ejemplo, para copiar archivos de fat32 a la partición ext4 con los atributos deseados, mejor consulte la página de mountmanual. Aproximadamente te pones umasklo contrario de lo que te pondrías chmod.

usuario39559
fuente
0

A veces perdí el disco de Windows de Linux y lo resolví usando mount con "-o force", como este ejemplo:

sudo mount -t ntfs-3g /dev/sda1 /media/win -o force

En su caso, al ser FAT32, debe leer sobre esto, pero puede ser esta ayuda. De todos modos, ¡intenta bajo tu propio riesgo!

Tamara Wijsman
fuente
0

Tuve exactamente el mismo problema y lo único que realmente funcionó es:

sudo mount -t vfat  /dev/sda6 /media/FAT32 -o rw,umask=0000

Ver también esa respuesta

lauhub
fuente
Hice esto, la clave usb todavía está protegida contra escritura
Eildosa
¿Lo intentaste chmod 777 /media/FAT32?
lauhub
1
por alguna razón, eliminar ", umask = 0000" funcionó
Eildosa
0

Sin montar manualmente, una línea fstab hace el truco,

UUID = 1DD9-0D44 / media / exthd / TERABYTE_G vfat rw, noatime, uid = 1000, gid = 1000, usuario 0 0

(uid, gid son de su usuario, / media / exthd / TERABYTE_G debe estar pre-creado)

pero tenga en cuenta que parece que mount -a no se aplica correctamente para probar la nueva línea fstab, por lo que ayuda un reinicio completo.

Angelo Dureghello
fuente
0

Muy importante reparar / verificar el disco en Windows antes de usarlo en Linux, por defecto los controladores fat / ntfs desactivan la escritura si encuentran errores en el disco

chkdsk d: /f 

Luego

sudo mount -t vfat /dev/sdc1 /media/FAT32 -o rw,uid=$(id -u),gid=$(id -g)

como se indicó anteriormente

intika
fuente