Linux 파일 시스템 구조와 현재 위치 확인
3강. Linux 파일 시스템 구조와 현재 위치 확인
1. 이번 강의에서 해결할 문제
Windows 경로와 Linux 경로를 섞으면 도구가 파일을 찾지 못하고 빌드 성능도 떨어질 수 있습니다. 현재 위치와 홈 경로를 확인해 프로젝트의 기준 위치를 정합니다.
2. 학습 목표
3. 핵심 개념
Linux 경로는 /에서 시작하고 대소문자를 구분합니다. ~는 현재 사용자의 홈 디렉터리이며 일반 프로젝트는 ~/projects 아래에 두는 것이 안전합니다. WSL에서 Windows C 드라이브는 /mnt/c로 보이지만 Linux 빌드 도구를 주로 쓸 프로젝트는 성능과 권한 일관성을 위해 Linux 파일 시스템에 두는 것이 Microsoft 권장 방식입니다.
/는 모든 경로의 시작인 루트 디렉터리이고 ~는 사용자마다 다른 홈 경로의 축약입니다. .은 현재 위치, ..은 부모 위치입니다. /home/user/projects처럼 /로 시작하면 절대 경로이고 projects/app처럼 시작하면 현재 위치 기준 상대 경로입니다.
| 경로 | 역할 | 프로젝트 생성 여부 |
|---|---|---|
/ | 파일 시스템 최상위 | 직접 생성하지 않음 |
$HOME, ~ | 현재 사용자의 홈 | 개인 설정과 프로젝트 상위 폴더에 적합 |
~/projects | 사용자가 만든 개발 루트 | Linux 도구 중심 프로젝트에 적합 |
/mnt/c | WSL에서 본 Windows C 드라이브 | Windows 도구와 공유할 때 사용, Linux 빌드 특성 확인 |
Microsoft의 Windows·Linux 파일 시스템 작업 지침을 기준으로 프로젝트 위치를 정합니다.
4. 단계별 명령어와 예시
1. Ubuntu Bash(WSL)
실행 위치: Ubuntu 시작 위치
대상: 현재·홈·루트 경로
명령 목적: 아무 것도 변경하지 않고 현재 위치, 홈 경로, 주요 디렉터리의 존재와 소유권을 읽습니다.
pwd
printf "home=%s\n" "$HOME"
ls -ld / /home "$HOME" /mnt/c
예상 결과: pwd는 보통 /home/<사용자>를, home=...은 같은 홈 절대 경로를 표시합니다. ls -ld의 각 줄 첫 글자 d는 디렉터리임을 뜻합니다. 사용자명과 권한 문자는 환경마다 다를 수 있습니다.
2. Ubuntu Bash(WSL)
실행 위치: Ubuntu 홈 디렉터리
대상: 과정 전용 프로젝트 상위 폴더
실행 전 상태: cd "$HOME"이 성공하는지 확인합니다. /, /etc, 다른 사용자의 홈은 생성 대상이 아닙니다.
cd "$HOME"
mkdir -p "$HOME/projects"
cd "$HOME/projects"
pwd
예상 결과: 마지막 pwd가 /home/<사용자>/projects 형태로 표시됩니다. mkdir -p는 이미 폴더가 있어도 내부 파일을 지우지 않습니다.
5. 명령어가 동작하는 이유
pwd는 셸의 현재 작업 디렉터리를 절대 경로로 보여 주고, $HOME은 사용자별 홈 경로를 제공합니다. 모든 경로를 큰따옴표로 감싸면 공백이나 특수 문자가 생겨도 하나의 인수로 전달됩니다.
cd는 셸의 현재 위치를 바꾸고 mkdir -p는 필요한 폴더가 없을 때 만듭니다. 따라서 흐름은 홈 확인 → 홈으로 이동 → 전용 개발 루트 생성 → 그 위치로 이동 → 절대 경로 검증입니다.
6. 자주 하는 실수와 안전한 해결법
7. 직접 실습
8. 이해 점검 질문 3개
9. 핵심 요약
10. 다음 강의 연결
안전한 프로젝트 기준 경로를 정했습니다. 다음 강의에서는 이 전용 폴더 안에서 파일을 생성·복사·이동하고 결과를 검증합니다.
Linux 파일 시스템 구조와 현재 위치 확인 미니 퀴즈
선택 즉시 정답과 해설을 확인할 수 있습니다. 결과는 이 브라우저에만 저장됩니다.
학습을 마쳤나요?
직접 실습과 점검 질문까지 확인한 뒤 완료로 표시하세요.