Dispositivi USB visualizzati solo in lettura

87

Sto usando Ubuntu 14.04.

Ho una chiavetta USB FAT32 da 8 gb e un disco fisso FAT32 da 500 gb; entrambi questi sono diventati improvvisamente dispositivi di sola lettura.

Ho provato a eliminare la directory all'interno di /media e poi a crearla di nuovo, rinominandola, quindi dando a quella directory i permessi completi. Tuttavia, questo non ha funzionato.

Risultati di mount :

$ mount
/dev/sda5 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/cgroup type tmpfs (rw)
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)
none on /run/user type tmpfs (rw,noexec,nosuid,nodev,size=104857600,mode=0755) 
none on /sys/fs/pstore type pstore (rw) 
binfmt_misc on /proc/sys/fs/binfmt_misc type binfmt_misc (rw,noexec,nosuid,nodev)
systemd on /sys/fs/cgroup/systemd type cgroup (rw,noexec,nosuid,nodev,none,name=systemd)
gvfsd-fuse on /run/user/1000/gvfs type fuse.gvfsd-fuse (rw,nosuid,nodev,user=simon)

Risultati di sudo parted -l :

Model: ATA ST9500325AS (scsi)
Disk /dev/sda: 500GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos

Number  Start   End    Size    Type      File system     Flags
 4      1049kB  500GB  500GB   extended
 5      2097kB  496GB  496GB   logical   ext4
 6      496GB   500GB  4238MB  logical   linux-swap(v1)


Model: Verbatim STORE N GO (scsi)
Disk /dev/sdb: 8028MB
Sector size (logical/physical): 512B/512B
Partition Table: msdos

Number  Start   End     Size    Type     File system  Flags
 1      24.6kB  8028MB  8028MB  primary  fat32        boot

Risultati di lsblk :

NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda      8:0    0 465.8G  0 disk 
├─sda4   8:4    0     1K  0 part 
├─sda5   8:5    0 461.8G  0 part /
└─sda6   8:6    0     4G  0 part [SWAP]
sdb      8:16   1   7.5G  0 disk 
└─sdb1   8:17   1   7.5G  0 part /media/simon/LYDIA
sr0     11:0    1  1024M  0 rom 

Test di scrittura USB:

$ cd /media/simon/LYDIA
$ touch newfile001
touch: cannot touch ‘newfile001’: Read-only file system 

Risultati di dmesg :

[  159.366772] FAT-fs (sdb1): Volume was not properly unmounted. Some data may be       corrupt. Please run fsck.
[  159.383252] FAT-fs (sdb1): error, fat_get_cluster: invalid cluster chain (i_pos 0)
[  159.383258] FAT-fs (sdb1): Filesystem has been set read-only
[  159.383571] FAT-fs (sdb1): error, fat_get_cluster: invalid cluster chain (i_pos 0)
[  159.384251] FAT-fs (sdb1): error, fat_get_cluster: invalid cluster chain (i_pos 0)
[  159.384319] FAT-fs (sdb1): error, fat_get_cluster: invalid cluster chain (i_pos 0)
[  159.475111] systemd-hostnamed[2966]: Warning: nss-myhostname is not installed.
Changing the local hostname might make it unresolveable. Please install nss-myhostname!
[  159.480141] FAT-fs (sdb1): error, fat_get_cluster: invalid cluster chain (i_pos 0)
[  159.480224] FAT-fs (sdb1): error, fat_get_cluster: invalid cluster chain (i_pos 0)
[  159.480497] FAT-fs (sdb1): error, fat_get_cluster: invalid cluster chain (i_pos 0)
[  159.480516] FAT-fs (sdb1): error, fat_get_cluster: invalid cluster chain (i_pos 0)
[ 2893.091767] wlan0: deauthenticating from c0:3e:0f:31:21:05 by local choice   (reason=3)
    
posta oodles2do 20.12.2014 - 21:00

11 risposte

166

Vedi questo bug .

Esegui questo comando per uccidere Nautilus (file):

killall nautilus
    
risposta data wayofthefuture 09.09.2017 - 23:11
58

Quando si collega la chiave USB al laptop:

  • esegui sudo -i (in modo da non digitare la tua password sempre)
  • esegui df -Th (per vedere dove è montata la tua chiavetta USB)
  • smonta la tua chiavetta USB
  • esegui dosfsck sul dispositivo che hai visto dal comando precedente. Esempio: dosfsck /dev/sdc1
  • rimuovi e ricollega la chiavetta USB

Il problema dovrebbe essere risolto ora.

Ora, per il tuo HDD, segui la risposta a questa domanda . Riguarda un HDD esterno, ma è la stessa cosa per il tuo caso.

    
risposta data user284234 20.12.2014 - 21:28
18

Ho ricevuto lo stesso errore quando usavo GParted per impostare la tabella delle partizioni e formattare la mia chiavetta USB .. dopo che tutte le unità USB sono passate in "sola lettura".

Ma la copia sotto root ha funzionato bene ...

Il problema era sparito dopo il riavvio della macchina. Quindi immagino che questo problema possa verificarsi quando si utilizza GParted.

    
risposta data Koyot 07.11.2016 - 21:11
13

Anch'io ho avuto questo problema. Ho ricevuto un errore durante la copia sulla chiavetta USB, sto usando Mint 17.1 cinnamon, kernel 3.13.0-43 con il file manager di caja.

Quando ho guardato la directory multimediale nel terminale "dir / media" ho visto che il layout è cambiato, normalmente ti aspetti di vedere le unità elencate qui, ma ora sono elencate sotto il tuo nome utente e indovina cosa? Quel nome utente ha solo le autorizzazioni ROOT.

Quello che ho fatto è stato digitare

sudo chown [username] /media/[username]

e

sudo chgrp [username] /media/[username]

in cui sostituisci [nome utente] con il tuo nome utente, rimuovi la chiavetta USB, attendi e poi rimetti a posto, problema risolto, ora posso scriverci!

    
risposta data hillsongperth 07.06.2015 - 11:23
8

Ho formattato usando Gparted. Questo ha cancellato tutti i dati nel disco e si è risolto anche il problema.

    
risposta data Adrian Lopez 07.07.2016 - 16:48
7

Ho avuto lo stesso problema su Ubuntu, e nessuna delle risposte qui fornite finora ha funzionato per me. Ecco cosa ho provato:

  • Formatta il dispositivo utilizzando GParted. Ho anche provato a ricreare il tabella delle partizioni, senza successo.
  • Controlla il dispositivo con fsck . Non sono stati trovati problemi.
  • Corrette le autorizzazioni del punto di montaggio. Risulta che il punto di montaggio era di proprietà di root, ma anche dopo essermi fatto il proprietario, potevo solo scrivere sul dispositivo dalla riga di comando (non riuscivo ancora a creare file dalla GUI).

Quando collego una chiavetta USB, viene montata sotto /media/<username>/<label>/ , dove <username> è il mio nome utente e <label> è l'etichetta della chiavetta USB o del dispositivo di archiviazione.

Ho controllato di nuovo le autorizzazioni:

$ ls -ld /media/<username>
drwxrwx---+ 2 <username> <username> 4096 Mar  4 18:32 /media/<username>

Notare + alla fine delle autorizzazioni. Questo è nuovo per me e non l'ho mai notato prima. Significa che la directory ha autorizzazioni estese denominate Access Control List (ACL) (vedere questa domanda correlata ). Ho elencato i dettagli ACL per questa directory:

$ getfacl /media/<username>
# file: <username>/
# owner: <username>
# group: <username>
user::rwx
user:<username>:r-x
group::---
mask::r-x
other::---

Come puoi vedere, c'è una voce aggiuntiva user:<username>:r-x per il mio nome utente, che mi dà solo accesso in lettura. Ho risolto questo problema con un semplice comando:

setfacl -m u:<username>:rwx /media/<username>

Ho rimosso il mio dispositivo USB, lo ho collegato nuovamente e il problema è stato risolto.

    
risposta data Serrano 04.03.2017 - 18:56
4

Quando hai corso mount è stato montato solo sda5 (il tuo / ), ed era in lettura-scrittura ( rw ), quindi dovresti essere in grado di scrivere su di esso. Normalmente, la maggior parte delle directory come /sys , /bin sono scrivibili solo da root (avresti bisogno prima di sudo ), ma la tua cartella home dovrebbe essere scrivibile dall'utente normale.

Puoi creare dei file nella tua cartella home? Forse il tuo gestore di file gui è bloccato pensando di essere di sola lettura, se provi in ​​un terminale funziona? Ad esempio, funzionano questi comandi?:

cd ~
touch newfile001
echo stuff >> newfile001
cat newfile001

Se funzionano correttamente, puoi scrivere sul tuo HD (sda5).

Per l'unità USB, dopo averla collegata e installata, guarda mount per trovarla (la riga /dev/sdb1 ... ) e controlla se l'opzione di mount in () è rw (read- scrivi) allora dovresti essere in grado di scriverci. Se è ro (sola lettura) prova questo e vedi se cambia:

sudo mount -o remount,rw /dev/sdb1 /media/simon/LYDIA

Se il filesystem (fs) ha errori può essere montato come ro , dovrebbero esserci messaggi in dmesg & amp; /var/log/syslog anche. Questo è ciò che mostrano i tuoi registri:

[  159.366772] FAT-fs (sdb1): Volume was not properly unmounted. Some data may  
be corrupt. Please run fsck.
[  159.383252] FAT-fs (sdb1): error, fat_get_cluster: invalid cluster chain (i_pos 0)
[  159.383258] FAT-fs (sdb1): Filesystem has been set read-only

Questo include un indizio su come il fs potrebbe essere stato danneggiato - "non correttamente smontato", dovresti sempre smontare prima di scollegare qualsiasi cosa. La maggior parte dei file manager ha un "espediente" per aiutarti.

Anche il dmesg log dice come aggiustarlo: fsck può provare a correggere gli errori fs, tenta di selezionare il programma di controllo corretto, oppure puoi sceglierne uno esplicitamente con fsck.vfat o fsck.[other] premendo < kbd> TAB dopo fsck. dovrebbe elencare le opzioni.

  • Per un sistema FAT (spesso è necessario eseguirlo due volte, non sempre risolve tutti gli errori la prima volta)
    • fsck.vfat -vaV [device] dovrebbe funzionare automaticamente (-a) & amp; mostra più informazioni (-v) & amp; fai un passaggio "verifica" (-V), o semplicemente:
    • fsck.vfat -a [device]

NOTA : questo non garantisce che il filesystem rimanga fisso, potrebbe essere danneggiato di nuovo & amp; potrebbe essere impossibile sapere esattamente perché. Smonta sempre / "espelli" prima di rimuovere le unità USB.

Nota se un fs monta come rw , ma poi gli errori vengono visualizzati e amp; ottiene automaticamente rimontato come ro , il comando mount può riportare ancora che è montato rw . Guardando questo file con less /proc/mounts di solito dovresti mostrare informazioni più affidabili (vedi man mount ).

Se qualcosa è montato rw ma non puoi ancora aggiungere / eliminare / modificare file su di esso, potresti non essere il proprietario dei file. In alcuni fs puoi chown per diventare il proprietario, ma un fAT32 come fs su sdb1 non ha queste autorizzazioni; sono impostati quando monta con l'opzione mount uid=value (il valore è il tuo ID utente, impara con echo $UID o id -u ), quindi puoi provare questo & amp; vedere se funziona in seguito:

sudo mount -o remount,rw,uid=[userid] /dev/sdb1 /media/simon/LYDIA
  • Nota: A volte, potrebbe essere necessario riavviare il gestore file gui per far sì che "noti" le modifiche di montaggio che consentono di scrivere sul filesystem / unità, ma un terminale dovrebbe sempre funzionare.

Oppure se quanto sopra non funziona, prova sudo su a "diventare" root, per vedere se qualcosa può scrivere sui file su USB (con touch , echo , ecc.)

    
risposta data Xen2050 20.12.2014 - 22:19
4

Vai a Disks .

Seleziona la tua unità USB.

Fai clic su Opzioni di partizione aggiuntive e seleziona Formatta partizione .

Quindi seleziona cancella Sovrascrivi i dati esistenti con gli zeri (lenti) e digita FAT .

Ho provato molte cose dopo aver cercato su internet ma questo ha funzionato per me.

    
risposta data Mahmud 21.01.2017 - 22:46
0

Metodi di correzione rapida:

Metodo 1

A volte possiamo eseguire il compito da bash senza problemi Di solito faccio (non è richiesto sudo)

mkdir /media/$USER/mydrive/myfolder
cp -r src/ /media/$USER/mydrive/myfolder

Tuttavia, a volte, quando ho bisogno di utilizzare il browser di file,

sudo nautilus /media/$USER/mydrive/

Nota: questa è una soluzione rapida, usala solo se ti senti frustrato perché nessuna altra risposta sopra ha funzionato

Metodo 2

Riavvia il sistema operativo

    
risposta data Thamme Gowda 07.06.2017 - 17:12
0

Come in modo della risposta delfuture sopra quando sei tu usando Nemo (come me, se usi l'ambiente desktop Cinnamon) prova:

killall nemo
    
risposta data Christian Opitz 05.12.2017 - 22:08
0

prova sotto le strategie

  1. modifica /etc/fuse.conf come superutente

    modifica #user_allow_other in user_allow_other

  2. attiva il supporto di scrittura per dispositivi esterni

    • sudo apt-get install ntfs-config
    • sudo ntfs-config
risposta data Oshanz 26.07.2018 - 20:03

Leggi altre domande sui tag