Die onderwerp van hierdie artikel is om eksterne toestelle aan 'n Mac te koppel via SAS, Fibre Channel (FC), eSATA-koppelvlakke. Kom ons sĂȘ dadelik dat om die probleem van toegang tot sulke toestelle op te los, daar 'n manier vir 'n gesonde persoon is: bou 'n goedkoop rekenaar, prop 'n HBA SAS- of FC-beheerderkaart in (byvoorbeeld 'n eenvoudige LSI-adapter), koppel jou toestelle aan hierdie kontroleerder, installeer enige Linux op die rekenaar en werk vanaf Mac via die netwerk. Maar dit is banaal en oninteressant. Ons sal die hardcore-roete volg en ons toestelle verbind direk na Mac.
Wat ons hiervoor nodig het:
â ân ordentlike bedrag geld om nuwe toerusting te koop, of sterkte in veilings op eBay (waar jy met ân bietjie moeite die vereiste toerusting van vorige generasies 10 keer goedkoper as die lysprys kan koop);
- Hierdie artikel.
Om met magnetiese band te werk (nou amper universeel verteenwoordig in die LTO-formaat), moet jy 'n LTO-bandaandrywer (streamer) of bandbiblioteek hĂȘ. Dit is 'n taamlik duur toestel vir die aanvanklike aankoop (van honderde duisende roebels), maar die moeite werd om 'n redelike bedrag geld te koop wanneer dit gebruik word. Aangesien LTO-generasies ongeveer elke twee jaar verander, en verenigbaarheid tot twee generasies beperk is, is die sekondĂȘre mark redelik versadig met werkbare toestelle van vier jaar of ouer, d.w.s. die generasie voor laas en daarna. As jy 'n nuwe toestel vir kommersiĂ«le doeleindes koop, dan verstaan ââjy self hoekom jy dit nodig het. As jy vir jou huis en gesin wil koop, kan jy hierdie opsie oorweeg as 'n manier om inligting te argiveer (aangesien die media self baie goedkoop is per 1 gigagreep).
Vanaf die LTO-5-generasie (en gedeeltelik LTO-4), word toestelle vir werk met magnetiese band in hardeware aan die rekenaar gekoppel via 'n SAS- of FC-koppelvlak (gewoonlik is daar twee weergawes van elke toestel)
Aan die ander kant voorsien Apple ons vriendelik van 'n USB-C-koppelvlak in ons Mac (werk met die USB-, Thunderbolt 3- of DisplayPort-protokolle), soms 'n Ethernet-koppelvlak, sowel as eie Thunderbolt 3 - Thunderbolt 2 en Thunderbolt - FireWire 800 adapters.
Dooiepunt? Nie regtig nie. Gelukkig kan Thunderbolt in PCIe-modus werk en toelaat dat PCIe-kaarte op dieselfde manier verbind word asof dit direk in die rekenaarkas geĂŻnstalleer is. As gevolg hiervan is enige uitbreiding van die Mac-hardewarekonfigurasie moontlik, mits daar 'n toepaslike adapter en drywers is.
Konseptueel is die eenvoudigste manier om die probleem op te los 'n eksterne boks vir PCIe-adapters met 'n Thunderbolt-koppelvlak (PCIe-kaartuitbreidingstelsel), waarin jy 'n SAS- of FC-gasheerbusadapter (HBA) kan installeer. Sulke bokse word byvoorbeeld deur die maatskappy vervaardig en sommige ander. Daar is 'n voorbehoud hier: nie elke beheerder sal vir ons werk nie, slegs dié met 'n drywer vir macOSDaar is baie min sulke borde, en die goedkoopste en gewildste (byvoorbeeld dieselfde LSI) is nie onder hulle nie. Gelukkig het die maatskappy Sonnet die moeite gedoen om dit saam te stel PCIe-kaarte met verskeie bedryfstelsels via Thunderbolt-koppelvlak.
Nog 'n oplossing is om 'n klaargemaakte Thunderbolt - SAS of Thunderbolt - FC-koppelvlakomskakelaar te koop, wat in werklikheid 'n klaargemaakte samestelling van 'n boks en 'n kontroleerder is. Die bekendste maatskappy in hierdie gebied , maar daar is ook produkte van ander maatskappye.
Let daarop dat nie alle SAS- en FC-beheerders gesertifiseer is om aan die LTO-standaard te voldoen nie, aangesien dit op sigself geld kos. Sommige vervaardigers skryf direk dat hul beheerders nie ontwerp is om met bandaandrywers te werk nie.
Om die prentjie te voltooi, let ons daarop dat mLogic produseer , wat 'n IBM LTO-8-aandrywer in 'n eksterne omhulsel is, waarin onmiddellik 'n SAS na Thunderbolt 3-omskakelaar geĂŻntegreer word.Dit is egter 'n selfs meer eksotiese ding as alles hierbo beskryf, veral volgens die standaarde van ons streek. Ek twyfel of hierdie toestel selfs wettiglik in Rusland ingevoer kan word (LTO-aandrywers bevat kriptografiese kenmerke, en vervaardigers soos IBM en HP ontvang FSB-invoertoestemming vir elke model om hierdie rede).
Vervolgens sal ons as voorbeeld 'n spesifieke stel toerusting oorweeg, waarvan die eienaar die skrywer geword het as gevolg van verskeie suksesvolle verkrygings, maar die algemene beginsel moet vir alle opsies gehandhaaf word.
Ons het dus die volgende toerusting om met band te werk:
â Apple Mac mini 2018 rekenaar met macOS 10.15 Catalina, wat USB-C-poorte met Thunderbolt 3-ondersteuning het;
â Apple Thunderbolt 3 / Thunderbolt 2-adapter;
â Apple Thunderbolt 2-kabel;
â ATTO ThunderLink SH 1068-koppelvlak-omskakelaar (2*Thunderbolt / 2*SAS-2);
â SAS-kabel SFF-8088 â SFF-8088;
â bandaandrywer LTO-5 IBM TS2350;
- LTO-5 patrone, skoonmaak patroon.
Nou, soos hulle sĂȘ, met al hierdie goed gaan ons probeer opstyg.
Ons laai die nuutste weergawe van die ThunderLink SH 1068-bestuurder af van die ATTO-webwerf af (dit word blykbaar vir ons gerief gekombineer met die SH 2068-bestuurder en is geleë in afdeling 2068, wat slegs in die argief met die drywer geskryf is) en die ATTO konfigurasie nut.

Die bestuurder moet natuurlik geĂŻnstalleer word. Voor sulke aksies raai die skrywer aan om altyd 'n momentopname van die APFS-lĂȘerstelsel van die opstartskyf te neem met die opdrag
tmutil localsnapshotof 'n rugsteunkopie van die opstartskyf, as dit HFS+ het. Jy weet nooit. Dan sal dit maklik wees om terug te rol van die momentopname.
Vervolgens sal die onervare, maar noukeurige verstand ongetwyfeld geneig wees om die ATTO-bestuurderinstallasie-instruksies noukeurig te lees en dit te volg. As gevolg hiervan - tadam! â ons kry 'n bedryfstelsel wat by die laaistadium hang. Hier het ons dalk 'n momentopname nodig waaruit ons kan herstel deur Time machine van die herstelpartisie te bel, of vanaf dieselfde herstelpartisie kan ons die siek kext handmatig uit die kernuitbreidingsgids uitvee (die skrywer beveel gewoonlik nie aan om dit te doen nie).
Waarom gebeur dit? Omdat Apple na ons omgesien het. In die nuutste weergawes macOS Jy kan nie net vreemde kode in die opstartproses inspuit nie. Die vriendelike Apple-programmeerders het hierdie vernietigende gedrag geblokkeer. Meer presies, hulle het dit halfpad geblokkeer: wanneer die drywerwag ingespuit word, maar die drywer self nie, hang alles net.
Wat moet 'n gesofistikeerde verstand doen voordat 'n bestuurder geĂŻnstalleer word? Gee eers die opdrag:
csrutil statusAs ons in reaksie daarop ontvang:
Stelselintegriteitbeskermingstatus: geaktiveer.
dan beteken dit dat die goeie Apple-programmeerders vir ons omgee, so niks sal vir ons uitwerk totdat ons hul wonderlike beskerming deaktiveer nie. Om dit te doen, herlaai na die herstelpartisie (âR), bel die terminale en gee die opdrag:
csrutil disableHierna herlaai ons in die werkende stelsel, en installeer dan eers die bestuurder, en terselfdertyd die ATTO-konfigurasiehulpmiddel (in beginsel is die konfigurasiehulpmiddel slegs nodig vir diagnostiek en word nie tydens normale werking benodig nie). Langs die pad, wanneer ons gevra word, bevestig ons die ATTO-magtiging in die stelselinstellings. Na die installasie kan u weer in die herstelpartisie herlaai en die opdrag gee
csrutil enableApple sorg weer vir ons.
Nou het ons 'n bestuurder-ondersteunde koppelvlak na eksterne SAS-toestelle (of FC, as 'n FC-omskakelaar gebruik is). Maar hoe om op die logiese vlak met band te werk?
Soos die onervare maar geleerde verstand weet, ondersteun enige Unix-versoenbare stelsel bandaandrywers op die vlak van die kern en basiese stelselhulpmiddels, wat hoofsaaklik mt (bandbestuur) en tar (argiverer wat werk met argiewe op band ondersteun) insluit. Wat kan 'n gesofistikeerde verstand egter hieroor sĂȘ? Enige Unix-versoenbare stelsel, Buitendien macOS. Apple het vir ons gesorg deur ondersteuning vir bandtoestelle van sy kode te verwyder.
Maar is dit werklik onmoontlik om hierdie kode terug te bring deur die standaard oopbron Unix-hulpprogramme na ... oor te dra? macOSDie goeie nuus is dat Tolis (waarna ek nie sal skakel nie) dit reeds in sy produk, Tolis Tape Tools, gedoen het. Die slegte nuus is dat die maatskappy $399 vra vir die gebruik van sy werk. Ramings hiervan kan wissel, maar die outeur is persoonlik nie bereid om iemand $400 te betaal vir kode wat meestal deur ander mense geskryf is en sedert die 1970's in oop gebruik is nie, daarom beskou die outeur hierdie kwessie as afgehandel. (Terloops, daar is 'n verlate, vaagweg lopende oopbronprojek op GitHub.) oor dieselfde onderwerp).
Gelukkig is daar IBM, 'n korporasie wie se kommersiĂ«le aptyt op 'n heeltemal ander skaal is en dus nie in triviale sake manifesteer nie. Spesifiek het hulle die oopbron LTFS-bandlĂȘerstelsel ontwikkel, wat onder andere versprei word vir macOS.
Die waarskuwing hier is dat verskillende bandtoestelvervaardigers hul eie weergawes van LTFS vrystel om hul toestelle te ondersteun. Aangesien die skrywer 'n IBM-bandstasie gebruik, het hy LTFS vanaf IBM geĂŻnstalleer. Derdeparty-aandrywers benodig dalk hul eie LTFS-poorte. En daar is 'n universele implementering van openLTFS op Github en Homebrew.
Dit is vir ons belangrik dat LTFS die mediapartisioneringsfunksie gebruik, en daarom kan werk met toestelle en patrone vanaf die LTO-5-generasie.
So, in ons geval, laai ons die IBM Spectrum Archive Single Drive Edition-produk van die IBM-webwerf af. macOS, wat die LTFS-implementering insluit. Ons installeer die produk sonder enige komplikasies met behulp van sy eie installeerder. Langs die pad installeer dit ook die FUSE-pakket, alhoewel jy die magtiging van 'n slim programmeerder genaamd Anatol Pomozov in die stelselinstellings sal moet bevestig, van wie, in hierdie geval, die hele IBM-stelsel afhanklik is. Respek en bewondering vir hierdie man.
Dit is raadsaam om dadelik die reĂ«l in die lĂȘer /Library/Frameworks/LTFS.framework/Versions/Current/etc/ltfs.conf.local te skryf:
opsie enkel-aandrywing sync_type=tyd@1
wat spesifiseer dat die band by verstek gemonteer is en die opnamebuffer na 1 minuut van onaktiwiteit teruggestel word (verstek is 5 minute).

Uiteindelik is alles gereed om aan te sluit. Ons verbind die ketting: Mac â T3/T2-adapter â Thunderbolt-kabel â ATTO-omskakelaar â SAS-kabel â bandaandrywer (die keuse van verskeie poorte op die Mac, omskakelaar en aandrywer is nie belangrik nie). Skakel die krag van die omskakelaar aan. Skakel die krag na die bandaandrywer aan. Ons wag vir die aandrywing om inisialisering te voltooi volgens sy aanduiding.
Ons gee die opdrag:
ltfs -o device_listHoera! Ons kry (op die gewone IBM diagnostiese wyse):
307 LTFS14000I LTFS begin, LTFS weergawe 2.4.2.0 (10418), log vlak 2.
307 LTFS14058I LTFS-formaatspesifikasie weergawe 2.4.0.
307 LTFS14104I Geloods deur "ltfs -o device_list".
307 LTFS14105I Hierdie binĂȘre is gebou vir Mac OS X.
307 LTFS14106I GCC weergawe is 4.2.1 Versoenbare Apple Clang 4.1 ((merkers/Apple/clang-421.11.66)).
307 LTFS17087I Kernweergawe: Darwin Kernel Weergawe 19.4.0: Wo 4 Mrt 22:28:40 PST 2020; root:xnu-6153.101.6~15/RELEASE_X86_64.
307 LTFS17085I-inprop: Laai "iokit"-band-agterkant.
Bandtoestellys:.
Toestelnaam = 0, Verkoper-ID = IBM, Produk-ID = ULT3580-TD5, Reeksnommer = **********, Produknaam = [ULT3580-TD5].
Plaas die kasset in, wag vir dit om te laai en formateer:
mkltfs -d 0 -nTest -r "size=10M/name=.DS_Store"Hier spesifiseer die -d parameter die aandrywingnommer (altyd nul as dit die enigste een is, maar kan nie in hierdie opdrag weggelaat word nie), -n is die bandnaam (jy kan dit weglaat), en die -r parameter vereis dat die inhoud geplaas word van .DS_Store lĂȘers wat nie die grootte 10 megagrepe oorskry nie, in die indeks (d.i. bedoel vir dopgehou) afdeling van die band in plaas van die data afdeling.
Geheimsinnige lewe het in die bandstasie begin. Ons wag 'n paar minute en ontvang die volgende antwoord:
LTFS15000I Begin mkltfs, LTFS weergawe 2.4.2.0 (10418), log vlak 2.
LTFS15041I Geloods deur "mkltfs -d 0 -nTest -r size=10M/name=.DS_Store".
LTFS15042I Hierdie binĂȘre is gebou vir Mac OS X.
LTFS15043I GCC weergawe is 4.2.1 Versoenbare Apple Clang 4.1 ((tags/Apple/clang-421.11.66)).
LTFS17087I Kernweergawe: Darwin Kernel Weergawe 19.4.0: Wo 4 Maart 22:28:40 PST 2020; root:xnu-6153.101.6~15/RELEASE_X86_64.
LTFS15003I Formateer toestel '0'.
LTFS15004I LTFS volume blokgrootte: 524288.
LTFS15005I Indekspartisieplasingsbeleid: grootte=10M/naam=.DS_Store.LTFS11337I Dateer indeksvuil vlag op (1) - GEEN_BARCODE (0x0x1021081e0).
LTFS17085I-inprop: Laai "iokit"-band-agterkant.
LTFS30810I Maak 'n toestel oop deur iokit-bestuurder (0).
LTFS30814I Verkoper ID is IBM.
LTFS30815I Produk ID is 'ULT3580-TD5'.
LTFS30816I Firmware hersiening is H976.
LTFS30817I Drive-reeks is **********.
LTFS17160I Maksimum toestelblokgrootte is 1048576.
LTFS11330I Laai patroon.
LTFS30854I Logiese blokbeskerming is gedeaktiveer.
LTFS11332I Laai suksesvol.
LTFS17157I Verander die aandrywerinstelling na skryf-enige plek-modus.
LTFS15049I Kontroleer die medium (montering).
LTFS30854I Logiese blokbeskerming is gedeaktiveer.
LTFS15010I Skep datapartisie b op SCSI partisie 1.
LTFS15011I Skep indekspartisie a op SCSI partisie 0.
LTFS17165I Herstel van die medium se kapasiteit proporsie.
LTFS11097I Partitionering van die medium.
LTFS11100I Skryfetiket na partisie b.
LTFS11278I Skryf van indeks na partisie b.
LTFS30808I READ_ATTR (0x8c) gee -20501 terug.
LTFS30865I READ_ATTR gee Ongeldige Veld in CDB (-20501) 0 terug.
LTFS30836I Kan nie kenmerk lees nie (-20501).
LTFS11336I Die kenmerk bestaan âânie. Ignoreer die verwagte fout.
LTFS17235I Skryfindeks van NO_BARCODE na b (Rede: Formaat, 0 lĂȘers) **********.
LTFS17236I Het indeks van GEEN_BARCODE (b, **********) geskryf.
LTFS11337I Dateer indeksvuil vlag op (0) - GEEN_BARCODE (0x0x1021081e0).
LTFS11100I Skryfetiket na partisie a.
LTFS11278I Skryf indeks na partisie a.
LTFS30808I READ_ATTR (0x8c) gee -20501 terug.
LTFS30865I READ_ATTR gee Ongeldige Veld in CDB (-20501) 0 terug.
LTFS30836I Kan nie kenmerk lees nie (-20501).
LTFS11336I Die kenmerk bestaan âânie. Ignoreer die verwagte fout.
LTFS17235I Skryf indeks van NO_BARCODE na 'n (Rede: Formaat, 0 lĂȘers) 9068025555.
LTFS17236I Het indeks van GEEN_BARCODE (a, **********) geskryf.
LTFS15013I Volume UUID is: 3802a70d-bd9f-47a6-a999-eb74ffa67fc1.LTFS15019I Volumekapasiteit is 1425 GB.
LTFS30854I Logiese blokbeskerming is gedeaktiveer.
LTFS15024I Medium is suksesvol geformateer.
Monteer die geformateerde band:
sudo mkdir /Volumes/LTFS
sudo chmod 777 /Volumes/LTFS/
sudo ltfs /Volumes/LTFSOns kry nog 'n paar minute se bestuur en diagnostiek:
307 LTFS14000I LTFS begin, LTFS weergawe 2.4.2.0 (10418), log vlak 2.
307 LTFS14058I LTFS-formaatspesifikasie weergawe 2.4.0.
307 LTFS14104I Geloods deur âltfs /Volumes/LTFS/â.
307 LTFS14105I Hierdie binĂȘre is gebou vir Mac OS X.
307 LTFS14106I GCC weergawe is 4.2.1 Versoenbare Apple Clang 4.1 ((merkers/Apple/clang-421.11.66)).
307 LTFS17087I Kernweergawe: Darwin Kernel Weergawe 19.4.0: Wo 4 Mrt 22:28:40 PST 2020; root:xnu-6153.101.6~15/RELEASE_X86_64.
307 LTFS14063I Sinkronisering tipe is "tyd", sinkronisering tyd is 60 sek.
307 LTFS17085I-inprop: Laai "iokit"-band-agterkant.
307 LTFS17085I Plugin: Laai "verenigde" iosched backend.
307 LTFS14095I Stel die bandtoestel-skryf-enige plek-modus in om patroon-uitwerping te vermy.
307 LTFS30810I Maak 'n toestel oop deur iokit-bestuurder (0).
307 LTFS30814I Verkoper ID is IBM.
307 LTFS30815I Produk ID is 'ULT3580-TD5'.
307 LTFS30816I Fermware-hersiening is H976.
307 LTFS30817I Drive-reeks is **********.
307 LTFS17160I Maksimum toestelblokgrootte is 1048576.
307 LTFS11330I Laai patroon.
307 LTFS30854I Logiese blokbeskerming is gedeaktiveer.
307 LTFS11332I Laai suksesvol.
307 LTFS17157I Verander die aandrywerinstelling na skryf-enige plek-modus.
307 LTFS11005I Monteer die volume.
307 LTFS30854I Logiese blokbeskerming is gedeaktiveer.
307 LTFS17227I Tape-kenmerk: Verkoper = IBM.
307 LTFS17227I Tape-kenmerk: Toepassingsnaam = LTFS.
307 LTFS17227I Tape-kenmerk: Toepassingsweergawe = 2.4.2.0.
307 LTFS17227I Tape-kenmerk: Medium Label =.
307 LTFS17228I Tape-kenmerk: Tekslokalisering-ID = 0x81.
307 LTFS17227I Tape-kenmerk: Streepkode =.
307 LTFS17227I Tape-kenmerk: Toepassingsformaat Weergawe = 2.4.0.
307 LTFS17228I Tape-kenmerk: Volumeslotstatus = 0x00.
307 LTFS17227I Tape-kenmerk: Mediapoelnaam =.
307 LTFS14111I Aanvanklike opstelling suksesvol voltooi.
307 LTFS14112I Roep 'mount'-opdrag aan om die resultaat van finale opstelling na te gaan.
307 LTFS14113I Gespesifiseerde monteerpunt word gelys indien geslaag.
En hier is dit, ons lint op die lessenaar, genaamd Test(ltfs)! Die naamlose band sal OSXFUSE Volume 0 (ltfs) genoem word.
Nou kan jy daarmee werk.

Oor die algemeen moet u in gedagte hou dat dit raadsaam is om nie te veel te gebruik om die inhoud van bandgidse in die vindervensters te bekyk nie, aangesien dit 'n ongelooflike duur operasie vir LTFS is, maar dit is beter om met terminale opdragte te werk, of eenvoudig terug te stel die rugsteungids in grootmaat na die band, soos in die venster hierbo gewys.
Terloops, daar is 'n spesiaal geskrewe IBM-hulpprogram ltfs_copy en sy klone, wat ontwerp is vir meer doeltreffende kopiëring tussen band en skyf, maar tot dusver kon die skrywer dit nie in die publieke domein vind met 'n oppervlakkige soektog nie.
Jy kan die band ontkoppel met die opdrag:
umount /Volumes/LTFSof gooi dit net in die asblik.
Eintlik is daar 'n paar grafiese skulpe in die natuur vir macOS om hierdie aksies makliker te maak, maar na sulke perversies, moet ons bang wees om 'n paar reëls in die terminaal te tik?
As 'n newe-effek kry ons die geleentheid om eksterne eSATA-aandrywers via 'n SAS/4*eSATA-kabel aan te sluit.

Bron: will.com
