Unix
複製磁帶設備文件
我剛剛在機器之間交換了磁帶驅動器(都是 Unix Tru64)。設備文件現在不起作用,我必須對它們做一些工作(會產生不同的問題)。我創建了一個目錄來儲存舊設備文件,但是 cp 命令將它們視為設備文件,並且不會讓我複制它們。
如何將設備文件作為文本複製到另一個目錄?
停止。
在您完全了解什麼是設備特殊文件、它們對作業系統的意義以及它們是如何創建/管理的之前,不要再做任何事情。(提示:
mknod
——這可能也會幫助您解決其他問題)簡而言之,設備文件是用於向設備驅動程序發送命令/數據並從其接收資訊的介面。
它不是包含要以通常方式複制、移動或以其他方式操作的數據的正常文件。
隨著您對什麼是設備文件的新了解,應該清楚您不能簡單地“將設備文件作為文本複製到另一個目錄”——這不是它們的工作方式。
如果您確實複製了一個設備文件,那麼您只是複制了一個指向驅動程序的指針:更換磁帶,數據將有所不同。
因此複製“磁帶設備文件”的內容是沒有意義的——你想要的是從磁帶上複製數據。為此,您需要向磁帶設備發送命令以提供其所有數據,然後將其作為正常文件儲存在其他地方。
tar
or命令在cpio
這裡很有用,但還有其他選項。