리눅스 / chown, chmod / 파일 또는 디렉토리 소유자, 소유그룹, 권한 설정

chown과 chmod는 파일 및 디렉토리의 권한과 소유자를 관리하는 데 사용되는 Linux 명령어입니다.

정보 확인

  • ls 명령어에 -l 옵션을 붙여서 파일 또는 디렉토리의 권한과 소유자(그룹)을 확인할 수 있습니다.
  • 제일 앞에 있는 문자는 디렉토리인지 파일인지는 나타냅니다. d는 디렉토리라는 뜻이고, -는 파일이라는 뜻입니다.
  • 그 다음 3개의 문자열은 소유자의 권한을, 그 다음 3개의 문자열은 소유그룹의 권한을, 그 다음 3개의 문자열은 소유자(그룹) 이외의 권한을 나타냅니다.
  • 처음 나오는 jb는 소유자, 그 다음 나오는 jb는 소유그룹입니다.
# ls -l
drwxrwxr-x 2 jb jb 4096 Feb 16 22:28 test_directory
-rw-rw-r-- 1 jb jb    4 Feb 16 22:34 test_file

chown

chown은 파일 또는 디렉토리의 소유자와 소유그룹을 정하는 명령어입니다.

  • test_file의 소유자를 jb, 소유그룹을 hs로 정합니다.
# chown jb:hs test_file
  • 소유그룹은 그대로 둔 채 소유자만 jb로 변경합니다.
# chown jb test_file
  • 소유자는 그대로 둔 채 소유그룹만 hs로 변경합니다.
# chown :hs test_file
  • data라는 디렉토리가 있을 때 다음과 같이 명령하면, data 디렉토리와 그 안에 있는 파일 또는 디렉토리의 소유자를 jb, 소유 그룹을 hs로 만듭니다.
chown -R jb:hs data

chmod

chmod은 파일이나 디렉토리의 접근 권한을 변경하는 명령어입니다.

  • r은 읽기(read) 권한, w는 쓰기(write) 권한, x는 실행(excute) 권한입니다.
  • 다음을 해석하면, test_file의 소유자는 jb, 소유그룹은 jb이고, 소유자는 읽고 쓰기 가능, 소유그룹은 읽고 쓰기 가능, 나머지는 읽기 가능입니다.
-rw-rw-r-- 1 jb jb 4 Feb 16 22:34 test_file
  • r은 4, w는 2, x는 1입니다. 따라서 7은 rwx, 6은 rw-, 5는 r-x, 4는 r--을 뜻합니다.
  • 따라서 다음은 소유자, 소유그룹, 다른 사용자 모두에게 읽기, 쓰기, 실행 권한을 주는 것입니다.
chmod 777 test_file
  • 다음은 rwxr-x---로 만드는 것입니다.
chmod 750 test_file
  • u는 소유자, g는 소유그룹, o는 다른 사용자이고, +는 추가, -는 제거를 뜻합니다.
  • 따라서 다음은 소유자에게 실행 권한을 추가하는 것입니다.
chmod u+x test_file
  • 다음은 소유그룹에서 쓰기 권한을 제거하는 것입니다.
chmod g-w test_file
  • a는 전체를 뜻하므로, 다음은 소유자, 소유그룹, 다른 사용자의 읽기 권한을 제거하는 것입니다.
chmod a-r test_file
  • data라는 디렉토리가 있을 때 다음과 같이 명령하면, data 디렉토리와 그 안에 있는 파일 또는 디렉토리의 권한을 777로 만듭니다.
# chmod -R 777 data
같은 카테고리의 다른 글

리눅스 / 명령어 / cat / 파일 내용 출력하는 명령어

리눅스의 cat(concatenate의 약자) 명령어는 파일의 내용을 화면에 출력하거나 파일을 결합하는 데 사용됩니다. cat 명령어는 주로 텍스트 파일을 다룰 때 유용하며, 여러 개의 파일을 한 번에 읽거나 결합할 수 있습니다. 다음과 같은 두 개의 파일이 있다고 할 때 file1 1-1 1-2 1-3 file2 2-1 2-2 2-3 cat filename cat 뒤에 파일 이름을 넣으면 파일 안의 내용을 보여줍니다. # cat file1 1-1 1-2 1-3 파일 이름을 연달아 넣으면 ...

Ubuntu 16.04 Server / PHP / 메모리 늘리는 방법

PHP 설정은 php.ini에서 한다. Ubuntu 16.04에서 php.ini의 위치는 /etc/php/7.0/apache2/php.ini 이다. PHP 버전에 따라 7.0은 다른 숫자일 수 있다. 메모리를 늘리기 위해 수정해야 할 것은 memory_limit이다. 기본값은 128M이다. 128을 적절히 변경한다. memory_limit = 128M 변경한 설정이 적용되도록 하려면 웹서버를 다시 시작하거나 다시 로드한다. Apache 웹서버라면 다음과 같이 명령하여 다시 시작할 수 있고, # service apache2 restart 다음과 같이 ...

Google Ads / 공유 예산 설정하는 방법

Google Ads / 공유 예산 설정하는 방법

구글 애드(Google Ads)는 캠페인별로 하루 예산을 정할 수 있습니다. 하루 지출 가능한 금액을 정하는 것인데, 정확히 지키지는 않습니다. 월 평균으로 계산을 해서 예산보다 더 지출되는 경우도 있습니다. 예를 들어 하루 10,000원으로 정했다면, 월 300,000 한도로 지출을 하기에, 10,000보다 더 나가기도 합니다. 캠페인은 검색 캠페인과 디스플레이 캠페인으로 구분되는데, 한 가지 주제의 광고라 ...

Ubuntu 18.04 Server / phpMyAdmin 설치하는 방법

Ubuntu 18.04 Server / phpMyAdmin 설치하는 방법

phpMyAdmin은 MySQL, MariaDB를 웹브라우저에서 관리할 수 있게 해주는 소프트웨어입니다. Ubuntu 18.04에 phpMyAdmin을 설치하고 설정하는 방법을 알아보겠습니다. 설치 apt install phpmyadmin 설치하는 과정에서 몇 가지 질문을 합니다. 사용하는 웹서버를 선택합니다. 비밀번호를 정하고... 다시 한 번 입력합니다. Yes를 선택하고 진행하면 설치가 끝납니다. 접속 웹브라우저로 서버 주소에 phpmyadmin을 붙여서 접속합니다. MySQL 또는 MariaDB의 사용자명과 암호를 입력해서 로그인하는데... root 계정으로 접속이 불가능할 수도 있습니다. 만약 root으로 ...

OBS Studio / 디스플레이 캡쳐 / 특정 영역 녹화하는 방법

OBS Studio / 디스플레이 캡쳐 / 특정 영역 녹화하는 방법

OBS Studio로 녹화할 때, 모니터 전체가 아닌 특정 영역만 녹화할 수 있다. 디스플레이 캡처를 추가하고, 필요한 부분만 남기고 자르면 된다. 를 추가한다. 를 클릭한다. 를 클릭한다. 적당히 이름을 정하고 를 클릭한다. 영역 지정 방법은 상대적과 절대적이 있는데, 에 체크 되어 있으면 상대적으로 지정한다. 아래와 같이 하면 상하좌우 300px을 자르고 남은 부분을 지정한다. 아래와 ...

당구 / 길 / 앞으로 걸어 치기, 뒤로 걸어 치기, 미러법

당구 / 길 / 앞으로 걸어 치기, 뒤로 걸어 치기, 미러법

걸어 치기 걸어 치기는 쿠션을 먼저 한 번 맞추고 1적구를 맞춘 후 쿠션을 두 번 더 맞추고 2적구를 맞추는 기술입니다. 걸어 치기에는 앞으로 걸어 치기, 뒤로 걸어 치기 두 가지가 있습니다. 뒤로 걸어 치기 뒤로 걸어 치기는 보통 구멍이라고 하는데, 아래와 같이 치는 것을 말합니다. 앞으로 걸어 치기 아래와 같이 치는 것을 앞으로 걸어 치기라고 ...

리눅스 / 절전 모드 진입 끄는 방법, 노트북 덮개 닫아도 켜져 있게 하는 방법

노트북에 리눅스를 설치했다. 노트북에 설치했지만 용도는 서버용. 그래서 항상 켜져 있어야 한다. 그런데 노트북의 특성인지 일정 시간이 지나면 절전 모드로 들어가고, 노트북 덮개를 닫으면 잠금(?) 상태가 된다. 그래서 서비스가 중지되거나 원격 연결이 되지 않는데... 항상 켜져 있게 하는 방법은 다음과 같다. 절전 모드 진입하기 않게 하는 방법 다음과 같이 명령하면 절전 모드가 해제된다. # ...

워드프레스 / 함수 / wp_is_mobile() / 모바일 접속 여부 판단하는 함수

워드프레스 / 함수 / wp_is_mobile() / 모바일 접속 여부 판단하는 함수

wp_is_mobile() wp_is_mobile()은 모바일 기기로 접속하면 true, 모바일 기기가 아니라면 false를 반환하는 함수이다. 모바일인지 아닌지 구분하는 기준은 $_SERVER 이다. wp_is_mobile()은 wp-includes/vars.php에 정의되어 있다. 예제 1 모바일이면 A를 출력한다. <?php if ( wp_is_mobile() ) { echo 'A'; } ?> 예제 2 모바일이 아니면 A를 출력한다. <?php if ( !wp_is_mobile() ) { echo 'A'; ...

OBS Studio / 설치하는 방법

OBS Studio / 설치하는 방법

OBS Studio는 영상 녹화 또는 방송을 할 수 있게 해주는 오픈소스 프로그램입니다. 주요 영상 플랫폼을 지원하고, 고화질의 녹화가 가능합니다. OBS Studio를 설치하고 기본 설정하는 방법을 알아보겠습니다. 다운로드 https://obsproject.com/ko에서 다운로드합니다. 윈도우, 맥, 리눅스를 지원합니다. 자신의 환경에 맞는 걸 다운로드하세요. 여기서는 윈도우용을 다운로드하겠습니다. 설치 다운로드한 파일을 실행하면 설치가 시작됩니다. 를 클릭합니다. 라이선스에 동의하면 를 클릭합니다. 클릭하지 않으면 진행되지 ...

아이피타임(ipTIME) 공유기 / 포트미러링 설정하는 방법

아이피타임(ipTIME) 공유기 / 포트미러링 설정하는 방법

포트 미러링(Port Mirroring)은 네트워크 장비, 특히 스위치에서 특정 포트에 들어오거나 나가는 트래픽을 다른 포트로 복사하여 전달하는 기능입니다. 이를 통해 네트워크 트래픽을 분석하거나 모니터링하는 데 사용할 수 있습니다. 주요 목적은 네트워크 상에서 발생하는 트래픽을 실시간으로 분석할 수 있게 하는 것으로, 보통 네트워크 성능 관리, 보안 침해 탐지, 문제 해결, 그리고 침입 탐지 ...