Ja jums ir SD atmiņas karte, pendrive vai jebkuru vēlamo USB atmiņas disku rakstīt aizsargāt, šajā rakstā mēs soli pa solim un vienkāršā veidā pastāstām, kā to izdarīt. Daži autovadītāji atļauj mazliet pretrakstīšanas aizsardzību, kas pazīstama kā «rakstīšanas aizsardzības bits»Atkarībā no tā, vai tas ir aktīvs ar 1 vai 0, tas ļaus rakstīt vienībai vai nē. Šo bitu nevajadzētu jaukt ar CPU karodziņu reģistru WP, kas novērš pārrakstīšanu, izveidojot dakšu procesu UNIX līdzīgās sistēmās, tādējādi aizsargājot galveno atmiņu no datu rakstīšanas. Tāpat arī tipiskajai aizsardzības cilnei, kuru atrodam dažās SD kartēs vai datu nesējos. Šajā gadījumā mēs atsaucamies uz aizsardzību, kas tiek ieviesta sekundārajā datu nesējā.
Kamēr kontrolieris datu nesējs USB vai SD atmiņas karte vai kāds cits līdzeklis nosaka, ka šis bits ir aktīvs, draiveris neļaus kodolam pasūtīt rakstīšanas pasūtījumu, un tāpēc tas varēs lasīt tikai saturu. Tas noteikti ir ļoti praktiski, ja glabājam datus, kurus nevēlamies modificēt, izvairoties no kļūdas rakstīšanas vai dzēšanas. Bet, ja kāds no šiem aizsargātajiem datu nesējiem ir nonācis mūsu rokās un mēs nezinām par šī gabala esamību, mēs varētu tērēt stundas, domājot, ka mūsu vienība ir bojāta, vai paceļot un nolaižot cilni, kas jāaizsargā dažiem pendrives vai SD kartēm tos bez rezultāta. (Bloķēt / atbloķēt) ...
Pievienojiet tikai lasāmus vai tikai rakstāmus nesējus:
Lai gan tas nav tieši tas, ko mēs meklējam ar rakstīšanas aizsardzības bitu, mēs varam arī konstatēt, ka datu nesējs ir bijis automātiski vai manuāli uzstādīts tikai lasīšanai, tāpēc mums nebūs iespēju tajā rakstīt. Kaut kas dažos gadījumos var būt ļoti kaitinošs un traucēt mums modificēt vai uzglabāt lietas. Nu, risinājums tam ir ļoti vienkāršs.
Piemēram, ja failā / etc / fstab ierīce ir konfigurēta automātiski pievienoties, izmantojot opciju ro (tikai lasāms) vai ja mēs to esam uzstādījuši ar komandu:
sudo mount -o ro /dev/sda /mnt
Šādā gadījumā mēs varam nolasīt tikai / dev / sda ierīci, šajā gadījumā tā ir uzstādīta uz / mnt stiprinājuma punkta. Lai mēs varētu uz to vēlreiz rakstīt:
sudo mount -o remount,rw /dev/sda /mnt
Gadījumā, ja šī metode jums nedarbojas, tad tas notiks tāpēc, ka mazliet darbojamies, par ko mēs runājām, un tāpēc mums būs jāizmanto rīks, kuru mēs piedāvājam tālāk.
Kas ir hdparm?
Komanda hdparm ir zema līmeņa rīks kas darbojas kā saskarne starp dažādiem Linux kodola draiveriem un SATA / PATA / SAS datu nesējiem, izmantojot libata bibliotēku, kā arī veciem IDE datu nesējiem. Atcerieties, ka daudzi USB datu nesēju kontrolleri, tostarp karšu lasītāji, piemēram, SD kartes, izmanto arī šāda veida kontrollerus, lai darbotos, tāpēc tas ir arī ar tiem saderīgs.
Su pamata sintakse ir:
hdparm [opcijas] [ierīce]
Un dāvanas daudz iespēju lai gan es neiesaku tos izmantot, ja nezināt, ko darāt labi, jo būdams zema līmeņa rīks, jūs varētu nopietni sabojāt ierīci, piemēram, ja manipulēsim ar dažām kritiskām opcijām, piemēram, -B Bet es jums saku, ka starp tās iespējām ir daži diezgan interesanti, piemēram:
- Iegūstiet konfigurācija diska:
sudo hdparm /dev/sdd
- Parādīt identifikācija diska:
sudo hdparm -i /dev/sdd
- Pārbaudiet bufera un kešatmiņas lasīšanas laikus:
sudo hdparm -t /dev/sdd sudo hdparm -T /dev/sdd
Vienmēr atcerieties lietot privilēģijas, tas ir, palaidiet tos kā root lietotājus vai ievietojiet sudo priekšā, pretējā gadījumā tie nedarbosies ...
Noņemiet un iestatiet atmiņas aizsardzības bitu ar hdparm:
Kad ir zināms hdparm rīks, mēs varam izmantot opciju -r, ar kuru mēs varam pārbaudīt šī bita statusu ar vienkāršu komandu. Lai to izdarītu, mums jāzina tikai mūsu atmiņas ierīces fiziskais nosaukums. Piemēram, ja izsauktu / dev / sdd, tādā gadījumā mēs varētu izmantot:
sudo hdparm -r /dev/sdd
Un minētā bita vērtība tiks parādīta ekrānā. Ja tā vērtība ir 1, tas nozīmē, ka režīms ir aktīvs tikai lasīt vai tikai lasāma, jeb, citiem vārdiem sakot, rakstīšanas aizsardzības metode ir aktīva, un jūs nevarēsiet neko ierakstīt atmiņā. Lai to deaktivizētu vai modificētu bitu, jums vienkārši jāveic šādas darbības:
sudo hdparm -r0 /dev/sdd
Un tagad, ja izpildīsim pirmo komandu un patērēsim stāvokli, redzēsim, ka tā ir atgriezusies 0, tāpēc tikai lasīšanas režīms ir izslēgts vai deaktivizēts. Gadījumā, ja vēlaties to atgriezt aktīvajā stāvoklī, izmantojiet opciju -r1 vietā -r0 un gatavs. Piemēram:
sudo hdparm -r1 /dev/sdd
Tas ir vienkārši iespējojiet vai atspējojiet šo bitu. Tam nav pārāk daudz noslēpumu, bet tiem, kas to nezina, tas var sagādāt galvassāpes, kad jāaizsargā viņu datu nesēji.
Es ceru, ka tas jums ir palīdzējis, un tagad jūs zināt, kā izveidot pendrive ar rakstīšanu aizsargātu, neaizmirstiet atstāj savu komentāruJā ...
Labdien!
Pirmkārt, paldies par piezīmēm! Tie vienmēr ir ļoti noderīgi.
Es esmu Debian 9 lietotājs.
Šajā konkrētajā gadījumā man ir problēma, kuru es nevaru atrisināt. Man ir "inficēta" pildspalva ar rakstīšanas aizsardzību, kuru NEVARU noņemt. Es jau domāju, ka tas ir fiziski, jo esmu godīgi izmēģinājis visu (līdz zema līmeņa formatēšanai sistēmā Windows vai glābšanas diskos, starpsienu modificēšanai utt.) Un neko.
Es domāju, ka grasos to atrisināt, veicot jūsu darbības, es atklāju, ka pildspalvas diska rakstīšanas aizsardzība ir “ieslēgta”, bet, kad es to nomainīju uz “izslēgta”, es joprojām nevaru tajā neko izdzēst vai modificēt.
Kas var būt? Vai ir kāds cits veids, kā to atrisināt? (Man nav iebildumu zaudēt informāciju, kas man ir iekšā)
Jau iepriekš pateicos par palīdzību.
Hernans
Labi! Es nezinu, vai viņi jums teica risinājumu vai beigās jūs to atrisinājāt, bet es esmu tajā pašā gadījumā kā jūs.
Vai varat man ieteikt?
Liels paldies.
labs paskaidrojums
Sveiki, man ir USB, kuru sistēma neatpazīst. Es jums nosūtu informāciju, ja varat man paldies
dmesg
[83384.348839] usb 1-1: jauna ātrgaitas USB ierīces numurs 8, izmantojot ehci-pci
[83384.506219] usb 1-1: atrasta jauna USB ierīce, idVendor = 0c76, idProduct = 0005, bcdDevice = 1.00
[83384.506225] usb 1-1: jaunas USB ierīces virknes: Mfr = 1, Product = 2, SerialNumber = 0
[83384.506228] usb 1-1: Produkts: USB lielapjoma atmiņa
[83384.506231] usb 1-1: Ražotājs: GENERIC
[83384.506848] usb-storage 1-1: 1.0: atrasta USB lielapjoma atmiņas ierīce
[83384.508235] scsi host5: usb-storage 1-1: 1.0
[83385.524951] scsi 5: 0: 0: 0: Tiešās piekļuves GENERIC USB lielapjoma atmiņa 1.00 PQ: 0 ANSI: 2
[83385.556757] sd 5: 0: 0: 0: pievienots scsi generic sg3 type 0
[83385.561706] sd 5: 0: 0: 0: [sdc] Pievienots SCSI noņemams disks
root @ localhost: ~ # fdisk -l
Disk / dev / sda: 698.7 GiB, 750156374016 baiti, 1465149168 sektori
Vienības: sektori 1 * 512 = 512 baiti
Sektora lielums (loģisks / fizisks): 512 baiti / 4096 baiti
I / O izmērs (minimālais / optimālais): 4096 baiti / 4096 baiti
Diska etiķetes tips: gpt
Disk identifier: 995F9474-C5F1-4EE9-8FD7-13EA790423DC
Ierīces sākuma beigu sektoru lieluma tips
/ dev / sda1 2048 1050623 1048576 512M EFI sistēma
/ dev / sda2 1050624 49879039 48828416 23.3G Linux failu sistēma
/ dev / sda3 49879040 69410815 19531776 9.3G Linux failu sistēma
/ dev / sda4 69410816 76107775 6696960 3.2G Linux mijmaiņa
/ dev / sda5 76107776 80013311 3905536 1.9G Linux failu sistēma
/ dev / sda6 80013312 1465147391 1385134080 660.5G Linux failu sistēma
root @ localhost: ~ # fdisk -l / dev / sdc
fdisk: nevar atvērt / dev / sdc: vide nav atrasta
root @ localhost: ~ # hdparm / dev / sdc
/ dev / sdc:
SG_IO: slikti / trūkst jēgas datu, 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
daudzskaitlis = 0 (izslēgts)
tikai lasāms = 0 (izslēgts)
lasāmgalds = 256 (ieslēgts)
root @ localhost: ~ # hdparm -C / dev / sdc
/ dev / sdc:
diska stāvoklis ir: gaidīšanas režīmā
root @ localhost: ~ # hdparm -I / dev / sdc
/ dev / sdc:
SG_IO: slikti / trūkst jēgas datu, 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
ATA ierīce ar nenoņemamu datu nesēju
Standarti:
Iespējams izmantot: 1
Konfigurācija:
Loģiskā maksimālā strāva
cilindri 0 0
galvas 0 0
sektori / 0 0 celiņš
Sākot no
Loģiskā / fiziskā sektora lielums: 512 baiti
ierīces izmērs ar M = 1024 * 1024: 0 MByte
ierīces izmērs ar M = 1000 * 1000: 0 MByte
kešatmiņas / bufera izmērs = nezināms
spējas:
IORDY nav iespējams
Nevar veikt dubultvārdu IO
R / W vairāku sektoru pārsūtīšana: netiek atbalstīts
DMA: netiek atbalstīts
IOP: pio0
paldies par jūsu palīdzību, tagad es varēju uzzināt, vai mans usb ir pret rakstīšanu, un es pārliecinājos, ka tas nav pret rakstīšanu, tāpēc tas jau ir zema līmeņa formatēšanas risinājums, man jāpiebilst, ka vīruss lika usb atvienoties minūtes laikā vai divi, un ne Tas ļāva rīkoties, tas neatstāja laiku, tāpēc, jo es jau zināju, ar kādu vārdu es to piešķiru, kas terminālā bija "sdc", es visu ievietoju kā root lietotāju.
# dd, ja = / dev / nulle | pv | dd no = / dev / sdc bs = 1M šeit jūs kādu laiku gaidāt
# dd, ja = / dev / nulle | pv | dd = / dev / sdc bs = 446 count = 1, jūs izņemat un atkal ievietojat usb, kuru dodat
# mkfs.vfat -F 32 -n "anaconda" / dev / sdc un viss
Parabēni! Vairāki volti, ko es dei ar šo tēmu, ir sniegt paskaidrojumu. Paldies Moi.
Lieliski. Paldies.
Visbeidzot, kaut kas patiešām man noderēja, paldies.
Sveiki, man ir 16 GB liela ADATA 10. kategorijas mikroskopiskā atmiņa
Es izdarīju procedūru, un šķiet, ka tā darbojas, taču, atkārtoti ievietojot to un pārbaudot valsti, tā atkal ir tikai lasāma.
Esmu mēģinājis to formatēt, bet tas nedarbojas. Tas, ko es redzu, ir mani faili.
kāds cits līdzeklis vai veids, kā atrisināt problēmu?
viegli un kodolīgi, pilnveidojiet visus paskaidrojumus un piemērus, tas ir bijis ļoti noderīgs.
Sveiki, es esmu Kali Linux lietotājs tā jaunākajā versijā, es jau esmu izmēģinājis miljardu paņēmienu (atvainojiet par pārspīlējumu), bet neviens no tiem man nedod ne Linux, ne Windows
manā gadījumā, debian, noņemamajai atmiņai jābūt atvienotai.
lieliski, paldies
Man ir izdevies atgūt vairākus reklāmas izrakstus ar viņu norādījumiem
Sveiki, tas darbojas, bet lietotāja mape mainās, būtu labi to precizēt, bet man ir kļūda, komandā tas parāda, ka es to modificēju, bet, kad es gribu ievietot mapi vai visu citu pendrive, ko tā stāsta man, ka tas ir aizsargāts pret rakstīšanu. Ja jūs varētu man palīdzēt to atrisināt, tas būtu lieliski. Sveiciens
pieņem komandu un parāda to kā neaizsargātu, tas ir r = 0, bet, kad es vēlos formatēt, tas man pasaka. Paldies
Sveika laba diena. Ar šo es nebiju mēģinājis, bet operētājsistēmā Windows esmu izdarījis visu un neko. Mans pendrive ir aizsargāts ar rakstīšanu, pat ar sudo hdparm -r / dev / sdd tas dod vērtību 1, bet ar sudo hdparm -r0 / dev / sdd tas arī nevarēja noņemt rakstīšanas aizsardzību. Pateicība un apsveikumi no Venecuēlas.
Mana Linux versija ir openSUSE Tumbleweed 15.3
Pagātnes informācija ir skaidra un uzticama. Levei stundas pārbauda vairākus risinājumus, un tas, kas šeit parādīts, ir galīgs problēmai, kas jālasa un jānovērš gravação.
Lielisks ieguldījums, viss izrādījās tā, kā jūs minējāt ... paldies
Liels paldies, ļoti noderīgi, usb tā parasti notiek daudz, risinājums ir vienkāršs un ātrs.
Liels paldies par ieguldījumu.
Manā gadījumā Ubuntu 23.4 pieņem visas komandas, bet neatbloķē aizsardzības bitu.
Jebkuras idejas?
lorenzo@lorenzo-B85M-D3H: ~$ sudo hdparm -r /dev/sdc
[sudo] parole Lawrence:
/ dev / sdc:
tikai lasāms = 1 (ieslēgts)
lorenzo@lorenzo-B85M-D3H: ~$ sudo hdparm -r0 /dev/sdc
/ dev / sdc:
iestatījums tikai lasāms uz 0 (izslēgts)
tikai lasāms = 1 (ieslēgts)
lorenzo@lorenzo-B85M-D3H:~$
Gracias