본문 바로가기

etc/Linux 명령어

chmod

change mode의 약자로 파일이나 디렉토리의 권한(permission)을 변경할 수 있다.

 

파일 정보 보기

코랩에서 실행해본 결과이다. 나는 캐글 데이터셋을 다운로드하기 위해 kaggle.json의 권한을 변경하고 싶다!

예를 들어 kaggle.json의 권한은 rw-r--r--인데 3개씩 나눠서 소유자, 소유그룹, 그외 사용자의 권한을 나타낸다.

  • r : read
  • w : write
  • x : excute

맨 앞에 d는 directory를 의미한다.

사용 방법

chmod [변경될 퍼미션값][변경할 파일]
8진법 2진법 파일모드
0 000 ---
1 001 --x
2 010 -w-
3 011 -wx
4 100 r--
5 101 r-x
6 110 rw-
7 111 rwx

변경될 퍼미션값은 위의 테이블을 참고하면 된다.

 

나는 다음과 같이 사용했다.

!chmod 600 ~/.kaggle/kaggle.json

600이니까 ~/.kaggle/kaggle.json 파일의 권한을 rw-------으로 바꿔줘! 이다.

 

 

잘 바뀌었다.

 

권한을 변경하고 보니까 느껴진게 데이터셋을 다운로드할 때는 이미 기존에도 rw 권한을 갖고있어서 변경하지 않아도 상관없지 않을까 싶어서 실행해봤는데 다음과 같은 경고문구가 떳다.

내 생각대로 데이터셋을 다운로드 받는데는 아무런 문제가 없지만 내 kaggle api 키가 소유그룹이나 다른 사용자에게도 read 권한이 그대로 남아있어서 그런 것 같다. 리눅스는 보안을 중요시 여기는 것 같다.

 

 

 

참고

https://sehoonoverflow.tistory.com/18

'etc > Linux 명령어' 카테고리의 다른 글

unzip  (0) 2023.09.07
ls  (0) 2023.09.07
cp  (0) 2023.09.07
mkdir  (0) 2023.09.07