[12편] 리눅스(Linux) 기초 명령어: 파일 권한(chmod) 설정과 디렉토리 이동법




프론트엔드와 백엔드 개발 기초를 탄탄하게 다지고 데이터베이스까지 다루게 되었다면, 이제 개발자로서 피할 수 없는 또 하나의 거대한 무대를 만날 차례다. 바로 전 세계 수많은 웹 서버와 클라우드 환경이 돌아가고 있는 운영체제, 리눅스(Linux)다. 윈도우처럼 마우스로 아이콘을 더블클릭해서 폴더를 열고 파일을 수정하는 그래픽 환경(GUI)이 아니라, 오직 키보드로 검은색 터미널 창에 명령어를 쳐서 시스템을 제어해야 하는 CLI(Command Line Interface) 환경은 처음 접하는 초보자들에게 공포의 대상이다.

서버에 접속해 프로그램을 실행하려고 할 때 Permission denied(권한 거부) 에러를 마주하면 어디서부터 손을 대야 할지 막막해지기 십상이다.

[소제목] 리눅스 파일 시스템 구조와 디렉토리 이동 명령어

윈도우는 C드라이브, D드라이브처럼 드라이브 개념으로 경로를 나누지만, 리눅스는 모든 파일과 폴더가 최상위 루트 디렉토리(/)에서 시작하는 하나의 거대한 나무 뿌리 같은 구조를 가진다.

  • 터미널에 처음 접속하면 현재 내가 어디에 있는지 위치를 파악하는 것이 우선이다. 현재 위치를 확인하려면 pwd 명령어를 입력하면 된다.

  • 다른 폴더로 이동하고 싶을 때는 cd(Change Directory) 명령어를 쓴다. 예를 들어 상위 폴더로 가려면 cd .., 홈 디렉토리로 바로 가려면 cd ~를 입력한다.

  • 현재 폴더에 어떤 파일과 폴더가 있는지 목록을 보려면 ls 명령어를 쓰되, 숨김 파일까지 자세히 보려면 ls -l이나 ls -la 옵션을 붙여서 확인하는 습관을 들여야 한다.

직접 서버를 다루다 보면 폴더 이름을 조금만 헷갈려도 파일을 찾지 못해 헤매게 되므로, 상대 경로와 절대 경로의 개념을 머릿속에 확실히 잡아두어야 한다.

[소제목] 리눅스의 꽃, 파일 권한(chmod)과 소유권 이해하기

리눅스가 윈도우와 가장 차별화되는 강력한 특징 중 하나는 다중 사용자 환경을 위한 철저한 보안 권한 체계다. 서버에 파일을 올려두었더니 실행이 안 되거나 수정이 거부된다면 열십중팔구 권한 문제다.

  • 리눅스의 각 파일과 디렉토리는 소유자(User), 그룹(Group), 기타 사용자(Others)로 나누어 각각 읽기(r), 쓰기(w), 실행(x) 권한을 다르게 부여한다.

  • 이 권한을 변경할 때 사용하는 핵심 명령어가 바로 chmod(Change Mode)다.

  • 예를 들어 내가 직접 작성한 쉘 스크립트 파일(.sh)을 서버에서 실행하려고 할 때 Permission denied가 뜬다면, 해당 파일에 실행 권한을 더해주는 명령어를 입력해야 한다.

chmod +x script.sh

또한, 숫자를 이용해 3자리 권한 조합(예: chmod 755 filename)을 설정하는 방식도 리눅스 실무에서 광범위하게 쓰이므로 읽기(4), 쓰기(2), 실행(1)의 합산 원리를 가볍게 이해해 두는 것이 좋다.

[소제목] 초보자가 자주 하는 실수와 주의사항

리눅스 터미널을 처음 다룰 때 가장 끔찍한 실수는 최상위 루트 디렉토리(/)에서 아무 생각 없이 rm -rf * 같은 강력한 삭제 명령어를 날리는 것이다. 이 명령어는 시스템의 모든 파일과 폴더를 경고 없이 순식간에 지워버리기 때문에 복구가 불가능한 대참사로 이어진다. 리눅스 환경에서는 rm 명령어를 쓸 때 내가 지금 정확히 어떤 폴더에 위치해 있는지 pwd로 두 번 세 번 확인하는 신중함이 필요하다.

또한, 관리자 권한이 필요한 작업을 할 때 앞에 sudo(SuperUser Do)를 붙이는 것을 깜빡하여 권한 거부 에러를 마주하는 것도 흔한 실수다. 시스템 설정을 바꾸거나 패키지를 설치할 때는 항상 관리자 권한이 동반되어야 한다는 점을 기억해야 한다. 처음에는 검은 화면에 흰 글씨만 가득한 터미널이 차갑고 두렵게 느껴지겠지만, 자주 쓰는 명령어 몇 가지를 손에 익히다 보면 윈도우보다 훨씬 빠르고 명쾌하게 시스템을 제어하는 자신을 발견하게 될 것이다.

핵심 요약:

  • 리눅스는 최상위 루트(/)에서 시작하는 단일 트리 구조를 가지며, pwd로 위치를 확인하고 cd와 ls로 이동 및 조회를 수행한다.

  • 파일이나 스크립트가 실행되지 않을 때는 권한 거부 에러의 원인이 되며, chmod +x 등을 통해 권한을 적절히 부여해야 한다.

  • rm -rf 같은 강력한 삭제 명령어를 사용할 때는 현재 경로를 반드시 확인하여 시스템 파일 손실 대참사를 방지해야 한다.

다음 편 예고: 다음 편에서는 클라우드 서버(AWS EC2 등) 접속 시 SSH 키 페어 오류를 해결하는 가이드를 다룬다.

이 글을 읽으면서 리눅스 터미널을 다루다가 권한 문제나 명령어 때문에 식은땀을 흘렸던 기억이 있다면 댓글로 편하게 공유해 주세요!

댓글 쓰기

0 댓글

신고하기

프로필

이미지alt태그 입력