더북(TheBook)

아카이브를 추출하려면 아카이브 이름으로 다시 tar 명령을 실행하는데, 이번에는 c 인자 대신 추출(extract)을 의미하는 x 인자를 사용한다.

$ tar xvf stuff.tar

Warning

아카이브를 추출하면 아무런 경고 메시지 없이 현재 디렉터리에 있는 똑같은 이름의 파일을 덮어쓴다. 여기에서는 괜찮지만, 일반적으로 이런 작동 방식은 문제가 된다.

 

ls -l 명령을 다시 한번 더 실행하면 원하지 않은 결과가 나온다. 세 파일 모두, 심지어 file3까지 여러분이 소유하고 있다.

$ ls -l
-rw-rw-r-- 1 username username 0 8월 6 10:02 file1
-rw-rw-r-- 1 username username 0 8월 6 10:02 file2
-rw-rw-r-- 1 username username 0 8월 6 10:02 file3

곤란하게 되었다. 사용자 newuser가 이 일을 알면 기뻐하지 않을 것이다. 이 일을 어떻게 해결해야 할까? 우선은 문제가 무엇인지부터 알아야 한다.

일반적으로 관리자 권한이 있는 사용자만 다른 사용자 계정에 있는 리소스를 이용할 수 있다. 예를 들어, 내 파일 중 하나의 소유자를 동료로 바꾸려고 할 때 이는 다른 사용자 계정을 변경해야 하는 작업이므로 일반 사용자는 할 수 없다. 너그러움도 한계가 있다. 따라서 아카이브에서 파일을 추출할 때 다른 사용자 소유의 파일로 저장하는 것은 불가능하다. 원래 권한으로 파일을 추출하는 것도 비슷한 문제가 있다. 해결책은 sudo를 이용해 관리자 권한으로 작업을 수행하는 것이다. 이제는 감을 잡았으리라 본다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.