Devices
沒有這樣的設備或地址
如果我在 期間收到此消息是什麼意思
scp
?scp: /dev/fd/3/fd/3/fd/3/fd/3/fd/3/fd/3/fd/3/fd/3/fd/3/fd/3/fd/3/fd/3/fd/5/31/rd/c6d16: No such device or address
我正在做的是
scp -r root@192.168.x.xx:/* .
在遠端執行遞歸的程序以超級使用者身份執行,並已遞歸到
/dev/fd
. 它的幾個打開文件描述符用於作為遞歸的一部分正在讀取的目錄。由於它們在遍歷時看起來像子目錄,因此/dev/fd
再次遞歸它們。甚至可以確定哪些打開的文件描述符對哪些目錄打開:
- 文件描述符 #3 對
/
- 文件描述符 #5 對
/dev/fd
- 文件描述符 #31 對
/dev
它通過漫長而迂迴的路線到達了它試圖打開和複製的點
/dev/rd/c6d16
,這與物理設備不對應。始終小心命令,尤其是那些以超級使用者權限執行的命令,這些命令最終會嘗試天真地打開和複製
/dev
、/device
、/proc
、/sys
等中的所有文件。自從充滿磁帶設備(有時帶有自動倒帶/自動重放功能)和終端設備的日子以來,這一直是不明智的,這些/dev
設備會阻止打開的呼叫,直到檢測到運營商。確保如果你真的想複製
/dev
(很可能你不會考慮到在現代作業系統上它的內容是在執行時動態確定的),你使用一個命令來複製特殊的設備文件、FIFO、套接字和符號連結本身,而不是而不是天真地試圖打開和閱讀它們,就好像它們是普通文件一樣。(或者open()
他們然後fstat()
確定它們是否是特殊設備,這將在產生錯誤的設備文件上失敗open()
。)