Эгер сизде SD эс тутум картаңыз, пендрив же каалаган USB сактагыч диск болсо коргоо жазуу, бул макалада биз сизге этап-этабы менен жана аны кантип жасоонун оңой жолу менен айтып беребиз. Ошондой эле айрым айдоочулар уруксат берген жазууга каршы бир аз коргоо бар, алар «коргоо бит»1 же 0 активдүү болушуна жараша, ал блокко жазууга мүмкүнчүлүк берет же жок. Бул битти CPUлардын желек регистрлеринин WP менен чаташтырбоо керек, бул UNIX сыяктуу тутумдарда форкалоо процессин жаратуу менен жазуунун алдын алат, ошону менен негизги эс тутумду маалымат жазуудан коргойт. Айрым SD карталарда же сактагычта кездешкен кадимки коргоо өтмөктөрүнө да кирүүгө болбойт. Бул учурда, биз экинчи сактагычта жүргүзүлүүчү коргоону айтып жатабыз.
Контролеру сактоо каражаты USB же SD эс тутум картасы, же кандай гана болбосун, бул биттин иштей тургандыгын аныктайт, драйвер өзөктүн жазуу буйрутмасына жол бербейт, ошондуктан ал мазмунду гана окуй алат. Жаңылыштык менен жазуудан же өчүрүүдөн качып, өзгөртүүнү каалабаган маалыматтарды сакташыбыз абдан пайдалуу. Бирок эгер ушул корголгон маалымат каражаттарынын бири биздин колубузга тийип калса жана биз ал биттин бар экендигин билбесек, анда бирдигибиз бузулган деп ойлоп, же кээ бир пендривдер же SD карталар коргошу керек болгон кулакчаны көтөрүп-түшүрүп, бир нече саат кетиришибиз мүмкүн. аларды эч натыйжасыз. (Кулпулоо / Кулпусун ачуу) ...
көрсөткүч
Окуу үчүн гана жана жазуу үчүн гана орнотуу медиасы:
Жазуу битинен издеп жатканыбыз так болбосо дагы, ортомчу болгонун дагы байкасак болот окуу үчүн гана автоматтык түрдө же кол менен орнотулат, андыктан анда жазууга мүмкүнчүлүгүбүз болбойт. Кээ бир учурларда жадатма нерсе болушу мүмкүн, бул нерсени өзгөртүүгө же сактоого жол бербейт. Ооба, мунун чечими өтө жөнөкөй.
Мисалы, / etc / fstab файлында шайман автоматтык түрдө орнотуу үчүн конфигурацияланган болсо ро (окуу үчүн гана) же эгерде биз аны буйрук менен орноткон болсок:
sudo mount -o ro /dev/sda /mnt
Мындай учурда биз / dev / sda шайманын гана окуй алабыз, мындай учурда ал / mnt орнотуу чекитине орнотулган. Ага дагы бир жолу жазуу үчүн:
sudo mount -o remount,rw /dev/sda /mnt
Эгер бул ыкма сиз үчүн иштебей калса, ошондо биз сөз кылган бит иш-аракет кылганы үчүн болот, ошондуктан биз төмөндө келтирилген куралды колдонушубуз керек болот.
Hdparm деген эмне?
буйрук hdparm - төмөнкү деңгээлдеги курал libata китепканасын колдонгон ар кандай Linux өзөктөрүнүн драйверлери менен SATA / PATA / SAS сактагычтарынын ортосунда, ошондой эле эски 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
Бул жөнөкөй ушул битти иштетүү же өчүрүү. Бул өтө эле көп сырга ээ эмес, бирок муну билбегендер үчүн, алардын сактагычтарын коргобогондо, баш оору болушу мүмкүн.
Бул сизге жардам берди деп үмүттөнөм, эми жазуудан корголгон пендрив жасоону билесиз, унутпаңыз комментарий калтырууs ...
Hello!
Биринчи кезекте, ноталар үчүн рахмат! Алар ар дайым абдан пайдалуу.
Мен Debian 9 колдонуучусумун.
Бул учурда, мен чече албаган көйгөй бар. Менде "жуккан" калем бар, аны жаза албайм, аны алып сала албайм. Мен буга чейин физикалык деп ойлойм, анткени мен баардыгын (Windows'тагы төмөнкү деңгээлдеги форматтоого чейин же дисктерди куткаруу, бөлүктөрдү өзгөртүү ж.б.) аракет кылдым жана эч нерсе жок.
Мен аны чечем деп ойлодум, сиздин кадамдарыңызды аткарып, мен дискиңиздин жазуудан коргоосу “күйүп” турду, бирок мен аны “өчүрүп” койгондо дагы деле эч нерсени өчүрө албайм же өзгөртө албайм.
Кайсынысы болушу мүмкүн? Муну чечүүнүн башка жолу барбы? (Ичиндеги маалыматты жоготуп алсам каршы эмесмин)
Жардамыңыз үчүн алдын ала рахмат.
Эрнан
Жакшы! Алар сизге чечимди айтыштыбы же акыры сиз чечтиңизби, билбейм, бирок мен сиз менен бирдей абалдамын.
Мага кеңеш бере аласызбы?
Чон рахмат.
жакшы түшүндүрмө
Салам, менде система тааныбаган USB бар, сиз мага жардам берип койсоңуз, сизге маалымат жиберем
dmesg
[83384.348839] usb 1-1: ehci-pci колдонуп жаңы жогорку ылдамдыктагы USB шайманынын номери 8
[83384.506219] usb 1-1: Жаңы USB түзмөгү табылды, idVendor = 0c76, idProduct = 0005, bcdDevice = 1.00
[83384.506225] usb 1-1: Жаңы USB шайманынын саптары: Mfr = 1, Продукт = 2, SerialNumber = 0
[83384.506228] usb 1-1: Продукт: USB Mass Storage
[83384.506231] usb 1-1: Өндүрүүчү: GENERIC
[83384.506848] usb-storage 1-1: 1.0: 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: scsi generic 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 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 XNUMX XNUMX XNUMX XNUMX XNUMX
көп эсеп = 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 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 XNUMX XNUMX XNUMX XNUMX XNUMX
АТА шайманы, алынып салынбай турган медиасы менен
стандарттары:
Мүмкүн колдонулган: 1
тарам:
Логикалык максималдуу ток
цилиндрлер 0 0
0 0
секторлор / трек 0 0
-
Логикалык / Физикалык сектордун көлөмү: 512 байт
түзмөктүн көлөмү M = 1024 * 1024: 0 МБайт
түзмөктүн көлөмү M = 1000 * 1000: 0 МБайт
кэш / буфердин көлөмү = белгисиз
Жөндөмдөрү:
IORDY мүмкүн эмес
Эки сөздүү IO аткара албайт
Бир нече тармактык которуу: колдоого алынбайт
DMA: колдоого алынбайт
IOP: pio0
жардамыңыз үчүн рахмат, эми usb жазууга каршы экендигин билип, анын жазууга каршы эместигин тактадым, андыктан бул форматтын төмөнкү деңгээлдеги чечими, андыктан вирус USBни бир мүнөттүн ичинде өчүрүп салгандыгын кошумчалайм. же эки эмес, иш-аракет кылууга мүмкүнчүлүк берген жок, убакытты кетирбеди, ошондуктан мен аны кандай ат менен койгонумду билгендиктен, терминалда "sdc" болгон, мен баарын root user катары койдум.
# dd if = / dev / zero | pv | dd of = / dev / sdc bs = 1M бул жерде сиз бир аз күтө турасыз
# dd if = / dev / zero | pv | dd of = / dev / sdc bs = 446 count = 1 сиз чыгарып, берген usbди кайрадан коёсуз
# mkfs.vfat -F 32 -n "anaconda" / dev / sdc жана бүттү
Parabens! Мен бул тема боюнча берген деи вольта, coa түшүндүрмө берем. Ырахмат Мой.
Абдан жакшы. Рахмат.
Акыры мен үчүн чындыгында иштеген бир нерсе, рахмат.
Саламатсызбы менде 16 ГБ АДАТА категориясы 10 микросд
Мен процедураны жасадым, ал иштей баштады окшойт, бирок аны кайра киргизип, абалды кайра текшерип, кайра окуу үчүн гана койду.
Мен аны форматтоого аракет кылдым, бирок ал иштебей жатат. Менин файлдарымды көрө алам.
көйгөйдү чечүүнүн башка куралы же жолу барбы?.
оңой жана кыска, бардык түшүндүрмөлөрдү жана мисалдарды кемчиликсиз, бул абдан пайдалуу болду.
Салам, мен Kali Linux колдонуучусумун, акыркы нускасында, мен буга чейин бир миллиард ыкманы колдонуп көрдүм (апыртылганым үчүн кечирим сурайм), бирок алардын бири дагы мага Linuxта дагы, Windows дагы дагы бербейт
менин оюмча, дебиан, алынуучу эстутум орнотулбашы керек ....
сонун, рахмат
Мен алардын көрсөтмөлөрү менен бир нече жарнамалык көчүрмөлөрдү калыбына келтирүүгө жетиштим
Салам, ал иштейт, бирок колдонуучунун папкасы ар кандай, аны тактап койсоңуз жакшы болот эле, бирок менде ката бар, мен аны өзгөрткөм деп көрсөтөт, бирок мен папканы же башка нерсени койгум келгенде, ал жазуудан корголгонун мага. Эгер сиз мага аны чечүүгө жардам берсеңиз, анда сонун болмок. Салам
буйрукту кабыл алат жана аны корголбогондой көрсөтөт r = 0, бирок форматтоону кааласам, ал мага корголгон деп айтат. Рахмат
Салам, жакшы күн. Муну менен мен аракет кылган жокмун, бирок Windowsто мен эч нерсе жасаган жокмун. Менин pendrive жазуудан корголот, ал тургай sudo hdparm -r / dev / sdd менен 1 маани берет, бирок sudo hdparm -r0 / dev / sdd менен жазуудан коргоону да алып сала алган жок. Венесуэладан рахмат жана салам.
Менин Linux версиям openSUSE Tumbleweed 15.3
Так жана ишенимдүүлүк менен өткөн маалымат. Levei сааттары бир нече чечимдерди сынайт жана бул жерде келтирилген, гравачану окуу жана блокировкалоо көйгөйү үчүн акыркы чечим.
Мыкты салым, баары сиз айткандай болду ... рахмат
Чоң рахмат, абдан пайдалуу, бул адатта usbде көп болот, чечим оңой жана тез.
Салымыңыз үчүн чоң рахмат.
Менин учурда, Ubuntu 23.4 бардык буйруктарды кабыл алат, бирок коргоо битинин кулпусун ачпайт.
Жокпу?
lorenzo@lorenzo-B85M-D3H:~$ sudo hdparm -r /dev/sdc
[sudo] Лоренс үчүн сырсөз:
/ dev / sdc:
окуу үчүн гана = 1 (күйгүзүлгөн)
lorenzo@lorenzo-B85M-D3H:~$ sudo hdparm -r0 /dev/sdc
/ dev / sdc:
окуу үчүн гана 0 коюу (өчүрүү)
окуу үчүн гана = 1 (күйгүзүлгөн)
lorenzo@lorenzo-B85M-D3H:~$
ыракмат