그래서 나는 많은 심볼릭 링크를 만들어 작동시키려고 노력하고 다양한 조합을 시도하는 상황에 처해 있습니다. 이제 다음 오류가 발생합니다.
ls: cannot access /etc/sv/me: Too many levels of symbolic links
/service/ 또는 /etc/sv/에 심볼릭 링크가 없습니다.
이 오류를 해결할 수 있는 유일한 방법은 /service/ 또는 /etc/sv/와 관련된 모든 심볼릭 링크를 제거하는 것입니다. 그런데 심볼릭 링크도 보이지 않습니까?
답변1
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
).
답변2
심볼릭 링크는 "원거리에서의 작업"을 나타내지 않습니다. 심볼릭 링크의 대상은 대상에 직접 영향을 미치지 않습니다.
표시되는 오류 /etc
는 또는 /etc/sv
가 /etc/sv/me
심볼릭 링크임을 나타냅니다. 어느 것인지 알아내고 수정하세요.
답변3
를 실행할 때 -l
대문자 대신 소문자(대시 ell)를 사용해 보십시오.-L
ls