Apple Mac és divatos eszközök. LTO, SAS, Fibre Channel, eSATA

A cikk témája a külső eszközök csatlakoztatása Mac számítógéphez SAS, Fibre Channel (FC) és eSATA interfészeken keresztül. Rögtön mondjuk el, hogy az ilyen eszközökhöz való hozzáférés problémájának megoldására egy egészséges embernek van módja: építsen egy olcsó PC-t, csatlakoztasson egy HBA SAS vagy FC vezérlőkártyát (például egy egyszerű LSI adaptert), csatlakoztassa eszközeit ezt a vezérlőt, telepítsen bármilyen Linuxot a PC-re, és dolgozzon Mac-ről a hálózaton keresztül. De ez banális és érdektelen. A kemény úton haladunk, és csatlakoztatjuk eszközeinket közvetlenül Macre.

Amire szükségünk van ehhez:
– tisztességes pénzösszeg új felszerelés vásárlására, vagy sok szerencsét az eBay aukcióin (ahol egy kis erőfeszítéssel a listaárnál 10-szer olcsóbban vásárolhatja meg az előző generációk szükséges felszereléseit);
- Ez a cikk.

A mágnesszalaggal való munkához (ma már szinte általánosan LTO formátumban van jelen), rendelkeznie kell LTO szalagos meghajtóval (streamer) vagy szalagos könyvtárral. Ez egy meglehetősen drága eszköz a kezdeti vásárláshoz (több százezer rubeltől), de használt vásárláskor ésszerű összeget ér. Mivel az LTO generációi körülbelül kétévente cserélődnek, és a kompatibilitás két generációra korlátozódik, a másodlagos piac meglehetősen telített a négy éves vagy annál régebbi működőképes eszközökkel, pl. az utolsó előtti és azon túli generáció. Ha kereskedelmi célból vásárol egy új készüléket, akkor maga is megérti, miért van szüksége rá. Ha otthonának és családjának szeretne vásárolni, ezt a lehetőséget megfontolja az információk archiválására (mivel maguk a médiák nagyon olcsók 1 gigabájtonként).

Az LTO-5 (és részben az LTO-4) generációtól kezdve a mágnesszalaggal dolgozó eszközök hardverben csatlakoznak a számítógéphez SAS vagy FC interfészen keresztül (általában minden eszköznek két verziója van)

Másrészt az Apple egy USB-C interfészt biztosít a Mac-ünkben (USB, Thunderbolt 3 vagy DisplayPort protokollal működik), esetenként Ethernet interfészt, valamint szabadalmaztatott Thunderbolt 3 - Thunderbolt 2 és Thunderbolt - FireWire 800 adapterek.

Patt? Nem igazán. Szerencsére a Thunderbolt képes PCIe módban működni, és lehetővé teszi a PCIe kártyák csatlakoztatását ugyanúgy, mintha közvetlenül a számítógép házába lennének telepítve. Ennek köszönhetően a Mac hardverkonfiguráció bármilyen bővítése lehetséges, megfelelő adapter és illesztőprogramok megléte esetén.

Elméletileg a probléma legegyszerűbb megoldása egy Thunderbolt interfésszel (PCIe kártyabővítő rendszer) rendelkező külső doboz a PCIe adapterekhez, amelybe SAS vagy FC Host busz adapter (HBA) telepíthető. Például az ilyen dobozokat a cég gyártja Szonett és néhány másik. Van itt egy árnyalat: nem minden vezérlő alkalmas nekünk, hanem csak az, amelyik rendelkezik macOS-hez illesztőprogramokkal. Csak néhány ilyen tábla létezik, és a legolcsóbbak és legnépszerűbbek (például ugyanaz az LSI) nem szerepelnek a számban. Szerencsére a Sonnet vette a fáradságot az összeállítással kompatibilitási táblázat PCIe kártyák különféle operációs rendszerekkel Thunderbolt interfészen keresztül.

Egy másik megoldás egy kész Thunderbolt - SAS vagy Thunderbolt - FC interfész átalakító vásárlása, amely valójában egy doboz és egy vezérlő kész összeállítása. A leghíresebb cég ezen a területen ATTO, de vannak más cégek termékei is.

Ne feledje, hogy nem minden SAS és FC vezérlő rendelkezik az LTO szabványnak megfelelő tanúsítvánnyal, mivel ez önmagában pénzbe kerül. Egyes gyártók közvetlenül azt írják, hogy vezérlőiket nem szalagos meghajtókkal való együttműködésre tervezték.

Hogy teljes legyen a kép, megjegyezzük, hogy az mLogic termel устройство, ami egy külső házas IBM LTO-8 meghajtó, amibe azonnal egy SAS to Thunderbolt 3 konvertert építenek be.Ez azonban még a fentebb leírtaknál is egzotikusabb dolog, főleg régiónk mércéje szerint. Kétlem, hogy ez az eszköz legálisan behozható lenne Oroszországba (az LTO-meghajtók titkosítási funkciókat tartalmaznak, és az olyan gyártók, mint az IBM és a HP ezért minden modellhez FSB-importálási engedélyt kapnak).

A következőkben példaként egy konkrét berendezést veszünk figyelembe, amelynek tulajdonosa a szerző több sikeres beszerzés eredményeként lett, de az általános elvet minden lehetőségnél meg kell tartani.

Tehát a következő berendezéseink vannak a szalaggal való munkához:
– Apple Mac mini 2018 számítógép macOS 10.15 Catalina operációs rendszerrel, Thunderbolt 3 támogatással rendelkező USB-C portokkal;
– Apple Thunderbolt 3 / Thunderbolt 2 adapter;
– Apple Thunderbolt 2 kábel;
– ATTO ThunderLink SH 1068 interfész konverter (2*Thunderbolt / 2*SAS-2);
– SAS kábel SFF-8088 – SFF-8088;
– LTO-5 IBM TS2350 szalagos meghajtó;
– LTO-5 kazetták, tisztítópatron.

Most, ahogy mondják, megpróbálunk felszállni ezzel a sok cuccal.

Letöltjük az ATTO webhelyéről a ThunderLink SH 1068 illesztőprogram legújabb verzióját (nyilván a mi kényelmünk érdekében az SH 2068 illesztőprogrammal van kombinálva, és a 2068-as szekcióban található, amely csak az archívumban van írva az illesztőprogrammal együtt), és a ATTO konfigurációs segédprogram.

Apple Mac és divatos eszközök. LTO, SAS, Fibre Channel, eSATA

Az illesztőprogramot természetesen telepíteni kell. Az ilyen műveletek előtt a szerző azt tanácsolja, hogy mindig készítsen pillanatképet a rendszerindító lemez APFS fájlrendszeréről a paranccsal

tmutil localsnapshot

vagy a rendszerindító lemez biztonsági másolatát, ha HFS+ van rajta. Sose tudhatod. Ezután könnyű lesz visszalépni a pillanatfelvételről.

Ezután a tapasztalatlan, de kellő gondossággal rendelkező elme kétségtelenül hajlamos lesz figyelmesen elolvasni az ATTO illesztőprogram telepítési utasításait, és követni azokat. Ennek eredményeként - tadam! – kapunk egy operációs rendszert, ami a betöltési szakaszban lefagy. Itt szükségünk lehet egy pillanatképre, amelyből a Time Machine hívásával helyreállhatunk a helyreállítási partícióról, vagy ugyanarról a helyreállító partícióról manuálisan törölhetjük a kóros kextet a kernelkiterjesztések könyvtárából (a szerző általában nem javasolja ezt).

Miért történik ez? Mert az Apple gondoskodott rólunk. A macOS legújabb verzióiban nem lehet könnyen idegen kódot beszúrni a rendszerindítási folyamatba. A jó Apple programozók blokkolták ezt a pusztító viselkedést. Pontosabban félúton blokkolták, amikor a sofőr elvárása megvalósul, de maga a sofőr nem, így csak lefagy minden.

Mit tegyen egy kifinomult elme az illesztőprogram telepítése előtt? Először adja ki a parancsot:

csrutil status

Ha erre válaszul kapunk:

Rendszerintegritás-védelem állapota: engedélyezve.

akkor ez azt jelenti, hogy a jó Apple programozók törődnek velünk, így semmi sem fog sikerülni nekünk, amíg nem kapcsoljuk ki a csodálatos védelmüket. Ehhez indítsa újra a helyreállítási partíciót (⌘R), hívja meg a terminált, és adja ki a parancsot:

csrutil disable

Ezt követően újraindítjuk a működő rendszert, és csak ezután telepítjük az illesztőprogramot, és ezzel egyidejűleg az ATTO konfigurációs segédprogramot (a konfigurációs segédprogram elvileg csak a diagnosztikához szükséges, normál működés során nem szükséges). Útközben kérésre megerősítjük az ATTO jogosultságot a rendszerbeállításokban. A telepítés után újraindíthatja a helyreállítási partíciót, és kiadhatja a parancsot

csrutil enable

Az Apple ismét gondoskodik rólunk.

Most már van egy illesztőprogram által támogatott interfészünk a külső SAS-eszközökhöz (vagy FC-hez, ha FC-konvertert használtunk). De hogyan dolgozzunk a szalaggal logikai szinten?

Amint azt a tapasztalatlan, de művelt elme tudja, minden Unix-kompatibilis rendszer támogatja a szalagos meghajtókat a kernel szintjén és az alapvető rendszer-segédprogramokat, amelyek elsősorban az mt-t (szalagkezelés) és a tar-t (archiváló, amely támogatja a szalagos archívumokkal való munkát) tartalmazzák. Azonban mit mondhat erről egy kifinomult elme? Bármilyen Unix-kompatibilis rendszer, kivéve a macOS-t. Az Apple gondoskodott rólunk azzal, hogy eltávolította a szalagos eszközök támogatását a kódjából.

De valóban lehetetlen visszaadni ezt a kódot a szabványos nyílt forráskódú Unix segédprogramok macOS-re történő portolásával? A jó hír az, hogy a Tolis (amelyet nem linkelek) már megtette ezt a Tolis Tape Tools termékében. A rossz hír az, hogy az említett cégnek 399 dollárba kerül, hogy munkája eredményét felhasználja. Ennek a ténynek a becslése eltérő lehet, de a szerző személyesen nem hajlandó 400 dollárt fizetni valakinek egy olyan kódért, amelyet többnyire teljesen más emberek írtak, és az 1970-es évek óta nyílt használatban van, ezért a szerző felteszi magának ezt a kérdést. zártnak tekinti. (Mellesleg, van egy ingyenes projekt, amelyet homályos állapotban félbehagytak a Githubon IOSCSITape ugyanabban a témában).

Szerencsére van a világon az IBM vállalat, amelynek kereskedelmi étvágya egészen más léptékű, ezért nem minden apróságban nyilvánul meg. Különösen a nyílt forráskódú LTFS szalagos fájlrendszert fejlesztette ki, amelyet macOS-hez is terjesztenek.

A figyelmeztetés az, hogy a különböző szalagos eszközök gyártói kiadják saját LTFS-verziójukat eszközeik támogatására. Mivel a szerző IBM szalagos meghajtót használ, az LTFS-t az IBM-től telepítette. A harmadik féltől származó meghajtóknak saját LTFS-portokra lehet szükségük. És létezik az openLTFS univerzális megvalósítása a Githubon és a Homebrew-n.

Számunkra fontos, hogy az LTFS használja a médiaparticionálás funkciót, így az LTO-5 generációtól kezdve képes működni az eszközökkel és kazettákkal.

Így esetünkben az IBM webhelyről töltjük le az IBM Spectrum Archive Single Drive Edition for macOS-t, amely tartalmazza az LTFS megvalósítást. Kalandok nélkül, saját telepítő segítségével telepítjük a terméket. Útközben a FUSE csomagot is telepíti, a rendszerbeállításoknál pedig meg kell erősítenie egy Anatol Pomozov nevű okos programozó jogosultságát, akitől jelen esetben az egész IBM múlik. Tisztelet és tisztelet ennek az embernek.

Célszerű azonnal beírni a sort a /Library/Frameworks/LTFS.framework/Versions/Current/etc/ltfs.conf.local fájlba:

opció single-drive sync_type=time@1

amely azt határozza meg, hogy a szalag alapértelmezés szerint fel van szerelve, és a rögzítési puffer 1 perc inaktivitás után visszaáll (alapértelmezett 5 perc).

Apple Mac és divatos eszközök. LTO, SAS, Fibre Channel, eSATA

Végül minden készen áll a csatlakozásra. Összekötjük a láncot: Mac – T3/T2 adapter – Thunderbolt kábel – ATTO konverter – SAS kábel – szalagos meghajtó (a Mac-en több port, konverter és meghajtó választása nem fontos). Kapcsolja be az átalakítót. Kapcsolja be a szalagos meghajtót. Megvárjuk, amíg a meghajtó a jelzése szerint befejezi az inicializálást.

Kiadjuk a parancsot:

ltfs -o device_list

Hurrá! Ezt kapjuk (a szokásos IBM diagnosztikai módon):

307 LTFS14000I LTFS indul, LTFS 2.4.2.0 (10418), naplózási szint 2.
307 LTFS14058I LTFS formátumspecifikáció 2.4.0 verzió.
307 LTFS14104I Az "ltfs -o device_list" által elindított.
307 LTFS14105I Ez a bináris fájl Mac OS X rendszerhez készült.
A 307 LTFS14106I GCC 4.2.1-es verziója kompatibilis az Apple Clang 4.1-gyel ((tags/Apple/clang-421.11.66)).
307 LTFS17087I Kernelverzió: Darwin Kernel 19.4.0-s verzió: 4. március 22. szerda, 28:40:2020 PST; root:xnu-6153.101.6~15/RELEASE_X86_64.
307 LTFS17085I beépülő modul: „iokit” szalagos háttér betöltése.
Szalagos eszközök listája:.
Eszköznév = 0, szállítóazonosító = IBM, termékazonosító = ULT3580-TD5, sorozatszám = *********, terméknév = [ULT3580-TD5].

Helyezze be a kazettát, várja meg, amíg betöltődik és formázódik:

mkltfs -d 0 -nTest -r "size=10M/name=.DS_Store"

Itt a -d paraméter adja meg a meghajtó számát (mindig nulla, ha ez az egyetlen, de nem hagyható ki ebben a parancsban), -n a szalag neve (elhagyható), az -r paraméter pedig a tartalom elhelyezését igényli. a 10 megabájtot meg nem haladó .DS_Store fájlokat a szalag index (vagyis könyvtáraknak szánt) részében az adatrész helyett.

A szalagos meghajtóban titokzatos élet kezdődött. Várunk néhány percet, és a következő választ kapjuk:

LTFS15000I Az mkltfs indítása, LTFS 2.4.2.0 (10418) verzió, 2. naplózási szint.
LTFS15041I Indította: "mkltfs -d 0 -nTest -r size=10M/name=.DS_Store".
LTFS15042I Ez a bináris fájl Mac OS X rendszerhez készült.
Az LTFS15043I GCC verzió 4.2.1. Kompatibilis Apple Clang 4.1 ((tags/Apple/clang-421.11.66)).
LTFS17087I Kernel verzió: Darwin Kernel 19.4.0-s verzió: 4. március 22. szerda, 28:40:2020 PST; root:xnu-6153.101.6~15/RELEASE_X86_64.
LTFS15003I Formázási eszköz '0'.
LTFS15004I LTFS kötet blokkmérete: 524288.
LTFS15005I Indexpartíció elhelyezési szabályzata: size=10M/name=.DS_Store.

LTFS11337I Frissítési index piszkos jelző (1) - NO_BARCODE (0x0x1021081e0).
LTFS17085I beépülő modul: „iokit” szalagos háttérrendszer betöltése.
LTFS30810I Eszköz megnyitása iokit illesztőprogramon keresztül (0).
Az LTFS30814I szállítóazonosító az IBM.
Az LTFS30815I termékazonosító: „ULT3580-TD5”.
LTFS30816I A firmware verziója H976.
Az LTFS30817I meghajtó sorozata **********.
LTFS17160I A maximális eszközblokk mérete 1048576.
LTFS11330I Patron betöltése.
LTFS30854I A logikai blokkvédelem le van tiltva.
LTFS11332I Betöltés sikeres.
LTFS17157I A meghajtó beállításának módosítása bárhová írható módra.
LTFS15049I Az adathordozó (felszerelés) ellenőrzése.
LTFS30854I A logikai blokkvédelem le van tiltva.
LTFS15010I B adatpartíció létrehozása az 1. SCSI-partíción.
LTFS15011I A indexpartíció létrehozása a 0-s SCSI-partíción.
LTFS17165I Az adathordozó kapacitásarányának visszaállítása.
LTFS11097I Az adathordozó particionálása.
LTFS11100I Címke írása a b partícióra.
LTFS11278I Index írása a b partícióra.
Az LTFS30808I READ_ATTR (0x8c) -20501 értéket ad vissza.
Az LTFS30865I READ_ATTR érvénytelen mezőt ad vissza a CDB-ben (-20501) 0.
LTFS30836I Nem olvasható az attribútum (-20501).
LTFS11336I Az attribútum nem létezik. Figyelmen kívül hagyja a várt hibát.
LTFS17235I NO_BARCODE írási indexe b-be (Ok: Formátum, 0 fájl) *********.
LTFS17236I Megírta a NO_BARCODE indexét (b, **********).
LTFS11337I Frissítési index piszkos jelző (0) - NO_BARCODE (0x0x1021081e0).
LTFS11100I Címke írása a partícióra a.
LTFS11278I Index írása a partícióra a.
Az LTFS30808I READ_ATTR (0x8c) -20501 értéket ad vissza.
Az LTFS30865I READ_ATTR érvénytelen mezőt ad vissza a CDB-ben (-20501) 0.
LTFS30836I Nem olvasható az attribútum (-20501).
LTFS11336I Az attribútum nem létezik. Figyelmen kívül hagyja a várt hibát.
LTFS17235I NO_BARCODE indexének írása a következőre: (ok: formátum, 0 fájl) 9068025555.
LTFS17236I A NO_BARCODE indexét írta (a, **********).
LTFS15013I Volume UUID is: 3802a70d-bd9f-47a6-a999-eb74ffa67fc1.

LTFS15019I A kötet kapacitása 1425 GB.
LTFS30854I A logikai blokkvédelem le van tiltva.
LTFS15024I Közepes formázás sikeresen.

Szerelje fel a formázott szalagot:

sudo mkdir /Volumes/LTFS
sudo chmod 777 /Volumes/LTFS/
sudo ltfs /Volumes/LTFS

Kapunk még pár percnyi hajtásműködést és diagnosztikát:

307 LTFS14000I LTFS indul, LTFS 2.4.2.0 (10418), naplózási szint 2.
307 LTFS14058I LTFS formátumspecifikáció 2.4.0 verzió.
307 LTFS14104I Az „ltfs /Volumes/LTFS/” elindította.
307 LTFS14105I Ez a bináris fájl Mac OS X rendszerhez készült.
A 307 LTFS14106I GCC 4.2.1-es verziója kompatibilis az Apple Clang 4.1-gyel ((tags/Apple/clang-421.11.66)).
307 LTFS17087I Kernelverzió: Darwin Kernel 19.4.0-s verzió: 4. március 22. szerda, 28:40:2020 PST; root:xnu-6153.101.6~15/RELEASE_X86_64.
307 LTFS14063I A szinkronizálási típus „idő”, a szinkronizálási idő 60 másodperc.
307 LTFS17085I beépülő modul: „iokit” szalagos háttér betöltése.
307 LTFS17085I beépülő modul: „Egységes” iosched háttérrendszer betöltése.
307 LTFS14095I Állítsa be a szalagos eszköz bárhová írási módját, hogy elkerülje a kazetta kilökődését.
307 LTFS30810I Eszköz megnyitása iokit illesztőprogramon keresztül (0).
307 LTFS30814I A szállítóazonosító az IBM.
307 LTFS30815I A termékazonosító 'ULT3580-TD5'.
307 LTFS30816I A firmware verziója H976.
307 LTFS30817I A meghajtó sorozata **********.
307 LTFS17160I A maximális eszközblokk mérete 1048576.
307 LTFS11330I Patron betöltése.
307 LTFS30854I A logikai blokkvédelem le van tiltva.
307 LTFS11332I Betöltés sikeres.
307 LTFS17157I A meghajtó beállításának módosítása bárhová írható módra.
307 LTFS11005I A kötet felszerelése.
307 LTFS30854I A logikai blokkvédelem le van tiltva.
307 LTFS17227I Szalagattribútum: Szállító = IBM.
307 LTFS17227I Szalagattribútum: Alkalmazás neve = LTFS.
307 LTFS17227I Szalagattribútum: Alkalmazásverzió = 2.4.2.0.
307 LTFS17227I Szalagattribútum: Közepes címke =.
307 LTFS17228I Szalagattribútum: Szöveghonosítási azonosító = 0x81.
307 LTFS17227I Szalagattribútum: Vonalkód =.
307 LTFS17227I Szalagattribútum: Alkalmazásformátum verzió = 2.4.0.
307 LTFS17228I Szalagattribútum: Hangerőzár állapota = 0x00.
307 LTFS17227I Szalagattribútum: Médiakészlet neve =.
307 LTFS14111I A kezdeti beállítás sikeresen befejeződött.
307 LTFS14112I Hívja ki a 'mount' parancsot a végső telepítés eredményének ellenőrzéséhez.
307 LTFS14113I A megadott csatolási pont megjelenik a listában, ha sikerült.

És itt van, a teszt(ltfs) nevű szalagunk az asztalon! A névtelen szalag neve OSXFUSE Volume 0 (ltfs) lesz.

Most már dolgozhat vele.

Apple Mac és divatos eszközök. LTO, SAS, Fibre Channel, eSATA

Általában szem előtt kell tartani, hogy nem tanácsos túlzásba vinni a szalagos könyvtárak tartalmának megtekintését a kereső ablakokban, mivel ez hihetetlenül drága művelet az LTFS számára, de jobb terminálparancsokkal dolgozni, vagy egyszerűen visszaállítani. a biztonsági mentési könyvtárat tömegesen a szalagra, ahogy a fenti ablakban látható.

Egyébként létezik egy speciálisan megírt IBM segédprogram, az ltfs_copy és klónjai, amelyeket a szalag és a lemez közötti hatékonyabb másolásra terveztek, de felületes kereséssel eddig nem sikerült a szerzőnek ezeket közkinccsé tenni.

A szalagot a következő paranccsal távolíthatja el:

umount /Volumes/LTFS

vagy csak dobd a szemétbe.

Valójában a természetben léteznek valamilyen grafikus shell a macOS számára, amelyek megkönnyítik ezeket a műveleteket, de ilyen perverziók után félnünk kell néhány sort begépelni a terminálba?

Mellékhatásként lehetőséget kapunk külső eSATA meghajtók csatlakoztatására SAS/4*eSATA kábelen keresztül.

Apple Mac és divatos eszközök. LTO, SAS, Fibre Channel, eSATA

Forrás: will.com

Hozzászólás