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

ls -l

  • 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

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

같은 카테고리의 다른 글

리눅스 / 게이트웨이(gateway) 확인하는 방법

리눅스 / 게이트웨이(gateway) 확인하는 방법

리눅스에서 네트워크 정보는 주로 ifconfig, ip addr 명령어로 확인합니다. 그런데, gateway 정보는 나오지 않습니다. 만약 gateway 정보가 필요하다면 route 명령어를 사용합니다.

리눅스 / 명령어 / systemctl

리눅스 / 명령어 / systemctl

서비스 관리 service_name은 서비스 이름으로 바꾸어 사용합니다. 예를 들어 Apache라면 httpd, MariaDB라면 matiadb. 서비스 상태 확인 systemctl status service_name.service 서비스 시작 systemctl start service_name.service 서비스 재시작 systemctl restart service_name.service 서비스 중지 systemctl stop service_name.service 부팅 시 서비스 자동 시작 systemctl enable service_name.service 부팅 시 서비스 자동 시작 해제 systemctl disable service_name.service 서비스 목록 보기 systemctl list-units --type=service

리눅스 / 명령어 / man - 명령어의 설명서 출력하는 명령어

리눅스 / 명령어 / man - 명령어의 설명서 출력하는 명령어

man은 manual의 약어로, 명령어의 설명서를 출력하는 명령어입니다. man 뒤에 명령어 이름을 넣고 엔터를 누릅니다. 예를 들어 man rm 은 rm 명령어의 설명서를 출력합니다. ↑키를 누르면 한 줄 위로 올라가고, ↓키를 누르면 한 줄 아래로 내려갑니다. Page Up 키를 누르면 한 페이지 위로 올라가고, Page Down 키를 누르면 한 페이지 아래로 내려갑니다. /를 누르고 단어를 입력하면 ...

리눅스 / rsync / 동기화 프로그램

리눅스 / rsync / 동기화 프로그램

rsync rsync는 동기화 프로그램입니다. 백업할 때 유용하게 사용할 수 있습니다. 사용법 기본 rsync -avz /abc/def /xyz abc 디렉토리 안의 def 디렉토리를 xyz 디렉토리 안에 동기화시키라는 뜻입니다. 처음 실행하는 것이라면 xyz 디렉토리 안에 def 디렉토리가 복사됩니다. 다시 실행시키면 /abc/def 디렉토리의 내용 중 수정되거나 추가된 것만 /xyz/def 디렉토리로 복사됩니다. /abc/def에서 삭제된 내용은 /xyz/def에 반영되지 않습니다. rsync -avz /abc/def/ /xyz def 뒤에 /를 ...

리눅스 / 그룹 / 그룹 조회, 그룹 추가, 그룹 삭제, 그룹 수정

리눅스 / 그룹 / 그룹 조회, 그룹 추가, 그룹 삭제, 그룹 수정

그룹 조회 그룹 목록은 /et/group 파일에 있습니다. cat 명령어로 전체를 조회하거나... cat /etc/group tail 명령어로 마지막 부분을 조회할 수 있습니다. # tail -n 5 /etc/group avahi:x:70: slocate:x:21: rngd:x:974: tcpdump:x:72: vboxsf:x:973: X:Y:Z 형식으로 나오는데, X는 그룹 이름, Y는 그룹 비밀번호, Z는 그룹 ID입니다. 그룹 추가 groupadd 명령으로 그룹을 추가합니다. # groupadd group-1 # tail -n 5 /etc/group slocate:x:21: rngd:x:974: tcpdump:x:72: vboxsf:x:973: group-1:x:1000: 그룹 삭제 groupdel 명령으로 그룹을 삭제합니다. # ...

리눅스 / 하드디스크 파디션 만들기, 포맷하기, 마운트하기

리눅스 / 하드디스크 파디션 만들기, 포맷하기, 마운트하기

리눅스에서 하드디스크 파티션 만들고, 포맷 하고, 마운트 하는 방법을 요약합니다. 장착된 하드디스크 확인하기 컴퓨터에 장착된 하드디스크 정보를 출력합니다. fdisk -l /dev/sda, /dev/sdb 등이 하드디스크입니다. 파티션 만들기 파티션을 관리하는 명령어는 fdisk입니다. /dev/sdb의 파티션을 관리하고 싶다면 다음과 같이 명령합니다. fdisk /dev/sdb 도움말이 필요하면 m을 입력합니다. 새 파티션은 n을 입력하고 안내에 따라 만듭니다. w를 입력해야 변경사항이 반영됩니다. 포맷하기 포맷하는 명령어는 mkfs입니다. 예를 들어 /dev/sdb1 파티션을 ...

리눅스 / 명령어 / rmdir - 빈 디렉토리 삭제하는 명령어

리눅스 / 명령어 / rmdir - 빈 디렉토리 삭제하는 명령어

rmdir rmdir은 빈 디렉토리를 삭제하는 명령어입니다. Remove the DIRECTORY(ies), if they are empty. 사용법 rmdir directory rmdir a a 디렉토리를 삭제합니다. 비어있다면 삭제를 하고, 그렇지 않다면 rmdir: failed to remove ‘a’: Directory not empty 를 출력합니다. rmdir --ignore-fail-on-non-empty directory 디렉토리가 비어있지 않아도 메시지를 출력하지 않습니다. rmdir -v directory rmdir -v * 현재 디렉토리 안에 있는 모든 비어있는 디렉토리를 삭제합니다. v 옵션을 넣으면 작업 결과를 ...

리눅스 / RAID의 뜻과 종류

리눅스 / RAID의 뜻과 종류

RAID Redundant Array of Inexpensive Disk or Redundant Array of Independent Disk 여러 개의 하드디스크를 하나처럼 사용하게 하는 기술. 예를 들어 1TB 하드디스크 두 개를 묶어서 2TB 하드디스크처럼 사용할 수 있다. 크게 하드웨어 RAID와 소프트웨어 RAID로 구분할 수 있다. 하드웨어 RAID는 성능이 좋으나 비싸다. 소프트웨어 RAID는 운영체제에서 지원하는 것으로 OS RAID라도고 한다. Linear RAID 두 개 이상의 ...

리눅스 / 명령어 / history – 이전에 실행했던 명령어 목록 출력하는 명령어

리눅스 / 명령어 / history – 이전에 실행했던 명령어 목록 출력하는 명령어

history history는 이전에 실행했던 명령어 목록 출력하는 명령어입니다. history 이전에 실행했던 명령어 목록을 일련번호와 함께 출력합니다. history n 최근 n개의 명령어 목록을 출력합니다. history 10 최근 실행한 10개의 명령어를 출력합니다. !! !!를 입력하고 엔터를 누르면 직전에 실행했던 명령어를 다시 실행합니다. !n 일련번호가 n인 명령어를 실행합니다. !202 번호가 202인 명령어를 실행합니다.

리눅스 / 명령어 / rdate - 타임서버의 시간과 동기화해주는 명령어

리눅스 / 명령어 / rdate - 타임서버의 시간과 동기화해주는 명령어

rdate는 서버의 시간과 타임서버의 시간을 동기화해주는 명령어입니다. rdate는 설치되어있지 않는 경우가 많으므로, 필요하다면 설치를 해야 합니다. CentOS라면 yum install rdate Ubuntu라면 apt install rdate 와 같이 명령하여 설치할 수 있습니다. 타임서버의 시간을 확인할 때는 -p 옵션을 사용합니다. 현재 서버의 시간을 변경하지 않습니다. rdate -p time.bora.net 현재 서버의 시간을 타임서버의 시간으로 맞출 때에는 -s 옵션을 붙입니다. rdate -s time.bora.net CentOS ...