예를 들어 Red Hat Enterprise Linux 7.2에는
/etc/rc.d/init.d/rabbitmq-server
/etc/logrotate.d/rabbitmq-server
/usr/sbin/rabbitmq-server
/usr/lib/ocf/resource.d/rabbitmq/rabbitmq-server
4개 이상 rabbitmq-server
(실제로는 2개 더 있음), 같은 것인가요? 즉, 시작하고 싶다면 rabbitmq
다음 명령 중 하나를 사용할 수 있습니까 rabbitmq-server
?
답변1
아니요, 완전히 다르며 내용도 다릅니다.
예를 들어 나는
A/file
B/file
$ cat A/file
hello
$ cat B/file
there
우리는 그들이 서로 다른 말을 하고 있음을 알 수 있습니다.
귀하의 경우:
/etc/rc.d/init.d/rabbitmq-server
- 부팅 시 시작 스크립트가 됩니다.
/etc/logrotate.d/rabbitmq-server
- 로그 파일을 관리합니다.
/usr/sbin/rabbitmq-server
init
- 스크립트에 의해 시작되는 메인 서버 프로그램입니다.
/usr/lib/ocf/resource.d/rabbitmq/rabbitmq-server
- 이는 HA 구성의 일부입니다.
따라서 이 4개의 파일은 모두 다른 작업을 수행합니다.
답변2
많은 환경에서와 마찬가지로 동일한 이름을 가진 여러 파일이 여러 위치에 존재할 수도 있습니다.
파일이 동일한지(또는 실제로 여러 링크가 있는 동일한 파일인지) 확인하는 방법에는 여러 가지가 있습니다.
diff
먼저, 파일 내용 비교와 같은 도구를 사용할 수 있습니다. 서로 다른 경우 차이점을 확인할 수 있습니다(또는 파일이 바이너리로 해석된 경우 파일이 다르다는 알림이 표시됩니다).
diff /etc/rc.d/init.d/rabbitmq-server /etc/logrotate.d/rabbitmq-server
둘째, 긴 형식을 사용하여 ls
파일이 기호(또는 "소프트" 링크)인지 확인할 수 있습니다. 그러면 해당 파일이 심볼릭 링크인지, 그리고 다음을 가리키는 위치가 표시됩니다.
$ ls -l bar
lrwxrwxrwx 1 ghoti ghoti 3 Aug 18 18:34 bar -> foo
l
첫 번째 열에 있는 것은 이것이 bar
링크임을 나타내고, 행의 끝은 이것이 가리키는 위치를 bar -> foo
나타냅니다 .foo
bar
ls -l
또한 파일에 있는 하드 링크 수도 표시됩니다.
$ ls -l foo
-rw-rw-r-- 2 ghoti ghoti 0 Aug 18 18:36 foo
이 경우 2
권한과 소유자 사이에 파일에 두 개가 있음을 나타내는 foo
두 개의 하드 링크가 있습니다 . find
다음을 사용하여 동일한 파일을 가리키는 하드 링크된 파일을 찾을 수 있습니다 .
find / -samefile foo
위 명령은 전체 파일 시스템에서 모든 하드 링크를 검색합니다.foo
올바른 시작 방법에 대한 질문은 rabbitmq
매뉴얼 페이지를 참조하여 찾는 것이 가장 좋습니다.
man rabbitmq