Symlink
Linux 查找並刪除與目錄相關的所有符號連結
所以,我有一種情況,我創建了許多符號連結以試圖讓它們工作,嘗試各種組合..現在我有這個錯誤:
ls: cannot access /etc/sv/me: Too many levels of symbolic links
/service/ 或 /etc/sv/ 中沒有符號連結
我能找到解決此錯誤的唯一方法是刪除與 /service/ 或 /etc/sv/ 相關的所有符號連結,但我什至看不到符號連結?
您可以通過一些技巧來辨識循環符號連結
find
,試試這個:find /path/to/search -type l -a ! \( -xtype b -o -xtype c -o -xtype d -o -xtype p -o -xtype f -o -xtype s -o -xtype l \) 2>/dev/null
這通過過濾符號連結來工作,然後排除符號連結目標類型是任何可能的 inode 類型的任何內容。剩下的唯一事情是那些
find
無法確定目標類型的事情,這只發生在循環符號連結(損壞的匹配-xtype l
)
符號連結不會表現出“遠距離動作”——作為符號連結的目標永遠不會直接影響目標。
您看到的錯誤表明
/etc
, or/etc/sv
, or/etc/sv/me
是一個符號連結。找出它是哪一個並修復它。