Napište Protected Pendrive na Linux

pendrive chráněný proti zápisu

Pokud máte paměťovou kartu SD, pendrive nebo libovolný úložný disk USB, který chcete chránit proti zápisu, v tomto článku vám řekneme krok za krokem a snadným způsobem, jak na to. A existuje určitá ochrana proti zápisu, kterou určité ovladače umožňují, známá jako «bit ochrany proti zápisu»Podle toho, zda je aktivní na 1 nebo 0, umožní zápis do jednotky nebo ne. Tento bit by neměl být zaměňován s WP vlajkových registrů CPU, které zabraňují přepsání vytvořením procesu rozvětvení v systémech podobných systému UNIX, čímž chrání hlavní paměť před zápisem dat. Ani na typickou záložku ochrany, kterou najdeme na některých SD kartách nebo paměťových médiích. V tomto případě máme na mysli ochranu implementovanou na sekundárním úložném médiu.

Zatímco správce paměťové médium Paměťová karta USB nebo SD, nebo jakkoli to znamená, zjistí, že je tento bit aktivní, ovladač zabrání jádru v objednání zápisu, a proto bude moci pouze číst obsah. Je jistě velmi praktické, když ukládáme data, která nechceme upravovat, abychom se vyhnuli omylu zápisu nebo vymazání. Ale pokud se nám jedno z těchto chráněných médií dostalo do rukou a nevíme o existenci tohoto bitu, mohli bychom ztrácet hodiny tím, že si myslíme, že je naše jednotka poškozená, nebo zvedáním a spouštěním karty, kterou musí chránit některé pendrivy nebo SD karty bez jakéhokoli výsledku. (Zamknout / Odemknout) ...

Připojit pouze pro čtení nebo pro zápis:

SD karta se záložkou Lock

Ačkoli to není přesně to, co hledáme s bitem ochrany proti zápisu, můžeme také zjistit, že médium bylo automaticky nebo ručně připojeno pouze pro čtení, takže do něj nebudeme mít možnost psát. Něco, co v některých případech může být velmi nepříjemné a zabránit nám v úpravách nebo ukládání věcí. Řešení je velmi jednoduché.

Související článek:
Zakázat úložiště USB v systému Linux

Například pokud je v souboru / etc / fstab zařízení nakonfigurováno tak, aby se automaticky připojovalo pomocí této možnosti ro (pouze pro čtení) nebo pokud jsme jej připojili pomocí příkazu:

sudo mount -o ro /dev/sda /mnt

V takovém případě můžeme číst pouze zařízení / dev / sda, v tomto případě bylo připojeno k přípojnému bodu / mnt. Abychom do něj mohli znovu psát:

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

V případě, že tato metoda nefunguje pro vás, pak to bude proto, že bit, o kterém jsme mluvili, je jednání, a proto budeme muset použít nástroj, který uvádíme níže.

Co je hdparm?

Pevný disk s operátory

Příkaz hdparm je nástroj na nízké úrovni který funguje jako rozhraní mezi různými ovladači jádra Linuxu a úložnými médii SATA / PATA / SAS pomocí knihovny libata, stejně jako pro stará média IDE. Pamatujte, že mnoho řadičů paměťových médií USB, včetně čteček karet, jako je SD, také používá tento typ ovladače k ​​ovládání, proto je s nimi také kompatibilní.

Su základní syntaxe Je to:

hdparm [možnosti] [zařízení]

A dárky mnoho možností se kterým pracovat, i když nedoporučuji, abyste je používali, pokud nevíte, co děláte dobře, protože jako nástroj nízké úrovně byste mohli vážně poškodit vaše zařízení, například kdybychom manipulovali s některými kritickými možnostmi, jako je -B . Ale řeknu vám, že mezi jeho možnostmi jsou některé docela zajímavé, jako například:

  • Získejte konfigurace disku:
sudo hdparm /dev/sdd

  • Ukažte identifikace disku:
 sudo hdparm -i /dev/sdd 
  • Zkontrolujte časy čtení vyrovnávací paměti a mezipaměti:
sudo hdparm -t /dev/sdd
sudo hdparm -T /dev/sdd

Vždy nezapomeňte použít privilegia, to znamená, spustit je jako uživatel root nebo dát sudo dopředu, jinak nebudou fungovat ...

Odstraňte a nastavte bit ochrany paměti pomocí hdparm:

Jakmile je nástroj hdparm známý, můžeme použít volbu -r, pomocí které můžeme zkontrolovat stav tohoto bitu jednoduchým příkazem. K tomu potřebujeme znát pouze fyzický název našeho úložného zařízení. Pokud by například bylo voláno / dev / sdd, v takovém případě bychom mohli použít:

 sudo hdparm -r /dev/sdd 

A hodnota uvedeného bitu se zobrazí na obrazovce. Pokud je jeho hodnota 1, znamená to, že režim je aktivní číst nebo jen pro čtení, nebo jinými slovy, metoda ochrany proti zápisu je aktivní a do paměti nebudete moci nic zapsat. Chcete-li jej deaktivovat nebo upravit bit, musíte udělat následující:

sudo hdparm -r0 /dev/sdd

A teď, když provedeme první příkaz a spotřebujeme stav, uvidíme, že se vrátil na 0, proto je režim pouze pro čtení vypnutý nebo deaktivovaný. Chcete-li jej vrátit do aktivního stavu, použijte tuto možnost -r1 místo -r0 a připraven. Například:

sudo hdparm -r1 /dev/sdd

To je jednoduché povolit nebo zakázat tento bit. Nemá příliš mnoho tajemství, ale pro ty, kteří to nevědí, to může být bolest hlavy, pokud jde o nechránění jejich paměťových médií.

Doufám, že vám to pomohlo a teď víte, jak vytvořit pendrive chráněný proti zápisu, nezapomeňte zanechat svůj komentářAno ...


Zanechte svůj komentář

Vaše e-mailová adresa nebude zveřejněna. Povinné položky jsou označeny *

*

*

  1. Za data odpovídá: AB Internet Networks 2008 SL
  2. Účel údajů: Ovládací SPAM, správa komentářů.
  3. Legitimace: Váš souhlas
  4. Sdělování údajů: Údaje nebudou sděleny třetím osobám, s výjimkou zákonných povinností.
  5. Úložiště dat: Databáze hostovaná společností Occentus Networks (EU)
  6. Práva: Vaše údaje můžete kdykoli omezit, obnovit a odstranit.

  1.   Hernán řekl

    Dobrý den!
    Především díky za poznámky! Jsou vždy velmi užitečné.

    Jsem uživatel Debianu 9.
    V tomto konkrétním případě mám problém, který nemohu vyřešit. Mám „infikované“ pero s ochranou proti zápisu, KTERÉ NEMOHU odstranit. Už si myslím, že je to fyzické, protože jsem upřímně vyzkoušel všechno (až po nízkoúrovňové formátování v systému Windows nebo záchranné disky, úpravy oddílů atd.) A nic.

    Myslel jsem, že se to chystám vyřešit, když jsem sledoval vaše kroky, zjistil jsem, že ochrana proti zápisu do pera byla „zapnutá“, ale jakmile jsem ji změnil na „vypnuto“, stále na ní nemohu nic mazat ani upravovat.

    Které mohou být? Existuje nějaký jiný způsob, jak to vyřešit? (Nevadí mi ztráta informací, které mám uvnitř)

    Předem děkuji za Vaši pomoc.

    Hernán

    1.    Paco řekl

      Dobrý! Nevím, jestli vám řekli řešení, nebo jste to nakonec vyřešili, ale já jsem ve stejném případě jako vy.
      Můžete mi poradit?
      Děkuju mnohokrát.

  2.   slané willians řekl

    dobré vysvětlení

  3.   Sergio řekl

    Dobrý den, mám USB, které systém nerozpozná, pošlu vám informace, pokud mi můžete pomoci, díky

    dmesg

    [83384.348839] usb 1-1: nové vysokorychlostní zařízení USB číslo 8 pomocí ehci-pci
    [83384.506219] usb 1-1: Nalezeno nové zařízení USB, idVendor = 0c76, idProduct = 0005, bcdDevice = 1.00
    [83384.506225] usb 1-1: Nové řetězce zařízení USB: Mfr = 1, Product = 2, SerialNumber = 0
    [83384.506228] usb 1-1: Produkt: USB Mass Storage
    [83384.506231] usb 1-1: Výrobce: GENERIC
    [83384.506848] usb-storage 1-1: 1.0: USB Mass Storage device detected
    [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: Připojená obecná scsi sg3 typu 0
    [83385.561706] sd 5: 0: 0: 0: [sdc] Připojený vyměnitelný disk SCSI

    root @ localhost: ~ # fdisk -l
    Disk / dev / sda: 698.7 GiB, 750156374016 bajty, 1465149168 sektory
    Jednotky: sektory 1 * 512 = 512 bajtů
    Velikost sektoru (logické / fyzické): 512 bajtů / 4096 bajtů
    Velikost I / O (minimální / optimální): bajty 4096 / bajty 4096
    Typ disku: gpt
    Disk identifier: 995F9474-C5F1-4EE9-8FD7-13EA790423DC

    Typ zařízení Začátek a konec koncových sektorů
    / dev / sda1 2048 1050623 1048576 Systém 512M EFI
    / dev / sda2 1050624 49879039 48828416 23.3G Linuxový souborový systém
    / dev / sda3 49879040 69410815 19531776 9.3G Linuxový souborový systém
    / dev / sda4 69410816 76107775 6696960 3.2G Linux swap
    / dev / sda5 76107776 80013311 3905536 1.9G Linuxový souborový systém
    / dev / sda6 80013312 1465147391 1385134080 660.5G Linuxový souborový systém

    root @ localhost: ~ # fdisk -l / dev / sdc
    fdisk: nelze otevřít / dev / sdc: Nebylo nalezeno žádné médium

    root @ localhost: ~ # hdparm / dev / sdc

    / dev / sdc:
    SG_IO: chybná / chybějící smyslová data, 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
    multcount = 0 (vypnuto)
    pouze pro čtení = 0 (vypnuto)
    readahead = 256 (zapnuto)

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

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

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

    / dev / sdc:
    SG_IO: chybná / chybějící smyslová data, 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

    Zařízení ATA s nevyměnitelným médiem
    Normy:
    Pravděpodobně použito: 1
    Konfigurace:
    Logický maximální proud
    válce 0 0
    hlavy 0 0
    sektory / stopa 0 0
    -
    Velikost logického / fyzického sektoru: 512 bajtů
    velikost zařízení s M = 1024 * 1024: 0 MBytes
    velikost zařízení s M = 1000 * 1000: 0 MBytes
    velikost mezipaměti / vyrovnávací paměti = neznámá
    Možnosti:
    IORDY není pravděpodobné
    Nelze provést dvojslovné IO
    Přenos více sektorů R / W: není podporován
    DMA: není podporováno
    IOP: pio0

  4.   Dextre řekl

    děkuji za vaši pomoc, teď jsem mohl vědět, jestli je moje USB proti psaní a ověřil jsem si, že to nebylo proti psaní, takže toto je již řešení pro formátování na nízké úrovni, musím dodat, že virus způsobil odpojení USB za minutu nebo dva a ne Umožnilo to jednat, nezanechalo to čas, protože už jsem věděl, jakému jménu jsem to přidělil, což bylo „sdc“ v terminálu, dal jsem vše jako uživatel root.
    # dd if = / dev / zero | pv | dd of = / dev / sdc bs = 1M zde chvíli počkáte
    # dd if = / dev / zero | pv | dd of = / dev / sdc bs = 446 count = 1 vyjmete a znovu vložte USB, které dáte
    # mkfs.vfat -F 32 -n "anaconda" / dev / sdc a máte hotovo

  5.   MGT řekl

    Parabeny! Řada volt, které s tímto tématem potřebuji, má poskytnout vysvětlení coa. Vděčný Moi.

  6.   Vítěz řekl

    Skvělý. Děkuju.

  7.   Iori řekl

    Konečně něco, co pro mě opravdu fungovalo, díky.

  8.   přestat řekl

    Dobrý den, mám 16 GB ADATA kategorie 10 microSD paměti

    Udělal jsem postup a zdá se, že funguje, ale jeho opětovné vložení a opětovná kontrola stavu jej vrátí zpět jen pro čtení.

    Snažil jsem se to naformátovat, ale nefunguje to. Vidím jen své soubory.

    jakýkoli jiný nástroj nebo způsob, jak problém vyřešit?

  9.   Jose řekl

    snadné a výstižné, zdokonalit všechna vysvětlení a příklady, bylo to velmi užitečné.

  10.   Michelangelo řekl

    Ahoj, jsem uživatel Kali Linuxu v jeho nejnovější verzi, už jsem vyzkoušel miliardu technik (omlouvám se, že jsem přehnaný), ale žádná z nich mi nedává ani v Linuxu, ani ve Windows

  11.   danikardone řekl

    v mém případě, debian, musí být vyměnitelná paměť odpojena ...

  12.   JR řekl

    vynikající, díky
    Podařilo se mi získat několik reklamních výtahů s jejich pokyny

  13.   Jero řekl

    Dobrý den, funguje to, ale složka uživatele se liší, bylo by dobré to objasnit, ale mám chybu, v příkazu mi ukazuje, že ji upravuji, ale když chci dát složku nebo cokoli na pendrive, řekne to mi, že je chráněn proti zápisu. Pokud mi pomůžete vyřešit, bylo by to skvělé. Pozdravy

  14.   arkýř řekl

    přijímá příkaz a zobrazuje jej jako nechráněný, je to r = 0, ale když chci formátovat, řekne mi to chráněné. Děkuju

  15.   William R Larreal G. řekl

    Ahoj pěkný den. S tím jsem se nepokusil, ale ve Windows jsem udělal všechno a nic. Můj pendrive je chráněn proti zápisu, dokonce is sudo hdparm -r / dev / sdd dává hodnotu 1, ale s sudo hdparm -r0 / dev / sdd to také nemohlo odstranit ochranu proti zápisu. Díky a pozdravy z Venezuely.
    Moje verze pro Linux je openSUSE Tumbleweed 15.3

  16.   Carlos AG Ramos řekl

    Předchozí informace s jasností a spolehlivostí. Levei hodin testování sem počet řešení, a to, zde uvedené, je definitivní pro problém v závislosti na čtení a blokování gravação.

  17.   LUIS řekl

    Vyborny prispevek, vse dopadlo jak zmiňujete...díky

  18.   uziel řekl

    Děkuji mnohokrát, velmi užitečné, běžně se to děje v usb, řešení je snadné a rychlé.

  19.   Lorenzo řekl

    Moc děkuji za příspěvek.
    V mém případě Ubuntu 23.4 přijímá všechny příkazy, ale neodemyká ochranný bit.
    Nějaké nápady?

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

    / dev / sdc:
    jen pro čtení = 1 (zapnuto)
    lorenzo@lorenzo-B85M-D3H:~$ sudo hdparm -r0 /dev/sdc

    / dev / sdc:
    nastavení pouze pro čtení na 0 (vypnuto)
    jen pro čtení = 1 (zapnuto)
    lorenzo@ lorenzo-B85M-D3H:~$

    díky