DEV/CONSOLE

Linux home directory

SBP 2025. 5. 15. 14:05
리눅스 사용자 디렉토리 설명 (홈 디렉토리)

리눅스 사용자 디렉토리 설명 (홈 디렉토리)

리눅스에서 '사용자 디렉토리' 또는 '홈 디렉토리(Home Directory)'는 각 개별 사용자를 위해 할당된 특정 디렉토리를 의미합니다. 이는 사용자의 개인 파일, 설정, 애플리케이션 데이터 등을 저장하는 기본 공간입니다.

1. 기본 위치

  • 대부분의 일반 사용자는 /home 디렉토리 아래에 자신의 사용자 이름과 동일한 이름의 디렉토리를 홈 디렉토리로 가집니다.
  • 예를 들어, 사용자 이름이 user1이라면 홈 디렉토리는 /home/user1이 됩니다.
  • 시스템의 최고 권한자인 root 사용자의 홈 디렉토리는 관례적으로 /root 디렉토리입니다.

2. 사용 목적

홈 디렉토리는 다음과 같은 목적으로 사용됩니다.

  • 개인 파일 저장: 문서, 사진, 음악, 다운로드 파일 등 사용자의 개인적인 데이터를 저장합니다.
  • 설정 및 환경 정보 저장: 사용자가 사용하는 쉘(Bash, Zsh 등), 애플리케이션, 데스크톱 환경 등의 설정 파일이 저장됩니다.
  • 애플리케이션 데이터 저장: 일부 애플리케이션은 사용자의 설정이나 데이터를 홈 디렉토리 내의 특정 위치에 저장합니다.

3. 주요 내용 (숨김 파일/디렉토리)

홈 디렉토리에는 사용자의 개인 파일 외에도 시스템 및 애플리케이션 설정을 위한 다양한 숨김 파일과 디렉토리가 존재합니다. 이들은 파일명 앞에 점(.)이 붙어 있으며, 일반적인 파일 목록 보기에서는 보이지 않습니다 (ls -a 명령어로 확인 가능).

  • 설정 파일 (Dotfiles): 쉘 설정 파일(.bashrc, .profile, .zshrc 등), SSH 설정(.ssh/), Git 설정(.gitconfig) 등 사용 환경을 정의하는 파일들입니다.
  • 설정 디렉토리: .config/, .local/, .cache/ 등 XDG Base Directory Specification을 따르거나 따르지 않는 다양한 애플리케이션 및 시스템 설정 디렉토리들이 있습니다.
  • 애플리케이션별 데이터: 웹 브라우저 프로필, 메일 클라이언트 데이터, 개발 도구 설정 등 사용자가 설치한 애플리케이션 관련 파일들이 저장됩니다.
  • 사용자 생성 파일/폴더: 사용자가 직접 만들거나 다운로드한 문서, 사진, 동영상 등이 저장되는 일반적인 폴더들 (예: Documents, Downloads, Pictures 등)입니다.

4. 권한

홈 디렉토리와 그 안의 파일/디렉토리는 기본적으로 해당 사용자만 읽고, 쓰고, 실행할 수 있는 rwx 권한을 가집니다. 다른 사용자는 기본적으로 해당 사용자의 홈 디렉토리 내 파일에 접근할 수 없습니다. 이는 사용자의 개인 정보 및 설정의 보안을 보장합니다.

5. 틸드(~) 기호

쉘 환경에서 ~ 기호는 현재 로그인된 사용자의 홈 디렉토리를 나타내는 약어(shortcut)로 사용됩니다.

cd ~          # 현재 사용자의 홈 디렉토리로 이동
cd ~/Documents  # 홈 디렉토리 아래 Documents 디렉토리로 이동
ls ~          # 홈 디렉토리의 내용을 출력

6. /etc/skel 디렉토리

새로운 사용자가 시스템에 추가될 때, 해당 사용자의 홈 디렉토리는 /etc/skel 디렉토리의 내용(숨김 파일/디렉토리 등)을 복사하여 초기 설정됩니다. 이 디렉토리는 새로운 사용자를 위한 기본 환경을 정의하는 역할을 합니다.

요약

리눅스의 사용자 디렉토리(홈 디렉토리)는 각 사용자의 독립적인 작업 공간이자 설정 공간입니다. /home/사용자명에 위치하며, 개인 파일, 애플리케이션 데이터, 그리고 사용자 환경을 정의하는 다양한 숨김 설정 파일들을 포함합니다. ~ 기호로 쉽게 접근할 수 있으며, 사용자별로 권한이 분리되어 보안이 유지됩니다.