Titulky hlásají zánik podpory jádra pro disketové jednotky. Zde je návod, co dělat se svou sbírkou disket a jak na to.
Philip L. Gilmer, 11. srpna 2019
Nedávné titulky hlásají brzký konec podpory úctyhodné disketové jednotky v linuxovém jádře. Sevřel se mi žaludek a srdce se mi zachvělo. V tomto oboru se pohybuji již několik let a moje sbírka disket sahá až k 8palcovým. "Znovu ne!" Myslel jsem.
Naštěstí další výzkum ukázal, že titulky situaci poněkud nadhodnocují. Veškerá podpora disket nezmizí – pouze podpora jednotek připojených k vyhrazeným řadičům disket. Jednotka USB, kterou jste si zakoupili, abyste přinesli možnost čtení/zápisu disket na novější počítače, používá jiný mechanismus podpory a bude nadále podporován – prozatím. Přesto se zdálo, že nyní je ten správný čas se všemi těmi disketami něco udělat.
Historie
První diskety měly průměr 8 palců a byly představeny IBM koncem 60. let jako komponenty sálových počítačů. IBM je označilo jako jejich „Disketu typu 1“, ale termín „disketa“ se velmi rychle ujal. Pozdní oboustranné verze byly schopny pojmout asi 1,2 MB dat.
Brzy následovaly 5-1/4 palcové disky. Přestože byly levnější, mohly pojmout pouze skromné množství dat. Zpočátku držela jen asi 72 kilobajtů dat, konkurence však zvýšila kapacitu na asi 630 kilobajtů.
První 3-1/2 palcová disketová mechanika byla ve své době zázrakem. „disketa“ již nebyla tak disketová. Dřívější počítače Apple Macintosh používaly velikost 400 kilobajtů. IBM představila tvarový faktor v roce 1986 pro svou řadu IBM PC Convertible a přinesla nám možnost uložit „ohromujících“ 720 kilobajtů. Pozdější PS/2 řada IBM PC zvýšila kapacitu na 1,44 a dokonce 2,88 megabajtů dat. Ale čas jde dál. Inovace jako Zip Drive společnosti Iomega a disky 3M SuperDisk LS-120 a LS-240 zvýšily kapacitu až na hranici 750 megabajtů.
Pokrok v technologiích CD a DVD do značné míry znamenal konec disket. Ačkoli byly disky CD zpočátku média pouze pro čtení, brzy byla k dispozici zapisovatelná zařízení a posunula úložnou kapacitu z 650 megabajtů na gigabajtový rozsah s dvouvrstvými DVD s kapacitou 8 gigabajtů.
Pohony palců jsou v dnešní době pro většinu z nás preferovanou zbraní. Malé, levné a praktické poskytují úložnou kapacitu, která se nyní blíží terabajtu.
Skvělý! Používám nové technologie jako každý jiný. Ale co mám dělat se všemi těmi disketami, které mám?
The Quandary
Jistě, mnoho z těchto starých disket obsahuje datové soubory toho či onoho druhu a soubory lze zkopírovat do adresáře v mém systému Linux. Jelikož používám Linux Mint KDE, nemusím ani ručně připojovat diskety. Mint mi to po vložení diskety nabídne. Otevřu správce souborů a mohu jednoduše přetahovat soubory do jejich nových umístění.
Jiné distribuce Linuxu to mohou dělat trochu jinak, ale většina vám poskytne způsob, jak snadno připojit disketovou jednotku. Klikněte na položku diskety a zobrazí se možnosti. Vyberu „Otevřít pomocí Správce souborů“ pro zobrazení souborů na disketě.
Zkopírujte soubory do vámi zvoleného adresáře pouhým přetažením.
Co dělat s jinými disketami nebylo tak jednoduché. Aby byly k něčemu užitečné, musely být užitečné jako diskety . Vytvořil jsem obrazy disket pod DOSem a Windows. Ale bylo to dávno. A programy, které jsem použil, jsou 16bitové programy pro DOS a nejdou spustit na žádné verzi Windows od Windows XP.
Naštěstí je tento proces jednoduchý. A nepotřebujete k tomu žádný program od jiného dodavatele. Linux obsahuje vše, co k této práci potřebujete.
Řešení
Použijeme program s názvem dd skutečně vytvořit obrázek.
První věc, kterou musíme udělat, je zjistit, kde je disketová jednotka připojena.
Zapojte jednotku USB do systému, počkejte několik sekund a poté zadejte příkaz:
dmesg | tail
Výstup bude vypadat nějak takto:
Poslední řádek zde označuje, že disketa je označena jako /dev/sdb.
Pokud používáte disketovou jednotku připojenou k vyhrazenému řadiči, bude vaše zařízení vypadat nějak jako /dev/fd0 nebo /dev/floppy . Vložte do něj disketu a použijte df příkaz pro zobrazení použitého zařízení:
V našem příkladu je přiřazené zařízení /dev/fd0 . Pokud je toto vaše konfigurace, použijte toto zařízení kdekoli /dev/sdb se používá v příkladech níže.
Vložte disketu, která se má vytvořit image, přepněte se do adresáře, kde se má image uložit, a zadejte příkaz:
dd if=/dev/sdb of=test.img
Doufáme, že uvidíte něco takového:
Při používání dd existuje několik problémů ve své nejjednodušší podobě.
Za prvé, bez ohledu na to, kolik nebo jak málo je disketa použita, vytvořený obraz bude odrážet velikost diskety, v tomto případě 1,44 MB. Soubor můžeme zkomprimovat pomocí příkazu gzip:
gzip test.img
s následujícím výsledkem:
Soubor test.img je komprimován a nahrazen souborem test.img.gz , která je menší téměř o polovinu.
Za druhé, dd program nezpracovává chyby, jak bychom chtěli. Ve výchozím nastavení, pokud narazí na chybu, například vadný sektor, ohlásí problém a ukončí se.
Naštěstí dd má prostředky k tomu, abychom se vypořádali s některými chybami.
Přidáme parametry, abychom chybu ignorovali a pokračovali. Dále ho necháme vyplnit nečitelný oddíl nulami, takže nemáme žádná zkrácená data. Změním velikost bloku kopie z 512 bajtů na 1024 bajtů, aby se počet záznamů nyní rovnal kapacitě disku (v kilobajtech). Naše kopie nyní vypadá takto:
Jako dříve můžeme soubor zkomprimovat pomocí gzip utility.
Bylo by opravdu hezké to udělat v jednom jediném kroku. Můžeme to udělat pomocí operátoru potrubí („|“). Vydáme následující příkaz:
sudo dd if=/dev/sdb bs=1024 conv=sync,noerror | gzip > test.img.gz
S následujícím výsledkem:
Protože dodáváme název končící příponou souboru .gz , gzip program používá zbytek názvu souboru jako název interního souboru „test.img“. Velmi doporučuji tuto konvenci pojmenování. Bez něj gzip a gunzip zmást a výsledky mohou být nepředvídatelné. Použijte tedy
Pokud otevřeme náš soubor v archivátoru, můžeme vidět skutečný název souboru:
Přidat ukazatel průběhu
Naše příkazy fungují, ale ve skutečnosti nevidíte, co se děje. Bylo by hezké mít možnost vidět, zda se věci pohybují tak, jak by měly.
Existuje malá šikovná utilita zvaná pv to udělá práci. Nainstalujte jej ze svých úložišť distribucí. Linux Mint používá správce balíčků apt, takže jej nainstalujeme pomocí příkazu:
sudo apt install pv
Pomocí pv nyní máme ukazatel pokroku. Takže náš proces vytváření obrázků nyní vypadá takto:
pv -tpreb /dev/sdb | dd bs=1024 conv=sync,noerror | gzip > test.img.gz
Podobně se náš proces obnovy diskety změní na:
sudo pv -tpreb test.img.gz | gunzip -c | dd of=/dev/sdb
Usnadnění používání
Aby bylo použití těchto příkazů jednodušší, vytvořil jsem několik bash skriptů. Chcete-li vytvořit image diskety, použijte imgcreate.sh :
#! /bin/sh
#!
#! imgcreate.sh - Shell to create diskette image file from floppy diskette
#! Author - Philip L. Gilmer, 11-Aug-2019
#!pv -tpreb /dev/sdb | dd bs=1024 conv=sync,noerror,excl | gzip > "$1"
exit 0
Vyvolejte pomocí názvu a názvu komprimovaného souboru.
Chcete-li znovu vytvořit disketu, použijte imgrestore.sh :
#! /bin/sh
#!
#! imgcreate.sh - Shell to create diskette image file from floppy diskette
#! Author - Philip L. Gilmer, 11-Aug-2019
#!
pv -tpreb /dev/sdb | dd bs=1024 conv=sync,noerror,excl | gzip > "$1"
exit 0
Pokud disketová jednotka není /dev/sdb, nezapomeňte změnit název zařízení .
Řešení chyb
Dobře, jsme zaneprázdněni snímkováním našich disket a stane se něco takového:
Mělo by ukazovat 720 přečtených záznamů. Jejda! 104? Ne zcela nečekané. Některé z těchto disket jsou staré 30 let. tak co teď? Zkoušel jsem použít příkaz fsck, ale nedosáhl jsem příliš dobrých výsledků. Naštěstí nám může pomoci příkaz dosfsck. Tento příkaz je součástí balíčku úložiště dosfstools. Pokud ještě není na vašem systému nainstalován, nainstalujte balíček. Na systému založeném na Debianu, jako je Linux Mint, můžete nainstalovat pomocí příkazu:
sudo apt install dosfstools
Vaše chuť se může lišit.
Zadejte příkaz následovně:
sudo dosfsck -w -r -l -a -v -t /dev/sdb
Po zadání se dosfsck pokusí opravit disk a automaticky vypíše názvy souborů při jejich zpracování, označí nečitelné clustery jako špatné a změny okamžitě zapíše na disk. Další informace naleznete na manuálové stránce. Pro naši aktuální disketu získáme následující výstup:
Tato disketa je opravdu nepoužitelná. Příliš mnoho souborů je poškozených a obsahují nečitelné shluky. Dotčené soubory by bylo nutné obnovit z nějakého jiného zdroje. Často však nečitelné shluky leží mimo přidělené shluky jakýchkoli souborů. Opravený disk lze poté vytvořit image. Opětovné spuštění dosfsck ukazuje, že vyčistil disketu, jak nejlépe mohl:
Nyní se tedy pokusíme disketu znovu vytvořit:
Celý disk lze vykreslit. Pamatujte, že žádné soubory, které měly špatné clustery, nebudou použitelné.
Použití souborů obrázků
Chcete-li soubor obrázku použít, nejprve jej dekomprimujte.
Chcete-li soubor zkontrolovat, připojte jej k zařízení zpětné smyčky:
sudo mount -o loop -t msdos ./test.img /mnt
Procházení našeho přípojného bodu /mnt můžeme vidět soubory:
Soubor .img soubor lze také použít jako virtuální disketu ve virtuální jednotce definované na hostu počítač ve virtuálním počítači VirtualBox. Soubor obrázku musí být umístěn na hostiteli pevný disk.
Vyberte zvýrazněnou položku a procházejte ji.
Závěr
Zavedení novější technologie možná v průběhu let způsobilo, že diskety byly méně užitečné. Nicméně mohou být nenahraditelné při práci s virtuálními stroji se staršími programy a systémy. Linuxové distribuce 21. století stále obsahují spoustu nástrojů na podporu starší technologie, ale jak dlouho bude tato technologie nadále podporována, nikdo nedokáže říci.
Tak si ty diskety nechejte vyfotografovat co nejdříve, slyšíte? Pořád bych si přál, abych s těmi 8palcovými disketami něco udělal!