Jak mogę zapisać dysk flash USB w systemie Linux? [duplikować]

0

Chcę sformatować dysk flash USB SanDisk Cruzer Edge, ale wydaje się on tylko do odczytu:

$ sudo dd if=/dev/zero of=/dev/sdg
dd: failed to open ‘/dev/sdg’: Read-only file system

Sprawdziłem status tylko do odczytu za pomocą hdparm:

$ sudo /usr/sbin/hdparm /dev/sdg
SG_IO: bad/missing sense data, sb[]:  70 00 05 00 00 00 00 14 00 00 00 00 20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
 multcount     =  0 (off)
 readonly      =  0 (off)
 readahead     = 256 (on)
 geometry      = 1017/124/62, sectors = 7821312, start = 0

The readonly wyświetlanie flagi off ale nadal nie mogę pisać na dysk. Jak to rozwiązać?


Po bieganiu dosfsck na urządzeniu otrzymuję to wyjście:

$ sudo /usr/sbin/dosfsck /dev/sdg
fsck.fat 3.0.22 (2013-07-19)
Logical sector size (1766 bytes) is not a multiple of the physical sector size.
Jephir
źródło
Jaki system plików jest na urządzeniu? Czasami, jeśli system plików jest uszkodzony, zostanie zamontowany ro. Możesz sprawdzić dysk pod kątem błędów.
Panther
System plików jest gruby32. Dodałem wyjście dosfsck do pytania.
Jephir

Odpowiedzi:

1

Domyślam się, że twój GUI polega na automatycznym podłączaniu urządzenia do jakiegoś miejsca po podłączeniu. Na przykład, kiedy podłączam pamięć USB do mojego systemu Mate / Marco 1.12:

[root@frog ~]# mount
   ...
   ...
/dev/sdg on /run/media/pgoetz/4474-E825 type vfat (rw,nosuid,nodev,relatime,uid=
1001,gid=1001,fmask=0022,dmask=0022,codepage=437,iocharset=iso8859-1,
shortname=mixed,showexec,utf8,flush,errors=remount-ro,uhelper=udisks2)

Po zamontowaniu nie będziesz w stanie dd do urządzenia, dopóki partycja nie zostanie odmontowana:

umount /dev/sdg

Nieco dziwnie, jeśli spróbuję uruchomić dd podczas instalacji partycji; na przykład

dd bs=4M if=./archlinux-2016.04.01-dual.iso of=/dev/sdg

twierdzi, że kopiuje pliki, ale kopia nie ma miejsca, dopóki partycja nie zostanie odmontowana. System musi buforować zapis z powodu zablokowania możliwości zapisu do urządzenia.

pgoetz
źródło
0

Spróbuj podzielić go na partycje za pomocą narzędzia gparted lub podobnego. Zakładam, że potrzebujesz tylko jednej partycji, więc usuń wszystko i stwórz ją z wybranym FS.

Och, a tak przy okazji, nie miałeś na myśli / dev / sdg1 lub smth. O ile wiem, na końcu musi być numer, a nie tylko sdg

TAKŻE: zastanów się, jak długo korzystasz z tej pamięci flash i jak intensywnie zapisujesz na niej dane. Pamięć Flash ma całkowity limit operacji zapisu na komórkę ( przeczytaj tutaj ). Po osiągnięciu limitu dysk powinien stać się tylko do odczytu. mówię normalnie , ponieważ zdarzają się przypadki, w których dysk zawiedzie całkowicie - może się tak zdarzyć, jeśli używasz taniego urządzenia niskiej jakości.

Art Gertner
źródło
Kończysz dd tylko przez sdg. Następnie rozpocznie się od sektora 0 wycierając tabelę patycji i wszystkie inne ważne informacje o systemie plików. sdg1 wymusiłoby przeskoczenie do początku pierwszej partycji, zazwyczaj sektora 63.
cybernard
Podczas używania gparted pojawia się błąd „Nie można zapisać do / dev / sdg, ponieważ jest on otwarty tylko do odczytu”.
Jephir
która operacja dokładnie wyświetla ten komunikat „Nie można zapisać do / dev / sdg, ponieważ jest ona otwarta tylko do odczytu”. ? Czy zdarza się, gdy próbujesz sformatować lub ponownie podzielić dysk na partycje? Czy uruchamiasz gparted jako root?
Art Gertner
TAKŻE przeczytaj aktualizację mojej początkowej odpowiedzi. Twój napęd mógł się zużyć. Jeśli tak jest, nie będziesz już mógł do niego pisać (i oczywiście nie możesz go sformatować)
Art Gertner