我刚刚安装了一个 Exabyte 磁带驱动器:
$ lsscsi -g
[11:0:0:0] process Marvell 91xx Config 1.01 - /dev/sg0
[12:0:1:0] cd/dvd TOSHIBA CD-ROM XM-3401TA 0283 /dev/sr0 /dev/sg1
[12:0:5:0] tape EXABYTE EXB-8500-85Qanx0 046G /dev/st0 /dev/sg2
[N:1:4:1] disk Samsung SSD 970 EVO 250GB__1 /dev/nvme1n1
[N:0:4:1] disk Samsung SSD 970 EVO 250GB__1 /dev/nvme0n1
$ /usr/sbin/tapeinfo -f /dev/sg2
Product Type: Tape Drive
Vendor ID: 'EXABYTE '
Product ID: 'EXB-8500-85Qanx0'
Revision: '046G'
Attached Changer API: No
SerialNumber: '02541381 '
MinBlock: 1
MaxBlock: 245760
SCSI ID: 5
SCSI LUN: 0
Ready: …
Run Code Online (Sandbox Code Playgroud) 我的 Unix 可执行文件的工作是执行长时间的计算,我为它添加了一个中断/恢复功能,如下所述。
程序会定期将迄今为止找到的所有相关数据写入检查点文件,然后可以将其用作“恢复”操作的起点。
要中断程序,我使用Ctrl+ C。
这种方法的唯一问题是,如果在程序写入文件时发生中断,我会留下一个无用的半写入文件。
到目前为止我能找到的唯一修复如下:
有没有更干净、更好的方法来创建“可中断”的 Unix 可执行文件?