Apple Mac ve şık cihazlar. LTO, SAS, Fiber Kanal, eSATA

Bu makalenin konusu harici aygıtları Mac'e SAS, Fiber Kanal (FC), eSATA arayüzleri aracılığıyla bağlamaktır. Hemen söyleyelim ki, bu tür cihazlara erişim sorununu sağlıklı bir insan için çözmenin bir yolu var: ucuz bir bilgisayar oluşturun, bir HBA SAS veya FC denetleyici kartı takın (örneğin, basit bir LSI adaptörü), cihazlarınızı ağa bağlayın. Bu denetleyiciyi PC'ye herhangi bir Linux yükleyin ve ağ üzerinden Mac'ten çalışın. Ancak bu banal ve ilgi çekici değil. Zor yola gideceğiz ve cihazlarımızı bağlayacağız doğrudan doğruya Mac'e.

Bunun için ihtiyacımız olan şey:
– yeni ekipman satın almak için makul miktarda para veya eBay'deki açık artırmalarda iyi şanslar (burada, biraz çaba harcayarak önceki nesillerin gerekli ekipmanını liste fiyatından 10 kat daha ucuza satın alabilirsiniz);
- Bu makale.

Manyetik bantla çalışmak için (artık neredeyse evrensel olarak LTO formatında temsil edilmektedir), bir LTO bant sürücünüze (streamer) veya bant kitaplığınıza sahip olmanız gerekir. Bu, ilk satın alma için oldukça pahalı bir cihazdır (yüzbinlerce ruble'den), ancak kullanılmış satın alırken makul miktarda paraya değer. LTO nesilleri yaklaşık iki yılda bir değiştiğinden ve uyumluluk iki nesille sınırlı olduğundan, ikincil pazar, dört yıl veya daha eski, çalışabilir cihazlara oldukça doymuş durumda. sondan önceki ve sonraki nesil. Ticari amaçlarla yeni bir cihaz satın alırsanız, buna neden ihtiyacınız olduğunu kendiniz anlarsınız. Eviniz ve aileniz için satın almak istiyorsanız, bu seçeneği bilgileri arşivlemenin bir yolu olarak değerlendirebilirsiniz (çünkü medyanın kendisi 1 gigabayt başına çok ucuzdur).

LTO-5 neslinden (ve kısmen LTO-4) başlayarak, manyetik bantla çalışan cihazlar donanım olarak bir SAS veya FC arayüzü aracılığıyla bilgisayara bağlanır (genellikle her cihazın iki sürümü vardır)

Öte yandan, Apple bize Mac'imizde bir USB-C arabirimi (USB, Thunderbolt 3 veya DisplayPort protokollerini kullanarak çalışan), bazen bir Ethernet arabiriminin yanı sıra özel Thunderbolt 3 - Thunderbolt 2 ve Thunderbolt - FireWire 800 sağlar. adaptörler.

Çıkmaz mı? Tam olarak değil. Neyse ki Thunderbolt, PCIe modunda çalışabilir ve PCIe kartlarının, sanki doğrudan bilgisayar kasasının içine takılmış gibi bağlanmasına olanak tanır. Bu nedenle, uygun bir adaptör ve sürücülerin olması koşuluyla Mac donanım yapılandırmasının herhangi bir şekilde genişletilmesi mümkündür.

Kavramsal olarak, sorunu çözmenin en basit yolu, içine SAS veya FC Ana Bilgisayar veri yolu bağdaştırıcısını (HBA) takabileceğiniz Thunderbolt arabirimine (PCIe kart genişletme sistemi) sahip PCIe bağdaştırıcıları için harici bir kutudur. Örneğin bu tür kutular şirket tarafından üretilmektedir. Sone ve diğerleri. Burada bir nüans var: Her denetleyici bizim için uygun değil, yalnızca macOS için sürücüsü olan bir denetleyici bizim için uygun. Bu tür kartlardan yalnızca birkaçı vardır ve en ucuz ve en popüler olanlar (örneğin, aynı LSI) sayılarına dahil değildir. Neyse ki Sonnet derleme zahmetine girdi uyumluluk tablosu Thunderbolt arayüzü aracılığıyla çeşitli işletim sistemlerine sahip PCIe kartları.

Başka bir çözüm, aslında bir kutu ve denetleyicinin hazır bir montajı olan hazır bir Thunderbolt - SAS veya Thunderbolt - FC arayüz dönüştürücüsü satın almaktır. Bu alandaki en ünlü şirket ATTO, ancak başka firmaların ürünleri de var.

Bu başlı başına maliyetli olduğundan tüm SAS ve FC denetleyicilerinin LTO standardına uygunluk sertifikasına sahip olmadığını unutmayın. Bazı üreticiler doğrudan denetleyicilerinin teyp sürücüleriyle çalışacak şekilde tasarlanmadığını yazıyor.

Resmi tamamlamak için mLogic'in şunu ürettiğini not ediyoruz: устройствоSAS'tan Thunderbolt 8'e dönüştürücünün hemen entegre edildiği, harici bir kasadaki bir IBM LTO-3 sürücüsü olan . Ancak bu, özellikle bölgemizin standartlarına göre yukarıda açıklanan her şeyden çok daha egzotik bir şeydir. Bu cihazın Rusya'ya yasal olarak ithal edilebileceğinden bile şüpheliyim (LTO sürücüleri kriptografik özellikler içeriyor ve IBM ve HP gibi üreticiler bu nedenle her model için FSB ithalat izni alıyor).

Daha sonra, örnek olarak, yazarın birkaç başarılı satın alma sonucunda sahibi olduğu belirli bir ekipman setini ele alacağız, ancak tüm seçenekler için genel prensip korunmalıdır.

Yani bantla çalışmak için aşağıdaki donanıma sahibiz:
– macOS 2018 Catalina yüklü, Thunderbolt 10.15 destekli USB-C bağlantı noktalarına sahip Apple Mac mini 3 bilgisayar;
– Apple Thunderbolt 3 / Thunderbolt 2 adaptörü;
– Apple Thunderbolt 2 kablosu;
– ATTO ThunderLink SH 1068 arayüz dönüştürücü (2*Thunderbolt / 2*SAS-2);
– SAS kablosu SFF-8088 – SFF-8088;
– teyp sürücüsü LTO-5 IBM TS2350;
– LTO-5 kartuşları, temizleme kartuşu.

Şimdi dedikleri gibi, tüm bu şeylerle yola çıkmaya çalışacağız.

ATTO web sitesinden ThunderLink SH 1068 sürücüsünün en son sürümünü indiriyoruz (görünüşe göre, kolaylık sağlamak için SH 2068 sürücüsü ile birleştirilmiştir ve yalnızca sürücüyle birlikte arşivin içinde yazılan 2068 bölümünde yer almaktadır) ve ATTO yapılandırma yardımcı programı.

Apple Mac ve şık cihazlar. LTO, SAS, Fiber Kanal, eSATA

Sürücünün elbette kuruluma ihtiyacı var. Bu tür işlemlerden önce yazar, komutla her zaman önyükleme diskinin APFS dosya sisteminin anlık görüntüsünü almanızı önerir.

tmutil localsnapshot

veya HFS+ varsa, önyükleme diskinin yedek kopyası. Asla bilemezsin. Daha sonra anlık görüntüden geri dönmek kolay olacaktır.

Daha sonra, deneyimsiz ancak durum tespiti yapan zihin, şüphesiz ATTO sürücü kurulum talimatlarını dikkatlice okumaya ve bunları takip etmeye meyilli olacaktır. Sonuç olarak - tadam! – yükleme aşamasında asılı kalan bir işletim sistemi elde ediyoruz. Burada Time Machine'i kurtarma bölümünden çağırarak kurtarabileceğimiz bir anlık görüntüye ihtiyacımız olabilir veya aynı kurtarma bölümünden hastalıklı kext'i çekirdek uzantıları dizininden manuel olarak silebiliriz (yazar genellikle bunu yapmanızı önermez).

Bu neden oluyor? Çünkü Apple bizimle ilgilendi. MacOS'un son sürümlerinde, yabancı kodu önyükleme işlemine kolayca ekleyemezsiniz. İyi Apple programcıları bu yıkıcı davranışı engellediler. Daha doğrusu, sürücünün beklentisi gerçekleştiğinde onu yarıya kadar engellediler, ancak sürücünün kendisi öyle değil, bu yüzden her şey donuyor.

Gelişmiş bir zihin, bir sürücüyü yüklemeden önce ne yapmalıdır? İlk önce şu komutu verin:

csrutil status

Buna yanıt olarak şunları alırsak:

Sistem Bütünlüğü Koruma durumu: etkin.

o zaman bu, iyi Apple programcılarının bizi önemsediği anlamına gelir; bu nedenle, onların harika korumasını devre dışı bırakana kadar hiçbir şey bizim için işe yaramayacak. Bunu yapmak için kurtarma bölümünü (⌘R) yeniden başlatın, terminali arayın ve şu komutu verin:

csrutil disable

Bundan sonra, çalışma sistemini yeniden başlatıyoruz ve ancak daha sonra sürücüyü ve aynı zamanda ATTO yapılandırma yardımcı programını yüklüyoruz (prensip olarak, yapılandırma yardımcı programı yalnızca teşhis için gereklidir ve normal çalışma sırasında gerekli değildir). Yol boyunca sorulduğunda sistem ayarlarında ATTO yetkilendirmesini onaylıyoruz. Kurulumdan sonra kurtarma bölümünü yeniden başlatabilir ve komutu verebilirsiniz.

csrutil enable

Apple yine bizimle ilgileniyor.

Artık harici SAS aygıtlarına (veya FC dönüştürücü kullanıldıysa FC'ye) yönelik sürücü destekli bir arabirimimiz var. Peki bantla mantıksal düzeyde nasıl çalışılır?

Deneyimsiz ama bilgili aklın bildiği gibi, Unix uyumlu herhangi bir sistem, çekirdek düzeyinde teyp sürücülerini ve öncelikle mt (teyp yönetimi) ve tar (teyp üzerindeki arşivlerle çalışmayı destekleyen arşivleyici) içeren temel sistem yardımcı programlarını destekler. Ancak gelişmiş bir zihin bu konuda ne söyleyebilir? Unix uyumlu herhangi bir sistem, macOS hariç. Apple, kodundan teyp aygıtları desteğini kaldırarak bizimle ilgilendi.

Ancak standart açık kaynaklı Unix yardımcı programlarını macOS'a taşıyarak bu kodu döndürmek gerçekten imkansız mı? İyi haber şu ki Tolis (ki bağlantı vermiyorum) bunu Tolis Tape Tools adlı ürününde zaten yapmış. Kötü haber şu ki, söz konusu şirketin çalışmalarının sonuçlarını kullanmanın maliyeti 399 dolar. Bu gerçeğe ilişkin tahminler farklılık gösterebilir, ancak yazar şahsen, çoğunlukla tamamen farklı kişiler tarafından yazılan ve 400'lerden beri açık kullanımda olan bir kod için birine 1970 dolar ödemeye hazır değil ve bu nedenle yazar bu soruyu kendisi için soruyor. kapalı sayılır. (Bu arada Github'da belirsiz bir durumda terk edilmiş ücretsiz bir proje var IOSCSITape aynı konu hakkında).

Neyse ki dünyada ticari iştahları tamamen farklı ölçekte olan ve bu nedenle her küçük şeyde kendini göstermeyen IBM şirketi var. Özellikle macOS için de dağıtılan açık kaynaklı LTFS bant dosya sistemini geliştirdi.

Buradaki uyarı, farklı teyp cihazı üreticilerinin, cihazlarını desteklemek için kendi LTFS sürümlerini yayınlamalarıdır. Yazar bir IBM teyp sürücüsü kullandığından LTFS'yi IBM'den yükledi. Üçüncü taraf sürücülerin kendi LTFS bağlantı noktalarına ihtiyacı olabilir. Ayrıca Github ve Homebrew'da openLTFS'nin evrensel bir uygulaması var.

LTFS'nin medya bölümleme işlevini kullanması ve dolayısıyla LTO-5 neslinden itibaren cihaz ve kartuşlarla çalışabilmesi bizim için önemlidir.

Bu nedenle, bizim durumumuzda, LTFS uygulamasını içeren IBM web sitesinden macOS için IBM Spectrum Archive Single Drive Edition'ı indiriyoruz. Hiçbir macera yaşamadan ürünü kendi kurulum aracını kullanarak kuruyoruz. Yol boyunca FUSE paketini de yükler ve sistem ayarlarında, bu durumda tüm IBM'in bağlı olduğu Anatol Pomozov adlı akıllı programcının yetkisini onaylaması gerekecektir. Bu adama saygı ve hürmet.

Satırı hemen /Library/Frameworks/LTFS.framework/Versions/Current/etc/ltfs.conf.local dosyasına yazmanız önerilir:

seçenek tek sürücülü senkronizasyon_tipi=time@1

bu, bandın varsayılan olarak takıldığını ve kayıt arabelleğinin 1 dakikalık işlem yapılmaması durumunda sıfırlandığını belirtir (varsayılan 5 dakikadır).

Apple Mac ve şık cihazlar. LTO, SAS, Fiber Kanal, eSATA

Sonunda her şey bağlanmaya hazır. Zinciri bağlıyoruz: Mac – T3/T2 adaptörü – Thunderbolt kablosu – ATTO dönüştürücü – SAS kablosu – teyp sürücüsü (Mac'te birkaç bağlantı noktası, dönüştürücü ve sürücü seçimi önemli değildir). Dönüştürücünün gücünü açın. Teyp sürücüsünün gücünü açın. Göstergeye göre sürücünün başlatma işlemini tamamlamasını bekliyoruz.

Komutu veriyoruz:

ltfs -o device_list

Yaşasın! (Her zamanki IBM tanılama yöntemiyle) şunu elde ederiz:

307 LTFS14000I LTFS başlangıç, LTFS sürüm 2.4.2.0 (10418), günlük düzeyi 2.
307 LTFS14058I LTFS Format Belirtimi sürüm 2.4.0.
307 LTFS14104I "ltfs -o devices_list" tarafından başlatıldı.
307 LTFS14105I Bu ikili Mac OS X için oluşturulmuştur.
307 LTFS14106I GCC sürümü 4.2.1 Uyumlu Apple Clang 4.1'dir ((tags/Apple/clang-421.11.66)).
307 LTFS17087I Çekirdek sürümü: Darwin Çekirdek Sürümü 19.4.0: 4 Mart Çarşamba 22:28:40 PST 2020; kök:xnu-6153.101.6~15/RELEASE_X86_64.
307 LTFS17085I Eklentisi: “iokit” bant arka ucu yükleniyor.
Teyp Aygıtı listesi:.
Aygıt Adı = 0, Satıcı Kimliği = IBM, Ürün Kimliği = ULT3580-TD5, Seri Numarası = **********, Ürün Adı = [ULT3580-TD5].

Kaseti takın, yüklenmesini bekleyin ve biçimlendirin:

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

Burada -d parametresi sürücü numarasını belirtir (tek sürücü ise her zaman sıfırdır, ancak bu komutta atlanamaz), -n bant adıdır (bunu atlayabilirsiniz) ve -r parametresi içeriğin yerleştirilmesini gerektirir Boyutu 10 megabaytı aşmayan .DS_Store dosyalarının veri bölümü yerine bandın dizin (yani dizinler için tasarlanmış) bölümünde yer alması.

Teyp sürücüsünde gizemli yaşam başladı. Birkaç dakika bekleriz ve aşağıdaki yanıtı alırız:

LTFS15000I mkltfs başlatılıyor, LTFS sürüm 2.4.2.0 (10418), günlük düzeyi 2.
LTFS15041I "mkltfs -d 0 -nTest -r size=10M/name=.DS_Store" tarafından başlatıldı.
LTFS15042I Bu ikili Mac OS X için oluşturulmuştur.
LTFS15043I GCC sürümü 4.2.1 Uyumlu Apple Clang 4.1'dir ((tags/Apple/clang-421.11.66)).
LTFS17087I Çekirdek sürümü: Darwin Çekirdek Sürümü 19.4.0: 4 Mart Çarşamba 22:28:40 PST 2020; kök:xnu-6153.101.6~15/RELEASE_X86_64.
LTFS15003I Biçimlendirme aygıtı '0'.
LTFS15004I LTFS birimi blok boyutu: 524288.
LTFS15005I Dizin bölümü yerleştirme politikası: boyut=10M/name=.DS_Store.

LTFS11337I Dizin kirli işaretini güncelle (1) - NO_BARCODE (0x0x1021081e0).
LTFS17085I Eklentisi: “iokit” bant arka ucu yükleniyor.
LTFS30810I Bir aygıtın iokit sürücüsü (0) aracılığıyla açılması.
LTFS30814I Satıcı Kimliği IBM'dir.
LTFS30815I Ürün Kimliği: 'ULT3580-TD5'.
LTFS30816I Firmware revizyonu H976'dır.
LTFS30817I Sürücü serisi **********.
LTFS17160I Maksimum cihaz blok boyutu 1048576'dır.
LTFS11330I Kartuş yükleniyor.
LTFS30854I Mantıksal blok koruması devre dışı.
LTFS11332I Yükleme başarılı.
LTFS17157I Sürücü ayarını herhangi bir yere yaz moduna değiştirme.
LTFS15049I Ortam (bağlantı) kontrol ediliyor.
LTFS30854I Mantıksal blok koruması devre dışı.
LTFS15010I SCSI bölümü 1'de veri bölümü b oluşturuluyor.
LTFS15011I SCSI bölümü 0'da dizin bölümü a oluşturuluyor.
LTFS17165I Ortamın kapasite oranı sıfırlanıyor.
LTFS11097I Ortamı bölümlendirme.
LTFS11100I Bölüme etiket yazma b.
LTFS11278I Bölüme dizin yazma b.
LTFS30808I READ_ATTR (0x8c), -20501 değerini döndürür.
LTFS30865I READ_ATTR, CDB'deki (-20501) 0 Geçersiz Alanı döndürür.
LTFS30836I Öznitelik okunamıyor (-20501).
LTFS11336I Öznitelik mevcut değil. Beklenen hatayı dikkate almayın.
LTFS17235I NO_BARCODE dizini b'ye yazılıyor (Neden: Format, 0 dosya) **********.
LTFS17236I NO_BARCODE (b, **********) dizinini yazdı.
LTFS11337I Dizin kirli işaretini güncelle (0) - NO_BARCODE (0x0x1021081e0).
LTFS11100I Bölüme etiket yazma a.
LTFS11278I a bölümüne dizin yazılıyor.
LTFS30808I READ_ATTR (0x8c), -20501 değerini döndürür.
LTFS30865I READ_ATTR, CDB'deki (-20501) 0 Geçersiz Alanı döndürür.
LTFS30836I Öznitelik okunamıyor (-20501).
LTFS11336I Öznitelik mevcut değil. Beklenen hatayı dikkate almayın.
LTFS17235I NO_BARCODE dizini (Neden: Format, 0 dosya) 9068025555'e yazılıyor.
LTFS17236I NO_BARCODE (a, **********) dizinini yazdı.
LTFS15013I Volume UUID is: 3802a70d-bd9f-47a6-a999-eb74ffa67fc1.

LTFS15019I Birim kapasitesi 1425 GB'dir.
LTFS30854I Mantıksal blok koruması devre dışı.
LTFS15024I Ortamı başarıyla biçimlendirildi.

Biçimlendirilmiş bandı takın:

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

Birkaç dakika daha sürücü çalıştırma ve teşhis imkanımız var:

307 LTFS14000I LTFS başlangıç, LTFS sürüm 2.4.2.0 (10418), günlük düzeyi 2.
307 LTFS14058I LTFS Format Belirtimi sürüm 2.4.0.
307 LTFS14104I “ltfs /Volumes/LTFS/” tarafından başlatıldı.
307 LTFS14105I Bu ikili Mac OS X için oluşturulmuştur.
307 LTFS14106I GCC sürümü 4.2.1 Uyumlu Apple Clang 4.1'dir ((tags/Apple/clang-421.11.66)).
307 LTFS17087I Çekirdek sürümü: Darwin Çekirdek Sürümü 19.4.0: 4 Mart Çarşamba 22:28:40 PST 2020; kök:xnu-6153.101.6~15/RELEASE_X86_64.
307 LTFS14063I Senkronizasyon türü “zaman”, Senkronizasyon süresi 60 saniyedir.
307 LTFS17085I Eklentisi: “iokit” bant arka ucu yükleniyor.
307 LTFS17085I Eklentisi: "Birleşik" iosched arka uç yükleniyor.
307 LTFS14095I Kartuşun fırlamasını önlemek için teyp aygıtını herhangi bir yere yazma moduna ayarlayın.
307 LTFS30810I Bir aygıtı iokit sürücüsü (0) aracılığıyla açma.
307 LTFS30814I Satıcı Kimliği IBM'dir.
307 LTFS30815I Ürün Kimliği: 'ULT3580-TD5'.
307 LTFS30816I Firmware revizyonu H976'dır.
307 LTFS30817I Sürücü seri numarası **********.
307 LTFS17160I Maksimum cihaz bloğu boyutu 1048576'dır.
307 LTFS11330I Kartuş yükleniyor.
307 LTFS30854I Mantıksal blok koruması devre dışı.
307 LTFS11332I Yükleme başarılı.
307 LTFS17157I Sürücü ayarını herhangi bir yere yaz moduna değiştirme.
307 LTFS11005I Birimin montajı.
307 LTFS30854I Mantıksal blok koruması devre dışı.
307 LTFS17227I Bant özelliği: Satıcı = IBM.
307 LTFS17227I Bant özelliği: Uygulama Adı = LTFS.
307 LTFS17227I Bant özelliği: Uygulama Sürümü = 2.4.2.0.
307 LTFS17227I Bant özelliği: Orta Etiket =.
307 LTFS17228I Bant özelliği: Metin Yerelleştirme Kimliği = 0x81.
307 LTFS17227I Bant özelliği: Barkod =.
307 LTFS17227I Bant özelliği: Uygulama Formatı Sürümü = 2.4.0.
307 LTFS17228I Bant özelliği: Ses Kilidi Durumu = 0x00.
307 LTFS17227I Bant özelliği: Medya Havuzu adı =.
307 LTFS14111I İlk kurulum başarıyla tamamlandı.
307 LTFS14112I Son kurulumun sonucunu kontrol etmek için 'mount' komutunu çağırın.
307 LTFS14113I Başarılı olursa belirtilen bağlama noktası listelenir.

Ve işte burada, masaüstündeki Test(ltfs) adlı şeridimiz! Adsız bant OSXFUSE Cilt 0 (ltfs) olarak adlandırılacaktır.

Artık onunla çalışabilirsiniz.

Apple Mac ve şık cihazlar. LTO, SAS, Fiber Kanal, eSATA

Genel olarak, LTFS için inanılmaz derecede pahalı bir işlem olduğundan, bant dizinlerinin içeriğini bulucu pencerelerinde aşırı kullanmamanızın tavsiye edildiğini aklınızda bulundurmanız gerekir, ancak terminal komutlarıyla çalışmak veya basitçe sıfırlamak daha iyidir Yukarıdaki pencerede gösterildiği gibi yedekleme dizinini toplu olarak teybe kopyalayın.

Bu arada, bant ve disk arasında daha verimli kopyalama için tasarlanmış özel olarak yazılmış bir IBM yardımcı programı ltfs_copy ve onun klonları var, ancak şu ana kadar yazar bunları yüzeysel bir aramayla kamuya açık alanda bulamadı.

Bandı şu komutla kaldırabilirsiniz:

umount /Volumes/LTFS

ya da sadece çöp kutusuna atın.

Aslında doğada macOS için bu eylemleri kolaylaştıracak bir tür grafik kabuklar var ancak bu tür sapkınlıklardan sonra terminalde birkaç satır yazmaktan korkmalı mıyız?

Bir yan etki olarak, harici eSATA sürücülerini SAS/4*eSATA kablosuyla bağlama fırsatına sahip oluyoruz.

Apple Mac ve şık cihazlar. LTO, SAS, Fiber Kanal, eSATA

Kaynak: habr.com

Yorum ekle