Windows에서 심볼릭 링크 심링크 사용하는 방법

컴퓨터에서 특정 파일이나 디렉토리를 여러 위치에 두고 관리해야 하는 상황이 있습니다. 이 경우 필요한 파일이나 디렉토리를 여러 위치에 복제하여 사용하는 것이 가장 단순 한 방식이지만 같은 파일이 계속 반복해서 생성되면 불필요한 저장 공간이 소모되고, 추후 데이터 동기화 및 관리에 어려움이 발생할 수 있습니다.

또는 특정 프로그램을 설치하게 되면 일부 구성 파일, 라이브러리, 자료 파일 등이 프로그램과 함께 설치되며 이들 파일이 서로 상호 작용하게 되는데 용량의 압박 등으로 설치 경로를 변경하면 프로그램이 해당 파일들을 찾지 못해 오류가 발생할 수 있습니다.

이런 유사한 상황들이 자주 발생하게 되는데 이때 심볼릭 링크라는 기능을 사용하게 되면, 파일이나 디렉터리에 대한 간접적인 참조를 생성하여 원본 항목에 접근할 수 있는 방법을 제공합니다. 이로 인해 파일 구조 관리와 데이터 접근이 더욱 유연하고 효율적으로 이루어지게 되고 여러 프로젝트나 팀 간에 공통 리소스 예를 들어, 이미지, 스타일시트, 코드 라이브러리 등을 공유할 때 심볼릭 링크를 사용하면 중복 저장을 방지하고 효율적으로 리소스를 관리할 수 있습니다.

심볼릭 링크는 대부분의 운영체제에서 지원하는 파일 시스템 기능 중 하나로 Windows 환경에서도 별도의 추가 설치 과정없이 기본으로 사용할 수 있으며 아래 본문의 안내를 확인하면 심볼릭 링크에 대한 기본적인 활용 방법을 이해할 수 있습니다.

본문은 아래 튜토리얼 환경에서 ezis.org가 직접 검증 된 내용으로 작성 한 것 이지만, 각자 사용 환경이 다르기에 일부 사용자는 내용과 다른 결과가 나타날 수도 있습니다. 단순 하게 참고용으로 활용바랍니다.

튜토리얼 환경: 윈도우 11 Pro (빌드: 22621.1702)

하드링크와 심볼릭 링크

하드 링크와 심볼릭 링크는 둘 다 파일 시스템에서 특정 파일을 참조하는 방법입니다. 그러나 이 두 링크는 작동 방식과 성질에 몇 가지 중요한 차이가 있습니다. 하드 링크는 파일의 데이터에 대한 직접적인 링크입니다. 즉, 원본 파일과 동일한 데이터를 가리키는 새로운 경로를 생성합니다.

하드 링크는 원본 파일과 동일한 inode를 공유하므로, 원본 파일이 삭제되더라도 하드 링크는 존재하며, 원본 파일의 데이터에 계속 접근할 수 있습니다. 반면에 심볼릭 링크는 특정 파일이나 디렉토리에 대한 참조를 저장하는 별도의 파일입니다. 이는 원본 파일이나 디렉토리의 경로를 가리키는 방식으로 작동하며, 이를 바로가기와 비교할 수 있습니다 하드링크와 심볼릭링크 차이 알아보기

윈도우 10 컴퓨터 이름 변경하는 방법

심볼릭 링크 생성하는 방법

심볼릭 링크는 기본적으로 명령 프롬프트에서는 mklink 명령으로, PowerShell에서는 New-Item 명령어를 사용하여 심볼릭 링크를 생성할 수 있습니다.

명령 프롬프트 사용

우선 명령 프롬프트를 사용해서 심볼릭 링크를 생성하는 방법에 대해 다루어 봅니다. 심볼릭 링크는 파일과 디렉토리 생성 방식이 거의 동일하지만 이해를 돕기 위해 구분해서 정리합니다.

파일에 대한 심볼릭 링크 생성하기

mklink [LinkPath] [TargetPath]

파일에 대한 심볼릭 링크를 생성하기 위한 기본적인 구문으로 명령 프롬프트(cmd)를 관리자 권한으로 실행 후 명령을 실행합니다.

mklink로-심볼릭-링크-생성
mklink로 심볼릭 링크 생성

예를 들어 다음과 같이 명령하면 %UserProfile%\Documents\text.txt 파일에 대한 심볼릭 링크를 생성하고, 이를 바탕화면에 text.txt라는 이름으로 위치시킵니다. 이제 바탕화면에서 이 링크를 클릭하면 문서 폴더의 원본 text.txt 파일이 열립니다. %UserProfile%은 현재 사용자의 프로필 경로를 의미하는 것으로 동작하지 않는 경우 실제 경로를 사용합니다.

mklink "%UserProfile%\Desktop\text.txt" "%UserProfile%\Documents\text.txt"

디렉토리에 대한 심볼릭 링크 생성하기

mklink /D [LinkPath] [TargetPath]

디렉토리에 대한 심볼릭 링크를 생성하기 위한 기본적인 구문입니다. [LinkPath]는 생성할 심볼릭 링크의 경로이며, [TargetPath]는 원본 디렉토리의 경로입니다. /D 옵션을 사용하면 디렉토리에 대한 심볼릭 링크 생성이 가능합니다.

예를 들어, 사용자의 문서 폴더(Documents)에서 MyProject 디렉토리를 바탕화면에 심볼릭 링크로 생성하려면 아래와 같이 사용합니다. %UserProfile%\Documents\MyProject 디렉토리에 대한 심볼릭 링크를 생성하고, 이를 바탕화면에 MyProject라는 이름으로 위치시킵니다. 이제 바탕화면에서 이 링크를 더블 클릭하면 문서 폴더의 원본 MyProject 디렉토리가 열립니다.

mklink /D "%UserProfile%\Desktop\MyProject" "%UserProfile%\Documents\MyProject"
로컬 그룹 정책 편집기 gpedit 직접 설치하는 방법

PowerShell 사용

mklink 명령어는 명령 프롬프트에서 사용할 수 있는 명령어로 PowerShell(링크 업데이트 예정)에서는 Windows의 파일 시스템 명령어인 mklink를 직접 사용할 수 없습니다. 대신, New-Item cmdlet을 사용하여 심볼릭 링크를 생성할 수 있습니다. cmdlet 더 알아보기(링크 업데이트 예정)

New-Item -ItemType SymbolicLink -Path "[LinkPath]" -Target "[TargetPath]"

New-Item 명령으로 심볼릭 링크를 생성하기 위한 기본적인 구문으로 PowerShell을 관리자 권한으로 실행 후 명령을 실행합니다.

PowerShell에서-심볼릭-링크-생성
PowerShell에서 심볼릭 링크 생성

만약 \$env:UserProfile\Desktop\text.text 경로에 있는 심볼릭 링크를 \$env:UserProfile\Documents\text.text 경로의 원본 파일을 가리키도록 만들고 싶다면 다음과 같이 사용합니다. $env:UserProfile은 현재 사용자의 프로필 경로를 의미하는 환경변수입니다. 동작하지 않는 경우 실제 경로를 사용합니다.

New-Item -ItemType SymbolicLink -Path "$env:UserProfile\Desktop\text.text" -Target "$env:UserProfile\Documents\text.txt"

명령의 구성 요소는 다음과 같습니다.

  • -ItemType: 생성할 항목의 유형으로 여기서는 SymbolicLink를 통해 심볼릭 링크를 생성하도록 지시합니다.
  • -Path: 생성된 심볼릭 링크의 경로입니다. 여기서는 $env:UserProfile\Desktop\text.txt를 통해 사용자 바탕 화면에 text.txt라는 이름의 링크를 생성하도록 설정되어 있습니다
  • -Target: 심볼릭 링크가 가리킬 대상의 경로입니다. 여기서는 $env:UserProfile\Documents\text.txt를 통해 사용자 Documents 폴더 안의 text.txt 파일을 가리키는 것으로 설정되어 있습니다.

심볼릭 링크 적용 결과

심볼릭 링크를 생성한 뒤 원본 파일 또는 폴더에 접근하는 것과 동일하게 심볼릭 링크를 사용할 수 있습니다. 생성된 심볼릭 링크를 통해 원본 파일이나 폴더에 접근할 수 있습니다. 파일탐색기, 명령 프롬프트, PowerShell 등에서 심볼릭 링크를 통해 원본 항목을 여는 것과 동일하게 사용할 수 있습니다.

심볼릭-링크와-바로가기-링크-속성-비교
심볼릭 링크와 바로가기 링크 속성 비교

심볼릭 링크 된 파일과 바로가기로 만들어진 아이콘의 속성을 열어보면 위와 같이 보이는 정보와 수정 가능한 항목이 다릅니다. 심볼릭 링크는 소스 파일이나 디렉토리에 대한 포인터 역할을 하며, 운영 체제는 이를 실제 경로로 취급합니다. 그래서 심볼릭 링크의 속성을 확인하면 수정이 불가능하게 흐릿하게 표시되며, '시작 위치'에 대한 정보도 제공되지 않습니다. 심볼릭 링크의 속성을 변경하면 실제 연결된 소스 파일이나 디렉토리의 속성이 변경되기 때문입니다.

심볼릭 링크를 삭제하거나 이동하려면 일반 파일이나 폴더와 동일한 방법으로 수행할 수 있습니다. 심볼릭 링크를 삭제하더라도 원본 항목은 영향을 받지 않습니다.

  • 다만 전술한 대로 원본 파일이나 폴더가 삭제되거나 이동되면, 심볼릭 링크는 유효하지 않게 됩니다. 이 경우, 새로운 경로에 맞게 심볼릭 링크를 다시 생성해야 합니다.
  • 일부 응용 프로그램에서는 심볼릭 링크를 인식하지 못할 수 있으므로, 이러한 경우 원본 파일이나 폴더를 직접 참조해야 합니다.
윈도우 10 최고 관리자 계정 Administrator 활성화 또는 비활성화하기

FAQ

심볼릭 링크와 바로가기의 차이는 무엇인가요.

심볼릭 링크와 바로가기 아이콘은 원본 파일이나 디렉터리를 가리키는 참조를 생성하는 데 사용되지만, 둘 사이에는 몇 가지 중요한 차이점이 있습니다.

  • 운영 체제 수준의 차이: 심볼릭 링크는 파일 시스템 수준에서 지원되는 기능으로, 여러 운영 체제(Windows, macOS, Linux 등)에서 사용할 수 있습니다. 반면, 바로가기 아이콘은 Windows 운영 체제에서만 사용되는 파일 형식으로, 주로 .lnk 확장자를 가진 파일입니다.
  • 응용 프로그램 호환성: 심볼릭 링크는 운영 체제에서 직접 지원하므로, 대부분의 응용 프로그램에서 원본 파일이나 디렉터리를 참조하는 것과 동일한 방식으로 작동합니다. 반면, 바로가기 아이콘은 특정 응용 프로그램(주로 파일 탐색기)에서만 인식되고 올바르게 처리되는 경우가 많습니다.
  • 사용 방법 및 생성 방식: 심볼릭 링크는 명령 프롬프트나 PowerShell에서 mklink명령어를 사용하여 생성합니다. 바로가기 아이콘은 파일 탐색기에서 마우스 오른쪽 버튼을 클릭하여 "새로 만들기" > "바로가기"를 선택하거나 컨텍스트 메뉴에서 "바로가기 만들기"를 선택하여 만들 수 있습니다.
  • 디렉토리 참조: 심볼릭 링크는 디렉터리에 대한 참조도 지원하여, 서로 다른 위치의 디렉터리를 연결할 수 있습니다. 반면, 바로가기 아이콘은 주로 파일에 대한 참조를 생성하는 데 사용됩니다.

위의 차이점으로 인해 심볼릭 링크와 바로가기 아이콘은 사용 목적과 적용 범위에 따라 선택해야 합니다. 심볼릭 링크는 운영 체제 수준에서 지원되는 보다 일반적인조 방식을 제공하며, 바로가기 아이콘은 Windows에서 주로 사용되는 파일 참조를 제공합니다.

일부 응용 프로그램이 심볼릭 링크를 인식하지 못하는 이유는 무엇인가요.

일부 응용 프로그램은 심볼릭 링크를 팔로우하지 않기 때문에 심볼릭 링크가 제대로 작동하지 않을 수 있습니다. 이러한 응용 프로그램에서 원본 파일 또는 폴더를 사용하려면 심볼릭 링크가 아닌 원본 경로를 직접 참조해야 합니다.

다른 운영체제에서도 심볼릭 링크를 사용할 수 있나요.

네, 심볼릭 링크는 Windows뿐만 아니라 macOS와 Linux와 같은 다른 운영체제에서도 사용할 수 있습니다. 각각의 운영체제마다 다른 명령어로 심볼릭 링크를 생성하며, macOS와 Linux의 경우 ln -s 명령어를 사용합니다.

심볼릭 링크 생성 시 관리자 권한이 필요한 이유는 무엇인가요

심볼릭 링크를 생성하는 것은 파일 시스템 구조에 영향을 미치는 작업이기 때문에, 잠재적인 보안 위협이나 시스템 무결성 문제를 예방하기 위해 관리자 권한이 요구됩니다. 일반적으로 운영 체제의 파일 시스템 구조에 직접 영향을 미치는 작업을 수행할 때 관리자 권한이 필요하며, 심볼릭 링크 생성도 이에 해당합니다.

마치며

Windows 11에서 심볼릭 링크, 심링크를 사용하는 방법과 심볼릭 링크에 관한 기본적인 개념에 대해 알아보았습니다. 심볼릭 링크는 Windows에서 파일 또는 폴더를 구성하고 관리하는 데 유용한 기능으로, 파일이나 폴더를 다른 위치에서 참조해야 하는 경우 심볼릭 링크를 사용하여 간편하게 관리할 수 있습니다.

서로 다른 개념이지만, 파일 시스템 내의 참조 방식이나 데이터 관리 측면에서 Git 과 유사한 점이 있고 같이 활용하면 시너지가 나기도 하는데요. 다만 Git은 코드 협업 및 버전 관리에 초점을 맞춘 도구이고 초기 러닝 커브가 있어 사용이 쉽지 않지만, 심볼릭 링크는 일반적인 파일 시스템에서 유연한 참조 방식을 지원하여 데이터 관리를 용이하게 하는 기능으로 명령어 하나만 익숙해지면 상당히 활용도가 높은 기능이니 위 내용만으로도 손쉽게 사용할 수 있을 것 입니다.

윈도우 10 클린 부팅하는 방법

관련 글

댓글로 남기기 어려운 내용은 Contact Form 에서 개별적으로 문의 할 수 있습니다. 해당 글과 연관 된 내용은 Copy를 이용해 현재 페이지의 주소를 복사 후 문의 폼에 입력시 보다 정확한 답을 얻을 수 있습니다.

Leave a Comment