Napíšte Protected Pendrive na Linux

pendrive chránený proti zápisu

Ak máte pamäťovú kartu SD, pendrive alebo ľubovoľný úložný disk USB, ktorý chcete písať chrániť, v tomto článku vám povieme krok za krokom a jednoduchým spôsobom, ako na to. A existuje určitá ochrana proti zápisu, ktorú niektoré ovládače umožňujú, známa ako «bit ochrany proti zápisu»V závislosti od toho, či je aktívny na hodnote 1 alebo 0, umožní zápis na jednotku alebo nie. Tento bit by sa nemal zamieňať s WP vlajkových registrov CPU, ktoré zabraňujú prepísaniu vytvorením procesu rozvetvenia v systémoch podobných systému UNIX, čím chránia hlavnú pamäť pred zápisom údajov. Ani na typickú ochrannú kartu, ktorú nájdeme na niektorých SD kartách alebo úložných médiách. V tomto prípade máme na mysli ochranu, ktorá je implementovaná v sekundárnom úložnom médiu.

Zatiaľ čo kontrolór pamäťové médium Pamäťová karta USB alebo SD, alebo akýkoľvek iný prostriedok, zistí, že tento bit je aktívny, ovládač zabráni jadru v objednaní príkazu na zápis, a preto bude môcť iba čítať obsah. Určite je veľmi praktické, keď ukladáme údaje, ktoré nechceme upravovať, aby nedochádzalo k omylu alebo ich vymazaniu. Ale ak sa nám jedno z týchto chránených médií dostalo do rúk a nevieme o existencii tohto bitu, mohli by sme strácať hodiny myslením si, že je naša jednotka poškodená, alebo zdvihnutím a spustením karty, ktorú musia chrániť niektoré prívesky alebo karty SD bez výsledku. (Zamknúť / Odomknúť) ...

Pripojiť médiá iba na čítanie alebo iba na zápis:

SD karta so záložkou Lock

Aj keď to nie je presne to, čo hľadáme s bitom na ochranu proti zápisu, môžeme tiež zistiť, že médium bolo automaticky alebo manuálne namontované iba na čítanie, takže v ňom nebudeme mať možnosť písať. Niečo, čo v niektorých prípadoch môže byť veľmi nepríjemné a zabrániť nám v úprave alebo ukladaní vecí. Riešenie tohto problému je veľmi jednoduché.

Súvisiaci článok:
Zakázať úložisko USB v systéme Linux

Napríklad ak je v súbore / etc / fstab zariadenie nakonfigurované na automatické pripojenie s touto voľbou ro (iba na čítanie) alebo ak sme ho namontovali pomocou príkazu:

sudo mount -o ro /dev/sda /mnt

V takom prípade môžeme čítať iba zariadenie / dev / sda, v tomto prípade bolo namontované na prípojnom bode / mnt. Aby sme doň mohli znova písať:

sudo mount -o remount,rw /dev/sda /mnt

V prípade, že táto metóda nefunguje pre vás, potom to bude preto, že to, o čom sme hovorili, je konanie, a preto budeme musieť použiť nástroj, ktorý uvádzame nižšie.

Čo je to hdparm?

Pevný disk s operátormi

Príkaz hdparm je nástroj na nízkej úrovni ktorý funguje ako rozhranie medzi rôznymi ovládačmi jadra systému Linux a úložnými médiami SATA / PATA / SAS pomocou knižnice libata, ako aj pre staré médiá IDE. Pamätajte, že tento radič používa na svoju činnosť aj veľa radičov pamäťových médií USB, vrátane čítačiek kariet, napríklad SD, a preto je s nimi aj kompatibilný.

Su základná syntax Je to:

hdparm [možnosti] [zariadenie]

A darčeky Veľa možností s ktorými pracovať, hoci vám neodporúčam ich používať, ak neviete, čo robíte dobre, pretože ako nástroj nízkej úrovne by ste mohli vážne poškodiť svoje zariadenie, napríklad ak manipulujeme s niektorými kritickými možnosťami, ako napríklad -B. Ale poviem vám, že medzi jeho možnosťami sú niektoré celkom zaujímavé, ako napríklad:

  • Získajte konfigurácia disku:
sudo hdparm /dev/sdd

  • Ukážte identifikácia disku:
 sudo hdparm -i /dev/sdd 
  • Skontrolujte časy načítania vyrovnávacej pamäte a medzipamäte:
sudo hdparm -t /dev/sdd
sudo hdparm -T /dev/sdd

Vždy nezabudnite na použitie privilégiá, to znamená, spustiť ich ako užívateľ root alebo dať sudo pred nich, inak nebudú fungovať ...

Odstráňte a nastavte bit ochrany pamäte pomocou hdparm:

Keď je nástroj hdparm známy, môžeme použiť voľbu -r, pomocou ktorej môžeme skontrolovať stav tohto bitu jednoduchým príkazom. K tomu nám stačí poznať iba fyzický názov nášho úložného zariadenia. Napríklad, ak by sa volalo / dev / sdd, v takom prípade by sme mohli použiť:

 sudo hdparm -r /dev/sdd 

A hodnota uvedeného bitu sa zobrazí na obrazovke. Ak je jeho hodnota 1, znamená to, že režim je aktívny iba na čítanie alebo iba na čítanie, alebo inými slovami, metóda ochrany proti zápisu je aktívna a do pamäte nebudete môcť nič zapísať. Ak ho chcete deaktivovať alebo upraviť bit, musíte urobiť nasledovné:

sudo hdparm -r0 /dev/sdd

A teraz, ak vykonáme prvý príkaz a spotrebujeme stav, uvidíme, že sa vrátil na 0, preto je režim iba na čítanie vypnutý alebo deaktivovaný. Ak ho chcete vrátiť do aktívneho stavu, použite túto možnosť -r1 namiesto -r0 a pripravený. Napríklad:

sudo hdparm -r1 /dev/sdd

To je jednoduché povoliť alebo zakázať tento bit. Nemá príliš veľa tajomstiev, ale pre tých, ktorí to nevedia, to môže byť bolesť hlavy, keď dôjde na nechránenie ich pamäťových médií.

Dúfam, že vám to pomohlo a teraz viete, ako vyrobiť pendrive chránený proti zápisu, nezabudnite zanechať svoj komentárs ...


Zanechajte svoj komentár

Vaša e-mailová adresa nebude zverejnená. Povinné položky sú označené *

*

*

  1. Za údaje zodpovedá: AB Internet Networks 2008 SL
  2. Účel údajov: Kontrolný SPAM, správa komentárov.
  3. Legitimácia: Váš súhlas
  4. Oznamovanie údajov: Údaje nebudú poskytnuté tretím stranám, iba ak to vyplýva zo zákona.
  5. Ukladanie dát: Databáza hostená spoločnosťou Occentus Networks (EU)
  6. Práva: Svoje údaje môžete kedykoľvek obmedziť, obnoviť a vymazať.

  1.   Hernán dijo

    Dobrý deň!
    V prvom rade ďakujem za poznámky! Sú vždy veľmi užitočné.

    Som používateľom systému Debian 9.
    V tomto konkrétnom prípade mám problém, ktorý nemôžem vyriešiť. Mám „infikované“ pero s ochranou proti zápisu, ktoré NEMOŽEM odstrániť. Už si myslím, že je to fyzické, pretože som poctivo vyskúšal všetko (až po nízkoúrovňové formátovanie vo Windows alebo záchranné disky, úpravy oddielov atď.) A nič.

    Myslel som, že sa to chystám vyriešiť, keď som vykonal vaše kroky, zistil som, že ochrana proti zápisu na perovej jednotke bola „zapnutá“, ale akonáhle som ju zmenil na „vypnutú“, stále na nej nemôžem nič mazať ani upravovať.

    Ktoré môžu byť? Existuje nejaký iný spôsob, ako to vyriešiť? (Nevadí mi strata informácií, ktoré mám vo vnútri)

    Za pomoc vopred ďakujem.

    Hernán

    1.    pako dijo

      Dobre! Neviem, či vám povedali riešenie, alebo ste ho nakoniec vyriešili, ale som v rovnakom prípade ako vy.
      Viete mi poradit?
      Děkuju mnohokrát.

  2.   willians šalgado dijo

    dobré vysvetlenie

  3.   Sergio dijo

    Dobrý deň, mám USB, ktoré systém nerozpozná, pošlem vám informácie, ak mi môžete pomôcť, ďakujem

    dmesg

    [83384.348839] usb 1-1: nové vysokorýchlostné zariadenie USB číslo 8 pomocou ehci-pci
    [83384.506219] usb 1-1: bolo nájdené nové zariadenie USB, idVendor = 0c76, idProduct = 0005, bcdDevice = 1.00
    [83384.506225] usb 1-1: Nové reťazce zariadení USB: Mfr = 1, produkt = 2, sériové číslo = 0
    [83384.506228] usb 1-1: Produkt: USB Mass Storage
    [83384.506231] usb 1-1: Výrobca: GENERIC
    [83384.506848] usb-storage 1-1: 1.0: Bolo zistené zariadenie USB Mass Storage
    [83384.508235] scsi host5: usb-storage 1-1: 1.0
    [83385.524951] scsi 5: 0: 0: 0: Direct-Access GENERIC USB Mass Storage 1.00 PQ: 0 ANSI: 2
    [83385.556757] sd 5: 0: 0: 0: Pripojené scsi generické sg3 typu 0
    [83385.561706] sd 5: 0: 0: 0: [sdc] Pripojený vymeniteľný disk SCSI

    root @ localhost: ~ # fdisk -l
    Disk / dev / sda: 698.7 GiB, bajty 750156374016, sektory 1465149168
    Jednotky: sektory 1 * 512 = 512 bajtov
    Veľkosť sektora (logická / fyzická): 512 bajtov / 4096 bajtov
    Veľkosť I / O (minimálna / optimálna): 4096 bajtov / 4096 bajtov
    Typ diskového štítku: gpt
    Disk identifier: 995F9474-C5F1-4EE9-8FD7-13EA790423DC

    Typ zariadenia Začiatok Koniec Sektory
    / dev / sda1 2048 1050623 1048576 512M systém EFI
    / dev / sda2 1050624 49879039 48828416 23.3G Linuxový súborový systém
    / dev / sda3 49879040 69410815 19531776 9.3G Linuxový súborový systém
    / dev / sda4 69410816 76107775 6696960 3.2G Linux swap
    / dev / sda5 76107776 80013311 3905536 1.9G Linuxový súborový systém
    / dev / sda6 80013312 1465147391 1385134080 660.5G Linuxový súborový systém

    root @ localhost: ~ # fdisk -l / dev / sdc
    fdisk: nedá sa otvoriť / dev / sdc: Nenašlo sa žiadne médium

    root @ localhost: ~ # hdparm / dev / sdc

    / dev / sdc:
    SG_IO: zlé / chýbajúce zmyslové údaje, sb []: f0 00 02 00 00 00 00 0b 00 00 00 00 3a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 XNUMX
    viacpočet = 0 (vyp.)
    iba na čítanie = 0 (vypnuté)
    readahead = 256 (zapnuté)

    root @ localhost: ~ # hdparm -C / dev / sdc

    / dev / sdc:
    stav jednotky je: pohotovostný režim

    root @ localhost: ~ # hdparm -I / dev / sdc

    / dev / sdc:
    SG_IO: zlé / chýbajúce zmyslové údaje, sb []: f0 00 02 00 00 00 00 0b 00 00 00 00 3a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 XNUMX

    Zariadenie ATA s nevymeniteľným médiom
    Normy:
    Pravdepodobne použité: 1
    konfigurácia:
    Logický maximálny prúd
    valce 0 0
    hlavy 0 0
    sektory / stopa 0 0
    -
    Veľkosť logického / fyzického sektoru: 512 bajtov
    veľkosť zariadenia s M = 1024 * 1024: 0 MBytes
    veľkosť zariadenia s M = 1000 * 1000: 0 MBytes
    veľkosť medzipamäte / medzipamäte = neznáma
    schopnosti:
    IORDY nie je pravdepodobné
    Nie je možné vykonať dvojslovné IO
    R / W viacsektorový prenos: nepodporuje sa
    DMA: nie je podporované
    IOP: pio0

  4.   dextre dijo

    ďakujem za pomoc, teraz som mohol vedieť, či je moje USB proti zápisu a overil som si, že to nebolo proti zápisu, takže toto je už riešenie na formátovanie na nízkej úrovni, musím dodať, že vírus spôsobil odpojenie USB za minútu alebo dva a nie Umožnilo to konať, nezanechalo to čas, pretože som už vedel, aké meno som mu priradil, čo bolo „sdc“ v termináli, všetko som dal ako užívateľ root.
    # dd if = / dev / zero | pv | dd of = / dev / sdc bs = 1M tu chvíľu počkáš
    # dd if = / dev / zero | pv | dd = = / dev / sdc bs = 446 count = 1 vyberiete a znova umiestnite USB, ktoré dáte
    # mkfs.vfat -F 32 -n "anaconda" / dev / sdc a máte hotovo

  5.   MGT dijo

    Parabény! Niekoľko voltov, ktoré s touto témou potrebujem, má poskytnúť vysvetlenie coa. Vďačný Moi.

  6.   Víťaz dijo

    Skvelé. Ďakujem.

  7.   Iori dijo

    Nakoniec niečo, čo pre mňa naozaj fungovalo, vďaka.

  8.   prestať dijo

    Dobrý deň, mám 16 GB pamäť ADATA kategórie 10 microSD

    Urobil som postup a zdá sa, že funguje, ale jeho opätovné vloženie a opätovná kontrola stavu ho vráti späť na iba na čítanie.

    Skúšal som to naformátovať, ale nefunguje to. Čo vidím, sú moje súbory.

    akýkoľvek iný nástroj alebo spôsob riešenia problému?

  9.   Jose dijo

    ľahké a stručné, dokonalé všetko vysvetlenie a príklady, bolo to veľmi užitočné.

  10.   Miguel Angel dijo

    Dobrý deň, som používateľ Kali Linuxu v jeho najnovšej verzii, už som vyskúšal miliardu techník (prepáčte, že som prehnaný), ale žiadna mi ich nedáva ani v Linuxe, ani vo Windows

  11.   danikardone dijo

    v mojom prípade, debian, musí byť vymeniteľná pamäť odpojená ...

  12.   JR dijo

    super, ďakujem
    Podarilo sa mi získať niekoľko reklamných výpisov s ich pokynmi

  13.   Jero dijo

    Dobrý deň, funguje to, ale priečinok používateľa sa líši, bolo by dobré ho objasniť, ale mám chybu, v príkaze mi ukazuje, že ho upravujem, ale keď chcem dať priečinok alebo čokoľvek na pendrive, hovorí to mi, že je chránený proti zápisu. Ak mi pomôžete vyriešiť to, bolo by to skvelé. Zdravím vás

  14.   arkier dijo

    prijme príkaz a zobrazí ho ako nechránený, je to r = 0, ale keď ho chcem naformátovať, povie mi to chránené. Ďakujem

  15.   William R. Larreal G. dijo

    Ahoj, dobrý deň. S tým som to neskúšal, ale vo Windows som urobil všetko a nič. Môj pendrive je chránený proti zápisu, dokonca aj pri Vďaka a pozdrav z Venezuely.
    Moja verzia pre Linux je openSUSE Tumbleweed 15.3

  16.   Carlos AG Ramos dijo

    Predchádzajúce informácie s jasnosťou a spoľahlivosťou. Levei hodiny testovania sem početných riešení a toto, tu uvedené, je konečné pre problém, ktorý je predmetom čítania a blokovania gravação.

  17.   LUIS dijo

    Vyborny prispevok, vsetko dopadlo tak ako si spominal...dakujem

  18.   uziel dijo

    Dakujem velmi pekne, velmi uzitocne, na usb sa to vacsinou deje, riesenie je jednoduche a rychle.

  19.   Lorenzo dijo

    Velmi pekne dakujem za prispevok.
    V mojom prípade Ubuntu 23.4 prijíma všetky príkazy, ale neodomyká ochranný bit.
    Nejaké nápady?

    lorenzo@lorenzo-B85M-D3H:~$ sudo hdparm -r /dev/sdc
    [sudo] heslo pre Lawrencea:

    / dev / sdc:
    len na čítanie = 1 (zapnuté)
    lorenzo@lorenzo-B85M-D3H:~$ sudo hdparm -r0 /dev/sdc

    / dev / sdc:
    nastavenie len na čítanie na 0 (vypnuté)
    len na čítanie = 1 (zapnuté)
    lorenzo@ lorenzo-B85M-D3H:~$

    vďaka