Symlink

Linux 查找並刪除與目錄相關的所有符號連結

  • December 7, 2018

所以,我有一種情況,我創建了許多符號連結以試圖讓它們工作,嘗試各種組合..現在我有這個錯誤:

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是一個符號連結。找出它是哪一個並修復它。

引用自:https://unix.stackexchange.com/questions/35771