우선, 모두 새해 복 많이 받으세요! 저는 UNIX\Linux를 처음 접했고 실수로 다음 심볼릭 링크를 만들었습니다.
sudo ln -s /etc/phpmyadmin/apache.conf /etc/apache2/conf-enabled/phpmyadmin.confservice
올바른 방법은 무엇입니까삭제그것은 무엇이며 그 뒤에 있는 논리는 무엇입니까? :
unlink ***something***
폴더 내에서 명령을 실행 한 다음 해당 폴더로 이동 해야 한다는 것을 알고 있습니다 /etc/apache2/conf-enabled/
. 그래서 다음과 같이 묻습니다.
삭제 작업이 두 번째 경로를 기반으로 하고 첫 번째 경로에서는 수행되지 않는 이유는 무엇입니까...?
일반적으로 파일명 외에 따로 작성해야 할 사항이 있나요?
- 피해를 입힐까봐 이렇게 물어봅니다...
답변1
에서 man rm
:
rm 유틸리티는 링크에서 참조하는 파일이 아닌 기호 링크를 제거합니다.
그러니 그냥 하세요 rm /etc/apache2/conf-enabled/phpmyadmin.confservice
.
man
질문하기 전에 일반적인 조언과 마찬가지로 유틸리티를 사용하는 방법을 배워야 합니다 . 이렇게 하면 시간이 절약되고 많은 것을 배울 수 있습니다.
피해를 입힐까봐 이렇게 물어봅니다...
저는 이 느낌을 확실히 이해합니다. 또한 제가 잘 이해하지 못하는 새로운 일을 할 때도 마찬가지입니다! 해결책은 사용할 수 있는 테스트 파일을 만드는 것입니다. 실제로 일부 명령에는 실제로 실행하지 않고도 수행할 단계를 표시하는 "모의 실행" 옵션도 있습니다.
일반적으로 파일명 외에 따로 작성해야 할 사항이 있나요?
--- 심볼릭 링크에 어디에 기록되어 있나요? 실제로 심볼릭 링크에는 자신이 가리키는 파일의 경로(텍스트 형식)만 포함됩니다. 다음을 수행하여 심볼릭 링크의 내용을 인쇄할 수 있습니다 readlink my_link
.
답변2
심볼릭 링크는 일반적으로 다음과 같이 생성됩니다(페이지에서 man
).
ln -s target link_name
여기서는 target
기존 엔터티(예: 파일 또는 디렉터리)이고 link_name
대상 파일에 대한 (기호적) 링크(포인터 또는 바로가기라고 부를 수 있는 경우)의 이름입니다.
귀하의 경우 /etc/phpmyadmin/apache.conf
대상은 PHP용 구성 파일처럼 보입니다. 오히려 이는 /etc/apache2/conf-enabled/phpmyadmin.confservice
생성 중인 심볼릭 링크입니다.
삭제 문제에 대해 말하면 일반적 link_name
으로 제공된 두 번째 경로는 삭제되지만 ln
삭제되지는 않습니다 target
. 그렇게 하면 원래 링크된 파일이 유지되며 생성된 새 이름이 "링크 해제"됩니다. 귀하의 경우 삭제하면 /etc/apache2/conf-enabled/phpmyadmin.confservice
원래 프로필이 유지됩니다 /etc/phpmyadmin/apache.conf
. 필요한 경우 관련 대상을 가리키는 또 다른 심볼릭 링크를 만들 수 있습니다.
마지막으로 심볼릭 링크를 생성한 후 삭제하면 target
"깨진 링크"가 형성됩니다. 이렇게 하면 ls -l
심볼릭 링크가 빨간색으로 강조 표시됩니다. 심볼릭 링크를 삭제하는 목적은 금지된 작업과 완전히 다르다는 점에 유의하세요. 이는 단지 일반적인 사용 사례가 아닙니다.
답변3
자세한 내용을 보려면 댓글에 있는 링크를 따르세요. 하지만 질문에 대한 짧은 대답은 심볼릭 링크가 다른 항목에 대한 바로가기와 같다는 것입니다. (두 번째 방법여기에 심볼릭 링크가 있습니다)
그러니 바로가기를 삭제해도 원본에는 아무런 피해가 가지 않습니다.
바로가기 이름은 원하는 대로 지정할 수 있습니다.