Apple Mac және сәнді құрылғылар. LTO, SAS, Fiber Channel, eSATA

Бұл мақаланың тақырыбы сыртқы құрылғыларды Mac жүйесіне SAS, Fiber Channel (FC), eSATA интерфейстері арқылы қосу. Бірден айта кетейік, мұндай құрылғыларға қол жеткізу мәселесін шешу үшін сау адамның жолы бар: арзан компьютер құрастырыңыз, HBA SAS немесе FC контроллер картасын қосыңыз (мысалы, қарапайым LSI адаптері), құрылғыларыңызды осы контроллерге қосыңыз. , компьютерге кез келген Linux орнатыңыз және желі арқылы Mac жүйесінен жұмыс жасаңыз. Бірақ бұл банальды және қызық емес. Біз қатты жолмен жүріп, құрылғыларымызды қосамыз тікелей Mac жүйесіне.

Бұл үшін бізге не қажет:
– жаңа жабдықты сатып алу үшін лайықты ақша немесе eBay аукциондарында сәттілік (мұнда аз күш-жігермен алдыңғы буынның қажетті жабдықтарын тізім бағасынан 10 есе арзан сатып алуға болады);
- Бұл мақала.

Магниттік таспамен жұмыс істеу үшін (қазір дерлік LTO пішімінде ұсынылған), сізде LTO таспа дискісі (стриматор) немесе таспалар кітапханасы болуы керек. Бұл бастапқы сатып алу үшін өте қымбат құрылғы (жүздеген мың рубльден), бірақ пайдаланылған сатып алу кезінде ақылға қонымды ақша сомасына тұрарлық. LTO ұрпақтары шамамен екі жыл сайын өзгеретіндіктен және үйлесімділік екі ұрпақпен шектелгендіктен, қайталама нарық төрт немесе одан да көп жастағы жұмыс істейтін құрылғылармен толыққанды, яғни. соңғы және одан кейінгі ұрпақ. Егер сіз жаңа құрылғыны коммерциялық мақсатта сатып алсаңыз, оның не үшін қажет екенін өзіңіз түсінесіз. Егер сіз өзіңіздің үйіңізге және отбасыңызға сатып алғыңыз келсе, бұл опцияны ақпаратты мұрағаттау әдісі ретінде қарастыруға болады (өйткені медианың өзі 1 гигабайт үшін өте арзан).

LTO-5 буынынан (және ішінара LTO-4) бастап магниттік таспамен жұмыс істеуге арналған құрылғылар аппараттық құралда SAS немесе FC интерфейсі арқылы компьютерге қосылады (әдетте әр құрылғының екі нұсқасы бар)

Екінші жағынан, Apple бізге Mac жүйесінде USB-C интерфейсін (USB, Thunderbolt 3 немесе DisplayPort протоколдарын пайдаланып жұмыс істейді), кейде Ethernet интерфейсін, сондай-ақ меншікті Thunderbolt 3 - Thunderbolt 2 және Thunderbolt - FireWire 800 ұсынады. адаптерлер.

Тығырықта ма? Онша емес. Бақытымызға орай, Thunderbolt PCIe режимінде жұмыс істей алады және PCIe карталарын тікелей компьютер корпусының ішіне орнатылған сияқты қосуға мүмкіндік береді. Осыған байланысты, сәйкес адаптер мен драйверлер болған жағдайда Mac аппараттық конфигурациясының кез келген кеңейтілуі мүмкін.

Тұжырымдама бойынша мәселені шешудің ең қарапайым жолы - Thunderbolt интерфейсі бар PCIe адаптерлеріне арналған сыртқы қорап (PCIe картасын кеңейту жүйесі), оған SAS немесе FC хост шинасы адаптерін (HBA) орнатуға болады. Мысалы, мұндай жәшіктерді кәсіпорын шығарады Соннет және басқалары. Мұнда бір нюанс бар: біз үшін әрбір контроллер қолайлы емес, тек macOS үшін драйвері бар біреу ғана. Мұндай тақталар аз ғана, ал ең арзан және ең танымал (мысалы, бірдей LSI) олардың санына кірмейді. Бақытымызға орай, Сонет құрастыру қиынға соқты үйлесімділік кестесі Thunderbolt интерфейсі арқылы әртүрлі ОЖ бар PCIe карталары.

Тағы бір шешім - дайын Thunderbolt - SAS немесе Thunderbolt - FC интерфейс түрлендіргішін сатып алу, ол шын мәнінде қорап пен контроллердің дайын жинағы болып табылады. Бұл аймақтағы ең танымал компания ATTO, бірақ басқа компаниялардың өнімдері де бар.

Барлық SAS және FC контроллерлері LTO стандартына сәйкес сертификатталмағанын ескеріңіз, себебі бұл өз алдына ақша талап етеді. Кейбір өндірушілер олардың контроллері таспа дискілерімен жұмыс істеуге арналмағанын тікелей жазады.

Суретті аяқтау үшін mLogic шығаратынын ескереміз келісу, бұл сыртқы корпустағы IBM LTO-8 дискісі, оған SAS-тан Thunderbolt 3 түрлендіргіші бірден біріктірілген.Алайда бұл жоғарыда сипатталған барлық нәрселерден, әсіресе біздің аймақтың стандарттарына қарағанда, экзотикалық нәрсе. Мен бұл құрылғыны тіпті Ресейге заңды түрде импорттауға болатынына күмәнданамын (LTO дискілерінде криптографиялық мүмкіндіктер бар және IBM және HP сияқты өндірушілер осы себепті әрбір модель үшін FSB импорттау рұқсатын алады).

Әрі қарай, мысал ретінде автор бірнеше сәтті сатып алудың нәтижесінде иесі болған жабдықтың нақты жиынтығын қарастырамыз, бірақ барлық нұсқалар үшін жалпы принцип сақталуы керек.

Сонымен, таспамен жұмыс істеу үшін бізде келесі жабдық бар:
– Thunderbolt 2018 қолдауы бар USB-C порттары бар macOS 10.15 Catalina жүйесі бар Apple Mac mini 3 компьютері;
– Apple Thunderbolt 3 / Thunderbolt 2 адаптері;
– Apple Thunderbolt 2 кабелі;
– ATTO ThunderLink SH 1068 интерфейс түрлендіргіші (2*Thunderbolt / 2*SAS-2);
– SAS кабелі SFF-8088 – SFF-8088;
– таспа жетекі LTO-5 IBM TS2350;
– LTO-5 патрондары, тазалау патрондары.

Енді, олар айтқандай, осы заттардың барлығымен біз ұшуға тырысамыз.

Біз ATTO веб-сайтынан ThunderLink SH 1068 драйверінің соңғы нұсқасын жүктеп аламыз (шамасы, бізге ыңғайлы болу үшін ол SH 2068 драйверімен біріктірілген және 2068 бөлімінде орналасқан, ол тек драйвермен бірге мұрағатта жазылған) және ATTO конфигурациялау утилитасы.

Apple Mac және сәнді құрылғылар. LTO, SAS, Fiber Channel, eSATA

Драйвер, әрине, орнатуды қажет етеді. Мұндай әрекеттердің алдында автор әрқашан пәрменмен жүктеу дискісінің APFS файлдық жүйесінің суретін алуға кеңес береді.

tmutil localsnapshot

немесе HFS+ болса, жүктеу дискісінің сақтық көшірмесі. Сен ешқашан білмейсін. Содан кейін суреттен кері оралу оңай болады.

Әрі қарай, тәжірибесіз, бірақ мұқият зерделеушілер ATTO драйверін орнату нұсқауларын мұқият оқып, оларды орындауға бейім болады. Нәтижесінде - тамаша! – жүктеу сатысында ілулі тұрған операциялық жүйені аламыз. Мұнда бізге қалпына келтіру бөлімінен Time machine-ге қоңырау шалу арқылы қалпына келтіруге болатын сурет қажет болуы мүмкін немесе сол қалпына келтіру бөлімінен ядро ​​кеңейтімдері каталогынан ауру kext-ті қолмен өшіре аламыз (автор әдетте мұны істеуді ұсынбайды).

Неліктен бұл болып жатыр? Өйткені Apple бізге қамқорлық жасады. MacOS жүйесінің соңғы нұсқаларында жүктеу процесіне шетелдік кодты оңай енгізу мүмкін емес. Жақсы Apple бағдарламашылары бұл деструктивті әрекетке тосқауыл қойды. Дәлірек айтқанда, олар жүргізушінің күтуі орындалған кезде оны жарты жолда бұғаттады, бірақ жүргізушінің өзі олай емес, сондықтан бәрі қатып қалады.

Драйверді орнатпас бұрын күрделі ақыл не істеу керек? Алдымен пәрменді беріңіз:

csrutil status

Егер оған жауап ретінде біз:

Жүйе тұтастығын қорғау күйі: қосулы.

онда бұл жақсы Apple бағдарламашылары бізге қамқорлық жасайтынын білдіреді, сондықтан біз олардың тамаша қорғанысын өшірмейінше, біз үшін ештеңе жұмыс істемейді. Ол үшін қалпына келтіру бөліміне (⌘R) қайта жүктеңіз, терминалға қоңырау шалыңыз және пәрменді беріңіз:

csrutil disable

Осыдан кейін біз жұмыс жүйесін қайта жүктейміз, содан кейін ғана драйверді және сонымен бірге ATTO конфигурациялау утилитасын орнатамыз (негізінде конфигурациялау утилитасы тек диагностика үшін қажет және қалыпты жұмыс кезінде қажет емес). Жолда, сұралғанда, жүйе параметрлерінде ATTO авторизациясын растаймыз. Орнатқаннан кейін сіз қалпына келтіру бөліміне қайта жүктеп, пәрмен бере аласыз

csrutil enable

Apple бізге қайтадан қамқорлық жасайды.

Енді бізде сыртқы SAS құрылғыларына (немесе FC түрлендіргіші пайдаланылса, FC) драйвер қолдайтын интерфейс бар. Бірақ логикалық деңгейде таспамен қалай жұмыс істеу керек?

Тәжірибесіз, бірақ білімді ақыл білетіндей, кез келген Unix-үйлесімді жүйе ядро ​​деңгейіндегі таспа дискілерін және негізгі жүйелік утилиталарды қолдайды, олар негізінен mt (таспаларды басқару) және tar (таспадағы мұрағаттармен жұмыс істеуді қолдайтын мұрағатшы) қамтиды. Дегенмен, бұл туралы күрделі ақыл не айта алады? Кез келген Unix үйлесімді жүйе, macOS қоспағанда. Apple өз кодынан таспа құрылғыларын қолдауды алып тастау арқылы бізге қамқорлық жасады.

Бірақ стандартты ашық бастапқы Unix утилиталарын macOS жүйесіне көшіру арқылы бұл кодты қайтару шынымен мүмкін емес пе? Жақсы жаңалық, Tolis (мен оған сілтеме жасамаймын) мұны Tolis Tape Tools өнімінде жасады. Жаман жаңалық, аталған компания өз жұмысының нәтижесін пайдалану үшін 399 доллар тұрады. Бұл фактіні бағалау әртүрлі болуы мүмкін, бірақ автордың жеке өзі біреуге мүлдем басқа адамдар жазған және 400 жылдардан бері ашық қолданыста болған код үшін 1970 доллар төлеуге дайын емес, сондықтан автор бұл сұрақты өзі үшін қойып отыр. жабық деп санайды. (Айтпақшы, Github-та түсініксіз күйде қалдырылған тегін жоба бар IOSCSItape сол тақырып бойынша).

Бақытымызға орай, әлемде IBM корпорациясы бар, оның коммерциялық аппетиті мүлде басқа ауқымда, сондықтан әрбір ұсақ-түйекте көрінбейді. Атап айтқанда, ол MacOS үшін де таратылатын ашық бастапқы LTFS таспа файлдық жүйесін әзірледі.

Бұл жерде ескертетін жайт, әртүрлі таспа құрылғыларын өндірушілер өз құрылғыларын қолдау үшін LTFS-тің өз нұсқаларын шығарады. Автор IBM таспа дискісін пайдаланатындықтан, ол IBM компаниясынан LTFS орнатты. Үшінші тарап дискілері өздерінің LTFS порттарын қажет етуі мүмкін. Және Github және Homebrew-те openLTFS әмбебап енгізуі бар.

Біз үшін LTFS медианы бөлу функциясын қолдануы маңызды, сондықтан LTO-5 буынынан бастап құрылғылармен және картридждермен жұмыс істей алады.

Сонымен, біздің жағдайда, біз LTFS енгізуді қамтитын IBM веб-сайтынан macOS жүйесіне арналған IBM Spectrum Archive Single Drive Edition жүктеп аламыз. Ешқандай приключениясыз біз өнімді өзінің орнатушысын пайдаланып орнатамыз. Жолда ол FUSE пакетін де орнатады және жүйелік параметрлерде ол бұл жағдайда бүкіл IBM тәуелді болатын Анатол Помозов есімді ақылды бағдарламашының авторизациясын растауы керек. Бұл кісіге құрмет пен құрмет.

Жолды дереу /Library/Frameworks/LTFS.framework/Versions/Current/etc/ltfs.conf.local файлына жазған жөн:

опция жалғыз диск синхрондау_түрі=уақыт@1

ол таспаның әдепкі бойынша орнатылғанын және жазу буферінің 1 минут әрекетсіздіктен кейін қалпына келтірілетінін көрсетеді (әдепкі - 5 минут).

Apple Mac және сәнді құрылғылар. LTO, SAS, Fiber Channel, eSATA

Соңында бәрі қосылуға дайын. Біз тізбекті қосамыз: Mac – T3/T2 адаптері – Thunderbolt кабелі – ATTO түрлендіргіші – SAS кабелі – таспалы диск (Mac, конвертер және дискідегі бірнеше порттарды таңдау маңызды емес). Түрлендіргіштің қуатын қосыңыз. Таспалы жинақтағыштың қуатын қосыңыз. Дискінің көрсеткішіне сәйкес инициализацияның аяқталуын күтеміз.

Біз пәрмен береміз:

ltfs -o device_list

Ура! Біз аламыз (әдеттегі IBM диагностикалық тәсілімен):

307 LTFS14000I LTFS іске қосылуы, LTFS нұсқасы 2.4.2.0 (10418), журнал деңгейі 2.
307 LTFS14058I LTFS пішімінің сипаттамасы 2.4.0 нұсқасы.
307 LTFS14104I "ltfs -o device_list" арқылы іске қосылды.
307 LTFS14105I Бұл екілік Mac OS X үшін құрастырылған.
307 LTFS14106I GCC нұсқасы 4.2.1 үйлесімді Apple Clang 4.1 ((тегтер/Apple/clang-421.11.66)).
307 LTFS17087I ядро ​​нұсқасы: Darwin ядросының 19.4.0 нұсқасы: 4 наурыз 22:28:40 PST 2020 ж.; түбір: xnu-6153.101.6~15/RELEASE_X86_64.
307 LTFS17085I плагині: “iokit” таспасының сервері жүктелуде.
Таспа құрылғыларының тізімі:.
Құрылғы аты = 0, Жеткізуші идентификаторы = IBM, Өнім идентификаторы = ULT3580-TD5, Сериялық нөмірі = ************, Өнім атауы = [ULT3580-TD5].

Кассетаны салыңыз, оның жүктелуін және пішімделуін күтіңіз:

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

Мұнда -d параметрі дискінің нөмірін көрсетеді (егер ол жалғыз болса, әрқашан нөл, бірақ бұл пәрменде қалдыру мүмкін емес), -n - таспа атауы (оны өткізіп жіберуге болады), ал -r параметрі мазмұнды орналастыруды талап етеді. Көлемі 10 мегабайттан аспайтын .DS_Store файлдарының деректер бөлімінің орнына таспаның индекс (яғни, каталогтарға арналған) бөлімінде.

Магнитофоннан жұмбақ өмір басталды. Біз бірнеше минут күтіп, келесі жауапты аламыз:

LTFS15000I Бастау mklfs, LTFS нұсқасы 2.4.2.0 (10418), журнал деңгейі 2.
LTFS15041I "mkltfs -d 0 -nTest -r size=10M/name=.DS_Store" арқылы іске қосылды.
LTFS15042I Бұл екілік Mac OS X үшін жасалған.
LTFS15043I GCC нұсқасы 4.2.1 үйлесімді Apple Clang 4.1 ((тегтер/Apple/clang-421.11.66)).
LTFS17087I ядро ​​нұсқасы: Darwin ядросының 19.4.0 нұсқасы: 4 наурыз 22:28:40 PST 2020 ж.; түбір: xnu-6153.101.6~15/RELEASE_X86_64.
LTFS15003I '0' пішімдеу құрылғысы.
LTFS15004I LTFS көлемінің блок өлшемі: 524288.
LTFS15005I Индекс бөлімін орналастыру саясаты: size=10M/name=.DS_Store.

LTFS11337I Жаңарту индексі ластанған жалауша (1) - NO_BARCODE (0x0x1021081e0).
LTFS17085I плагині: “iokit” таспа сервері жүктелуде.
LTFS30810I Құрылғыны iokit драйвері арқылы ашу (0).
LTFS30814I Жеткізуші идентификаторы - IBM.
LTFS30815I өнім идентификаторы - "ULT3580-TD5".
LTFS30816I микробағдарлама нұсқасы - H976.
LTFS30817I Drive сериясы ************ болып табылады.
LTFS17160I Құрылғы блогының максималды өлшемі - 1048576.
LTFS11330I Картриджді тиеу.
LTFS30854I Логикалық блокты қорғау өшірілген.
LTFS11332I Жүктелді.
LTFS17157I Диск параметрін кез келген жерде жазу режиміне өзгерту.
LTFS15049I Ортаны тексеру (монтаждау).
LTFS30854I Логикалық блокты қорғау өшірілген.
LTFS15010I SCSI 1 бөлімінде b деректер бөлімін жасау.
LTFS15011I SCSI 0 бөлімінде a индекстік бөлімін жасау.
LTFS17165I Ортаның сыйымдылық пропорциясын қалпына келтіру.
LTFS11097I Ортаны бөлу.
LTFS11100I b бөліміне белгіні жазу.
LTFS11278I b бөліміне индексті жазу.
LTFS30808I READ_ATTR (0x8c) -20501 қайтарады.
LTFS30865I READ_ATTR CDB ішіндегі жарамсыз өрісті қайтарады (-20501) 0.
LTFS30836I Төлсипатты оқу мүмкін емес (-20501).
LTFS11336I төлсипат жоқ. Күтілетін қатені елемеу.
LTFS17235I NO_BARCODE жазу индексі b дейін (Себебі: Пішім, 0 файл) ************.
LTFS17236I NO_BARCODE индексін жазды (b, **********).
LTFS11337I Жаңарту индексі ластанған жалауша (0) - NO_BARCODE (0x0x1021081e0).
LTFS11100I a бөліміне белгіні жазу.
LTFS11278I a бөліміне индексті жазу.
LTFS30808I READ_ATTR (0x8c) -20501 қайтарады.
LTFS30865I READ_ATTR CDB ішіндегі жарамсыз өрісті қайтарады (-20501) 0.
LTFS30836I Төлсипатты оқу мүмкін емес (-20501).
LTFS11336I төлсипат жоқ. Күтілетін қатені елемеу.
LTFS17235I NO_BARCODE жазу индексі a (Себебі: Формат, 0 файл) 9068025555.
LTFS17236I NO_BARCODE индексін жазды (a, **********).
LTFS15013I Volume UUID is: 3802a70d-bd9f-47a6-a999-eb74ffa67fc1.

LTFS15019I Көлем сыйымдылығы 1425 ГБ.
LTFS30854I Логикалық блокты қорғау өшірілген.
LTFS15024I ортасы сәтті пішімделді.

Пішімделген таспаны орнатыңыз:

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

Біз тағы бірнеше минуттық диск жұмысы мен диагностикасын аламыз:

307 LTFS14000I LTFS іске қосылуы, LTFS нұсқасы 2.4.2.0 (10418), журнал деңгейі 2.
307 LTFS14058I LTFS пішімінің сипаттамасы 2.4.0 нұсқасы.
307 LTFS14104I «ltfs /Volumes/LTFS/» арқылы іске қосылды.
307 LTFS14105I Бұл екілік Mac OS X үшін құрастырылған.
307 LTFS14106I GCC нұсқасы 4.2.1 үйлесімді Apple Clang 4.1 ((тегтер/Apple/clang-421.11.66)).
307 LTFS17087I ядро ​​нұсқасы: Darwin ядросының 19.4.0 нұсқасы: 4 наурыз 22:28:40 PST 2020 ж.; түбір: xnu-6153.101.6~15/RELEASE_X86_64.
307 LTFS14063I Синхрондау түрі – “уақыт”, Синхрондау уақыты – 60 сек.
307 LTFS17085I плагині: “iokit” таспасының сервері жүктелуде.
307 LTFS17085I плагині: «бірыңғай» iosched сервері жүктелуде.
307 LTFS14095I Картриджді шығаруды болдырмау үшін таспа құрылғысының кез келген жерде жазу режимін орнатыңыз.
307 LTFS30810I Құрылғыны iokit драйвері арқылы ашу (0).
307 LTFS30814I Жеткізуші идентификаторы - IBM.
307 LTFS30815I өнім идентификаторы - "ULT3580-TD5".
307 LTFS30816I Микробағдарлама нұсқасы - H976.
307 LTFS30817I Drive сериясы ********** болып табылады.
307 LTFS17160I Құрылғы блогының максималды өлшемі - 1048576.
307 LTFS11330I Жүктеу картриджі.
307 LTFS30854I Логикалық блокты қорғау өшірілген.
307 LTFS11332I Жүктелді.
307 LTFS17157I Диск параметрін кез келген жерде жазу режиміне өзгерту.
307 LTFS11005I Дыбыс деңгейін орнату.
307 LTFS30854I Логикалық блокты қорғау өшірілген.
307 LTFS17227I Таспа төлсипаты: Жеткізуші = IBM.
307 LTFS17227I Таспа төлсипаты: Қолданба атауы = LTFS.
307 LTFS17227I Таспа төлсипаты: Қолданба нұсқасы = 2.4.2.0.
307 LTFS17227I Таспа төлсипаты: Орташа белгі =.
307 LTFS17228I Таспа төлсипаты: Мәтінді локализациялау идентификаторы = 0x81.
307 LTFS17227I Таспа атрибуты: Штрихкод =.
307 LTFS17227I Tape төлсипаты: Қолданба пішімі нұсқасы = 2.4.0.
307 LTFS17228I Таспа төлсипаты: Көлемді құлыптау күйі = 0x00.
307 LTFS17227I Таспа төлсипаты: Media Pool атауы =.
307 LTFS14111I Бастапқы орнату сәтті аяқталды.
307 LTFS14112I Соңғы орнату нәтижесін тексеру үшін "монтаждау" пәрменін шақырыңыз.
307 LTFS14113I Сәтті орындалса, көрсетілген орнату нүктесі тізімде көрсетіледі.

Міне, жұмыс үстеліндегі Test(ltfs) атты лентамыз! Аты жоқ таспа OSXFUSE Volume 0 (ltfs) деп аталады.

Енді сіз онымен жұмыс істей аласыз.

Apple Mac және сәнді құрылғылар. LTO, SAS, Fiber Channel, eSATA

Тұтастай алғанда, іздеу терезелеріндегі таспалық каталогтардың мазмұнын қарауды шектен тыс пайдаланбаған жөн, өйткені бұл LTFS үшін өте қымбат операция, бірақ терминал командаларымен жұмыс істеу немесе жай ғана қалпына келтіру жақсырақ екенін есте ұстаған жөн. сақтық көшірме каталогын жоғарыдағы терезеде көрсетілгендей таспаға жаппай жіберіңіз.

Айтпақшы, таспа мен диск арасында тиімдірек көшіруге арналған арнайы жазылған ltfs_copy IBM утилитасы және оның клондары бар, бірақ әзірге автор оларды үстірт іздеу арқылы қоғамдық доменде таба алмады.

Мына пәрмен арқылы таспаны ажыратуға болады:

umount /Volumes/LTFS

немесе жай ғана қоқысқа тастаңыз.

Шындығында, табиғатта бұл әрекеттерді жеңілдету үшін macOS үшін қандай да бір графикалық қабықшалар бар, бірақ мұндай бұрмалаулардан кейін терминалда бірнеше жолды теруден қорқу керек пе?

Жанама әсер ретінде біз SAS/4*eSATA кабелі арқылы сыртқы eSATA дискілерін қосу мүмкіндігін аламыз.

Apple Mac және сәнді құрылғылар. LTO, SAS, Fiber Channel, eSATA

Ақпарат көзі: www.habr.com

пікір қалдыру