pwd
: 현재 경로 확인print name of current/working directory
hyojin@computer:~$ pwd
/home/hyojin
ls
: 목록 출력list directory contents
hyojin@computer:~/test$ pwd
/home/hyojin/test
hyojin@computer:~/test$ ls
color.txt price.txt redirection
-a
: do not ignore entries starting with *
hyojin@computer:~/test$ ls -a
. .. color.txt price.txt redirection
-l
: use a long listing formathyojin@computer:~/test$ ls -l
total 16
-rw-r--r-- 1 hyojin hyojin 50 Aug 22 12:00 color.txt
-rw-r--r-- 1 hyojin hyojin 88 Aug 24 10:59 price.txt
drwxr-xr-x 2 hyojin hyojin 4096 Sep 1 15:42 redirection
-R
: list subdirectories recursivelyhyojin@computer:~/test$ ls -R
.:
color.txt price.txt redirection
./redirection:
date.txt errorlog.txt greeting.txt list.txt
-alR
hyojin@computer:~/test$ ls -alR
.:
total 24
drwxr-xr-x 3 hyojin hyojin 4096 Aug 30 14:52 .
drwxr-x--- 7 hyojin hyojin 4096 Sep 5 14:25 ..
-rw-r--r-- 1 hyojin hyojin 50 Aug 22 12:00 color.txt
-rw-r--r-- 1 hyojin hyojin 88 Aug 24 10:59 price.txt
drwxr-xr-x 2 hyojin hyojin 4096 Sep 1 15:42 redirection
./redirection:
total 116
drwxr-xr-x 2 hyojin hyojin 4096 Sep 1 15:42 .
drwxr-xr-x 3 hyojin hyojin 4096 Aug 30 14:52 ..
-rw-r--r-- 1 hyojin hyojin 58 Aug 31 13:37 date.txt
-rw-r--r-- 1 hyojin hyojin 105 Sep 1 15:45 errorlog.txt
-rw-r--r-- 1 hyojin hyojin 45 Aug 30 17:46 greeting.txt
-rw-r--r-- 1 hyojin hyojin 48331 Aug 30 17:32 list.txt
cd
: 경로 이동change directory
hyojin@computer:~/test$ pwd
/home/hyojin/test
hyojin@computer:~/test$ cd .
hyojin@computer:~/test$ pwd
/home/hyojin/test
hyojin@computer:~/test$ cd ..
hyojin@computer:~$ pwd
/home/hyojin
hyojin@computer:~$ cd test
hyojin@computer:~/test$ pwd
/home/hyojin/test
cd -
: 바로 직전 위치로 이동hyojin@computer:~$ pwd
/home/ubuntu
hyojin@computer:~$ cd ./dir1/dir2/dir3
hyojin@computer:~/dir1/dir2/dir3$ pwd
/home/ubuntu/dir1/dir2/dir3
hyojin@computer:~/dir1/dir2/dir3$ cd -
/home/ubuntu
hyojin@computer:~$ pwd
/home/ubuntu
df
: 파일 시스템 디스크 용량 확인report file system disk space usage
리눅스의 파일들은 파일의 종류에 따라 파일시스템이 달라진다.
df
명령어는 파일시스템 종류에 따른 용량과 어디에 마운트 되어있는지에 대한 정보들을 보여줍니다.
hyojin@computer:~$ df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/root 50620216 1745304 48858528 4% /
devtmpfs 7796664 0 7796664 0% /dev
tmpfs 7804420 0 7804420 0% /dev/shm
tmpfs 1560884 864 1560020 1% /run
tmpfs 5120 0 5120 0% /run/lock
tmpfs 7804420 0 7804420 0% /sys/fs/cgroup
/dev/loop2 57088 57088 0 100% /snap/core18/2745
/dev/loop1 65024 65024 0 100% /snap/core20/1891
/dev/loop0 25088 25088 0 100% /snap/amazon-ssm-agent/6312
/dev/loop3 94080 94080 0 100% /snap/lxd/24061
/dev/loop4 54528 54528 0 100% /snap/snapd/19122
/dev/xvda15 106858 6182 100677 6% /boot/efi
/dev/loop5 57088 57088 0 100% /snap/core18/2790
tmpfs 1560884 0 1560884 0% /run/user/1000
du
: 파일 사용량 확인estimate file space usage
파일시스템 정보가 아닌, 원하는 공간에서의 디렉토리 사용량 정보를 보여줍니다. 현재 디렉토리의 용량 사용량을 보고 싶으면 다음과 같이 입력하면 됩니다.
hyojin@computer:~$ du
4 ./.cache
8 ./.ssh
4 ./dir1/dir2/dir3
8 ./dir1/dir2
12 ./dir1
44 .
-h
: print sizes in human readable format (e.g., 1K 234M 2G)hyojin@computer:~$ du -h
4.0K ./.cache
8.0K ./.ssh
4.0K ./dir1/dir2/dir3
8.0K ./dir1/dir2
12K ./dir1
44K .
hyojin@computer:~$ du -h dir1
4.0K dir1/dir2/dir3
8.0K dir1/dir2
12K dir1
-d
: 원하는 깊이(Depth)까지의 용량 정보를 확인, print the total for a directory (or file, with --all
)hyojin@computer:~$ du -h -d 1 dir1
8.0K dir1/dir2
12K dir1
chmod
: 권한 변경change file mode bits
파일의 소유자로 하여금 소유자가 속한 그룹이나 다른 그룹에 속한 사용자들이 파일에 접근하기 위한 권한을 변경할 때 사용
ubuntu@$your_host_name:~$ ls -al
...
drwxrwxr-x 3 ubuntu ubuntu 4096 Sep 10 10:57 dir1/
d/rwx/rwx/r-x
처럼 끊어서 구분하며, 각 구분이 의미하는 바는 다음과 같다. (r
: 읽기, w
: 쓰기, x
: 실행)d
: 디렉토리를 의미한다. 파일인 경우 -
로 표기된다.rwx
: 파일 소유자에 대한 권한 rwx
: 파일 소유자가 속한 그룹에 대한 권한r-x
: 파일 소유자가 속하지 않은 그룹에 대한 권한권한을 수정하는 경우 일반적으로 숫자를 사용한다.
---
: 0+0+0=0--x
: 0+0+1=1-w-
: 0+2+0=2-wx
: 0+2+1=3r--
: 4+0+0=4r-x
: 4+0+1=5rw-
: 4+2+0=6rwx
: 4+2+1=7예를 들어 읽기, 실행만 설정하려면
r-x
이고, 이를 이진법으로 표현하면 로 표현된다. 이를 10진법으로 바꿨을 때의 숫자는 으로 설정된다.
dir1 폴더에 대한 권한을 소유자는 읽기,쓰기,실행을 모두할 수 있고(rwx
: 7), 같은 그룹내 사용자는 읽기와 쓰기만(rw-
: 6), 다른 그룹내의 사용자는 실행에 대한 권한(--x
: 1)을 주려면 다음과 같이 권한을 설정하면 된다.
ubuntu@$your_host_name:~$ chmod 761 dir1
ubuntu@$your_host_name:~$ ll
...
drwxrw---x 3 ubuntu ubuntu 4096 Sep 10 10:57 dir1/
-R
: 하위 디렉토리의 권한까지 모두 한꺼번에 설정, change files and directories recursively
ubuntu@$your_host_name:~$ chmod 777 dir1
ubuntu@$your_host_name:~$ chmod -R 766 dir1
ubuntu@$your_host_name:~$ ls -alR dir1/
dir1/:
total 12
drwxrw-rw- 3 ubuntu ubuntu 4096 Sep 10 10:57 .
drwxr-xr-x 6 ubuntu ubuntu 4096 Sep 10 10:59 ..
drwxrw-rw- 3 ubuntu ubuntu 4096 Sep 10 10:57 dir2
dir1/dir2:
total 12
drwxrw-rw- 3 ubuntu ubuntu 4096 Sep 10 10:57 .
drwxrw-rw- 3 ubuntu ubuntu 4096 Sep 10 10:57 ..
drwxrw-rw- 2 ubuntu ubuntu 4096 Sep 10 10:57 dir3
dir1/dir2/dir3:
total 8
drwxrw-rw- 2 ubuntu ubuntu 4096 Sep 10 10:57 .
drwxrw-rw- 3 ubuntu ubuntu 4096 Sep 10 10:57 ..
특정 사용자 별로 권한을 부여하는 방법도 있다.
소유자(User)는
u
, 그룹(Group)은g
, 다른 그룹의 사용자(Others)는o
로 관리하며, 전체 지정(All)은a
로 할 수 있습니다. 여기에 특정 권한을 더하려면+
를 사용하고, 권한을 제거하려면-
를 사용한다.
chmod o-w dir1
: 다른 그룹의 사용자(o
)에 대해 읽기 권한을 제거(-w
)ubuntu@$your_host_name:~$ chmod o-w dir1
ubuntu@$your_host_name:~$ l -l
...
drwxrw-r-- 3 ubuntu ubuntu 4096 Sep 10 10:57 dir1/
chmod g+x dir1
: 같은 그룹 내 사용자(g
)에게 실행 권한을 부여(+x
)ubuntu@$your_host_name:~$ chmod g+x dir1
ubuntu@$your_host_name:~$ l -l
...
drwxrwxr-- 3 ubuntu ubuntu 4096 Sep 10 10:57 dir1/
/
: 루트 디렉토리리눅스 파일 시스템에서 최상위 디렉토리로 시스템의 시작점을 나타낸다.
/bin
/etc
/usr
~
, /home
: home 디렉토리
/home
contains a home folder 'for each user' on the system.
hyojin@computer:~$ pwd
/home/hyojin