Bagaimana saya bisa menentukan berapa banyak ruang yang tersisa pada pita KPP?
Jika saya mencari sampai akhir dan memeriksa status, saya bisa melihat saya di file nomor 17, tetapi yang saya tidak tahu adalah seberapa besar setiap file itu.
$ mt -f /dev/nst1 eod
$ mt -f /dev/nst1 status
SCSI 2 tape drive:
File number=17, block number=0, partition=0.
Tape block size 0 bytes. Density code 0x44 (LTO-3).
Soft error count since last status=0
General status bits on (81010000):
EOF ONLINE IM_REP_EN
Pendek membaca seluruh strip, bagaimana saya bisa menentukan kapasitas kaset yang digunakan / bebas?
Jawaban:
Jika Anda memiliki drive * yang kompatibel dengan HP (referensi saya di sini adalah drive Tandberg Data HH LTO 4), maka Anda dapat menemukan kapasitas tape yang tersisa dalam log SCSI, bersama dengan banyak tidbits menarik lainnya seperti rasio kompresi, baca / tulis kegagalan, riwayat drive / tape, dll.
sg_logs -a /dev/nst1
Utilitas ini tersedia dalam paket distro yang biasa disebut
sg3-utils
atausg3_utils
.Anda mencari garis seperti:
Main partition remaining capacity (in MiB)
Megabytes written to tape
(kurangi dari kapasitas yang tidak terkompresi)Data bytes written to media by WRITE commands
(kurangi dari kapasitas yang tidak terkompresi)Jika gagal, Anda dapat mencoba alat khusus vendor. Misalnya, HP memiliki HPE Library & Tape Tools , yang berfungsi pada semua drive * yang kompatibel dengan HP. Terkubur dalam menu-nya, Anda dapat menemukan kemampuan untuk membuat dan melihat laporan drive yang menawarkan semua info yang ditemukan
sg_logs
dan banyak lagi.Dan jika gagal, Anda bisa menulis data yang tidak dapat dimampatkan hingga akhir rekaman dan menghitung matematika pada blok yang ditulis untuk mengetahui apa yang tersisa (tanpa perlu mengatakan ini agak jahat):
dd if=/dev/urandom of=/dev/nst1 bs=1M status=progress iflag=fullblock
atau
openssl enc -aes-256-ctr -pass pass:"$(dd if=/dev/urandom bs=128 count=1 2>/dev/null | base64)" -nosalt < /dev/zero | dd of=/dev/nst1 bs=1M status=progress iflag=fullblock
* Sepanjang pengetahuan saya, semua drive kecuali IBM dan mungkin Dell berasal dari OEM yang sama dan kompatibel dengan alat HP / HPE.
Saya telah menggunakan
nst1
seluruh jawaban ini karena itu adalah perangkat dalam pertanyaan awal, perbarui seperlunya.sumber
Pertama-tama: ini tidak akan mudah.
Ada chip di dalam tape cartridge yang menawarkan berbagai informasi. Chip itu disebut MAM (media auxiliary memory). Informasi dapat dibaca menggunakan perintah SCSI "BACA ATTRIBUT" pada tape drive saat kaset dimuat. Salah satu atribut adalah "KAPASITAS SISA DALAM PARTISI". Ini berisi jumlah byte yang dapat ditulis ke partisi rekaman saat ini. Yang mengarah pada pertanyaan: apa itu partisi tape? Kaset LTO versi terbaru (LTO 5 dan yang lebih baru) dapat dipartisi (LTFS menggunakan dua partisi).
Jika rekaman Anda dipartisi, masing-masing partisi Anda akan memiliki sejumlah ruang kosong dan Anda harus mengulang semua partisi untuk mendapatkan informasi ruang kosong setiap partisi.
Jika Anda ingin tahu lebih banyak tentang MAM, lihat Referensi IBM LTO-8 SCSI yang menjelaskan ini secara terperinci (bagian 6.5 mulai dari halaman 355 berisi hal-hal menarik). Jika Anda memerlukan titik awal tentang cara menerapkan ini, mungkin Anda harus melihat maminfo atau masalah ini di pelacak masalah sg3_utils .
Saya tidak yakin informasi ini diperbarui segera setelah menulis ke rekaman itu. Mungkin itu hanya pembaruan di unmount yang akan membuat pengambilan informasi yang akurat menjadi lebih sulit. Saya juga tidak yakin bagaimana ini berperilaku ketika Anda menimpa rekaman itu. Anda mungkin harus memikirkannya sendiri.
sumber
Saya tidak yakin tapi mungkin saya bisa menawarkan Anda untuk menggunakan perangkat lunak IBM ITDT, ia memiliki banyak kemampuan untuk dilakukan di perpustakaan tape dan kaset lto, mungkin Anda dapat melihat-lihat perangkat lunak itu, ia memiliki kemampuan seperti Ambil dan menampilkan kartrid informasi penggunaan dan kesehatan.
sumber