리눅스 심볼릭 링크(Symbolic Link)와 하드 링크(Hard Link)

리눅스에서 사용하는 심볼릭 링크(Symbolic Link)는 윈도우에서 사용하는 “바로가기”와 같은 기능을 가지고 있습니다. 소프트 링크 or 심링크로도 불리며, 하나의 파일에 여러 이름으로 생성할 수 있습니다.

✅ 심볼릭 링크 하드 링크 명령어

[-s 옵션]은 Symbolic Link를 만들어 주는 옵션이며 [-s 옵션]이 빠지게 되면 Hard Link를 생성하게 됩니다.

ln -s [원본파일 or 원본 디렉토리] [새로 생성할 링크명]

✅ 기존 하드 링크의 단점

Hard Link는 기존 유닉스 시스템 방식으로 Symbolic Link가 더 최신 방식입니다. 기존 Hard Link의 단점은 파일 시스템 외부에 있는 파일을 참조할 수 없어, 같은 디스크 파티션에 있는 파일만 참조할 수 있으며, 디렉토리를 참조할 수 없는 단점을 가지고 있습니다.

또 파일 자체만으로 구분해 내기가 어려우며, 링크를 포함한 디렉토리 목록에서 해당 링크가 가리키고 있는 것이 무엇인지 보여주지 않습니다.

✅ Symbolic Link 특징

Symbolic Link는 참조 될 파일이나 디렉토리를 가리키는 텍스트 포인터가 포함된 파일을 생성합니다. 아파치 설치 후 /etc/httpd 폴더에서 기본으로 생성된 logs를 포함한 파일들의 폴더를 포함한 경로를 확인할 수 있습니다.

리눅스 심볼릭 링크 logs를 포함한 목록

이러한 이유로 윈도우의 바로가기와 비슷한 방식을 가졌다고 하며, 오히려 윈도우보다 먼저 나왔습니다.

  • Tip: Symbolic Link를 삭제하기 전에 원본 파일이 지워졌다면 링크는 살아있지만 링크는 아무것도 가리키지 않게 되며, 이런 경우 링크가 깨졌다고 표현합니다.

Similar Posts

  • 리눅스 명령행 인자(Command-Line Argument)와 명령어 옵션

    ‘리눅스 명령행 인자(Command-Line Argument)‘는 ‘리눅스 명령어 인수‘, ‘명령 인자‘ 등으로도 불리며, 리눅스 커맨드 라인에서 명령어를 실행할 때 프로그램에 전달하는 매개변수를 뜻 합니다. 리눅스에서 “매개변수(Parameters)”는 일반적으로 프로그램이나 함수에 전달되는 값을 가리킵니다. 이 값은 해당 프로그램이나 함수가 실행될 때 필요한 입력 값으로 사용됩니다. 컴퓨터 프로그래밍에서 “매개변수(Parameters)”는 함수에 전달되는 값을 받아들이는 변수를 의미합니다. 이는 함수 정의에…

  • [Linux] userdel 명령어: 사용자 계정 삭제 명령어

    리눅스에서 useradd로 계정 생성 후 삭제가 필요한 경우 userdel 명령어를 사용합니다. 목차✅ 심볼릭 링크 하드 링크 명령어✅ 기존 하드 링크의 단점✅ Symbolic Link 특징✅ userdel 명령어 기본 사용은 아래와 같습니다. ✅ userdel 주로 사용하는 옵션 userlde만 입력해서 사용자를 삭제할 경우 보통 /home/[user]로 계정명이 폴더에 버전에 따라 남아있거나 삭제되는데 /var/spool/mail/[user] 파일은 대부분의 리눅스에서 남게…

  • 리눅스 uniq 명령어

    리눅스 uniq 명령어는 “unique”의 약자이며, 텍스트 파일에서 중복된 행을 제거하고 하나의 행만 출력하는데 사용됩니다. 중복된 텍스트 데이터를 제거하고 몇 번의 반복이 있었는지 등을 확인할 때 매우 유용하게 사용할 수 있습니다. 목차✅ 심볼릭 링크 하드 링크 명령어✅ 기존 하드 링크의 단점✅ Symbolic Link 특징✅ 리눅스 uniq 명령어 기본 사용법 INPUT 파일은 대상 파일로써 표준…

  • 리눅스 history 명령어

    리눅스 history 명령어는 이전에 명령어 목록을 확인하는 명령어로 리눅스 콘솔에 접속했을 때 자주 사용하는 명령어 중에 하나입니다. 보통 history만 입력해서 많이 사용하지만 보다 더 다양한 활용 방법에 대해서 알아 보겠습니다. 목차✅ 심볼릭 링크 하드 링크 명령어✅ 기존 하드 링크의 단점✅ Symbolic Link 특징✅ 리눅스 history 명령어 기본 사용 history 명령어 자체만 입력해서 주로…

  • 리눅스 kill 명령어[kill -9 PID]

    리눅스 kill 명령어는 사용 중인 프로세스를 종료하는 명령어입니다. 터미널에서 프로세스에 시그널(Signal)을 보내서 프로세스를 종료합니다. 프로그램이 정지하거나 응답하지 않는 경우 일반적인 종료가 되지 않는 경우 등에 따라 명령어를 실행하게 됩니다. kill process는 사용 시 중요한 시스템 프로세스를 종료 시키면 시스템이 불안정해질 수 있기 때문에 주의해서 사용해야 합니다. 목차✅ 심볼릭 링크 하드 링크 명령어✅ 기존…

  • echo 명령어: From 확장과 인용

    echo 명령어는 문자열을 그대로 출력해 주는 명령어이다. echo 명령어는 프롬프트에서 사용하는 일은 거의 없으며, 쉘 스크립트 작성 시에 자주 사용하는 명령어이다. 표준 출력 상에 해당 텍스트 인자를 표시한다. 목차✅ 심볼릭 링크 하드 링크 명령어✅ 기존 하드 링크의 단점✅ Symbolic Link 특징1. echo 명령어 옵션 2. echo $ $뒤에 오는 문자열이 변수로 선언되어 있는…

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

Prove your humanity: 9   +   8   =