Mac의 터미널에서 '허가 거부(permission denied)' 메시지가 표시되나요? 해결 방법

Unix 명령어에 익숙한 사용자에게 있어 터미널은 프로세스와 작업을 수행하는 정말 좋은 방법 중 하나입니다. 대부분의 경우, 올바른 명령어를 입력하기만 하면 사용자가 의도한 동작을 수행합니다. 그러나 때에 따라 '허가 거부(Permission denied)'라는 오류 메시지가 나타나는 것을 볼 수 있습니다. 이 글을 통해 해결 방법을 알려드리겠습니다.

터미널은 무엇인가요?

터미널은 커맨드라인, 즉 명령줄 인터페이스를 통해 명령어를 입력하는 방식으로 Mac에서 실행 중인 프로세스와 작업을 제어할 수 있습니다. macOS 운영체제가 Unix 기반인 덕분에 일반적인 Unix 명령어를 해독하고 실행할 수 있습니다. macOS Catalina까지 터미널의 기본 쉘은 'bash'였습니다. 지금은 zsh가 기본적으로 사용되고 있습니다. 해당 쉘은 일부 작업에서 사용이 더 용이할 뿐만 아니라 상대적으로 엄격한 사용자 권한이 필요하지 않다는 점에서 bash와 비교했을 때 몇 가지 이점을 가지고 있습니다. 어떤 쉘 터미널이 실행되고 있는지 확인하려면 터미널 윈도우의 상단을 보면 알 수 있습니다.

왜 사람들은 터미널을 사용하나요?

Mac 사용자가 터미널을 좋아하는 데에는 여러 이유가 있습니다. Unix 명령어에 익숙한 경우 터미널을 통해 프로세스와 작업을 무척 신속하게 수행할 수 있습니다. 터미널을 사용하는 또 다른 이유 중 하나는 시스템 환경설정에 나타나지 않는 macOS의 숨겨진 기능에 접근할 수 있기 때문입니다. 외부 앱을 통해서만 변경 가능한 설정도 터미널을 사용하면 손쉽게 변경할 수 있습니다. 예를 들어, 스크린샷 이미지의 기본 파일 형식을 png에서 jpg로 변경하려면 터미널을 사용하면 됩니다.

'허가 거부(permission denied)'는 무슨 의미인가요?

이 오류 메시지가 터미널이 파일에 액세스할 수 없기 때문에 실행하려는 명령을 완료할 수 없다는 의미입니다. 또한 오류 이름에서 알 수 있듯이 파일에 액세스할 수 없는 이유는 권한이 없기 때문입니다. 여기에는 몇 가지 원인이 있을 수 있는데 대부분 다음과 같은 이유입니다:

  • 파일을 편집할 권한이 없을 때;
  • 파일이 잠겨 있을 때;
  • 명령어를 올바르지 않는 양식으로 입력했을 때.

터미널에서 '허가 거부'를 해결하는 방법

이제 해결 방법으로 넘어가 보겠습니다. 가장 간단한 방법부터 시작해 수동 솔루션순으로 알려드립니다.

터미널과 관련된 문제를 해결하는 더 쉬운 방법

터미널 자체의 문제로 인해 '권한 거부' 오류가 표시되는 경우도 있습니다. 또 디른 해결 방법은 앱을 초기화하는 것입니다. 가장 간편한 방법은 CleanMyMac X 라는 유용한 앱을 사용하는 것입니다. CleanMyMac X는 이 문제를 비롯해 디스크 여유 공간을 확보하고, Mac을 최적화하며, 악성코드로부터 시스템을 보호하는 다양한 모듈이 포함되어 있습니다. 이 앱은 Apple로부터 공증을 받았으며, 여기서무료로 다운로드할 수 있습니다.

  1. 앱을 실행하고 사이드바에서 응용 프로그램 설치 제거를 클릭합니다.
  2. 검색 상자를 사용해 터미널을 찾습니다.
  3. 파일 크기 옆에 있는 화살표를 클릭합니다.
  4. 환경설정, 지원 파일, 로그 옆에 있는 동그라미를 체크합니다.
  5. 터미널 옆에 있는 화살표를 클릭한 뒤 초기화를 선택합니다.
  6. 초기화 버튼을 클릭합니다.
팁:

Mac에 기본 내장된 앱을 초기화하려면 CleanMyMac X 환경설정으로 이동합니다. 예외 목록 > 응용 프로그램을 클릭합니다. '시스템 응용 프로그램 무시' 옆에 있는 상자의 체크를 해제합니다.

파일 권한 확인하기

파일의 권한을 확인하는 데는 여러 방법이 있습니다. 보통 Finder 또는 터미널을 통해 할 수 있습니다. 아래 두 가지 방법을 알려드리겠습니다.

터미널

  1. 터미널을 실행한 뒤 다음 명령어를 입력하고 그 뒤에 공백을 한 칸 넣습니다: ls -l
  2. 오류 메시지가 나타날 때 작업하려는 파일 또는 폴더를 Finder에서 찾은 후 터미널 창으로 끌어놓습니다.
  3. 엔터 키를 누릅니다.
  4. 따라서 사용자 이름 앞의 문자열에 'rwxr'이라는 문자가 표시되면 해당 파일을 읽고 쓰고 실행할 수 있음을 의미합니다. 만약 'r' 밖에 표시되지 않는 경우는 사용자에 대해 해당 파일이 읽기 전용(read only) 상태임을 의미합니다.

Finder

  1. Finder에서 파일이나 폴더를 찾습니다.
  2. Command-I 키를 눌러 속성 윈도우를 엽니다.
  3. 윈도우 맨아래 공유 및 사용 권한을 찾습니다. 그 아래에 아무것도 없으면 옆의 화살표를 클릭합니다.
  4. 사용자 이름 옆의 액세스 권한을 확인하세요. '읽기 및 쓰기''로 표시되어야 합니다

파일 권한 변경하기

방금 확인한 권한이 파일 쓰기를 허용하지 않는다면 '허가 거부됨(permission denied)' 오류의 원인일 가능성이 있습니다. Finder에서 문제를 해결하려면, 공유 및 사용 권한 섹션에서 사용자 이름 옆에 있는 권한을 클릭한 뒤 읽기 및 쓰기를 선택합니다.

터미널에서 권한을 변경하려면 다음과 같이 진행하세요:

  1. 다음 명령어를 입력하고 그 뒤에 공백을 한 칸 넣습니다: chmod 755
  2. 해당 명령어 뒤에 파일이나 폴더를 터미널 창 안에 끌어놓습니다.
  3. 엔터 키를 누릅니다.
  4. 파일 또는 폴더의 권한이 읽기, 쓰기 및 실행으로 변경됩니다.

디렉토리 소유권 변경

파일 권한을 변경해도 문제가 해결되지 않으면, 디렉토리 소유자를 사용자 이름으로 변경해 보세요. 다음 명령은 [username]을 사용자 이름으로 변경하고, [directorypath]를 소유자를 변경하려는 디렉토리 경로로 변경합니다. 앞서와 마찬가지로 파일을 터미널로 드래그하는 것만으로도 가능합니다.

  1. 다음과 같이 입력합니다:
    chown -R $[username]:[username] [directorypath]
  2. 엔터 키를 누릅니다.

터미널의 '허가 거부(Permission denied)' 오류는 일반적으로 작업하려는 파일 또는 디렉토리의 권한 문제로 인해 발생합니다. 일반적으로 권한을 변경하거나 소유권을 재할당하면 수정할 수 있습니다. 그래도 해결되지 않을 때는 CleanMyMac X를 사용하여 터미널 앱을 재설정한 뒤 명령을 올바르게 입력했는지 확인하시기 바랍니다.

CleanMyMac X

여러분의 Mac. 마치 새것처럼.