Напишете Protected Pendrive на Linux

защитен от запис pendrive

Ако имате SD карта с памет, pendrive или който и да е USB диск за съхранение, който искате пиши защита, в тази статия ви казваме стъпка по стъпка и по лесен начин как да го направите. И има малко защита срещу писане, която някои драйвери позволяват, известна като «бит за защита от запис»В зависимост от това дали е активен на 1 или 0, той ще позволи запис в устройството или не. Този бит не бива да се бърка с WP на регистрите на флаговете на процесорите, които предотвратяват презаписването, като създават процес на разклоняване на UNIX-подобни системи, като по този начин защитават основната памет от запис на данни. Нито към типичния раздел за защита, който намираме на някои SD карти или носители за съхранение. В този случай имаме предвид защита, която е внедрена във вторичния носител за съхранение.

Докато контролерът на носител за съхранение USB или SD карта с памет или каквото и да е друго средство, открие, че този бит е активен, драйверът ще попречи на ядрото да нареди поръчка за запис и следователно ще може да чете само съдържанието. Със сигурност е много практично, когато съхраняваме данни, които не искаме да бъдат модифицирани, предотвратявайки писането или изтриването по грешка. Но ако някой от тези защитени носители е попаднал в ръцете ни и ние не знаем за съществуването на този бит, бихме могли да губим часове, мислейки, че нашето устройство е повредено, или да повдигнем и спуснем раздела, който някои висящи устройства или SD карти трябва да защитят без резултат. (Заключване / Отключване) ...

Монтирайте носител само за четене или само за запис:

SD карта с раздел Lock

Въпреки че не е точно това, което търсим с бита за защита срещу запис, можем също така да открием, че носител е бил автоматично или ръчно монтиран само за четене, така че няма да имаме възможността да пишем в него. Нещо, което в някои случаи може да бъде много досадно и да ни попречи да модифицираме или съхраняваме нещата. Е, решението на това е много просто.

Свързана статия:
Деактивирайте USB съхранението в Linux

Например, ако във файла / etc / fstab устройството е конфигурирано да се монтира автоматично с опцията ro (само за четене) или ако сме го монтирали с командата:

sudo mount -o ro /dev/sda /mnt

В такъв случай можем да прочетем само / dev / sda устройството, в този случай то е монтирано в точката на монтиране / mnt. За да можем да му напишем отново:

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

В случай, че този метод не работи за вас, тогава това ще бъде, защото битът, за който говорихме, действа и затова ще трябва да използваме инструмента, който представяме по-долу.

Какво е hdparm?

Твърд диск с оператори

Командата hdparm е инструмент на ниско ниво който действа като интерфейс между различни драйвери на ядрото на Linux и носители за съхранение на SATA / PATA / SAS, използвайки библиотеката libata, както и за стари IDE носители. Не забравяйте, че много USB контролери за носители за съхранение, включително четци на карти като SD карти, също използват този тип контролер за работа, следователно той също е съвместим с тях.

Su основен синтаксис е:

hdparm [опции] [устройство]

И подаръци много опции с които да работите, въпреки че не препоръчвам да ги използвате, ако не знаете какво правите добре, тъй като като инструмент на ниско ниво можете сериозно да повредите устройството си, например ако манипулираме някои критични опции като -B . Но ще ви кажа, че сред възможностите му има доста интересни като:

  • Вземете конфигурация на диска:
sudo hdparm /dev/sdd

  • Покажете идентификация на диска:
 sudo hdparm -i /dev/sdd 
  • Проверете времето за четене на буфер и кеш:
sudo hdparm -t /dev/sdd
sudo hdparm -T /dev/sdd

Винаги не забравяйте да използвате привилегиите, тоест стартирайте ги като root потребител или поставете sudo пред тях, иначе няма да работят ...

Премахнете и задайте бита за защита на паметта с hdparm:

След като инструментът hdparm е известен, можем да използваме опцията -r, с която можем да проверим състоянието на този бит с проста команда. За да направим това, трябва само да знаем физическото име на нашето устройство за съхранение. Например, ако / dev / sdd бяха извикани, в този случай бихме могли да използваме:

 sudo hdparm -r /dev/sdd 

И стойността на споменатия бит ще бъде показана на екрана. Ако стойността му е 1, това означава, че режимът е активен Само за четене или само за четене, или с други думи, методът за защита срещу запис е активен и няма да можете да запишете нищо в паметта. За да го деактивирате или модифицирате бита, просто трябва да направите следното:

sudo hdparm -r0 /dev/sdd

И сега, ако изпълним първата команда и консумираме състоянието, ще видим, че тя се е върнала на 0, следователно режимът само за четене е изключен или деактивиран. В случай, че искате да го върнете в активно състояние, използвайте опцията -r1 вместо -r0 и готов. Например:

sudo hdparm -r1 /dev/sdd

Това е просто активиране или деактивиране на този бит. Той няма твърде много загадка, но за тези, които не знаят това, може да бъде главоболие, когато става въпрос за премахване на защитата на носителите за съхранение.

Надявам се, че ви е помогнало и сега знаете как да направите защитено от писане пендирайв, не забравяйте оставете вашия коментарс…


Оставете вашия коментар

Вашият имейл адрес няма да бъде публикуван. Задължителните полета са отбелязани с *

*

*

  1. Отговорник за данните: AB Internet Networks 2008 SL
  2. Предназначение на данните: Контрол на СПАМ, управление на коментари.
  3. Легитимация: Вашето съгласие
  4. Съобщаване на данните: Данните няма да бъдат съобщени на трети страни, освен по законово задължение.
  5. Съхранение на данни: База данни, хоствана от Occentus Networks (ЕС)
  6. Права: По всяко време можете да ограничите, възстановите и изтриете информацията си.

  1.   Хернан каза той

    Здравейте!
    Първо, благодаря за бележките! Винаги са много полезни.

    Аз съм потребител на Debian 9.
    В конкретния случай имам проблем, който не мога да разреша. Имам „заразена“ писалка със защита срещу запис, която НЕ МОГА да премахна. Вече мисля, че е физически, защото честно опитах всичко (до форматиране на ниско ниво в Windows или спасителни дискове, модифициране на дялове и т.н.) и нищо.

    Мислех, че се каня да го разреша, когато следвах стъпките ви, установих, че защитата от писане на писалката е „включена“, но след като я промених на „изключена“, все още не мога да изтрия или модифицирам нищо върху нея.

    Кое може да бъде? Има ли друг начин да се реши това? (Нямам нищо против да загубя информацията, която имам вътре)

    Благодаря Ви предварително за помощта.

    Хернан

    1.    Paco каза той

      Добре! Не знам дали са ви казали решението или в крайна сметка сте го решили, но аз съм в същия случай като вас.
      Можете ли да ме посъветвате?
      Благодаря Ви много.

  2.   уилианс салгадо каза той

    добро обяснение

  3.   Серджо каза той

    Здравейте имам USB, който системата не разпознава, изпращам ви информацията, ако можете да ми помогнете благодаря

    dmesg

    [83384.348839] usb 1-1: ново високоскоростно USB устройство номер 8, използващо ehci-pci
    [83384.506219] usb 1-1: Намерено е ново USB устройство, idVendor = 0c76, idProduct = 0005, bcdDevice = 1.00
    [83384.506225] usb 1-1: Нови низове на USB устройства: Mfr = 1, Product = 2, SerialNumber = 0
    [83384.506228] usb 1-1: Продукт: USB Mass Storage
    [83384.506231] usb 1-1: Производител: GENERIC
    [83384.506848] usb-съхранение 1-1: 1.0: USB устройство за масово съхранение е открито
    [83384.508235] scsi host5: usb-съхранение 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: Прикачен scsi генеричен sg3 тип 0
    [83385.561706] sd 5: 0: 0: 0: [sdc] Прикачен SCSI сменяем диск

    root @ localhost: ~ # fdisk -l
    Диск / dev / sda: 698.7 GiB, 750156374016 байтове, 1465149168 сектори
    Единици: сектори на 1 * 512 = 512 байтове
    Размер на сектора (логически / физически): 512 байта / 4096 байта
    Размер на I / O (минимален / оптимален): 4096 байтове / 4096 байтове
    Тип Disklabel: gpt
    Disk identifier: 995F9474-C5F1-4EE9-8FD7-13EA790423DC

    Устройство Начало Край Сектори Размер Размер
    / dev / sda1 2048 1050623 1048576 512M EFI система
    / dev / sda2 1050624 49879039 48828416 23.3G файлова система Linux
    / dev / sda3 49879040 69410815 19531776 9.3G файлова система Linux
    / dev / sda4 69410816 76107775 6696960 3.2G Linux суап
    / dev / sda5 76107776 80013311 3905536 1.9G файлова система Linux
    / dev / sda6 80013312 1465147391 1385134080 660.5G файлова система Linux

    root @ localhost: ~ # fdisk -l / dev / sdc
    fdisk: не може да се отвори / dev / sdc: Не е намерен носител

    root @ localhost: ~ # hdparm / dev / sdc

    / dev / sdc:
    SG_IO: данни за лоши / липсващи усещания, 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 (изключено)
    само за четене = 0 (изключено)
    readahead = 256 (включено)

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

    / dev / sdc:
    състоянието на устройството е: готовност

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

    / dev / sdc:
    SG_IO: данни за лоши / липсващи усещания, 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, с несменяем носител
    Стандарти:
    Вероятно използвано: 1
    Конфигурация:
    Логичен максимален ток
    цилиндри 0 0
    глави 0 0
    сектори / писта 0 0
    -
    Размер на логически / физически сектор: 512 байта
    размер на устройството с M = 1024 * 1024: 0 MBytes
    размер на устройството с M = 1000 * 1000: 0 MBytes
    кеш / размер на буфера = неизвестен
    Възможности:
    IORDY не е вероятно
    Не може да се извърши IO с две думи
    R / W многосекторен трансфер: не се поддържа
    DMA: не се поддържа
    ВОН: pio0

  4.   сръчно каза той

    благодаря за вашата помощ, сега успях да разбера дали моят usb е против писането и проверих, че не е против писането, така че това вече е решение за форматиране на ниско ниво, трябва да добавя, че вирусът накара usb да се разкачи за минута или две Позволи да действа, не остави време, тъй като вече знаех с какво име го присвоих, което беше "sdc" в терминала, сложих всичко като root потребител.
    # dd ако = / dev / нула | pv | dd от = / dev / sdc bs = 1M тук изчаквате известно време
    # dd ако = / dev / нула | pv | dd на = / dev / sdc bs = 446 count = 1 изваждате и поставяте отново usb, който давате
    # mkfs.vfat -F 32 -n "anaconda" / dev / sdc и готово

  5.   MGT каза той

    Парабени! Няколко волта, които давам по този въпрос, е да дам обяснение. Благодарен Мой.

  6.   Победител каза той

    Страхотен. Благодаря ти.

  7.   Iori каза той

    И накрая нещо, което наистина работи за мен, благодаря.

  8.   спиране каза той

    Здравейте, имам 16 GB ADATA категория 10 microsd памет

    Направих процедурата и тя изглежда работи, но повторното я поставяне и повторна проверка на състоянието я връща обратно само за четене.

    Опитах се да го форматирам, но не работи. Това, което мога да видя, са моите файлове.

    всеки друг инструмент или начин за решаване на проблема?

  9.   Хосе каза той

    лесно и кратко, перфектно всички обяснения и примери, беше много полезно.

  10.   Мигел Анхел каза той

    Здравейте, аз съм потребител на Kali Linux в последната му версия, вече опитах милиард техники (съжалявам, че съм преувеличен), но никой от тях не ми дава нито в Linux, нито в Windows

  11.   даникардон каза той

    в моя случай, debian, сменяемата памет трябва да бъде демонтирана….

  12.   JR каза той

    превъзходно, благодаря
    Успях да възстановя няколко рекламни извлечения с техните инструкции

  13.   Джеро каза той

    Здравейте, работи, но папката на потребителя варира, би било добре да я изясня, но имам грешка, в командата ми показва, че я модифицирам, но когато искам да поставя папка или каквото и да е на pendrive, тя казва ми, че е защитен от запис. Ако можете да ми помогнете да го реша, това би било чудесно. Поздравления

  14.   ориел каза той

    приема командата и я показва като незащитена е r = 0, но когато искам да форматирам ми казва защитена. Благодаря ти

  15.   Уилям Р Лареал Г. каза той

    Здравей, добър ден. С това не бях опитвал, но в Windows съм направил всичко и нищо. Моят pendrive е защитен от запис, дори със sudo hdparm -r / dev / sdd дава стойност 1, но със sudo hdparm -r0 / dev / sdd също не може да премахне защитата от запис. Благодаря и поздрави от Венецуела.
    Моята версия на Linux е openSUSE Tumbleweed 15.3

  16.   Карлос АГ Рамос каза той

    Миналата информация с яснота и надеждност. Прекарах часове в тестване на няколко решения и това, представено тук, е окончателното за проблема, подлежащ на четене и блокиране на gravação.

  17.   LUIS каза той

    Отличен принос, всичко се оказа както споменахте ... благодаря

  18.   узиел каза той

    Благодаря ви много, много полезно, това обикновено се случва много в usb, решението е лесно и бързо.

  19.   Лоренцо каза той

    Благодаря ви много за приноса.
    В моя случай Ubuntu 23.4 приема всички команди, но не отключва защитния бит.
    Някаква идея?

    lorenzo@lorenzo-B85M-D3H:~$ sudo hdparm -r /dev/sdc
    [sudo] парола за Lawrence:

    / dev / sdc:
    само за четене = 1 (включено)
    lorenzo@lorenzo-B85M-D3H:~$ sudo hdparm -r0 /dev/sdc

    / dev / sdc:
    настройка само за четене на 0 (изключено)
    само за четене = 1 (включено)
    lorenzo@lorenzo-B85M-D3H:~$

    благодаря