본문 바로가기
IT

[리눅스 기초 #5] "내 집인데 왜 못 들어가?" : chown으로 파일 소유권 되찾기

by sunyjiny 2026. 1. 26.
반응형

 

리눅스 공부를 하며 권한(chmod)을 익히고 나니 모든 것이 해결된 줄 알았습니다. 하지만 어느 날, 윈도우에서 작업하던 소스 코드를 WSL2 우분투 환경으로 복사해온 뒤 예상치 못한 난관에 부딪혔습니다. 파일의 권한을 충분히 주었음에도 수정이 되지 않거나, 특정 폴더에 파일을 쓸 수 없는 현상이 발생한 것이죠.

이유를 찾아보니 파일의 '권한' 이전에 **'소유주(Owner)'**가 문제였습니다. 윈도우나 시스템 루트에서 넘어온 파일이 root라는 절대 권력자의 소유로 되어 있었기 때문입니다. 오늘은 내 집인데 내 이름으로 등기가 안 된 것 같은 억울함을 해결해 주는 명령어, chown (Change Owner) 사용기를 공유합니다.


1. 나의 경험담: "루트(Root)라는 벽에 부딪히다"

 

Flutter 프로젝트를 진행하다가 특정 라이브러리 설정 파일을 수정해야 했습니다. 분명 에디터로 열었는데 "ReadOnly" 상태라며 수정이 되지 않더군요. 당황해서 chmod 777까지 동원해 보았지만 소용없었습니다.

알고 보니 해당 파일의 주인은 제가 아닌 시스템 관리자인 root였고, 리눅스 시스템은 주인이 아닌 자의 접근을 엄격히 통제하고 있었습니다. 마치 제가 산 땅인데 서류상 주인이 전 집주인으로 되어 있어 인테리어조차 못 하는 상황과 같았죠. 이때 필요한 것이 바로 '명의 이전' 명령어, chown이었습니다.


2. Before: 주인 없는 방황하는 파일들

실험을 위해 sudo 권한을 이용해 root 소유의 파일을 하나 생성하고 상태를 확인해 보았습니다.

실험 코드:

Bash
 
# 1. sudo를 이용해 root 소유의 파일 생성
sudo touch root_file.txt

# 2. 파일 정보 확인 (소유자 확인)
ls -l root_file.txt

결과창에는 -rw-r--r-- 1 root root ...라는 문구가 뜹니다. 파일의 주인이 현재 로그인한 'user'가 아니라 'root'라는 뜻입니다.

![Image 1: A Linux terminal screen showing the output of 'ls -l root_file.txt'. The owner and group columns clearly show 'root root'. The user tries to edit the file using 'nano' and a 'File is unwritable' warning appears at the bottom.] (▲ Before: 파일의 주인이 root로 설정되어 있어, 일반 사용자인 나는 '읽기'만 가능하고 '수정'은 거부당하는 상태입니다.)


3. Action: 명의 이전 집행하기 (chown)

 

이제 이 파일의 소유권을 현재 로그인한 사용자인 나(user)에게로 가져오겠습니다. 주인을 바꾸는 행위는 매우 중대한 작업이므로, 명령어 앞에 항상 **sudo**를 붙여 관리자 권한으로 실행해야 합니다.

  • 기본 문법: sudo chown [소유자]:[그룹] [파일명]

명의 이전 코드:

Bash
 
# 파일의 소유자와 그룹을 현재 사용자(user)로 변경
sudo chown user:user root_file.txt

# 변경된 정보 다시 확인
ls -l root_file.txt

여기서 user:user는 [사용자 이름]:[그룹 이름]을 뜻합니다. 본인의 우분투 계정명을 넣으면 됩니다.


4. After: 드디어 내 것이 된 파일

명령어 한 줄을 입력했을 뿐인데, 결과는 놀라웠습니다.

![Image 2: The same terminal screen. After running the chown command, 'ls -l root_file.txt' now shows 'user user' instead of 'root root'. The text color of the filename might have changed, and the user successfully opens the file in 'nano' without any warnings.] (▲ After: 소유자가 user로 바뀌었습니다. 이제 더 이상 시스템의 눈치를 보지 않고 자유롭게 내용을 수정하고 저장할 수 있습니다.)


5. 실험을 마치며: 권한보다 무서운 소유권

이번 실험을 통해 리눅스에서 **'누가 이 파일을 만들었는가'**가 얼마나 중요한지 깨달았습니다. 윈도우에서는 대충 넘어가던 소유권 개념이 리눅스에서는 보안의 최전선이었던 셈입니다.

오늘의 핵심 요약:

  • **권한(chmod)**은 "이 파일을 어떻게 할 수 있는가"를 정하고,
  • **소유권(chown)**은 "이 파일이 누구의 것인가"를 정합니다.
  • 남의 물건에 아무리 권한을 주려고 해도, 주인이 허락하지 않으면 소용없다는 만고의 진리를 리눅스 터미널에서 배웠습니다.

이제 파일의 주인까지 되었으니, 다음 시간에는 리눅스에서 패키지를 설치하고 삭제하며 나만의 서버 환경을 본격적으로 구축하는 apt 명령어의 세계로 떠나보겠습니다.

 

반응형