Dostal jsem se k poměrně zajímavému problému, který jsem až dosud nemusel řešit. Nejprve jsem měl za to, že to vyřeším velmi jednoduše, ale nakonec se ukázalo, že tak triviální to není. Mluvím o stavu, kdy je USB disk „nastaven“ tak, že má dva oddíly jeden s pevným obsahem a druhý s místem k volnému nakládání. Jestli si myslíte, že to zvládne libovolný správce oddílů, jste na omylu. A pak se vám může hodit tento článek.
Začalo to nevinně. Jeden z kolegů mne oslovil, že má v šuplíku několik desítek kusů „flešek“, které by chtěl rozdávat. Jenže ten disk obsahuje reklamní data, která nejdou smazat a nelze je šířit dále, protože uý na ně vypršela autorská práva. Připojíte disk do počítače (s Windows) a rázem se objeví dvě nová písmenka. Ze 4 gigového disku bylo cca 500 MB nastaveno s nějakým obsahem a další písmenko mělo jen prázdný obsah tj. uložit šlo cokoliv. První moje myšlenka – co je to za blbost, že nejdou smazat data z disku. Pustím tam správce oddílů a je to. A ejhle, ono to fakt nejde…
A proto mne to začalo zajímat. Začal jsem krokem dalším – start Live distribuce s Parted Magicem a nepořídil jsem – oddíl vůbec nebylo vidět, respetive jenom jeden ze dvou na flashce. Další krok byl DBAN a to stejné. Ale přece jenom zde byl rozdíl, objevil se zvláštní oddíl dev/sr0. Takže CD-ROM na USB? Ale nešlo s ním nic dělat. Když jsem nastartoval znovu Windows, zjistil jsem, že je to oddíl se systémem CDFS.
Po chvíli hledání jsem našel pár zmínek o U3 od Sandisku. Chovalo se to stejně, ale utility od Sandisku hlásily, že to není U3. Ani vychvalovaný projekt U3_tool mi nepomohl, nejdříve hlásil chyby a pak nemožnost s diskem pracovat. Takže jsem to skoro vzdal. A pak jsem natrefil na zmínku o programu Chip genius. Jedná se o program, který dokáže určit, jaký je chip na vašem USB disku a poradí vám, kde stáhnout nějakou další utilitku, která umožní znovu reinicializovat celý disk.
A tohle už zabralo. Dostal jsem se k programu, který mi umožnil na disku nastavit vše potřebné tak, že jsem ho přepnul z módu CD-ROM do módu „Normal“ a rázem jsem měl k dispozici celý prostor disku „bez zbytečností“. Celý postup je popsaný také zde.
Oživili jsme takto několik zařízení, která by jistě skončila ve skartovačce, protože pro ně nebylo využití. Dalo to zabrat, ale výsledek stojí za to.
[1] Děkuji za jízlivý komentář, ale tak to prostě je. Pokud postavíte velkou reklamní kampaň a s autorem materiálů se dohodnete na podmínkách, za kterých můžete jeho výtvory používat, je to OK. Pokud však vyprší práva na použití, máte smůlu. Když se vám pak ve skladech hromadí materiál, který prostě nemůžete dále šířit, protože by vás autor výtvoru žaloval, za nelegální použití, neuděláte s tím nic. Pokud se dá nějakým způsobem jinak nepoužitelný materiál znovu použít a bez porušení podmínek, je to fajn. Podívejte se např. na ZOO Praha, která měla problémy s autorem původního grafického pojetí materiálů...
Takže ano, pokud by se příjemci podařilo se k původnímu obsahu dostat, mohl by to být problém. Nicméně při našem testování se to nepovedlo. Takže riziko je poměrně malé.
Zazil som toto so Sandiskom. Omylom som kupil flashku tejto znacky ( prvy a posledny krat ) a skoro ma jeblo, pretoze som pol dna dumal a hladal, kde v prdeli sa bere ta cdrom-ka.
Rado1: nie, nejde to. Aj linux to vidi ako 1 disk a 1 cdrom, ta cdrom je read only, mozes dd-ckom prepisovat co chces. Jedine riesenie je Windows a sandisk tool na odstranenie toho hnusu. Alebo kladivo. Ja som mal svoje v aute a prsalo, tak sa mi pon nechcelo ...
No tak to jsem zvědav, vyzkouším. Trošku mi vrtá hlavou přechod na Gnome Shell http://forum.root.cz/index.php?topic=7840.0 a tak jsem se po zkušenostech s Ubuntu rozhodl o víkendu zkusit i nějaké skoro finální RCčko OpenSUSE 13.1. Stáhl jsem iso image něco málo přes 4GB, takže jsem sáhl po 8GB flashce a dd to tam začal kopírovat. Něco se pokazilo, protože se to v průběhu kopírování přepnulo do read only režimu a od té doby s flashkou nemůžu vůbec nic, jen ji číst. Zkoušel jsem nějaké utility, ale jelikož to je reklamní flashka a ni přesně nevím, co je to zač, tak jsem taky narazil.
[3] ne
trik je v tom ze USB Mass Storage protokol je do nejake urovne podobne SCSI, a jak jiste vsichni vi SCSI podporuje vice LUNu na jeden target. MSS to ma nastavene tak ze ta flash je target, takze muze ukazovat nekolik LUNu (tedy "disku"). cekal bych ze U3 flashka (zadnou nemam po ruce takze odhaduju) se bude chovat prave takhle, tedy interni pamet bude rozdelena na 2 casti, s tim ze kazda bude nabizena jako vlastni LUN. no a v tu chvili neni tezke mit jednu read-only
[7] modem nebude uplne to same, ten se spis bude tvarit jako nejaky multifunction, s Mass storage a modemem
[7] Když už nějaký operační systém používá model, že se ovladače zařízení dodávají zvlášť, připadá mi tohle jako nejlepší možné řešení. Lepší než shánět ovladače někde po internetu nebo je mít na CD, které se nejpozději druhý den od nákupu vydá na samostatnou životní pouť a už nikdy nezjistíte, které z těch 10 CD „Device driver 1.1“ patří zrovna k tomuhle modemu/monitoru/tiskárně… Jiná věc je, že se taková zařízení někdy chovají nestandardně i z pohledu USB, funguje to nějak pod Windows, ale pod jiným systémem je musíte zařikávat i když k tomu existují funkční ovladače.
[16] Ne. Disk se mi povedlo dostat do tohohle stavu nějakou speciální formátovací utilitou ve Windows, že už se to netváří jako obraz OpenSUSE, ale taky to zvládlo zapsat jen pár sektorů, že jsem tak akorát změnil partition table. Fdisk ale neuloží ani to.
bobek src # whoami
root
bobek src # dd if=/dev/zero of=/dev/sdf bs=512 count=1000000
dd: otevírám „/dev/sdf“: Systém souborů je pouze pro čtení
bobek src # fdisk -l /dev/sdf
Disk /dev/sdf: 8 179 MB, 8 179 941 376 bajtů, 15 976 448 sektorů
Jednotky = sektorů po 1 * 512 = 512 bajtech
Velikost sektoru (logického/fyzického): 512 bajtů / 512 bajtů
Velikost I/O (minimální/optimální): 512 bajtů / 512 bajtů
Identifikátor disku: 0x69737369
Zařízení Zavádět Začátek Konec Bloky Id Systém
/dev/sdf1 2048 15976447 7987200 b W95 FAT32
Ja myslim, ze to DD funguje Kdyz provedete prikaz,ktery u prumerne flash USB 3 netrva obvykle dele nez jedna minuta, je treba flash fyzicky odpojit (dulezite!) od pocitace Po te pripojit, formatovat DOS a po te FAT a pouzit nejlepe gparted Tento zpusob me nikdy (zatim:) nezklamal, a ze mi proslo rukama docela dost flash disku .. jinak pokud jsem se dostal s Flash do problemu, tak ni asi dvakrat zachranikl testdisk, to je hodne schopny kousek software
http://www.cgsecurity.org/wiki/TestDisk
[12] Ano, ja to schvalujem, takto mam vsetko po ruke.
Len ma stve, ze v linuxe mi to pripoji ako cdrom, a nie ako modem. Musim po pripojeni vyhodit usb_storage modul a potom uz ide aj internet. POuzivam stare distro s 2.6.32 kernelom, v trojke uz myslim funguje aj cdrom aj modem sucasne.
Já vím, že jsem hloupej a ani jsem nebyl schopný přečíst všechny komentáře, ale zahlédl jsem cosi o dd if=/dev/zero ... To podle mě nemůže fungovat, kdyby to šlo tak jednoduše, tak není důvod, proč by to neuměl každý správce oddílů. Podle mě má řídící čip možnost zablokovat některé oblasti paměti proti zápisu a tím vytváří read only oddíly. Pomocí příkazů zasílaných přes USB pak může oblasti měnit, odemykat, zamykat. Alespoň já bych to tak dělal.
[7] No kdyz se hlasi jako disk a modem, tak je to jeste dobre. Horsi je kdyz se hlasi jen jako disk a je treba USB modeswitch, aby se prepnul na fungovani jako modem (ikdyz dnesni rychlejsi modemy uz neumi ani to a udela se z nich virtualni sitovka). No tedy to vse teoreticky, jelikoz Huawei K5150 jsem proste bohuzel nerozchodil.
to 25:
Já jsem taky celkem hloupej, ale oddíly pouze pro čtení je definován typem souborového systému (ISO 9660), který je na takovémto zařízení vytvořený (druhý oddíl může být už i pro zápis). Nevím o tom, že by se vytvářely pomocí nějakého specifického hardware (ale určitě to nevylučuji, nejsem "ostřílený ajťák"). Jenže příkaz dd nezajímají vytvořené oddíly (což je na všem to krásné) a přemaže celé zařízení klidně od prvního do posledního Byte.
Tak jeste jednou, pro vsechny co napadlo to 'dd ...' :
chip v USB je zapnuty tak ze cast obsahu da pres /dev/sdb (na tom muzete delat oddily dle libosti) a cast jako /dev/sr0 (ktery se tvari jako CDcko). Predstavte si to tak (nepresne), ze mate v te flashce USB hub a do nej jsou zastrcena dve zarizeni: jedno je interface k usb disku a druhe je interface k usb cd-rom. A oba ty interfejsy jsou pripojene pres nejaky "rozdelovac" k te skutecne pameti. Ten "rozdelovac" rika ktera pamet patri tomu cdcku a ktera tomu disku. A budme radi za to, ze existuje utilitka, ktera umi ten "rozdelovac" prekonfigurovat. A ne 'dd' to opravdu neni, protoze 'dd' leze skrz ten interface (/dev/sdb nebo /dev/sr0) a tudiz nema pristup ke konfiguraci toho "rozdelovace".
Tak podobny disk mi uz mnohokrat usetril tunu prace. Mam 512MB noname flashku a jeden oddil se chova jako normalni disketovka. Vetsina serveru potrebuje pri instalaci Windows ovladace RAIDu z diskety a disketovky vetsinou nefunguji, pri preinstalaci u zakaznika je tam v pohode natahnu z te flash-disketovky.
Profesionální ajťák pracující pro korporát (narozen 1974). V soukromí však rád prosazuji svobodný software. Snažím se mít přehled o technologiích a trendech. Zastávám názor, že pokud chci něco kritizovat, musím s tím mít nějakou zkušenost. Jsem hrdý manžel, otec dvou dcer a opečovávatel kočky plemene Britská modrá krátkosrstá. Mám rád hudbu, knihy a kulturu obecně. V některých věcech však jdu proti proudu – používám Linux (konkrétně ZorinOS), svobodný software (LibreOffice, GIMP, Inkscape či Joomlu!) a jezdím v hybridním japonském autě.
Přečteno 47 164×
Přečteno 41 383×
Přečteno 35 909×
Přečteno 25 965×
Přečteno 25 767×