Ako imate SD memorijsku karticu, pendrive ili bilo koji USB memorijski disk koji želite napiši zaštitu, u ovom članku ćemo vam reći korak po korak i na jednostavan način kako to učiniti. A postoji i malo zaštite od pisanja koje određeni upravljački programi dopuštaju, poznato pod nazivom «bit za zaštitu od upisivanja»Ovisno o tome je li aktivan na 1 ili 0, omogućit će pisanje na jedinicu ili ne. Ovaj bit ne treba miješati s WP registara zastavica CPU-a, koji sprečavaju prepisivanje stvaranjem procesa račvanja na sistemima sličnim UNIX-u, štiteći tako glavnu memoriju od upisivanja podataka. Niti na tipičnu karticu zaštite koju nalazimo na nekim SD karticama ili medijima za pohranu. U ovom slučaju mislimo na zaštitu koja je implementirana na sekundarnim medijima za pohranu.
Dok je kontroler medij za skladištenje USB ili SD memorijska kartica, ili bilo što drugo, otkrivaju da je ovaj bit aktivan, upravljački program će spriječiti kernel da naredi redoslijed pisanja i stoga će moći samo čitati sadržaj. Svakako je vrlo praktično kada pohranjujemo podatke koje ne želimo mijenjati, izbjegavajući pisanje ili brisanje greškom. Ali ako nam je jedan od ovih zaštićenih medija pao u ruke i ne znamo za postojanje ovog bita, mogli bismo gubiti sate misleći da je naša jedinica oštećena ili podižući i spuštajući jezičak koji neki privjesci ili SD kartice moraju zaštititi bez rezultata. (Zaključaj / Otključaj) ...
Montirajte samo za čitanje ili samo za pisanje:
Iako to nije baš ono što tražimo s bitom za zaštitu od pisanja, također možemo utvrditi da medij jeste automatski ili ručno montiran samo za čitanje, tako da nećemo imati mogućnost pisanja u njemu. Nešto što u nekim slučajevima može biti vrlo dosadno i spriječiti nas da mijenjamo ili pohranjujemo stvari. Pa, rješenje je vrlo jednostavno.
Na primjer, ako je u datoteci / etc / fstab uređaj konfiguriran za automatsko montiranje s ovom opcijom ro (samo za čitanje) ili ako smo ga montirali naredbom:
sudo mount -o ro /dev/sda /mnt
U takvom slučaju možemo pročitati samo / dev / sda uređaj, u ovom slučaju je postavljen na / mnt točku montiranja. Da bismo mu mogli ponovo napisati:
sudo mount -o remount,rw /dev/sda /mnt
U slučaju da vam ova metoda ne odgovara, onda će to biti zato što dio o kojem smo govorili djeluje, i zato ćemo morati koristiti alat koji ćemo predstaviti u nastavku.
Šta je hdparm?
Naredba hdparm je alat niskog nivoa koji djeluje kao sučelje između različitih upravljačkih programa jezgre Linuxa i SATA / PATA / SAS medija za pohranu pomoću biblioteke libata, kao i za stare IDE medije. Imajte na umu da mnogi USB kontroleri medija za pohranu podataka, uključujući čitače kartica kao što je SD, takođe koriste ovu vrstu kontrolera za rad, stoga je i kompatibilan s njima.
Su osnovna sintaksa je:
hdparm [opcije] [uređaj]
I pokloni mnogo opcija s kojim ćete raditi, iako vam ne preporučujem da ih koristite ako ne znate šta dobro radite, budući da ste alat niske razine, možete ozbiljno oštetiti svoj uređaj, na primjer ako manipuliramo nekim kritičnim opcijama kao što je -B . Ali reći ću vam da među njegovim opcijama postoje neke prilično zanimljive poput:
- Uzmi podešavanje diska:
sudo hdparm /dev/sdd
- Pokaži identifikacija diska:
sudo hdparm -i /dev/sdd
- Provjerite vremena čitanja međuspremnika i predmemorije:
sudo hdparm -t /dev/sdd sudo hdparm -T /dev/sdd
Uvijek se sjetite koristiti privilegije, odnosno pokrenite ih kao root korisnika ili stavite sudo ispred njih ili neće raditi ...
Uklonite i postavite bit zaštite memorije pomoću hdparm:
Jednom kada je alat hdparm poznat, možemo koristiti opciju -r pomoću koje možemo provjeriti status ovog bita jednostavnom naredbom. Da bismo to učinili, moramo znati samo fizičko ime našeg uređaja za pohranu. Na primjer, ako je pozvan / dev / sdd, u tom slučaju bismo mogli koristiti:
sudo hdparm -r /dev/sdd
A vrijednost navedenog bita bit će prikazana na ekranu. Ako je njegova vrijednost 1, to znači da je režim aktivan samo za čitanje ili samo za čitanje, ili drugim riječima, metoda zaštite od pisanja je aktivna i nećete moći ništa upisati u memoriju. Da biste ga deaktivirali ili modificirali bit, morate učiniti sljedeće:
sudo hdparm -r0 /dev/sdd
A sada ako izvršimo prvu naredbu i potrošimo stanje vidjet ćemo da se vratilo na 0, stoga je način samo za čitanje isključen ili deaktiviran. U slučaju da ga želite vratiti u aktivno stanje, koristite opciju -r1 umjesto -r0 i spreman. Na primjer:
sudo hdparm -r1 /dev/sdd
To je jednostavno omogućiti ili onemogućiti ovaj bit. Nema previše misterije, ali za one koji to ne znaju može biti glavobolja kada je u pitanju uklanjanje zaštite medija za pohranu.
Nadam se da vam je pomoglo i sada znate kako napraviti pendrive zaštićene upisivanjem, ne zaboravite ostavite svoj komentarda ...
Hello!
Prije svega, hvala na bilješkama! Uvijek su vrlo korisni.
Ja sam korisnik Debiana 9.
U ovom konkretnom slučaju imam problem koji ne mogu riješiti. Imam "zaraženu" olovku sa zaštitom od pisanja koju NE MOGU ukloniti. Već mislim da je fizički jer sam iskreno isprobao sve (sve do formatiranja na niskom nivou u sustavu Windows ili diskova za spašavanje, modificiranja particija itd.) I ništa.
Mislio sam da ću to riješiti, kad sam slijedio vaše korake, otkrio sam da je zaštita od pisanja pogona olovke "uključena", ali kad sam je promijenio u "isključeno", još uvijek ne mogu ništa izbrisati ili izmijeniti na njoj.
Koji bi mogao biti? Postoji li neki drugi način da se to riješi? (Ne smeta mi gubljenje podataka koje imam unutra)
Unaprijed se zahvaljujem na pomoći.
Hernan
Dobro! Ne znam jesu li vam rekli rješenje ili ste ga na kraju riješili, ali ja sam u istom slučaju kao i vi.
Možete li mi savjetovati?
Hvala lijepo.
dobro objašnjenje
Pozdrav, imam USB koji sistem ne prepoznaje, šaljem vam podatke ako mi možete pomoći, hvala
dmesg
[83384.348839] usb 1-1: novi brzi USB uređaj broj 8 koji koristi ehci-pci
[83384.506219] usb 1-1: Pronađen je novi USB uređaj, idVendor = 0c76, idProduct = 0005, bcdDevice = 1.00
[83384.506225] usb 1-1: Novi nizovi USB uređaja: Mfr = 1, Product = 2, SerialNumber = 0
[83384.506228] usb 1-1: Proizvod: USB Mass Storage
[83384.506231] usb 1-1: Proizvođač: GENERIC
[83384.506848] usb-storage 1-1: 1.0: Otkriven USB uređaj za masovnu pohranu
[83384.508235] scsi host5: usb-skladište 1-1: 1.0
[83385.524951] scsi 5: 0: 0: 0: GENERIC USB Mass Storage 1.00 PQ: 0 ANSI: 2
[83385.556757] sd 5: 0: 0: 0: Priloženi scsi generički sg3 tip 0
[83385.561706] sd 5: 0: 0: 0: [sdc] Priloženi SCSI prenosivi disk
root @ localhost: ~ # fdisk -l
Disk / razvoj / sda: 698.7 GiB, 750156374016 bajtova, 1465149168 sektora
Jedinice: sektori 1 * 512 = 512 bajtova
Veličina sektora (logički / fizički): 512 bajtova / 4096 bajtova
Veličina I / O (minimalno / optimalno): 4096 bajtova / 4096 bajtova
Tip Disklabel: gpt
Disk identifier: 995F9474-C5F1-4EE9-8FD7-13EA790423DC
Vrsta uređaja Veličina početnih i krajnjih sektora uređaja
/ dev / sda1 2048 1050623 1048576 512M EFI sistem
/ dev / sda2 1050624 49879039 48828416 23.3G Linux sistem datoteka
/ dev / sda3 49879040 69410815 19531776 9.3G Linux sistem datoteka
/ dev / sda4 69410816 76107775 6696960 3.2G swap Linux-a
/ dev / sda5 76107776 80013311 3905536 1.9G Linux sistem datoteka
/ dev / sda6 80013312 1465147391 1385134080 660.5G Linux sistem datoteka
root @ localhost: ~ # fdisk -l / dev / sdc
fdisk: ne može se otvoriti / dev / sdc: Nije pronađen medij
root @ localhost: ~ # hdparm / dev / sdc
/ dev / sdc:
SG_IO: podaci o lošem / nedostajućem osjećaju, sb []: f0 00 02 00 00 00 00 0 00 00 00 00 3 00a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
multcount = 0 (isključeno)
samo za čitanje = 0 (isključeno)
readahead = 256 (uključeno)
root @ localhost: ~ # hdparm -C / dev / sdc
/ dev / sdc:
stanje pogona je: stanje pripravnosti
root @ localhost: ~ # hdparm -I / dev / sdc
/ dev / sdc:
SG_IO: podaci o lošem / nedostajućem osjećaju, sb []: f0 00 02 00 00 00 00 0 00 00 00 00 3 00a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
ATA uređaj, s neizmjenjivim medijima
Standardi:
Vjerovatno korišteno: 1
konfiguracija:
Logična maksimalna struja
cilindri 0 0
glave 0 0
sektori / staza 0 0
-
Veličina logičkog / fizičkog sektora: 512 bajtova
Veličina uređaja s M = 1024 * 1024: 0 MBytes
Veličina uređaja s M = 1000 * 1000: 0 MBytes
veličina predmemorije / međuspremnika = nepoznata
Sposobnosti:
IORDY nije vjerovatno
Ne može se izvršiti IO sa dvije riječi
Prijenos R / W više sektora: nije podržano
DMA: nije podržano
IOP: pio0
hvala na pomoći, sada sam mogao znati je li moj usb protiv pisanja i provjerio sam da nije protiv pisanja, tako da je ovo već rješenje za formatiranje na niskom nivou, moram dodati da je virus usb prekinuo vezu za minutu ili dva i ne Dozvoljeno je djelovati, nije ostavilo vremena, pa pošto sam već znao s kojim sam mu imenom dodijelio, a to je "sdc" u terminalu, stavio sam sve kao root korisnika.
# dd ako = / dev / zero | pv | dd od = / dev / sdc bs = 1M ovdje čekate neko vrijeme
# dd ako = / dev / zero | pv | dd od = / dev / sdc bs = 446 count = 1 izvadite i ponovo stavite usb koji date
# mkfs.vfat -F 32 -n "anaconda" / dev / sdc i gotovi ste
Parabeni! Određeni broj volta koje ja radim s ovom temom je da objasnim. Zahvalni Moi.
Super. Hvala ti.
Napokon nešto što mi je zaista uspjelo, hvala.
Pozdrav, imam 16 GB ADATA memorije kategorije 10 microsd
Napravio sam proceduru i čini se da to funkcionira, ali ponovno umetanje i ponovna provjera stanja vraća je samo u čitanje.
Pokušao sam to formatirati, ali ne ide. Ono što vidim su moji fajlovi.
bilo koji drugi alat ili način za rješavanje problema?
lako i sažeto, usavrši sva objašnjenja i primjere, bilo je vrlo korisno.
Pozdrav, ja sam korisnik Kali Linuxa u njegovoj najnovijoj verziji, već sam isprobao milijardu tehnika (izvinjavam se zbog pretjerivanja), ali nijedna mi ih ne daje ni u Linuxu ni u Windowsu
u mom slučaju, debian, uklonjiva memorija mora biti demontirana….
super, hvala
Uspio sam oporaviti nekoliko promotivnih izvoda s njihovim uputama
Pozdrav, radi, ali korisnička mapa se razlikuje, bilo bi dobro pojasniti je, ali imam grešku, u naredbi mi pokazuje da je modificiram, ali kada želim staviti mapu ili bilo što drugo na pendrive, to govori meni da je zaštićen od pisanja. Ako mi možete pomoći da to riješim, to bi bilo sjajno. Pozdrav
prihvaća naredbu i prikazuje je kao nezaštićenu ona je r = 0, ali kad želim formatirati, kaže mi da je zaštićena. Hvala ti
Zdravo dobar dan. S ovim nisam pokušao, ali u sustavu Windows sam učinio sve i ništa. Moj pendrive je zaštićen od pisanja, čak i sa sudo hdparm -r / dev / sdd daje vrijednost 1, ali sa sudo hdparm -r0 / dev / sdd ni on ne može ukloniti zaštitu od pisanja. Hvala i pozdrav iz Venezuele.
Moja Linux verzija je openSUSE Tumbleweed 15.3
Ranije i pouzdanije informacije iz prošlosti. Levei sati testiraju jedan broj rješenja i ovo, ovdje predstavljeno, je definitivno za problem podložan čitanju i blokiranju gravação.
Odličan doprinos, sve je ispalo kako ste spomenuli...hvala
Hvala puno, veoma korisno, ovo se obično dešava dosta u usb-u, rešenje je lako i brzo.
Hvala vam puno na doprinosu.
U mom slučaju, Ubuntu 23.4 prihvata sve komande, ali ne otključava zaštitni bit.
Bilo koji ideja?
lorenzo@lorenzo-B85M-D3H:~$ sudo hdparm -r /dev/sdc
[sudo] lozinka za Lawrencea:
/ dev / sdc:
samo za čitanje = 1 (uključeno)
lorenzo@lorenzo-B85M-D3H:~$ sudo hdparm -r0 /dev/sdc
/ dev / sdc:
postavljanje samo za čitanje na 0 (isključeno)
samo za čitanje = 1 (uključeno)
lorenzo@lorenzo-B85M-D3H:~$
hvala