1교시 09:30 ~ 10:30>
운영체제 종류와 정보 확인>
[root@server1 ~]# uname -a
Linux server1.example.com 4.18.0-305.3.1.el8.x86_64 #1 SMP Tue Jun 1 16:14:33 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
커널이름 호스트이름 커널 릴리즈 머신하드웨어 CPU 플랫폼 OS
주버전.부버전.fix버전-업데이트
커널릴리즈 확인>
[root@server1 ~]# uname -r
4.18.0-305.3.1.el8.x86_64
시스템 정보 확인>
[root@server1 ~]# hostnamectl
Static hostname: server1.example.com
Icon name: computer-vm
Chassis: vm
Machine ID: a4cd615ff8a842d3ba022df52777436b
Boot ID: c5e4c68c31ed40e18c210b75be8785de
Virtualization: vmware
Operating System: CentOS Linux 8
CPE OS Name: cpe:/o:centos:centos:8
Kernel: Linux 4.18.0-305.3.1.el8.x86_64
Architecture: x86-64
릴리즈 정보 확인>
[root@server1 ~]# cat /etc/redhat-release
CentOS Linux release 8.4.2105
시간 관련 명령어>
date
1. 시간 확인 명령어
2. 시간 설정 명령어[현재는 사용하지 않음]
3. 출력 포맷을 변경하여 파일명에 시간을 붙이는 용도로 사용.
[root@server1 ~]# date
Sat Dec 4 10:07:03 KST 2021
vm에서는 시간정보가 거의 일치한다.
linux를 설치하게 되면 자동으로 설치
open vmware tools 설치하게
vmware tools>
host - guest 시간을 동기화
시간 변경 확인>
[root@server1 ~]# date 08161300 // 월 일 시 분
Mon Aug 16 13:00:00 KST 2021
[root@server1 ~]# date 081613002009 // 월 일 시 분 년도
Sun Aug 16 13:00:00 KST 2009
rdate 원격지 시간 정보 설정 / 네트워크 상태를 전혀 고려하지 않음 / 빠르게 설정
ntp 원격지 시간 정보 설정 / 네트워크 상태에 따라 변화한 시간 정보 값을 같이 계산하기 때문에 정확한 시간을 설정 / 바로 변경되지 않고 일정 시간
1. date 명령어로 먼저 변경할 시간에 근접하게 시간 설정
2. ntp 서비스 기동
로그 파일 생성>
[root@server1 test]# touch file_`date +%m%d`.log
[root@server1 test]# ll
total 0
-rw-r--r--. 1 root root 0 Dec 4 10:34 file_1204.log
시간 정보 돌리기>
1. chrony 패키지 확인
[root@server1 ~]# rpm -qa | grep chrony
2. chrony.conf 파일 내용 추가
[root@server1 ~]# echo -e "server time.bora.net iburst
server send.mx.cdnetworks.com iburst
" >> /etc/chrony.conf
3. 서비스 재시작
[root@server1 ~]# systemctl restart chronyd
4. 시간 확인
[root@server1 ~]# date
2교시 10:40 ~ 11:40>
현재 작업중인 디렉토리 확인>
[root@server1 test]# pwd
/root/test
작업 디렉토리 변경>
[team01@server1 ~]$ cd /test
[team01@server1 test]$ pwd
/test
[team01@server1 test]$ cd
[team01@server1 ~]$ pwd
/home/team01
1. 현재 내가 작업하고 있는 위치 pwd
2. 이동하는 위치 ?
2-1. 절대경로 이동 cd /~
2-2. 상대경로 이동 cd test
/root : root 홈디렉토리
/ : 최상위 디렉토리
절대경로 : 항상 시작점 동일
[root@server1 /]# pwd
/
[root@server1 /]# cd /bin
[root@server1 bin]# pwd
/bin
최상위 디렉토리 부터 내가 이동하려는 디렉토리까지 모든 위치를 입력을 하면 된다.
상대경로 : 현재 위치에서 위/아래로 이동하여 디렉토리를 변경하는 방법
[root@server1 /]# pwd
/
[root@server1 /]# cd bin
[root@server1 bin]# pwd
/bin
. 과 .. 의 차이>
. : 현재 디렉토리를 표시
[root@server1 network-scripts]# cd .
[root@server1 network-scripts]# pwd
/etc/sysconfig/network-scripts
.. : 상위 디렉토리를 표시
[root@server1 network-scripts]# cd ..
[root@server1 sysconfig]# pwd
/etc/sysconfig
실행 파일 실행할떄>
./
[root@server1 cron.daily]# ./man-db.cron
3교시 11:50 ~ 12:50>
디렉토리 확인>
파일이름 / 디렉토리 이름 / inode 정보 확인
[root@server1 test]# ls -l file1
-rw-r--r--. 1 root root 0 Dec 4 12:06 file1
ls 옵션>
-a : 모든 파일 표시, 여기에는 숨김 파일(점(.)으로 시작하는 파일)도 표시한다.
-l : 디렉토리가 지정되는 경우 디렉토리의 내용을 자세히 보여준다. 또한 파일의 내용 이 지정되는 경우 파일의 속성 정보를 자세히 보여준다. 파일 종류, 링크 수, 소유자명, 그룹명, 파일 크기, 최종 수정일 및 용량, 파일명 표시한다.
-R : 해당 디렉토리와 서브디렉토리의 모든 내용을 표시
-F : 디렉토리인 경우에는 디렉토리 "/"표시를 하고 실행 파일인 경우는 뒤에 "*"표시를 한다.
-i : 해당 파일의 inode 번호를 표시한다.
-n : 파일의 소유자와 그룹을 숫자로( UID : GID )표시한다.
-d : 찾고자 하는 디렉토리에 관한 정보만을 표시한다.
4교시 11:50 ~ 13:30>
디렉토리 생성>
[root@server1 test]# mkdir -p dir2/dir3/dir4 // p : 부모디렉토리 생성
[root@server1 test]# tree /test
/test
├── dir1
└── dir2
└── dir3
└── dir4
디렉토리 삭제>
[root@server1 test]# rm -rf dir1 // 한개 삭제(안에 내용 잇어도 삭제)
[root@server1 test]# rmdir -p dir2/dir3/dir4 // 안에 디렉토리 삭제
touch>
1. 빈 파일 생성
2. 파일의 시간 변경
2-1. 현재 시간으로 변경
[root@server1 test]# cp -p /etc/passwd file2
[root@server1 test]# ls -l
total 4
-rw-r--r--. 1 root root 0 Dec 4 12:51 file1
-rw-r--r--. 1 root root 2597 Nov 27 16:53 file2
[root@server1 test]# touch file2
[root@server1 test]# ls -l
total 4
-rw-r--r--. 1 root root 0 Dec 4 12:51 file1
-rw-r--r--. 1 root root 2597 Dec 4 12:52 file2
2-2. 시간 지정 변경
[root@server1 test]# cp -p /etc/passwd file4
[root@server1 test]# ls -l
total 12
-rw-r--r--. 1 root root 0 Dec 4 12:51 file1
-rw-r--r--. 1 root root 2597 Dec 4 12:52 file2
-rw-r--r--. 1 root root 2597 Nov 27 16:53 file4
[root@server1 test]# touch -t 08081230 file4
[root@server1 test]# ls -l
total 12
-rw-r--r--. 1 root root 0 Dec 4 12:51 file1
-rw-r--r--. 1 root root 2597 Dec 4 12:52 file2
-rw-r--r--. 1 root root 2597 Aug 8 12:30 file4
cp>
파일 : cp 원본 대상
디렉토리 : cp -r 원본 대상
[root@server1 test]# touch file1
[root@server1 test]# ls -li
total 0
1411711 -rw-r--r--. 1 root root 0 Dec 4 12:56 file1
[root@server1 test]# cp file1 flie2
[root@server1 test]# ls -li
total 0
1411711 -rw-r--r--. 1 root root 0 Dec 4 12:56 file1
2139973 -rw-r--r--. 1 root root 0 Dec 4 12:56 flie2
[root@server1 test]#
[root@server1 test]# mkdir dir1
[root@server1 test]# ls -li
total 0
36649349 drwxr-xr-x. 2 root root 6 Dec 4 12:58 dir1
1411711 -rw-r--r--. 1 root root 0 Dec 4 12:56 file1
2139973 -rw-r--r--. 1 root root 0 Dec 4 12:56 flie2
[root@server1 test]# cp -r dir1 dir2
[root@server1 test]# ls -li
total 0
36649349 drwxr-xr-x. 2 root root 6 Dec 4 12:58 dir1
69901834 drwxr-xr-x. 2 root root 6 Dec 4 12:58 dir2
1411711 -rw-r--r--. 1 root root 0 Dec 4 12:56 file1
2139973 -rw-r--r--. 1 root root 0 Dec 4 12:56 flie2
[root@server1 test]#
mv> 이동 / 이름변경(단일 파일)
Term1 작업용
[root@server1 test]# touch file1
[root@server1 test]# mkdir dir1
[root@server1 test]# touch dir1/file2
[root@server1 test]# mv file1 file3
[root@server1 test]# mv file3 dir1
[root@server1 test]# mv dir1 dir2
[root@server1 test]# cp -r dir2 dir1
[root@server1 test]# mv dir1 dir2
Term2 모니터링용
[root@server1 test]# watch -n 1 tree /test
5교시 14:30 ~ 15:30>
rm> 삭제
rm 삭제할 대상
rm -i < 한번 확인
rm -r < 디렉토리 삭제
cat> 파일 결합 / 파일 내용 확인
-n : 줄번호를 공백을 포함하여 화면 왼쪽에 나타냄
[root@server1 test]# cat -n /etc/passwd
1 root:x:0:0:root:/root:/bin/bash
2 bin:x:1:1:bin:/bin:/sbin/nologin
3 daemon:x:2:2:daemon:/sbin:/sbin/nologin
4 adm:x:3:4:adm:/var/adm:/sbin/nologin
5 lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
6 sync:x:5:0:sync:/sbin:/bin/sync
7 shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
8 halt:x:7:0:halt:/sbin:/sbin/halt
9 mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
10 operator:x:11:0:operator:/root:/sbin/nologin
11 games:x:12:100:games:/usr/games:/sbin/nologin
12 ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
13 nobody:x:65534:65534:Kernel Overflow User:/:/sbin/nologin
14 dbus:x:81:81:System message bus:/:/sbin/nologin
15 systemd-coredump:x:999:997:systemd Core Dumper:/:/sbin/nologin
16 systemd-resolve:x:193:193:systemd Resolver:/:/sbin/nologin
17 tss:x:59:59:Account used for TPM access:/dev/null:/sbin/nologin
18 polkitd:x:998:996:User for polkitd:/:/sbin/nologin
19 geoclue:x:997:995:User for geoclue:/var/lib/geoclue:/sbin/nologin
20 rtkit:x:172:172:RealtimeKit:/proc:/sbin/nologin
21 pipewire:x:996:992:PipeWire System Daemon:/var/run/pipewire:/sbin/nologin
22 pulse:x:171:171:PulseAudio System Daemon:/var/run/pulse:/sbin/nologin
23 libstoragemgmt:x:995:989:daemon account for libstoragemgmt:/var/run/lsm:/sbin/nologin
24 qemu:x:107:107:qemu user:/:/sbin/nologin
25 usbmuxd:x:113:113:usbmuxd user:/:/sbin/nologin
26 unbound:x:994:988:Unbound DNS resolver:/etc/unbound:/sbin/nologin
27 gluster:x:993:987:GlusterFS daemons:/run/gluster:/sbin/nologin
28 rpc:x:32:32:Rpcbind Daemon:/var/lib/rpcbind:/sbin/nologin
29 avahi:x:70:70:Avahi mDNS/DNS-SD Stack:/var/run/avahi-daemon:/sbin/nologin
30 saslauth:x:992:76:Saslauthd user:/run/saslauthd:/sbin/nologin
31 dnsmasq:x:985:985:Dnsmasq DHCP and DNS server:/var/lib/dnsmasq:/sbin/nologin
32 radvd:x:75:75:radvd user:/:/sbin/nologin
33 sssd:x:984:984:User for sssd:/:/sbin/nologin
34 cockpit-ws:x:983:982:User for cockpit web service:/nonexisting:/sbin/nologin
35 cockpit-wsinstance:x:982:981:User for cockpit-ws instances:/nonexisting:/sbin/nologin
36 chrony:x:981:980::/var/lib/chrony:/sbin/nologin
37 colord:x:980:979:User for colord:/var/lib/colord:/sbin/nologin
38 rpcuser:x:29:29:RPC Service User:/var/lib/nfs:/sbin/nologin
39 setroubleshoot:x:979:978::/var/lib/setroubleshoot:/sbin/nologin
40 flatpak:x:978:977:User for flatpak system helper:/:/sbin/nologin
41 gdm:x:42:42::/var/lib/gdm:/sbin/nologin
42 clevis:x:977:976:Clevis Decryption Framework unprivileged user:/var/cache/clevis:/sbin/nologin
43 gnome-initial-setup:x:976:975::/run/gnome-initial-setup/:/sbin/nologin
44 sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
45 tcpdump:x:72:72::/:/sbin/nologin
46 team01:x:1000:1000:team01:/home/team01:/bin/bash
47 fedora:x:1001:1001::/home/fedora:/bin/bash
[root@server1 test]#
[root@server1 test]# cat /etc/passwd | grep team01
team01:x:1000:1000:team01:/home/team01:/bin/bash
[root@server1 test]# cat file1 file2 > file3
[root@server1 test]# cat file3
1111
2222
파일의 내용을 확인 하는 경우에도 file 명령어로 형식을 먼저 확인
[root@server1 test]# file *
file1: ASCII text
file2: ASCII text
file3: ASCII text
file4: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0, BuildID[sha1]=056dda3f1b77919163a7de5563a2b9d9d245554c, stripped
cat 단점은 출력물이 긴 경우에는 한번에 지나간다.
more>
[root@server1 test]# more /etc/services
전체내용을 출력하고 마지막만 확인 가능
[root@server1 test]# cat /etc/services
첫 페이지에서 화면상에 출력 할 수 있는 만큼 출력하고 상태
[root@server1 test]# more /etc/services
haed> 파일의 시작 부분을 학인 / 기본 10줄
tail> 파일의 끝 부분을 확인 / 파일에 추가되는 데이터를 확인[모니터링] / 기본 10줄
[root@server1 test]# useradd user01
[root@server1 test]# tail -1 /etc/passwd
user01:x:1002:1002::/home/user01:/bin/bash
일정부분 잘라내기>
[root@server1 test]# cat file20 | head -20 | tail -10
11 games:x:12:100:games:/usr/games:/sbin/nologin
12 ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
13 nobody:x:65534:65534:Kernel Overflow User:/:/sbin/nologin
14 dbus:x:81:81:System message bus:/:/sbin/nologin
15 systemd-coredump:x:999:997:systemd Core Dumper:/:/sbin/nologin
16 systemd-resolve:x:193:193:systemd Resolver:/:/sbin/nologin
17 tss:x:59:59:Account used for TPM access:/dev/null:/sbin/nologin
18 polkitd:x:998:996:User for polkitd:/:/sbin/nologin
19 geoclue:x:997:995:User for geoclue:/var/lib/geoclue:/sbin/nologin
20 rtkit:x:172:172:RealtimeKit:/proc:/sbin/nologin
6교시 15:40 ~ 16:40>
wc>
[root@server1 test]# wc -l /etc/passwd
48 /etc/passwd
[root@server1 test]# rpm -qa | wc -l
1370
[root@server1 test]# ps -ef | wc -l
213
[root@server1 test]# ls -lR /etc | grep ^d | wc -l
396
[root@server1 test]# cat /etc/passwd | wc -l
48
[root@server1 test]# ls -l /home | wc -l
4
su> 계정 전환
[root@server1 test]# echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
[root@server1 test]# su fedora
[fedora@server1 test]$ echo $PATH
/home/fedora/.local/bin:/home/fedora/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
[fedora@server1 test]$
[root@server1 test]# echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
[root@server1 test]# su - fedora
[fedora@server1 ~]$ echo $PATH
/home/fedora/.local/bin:/home/fedora/bin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin
[fedora@server1 ~]$
관리자 -> 일반 / 비밀번호 필요 없음
일반 -> 일반 / 비밀번호 필요
일반 -> 관리자 / 비밀번호 필요
- : 환경 변수를 재적용
id> 현재 내가 접속한 계정의 기본 정보
[fedora@server1 ~]$ id
uid=1001(fedora) gid=1001(fedora) groups=1001(fedora) context=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023
[fedora@server1 ~]$ id -g
1001
[fedora@server1 ~]$ id -u
1001
[fedora@server1 ~]$ id -un
fedora
[fedora@server1 ~]$
groups>
lastlog> 사용자의 마지막 로그인 정보만을 출력
last> 서버를 이용하는 각 계정사용자들의 로그인 정보
[fedora@server1 log]$ last -f wtmp
root pts/2 192.168.10.1 Sat Dec 4 13:12 still logged in
team01 pts/1 192.168.10.1 Sat Dec 4 11:56 still logged in
root pts/0 192.168.10.1 Sat Dec 4 10:51 gone - no logout
root tty1 Sat Dec 4 10:51 gone - no logout
reboot system boot 4.18.0-305.3.1.e Sat Dec 4 10:51 still running
root pts/0 192.168.10.1 Sun Aug 16 13:16 - 10:44 (4492+21:28)
root pts/1 192.168.10.1 Sat Dec 4 10:13 - 13:15 (-4492+20:57)
root pts/0 192.168.10.1 Sat Dec 4 09:50 - 13:13 (-4492+20:36)
root tty1 Sat Dec 4 09:49 - 10:44 (00:54)
reboot system boot 4.18.0-305.3.1.e Sat Dec 4 09:49 - 10:44 (00:54)
root tty2 tty2 Sun Nov 28 19:47 - down (00:12)
root tty1 Sun Nov 28 19:46 - 19:47 (00:00)
reboot system boot 4.18.0-305.3.1.e Sun Nov 28 19:46 - 20:00 (00:13)
root web console ::ffff:192.168.1 Sat Nov 27 19:17 - 19:17 (00:00)
root pts/0 192.168.10.1 Sat Nov 27 19:06 - 19:27 (00:21)
root tty1 Sat Nov 27 19:06 - 19:14 (00:08)
reboot system boot 4.18.0-305.3.1.e Sat Nov 27 19:05 - 19:27 (00:21)
root pts/0 192.168.10.1 Sat Nov 27 17:38 - 17:57 (00:19)
root pts/0 192.168.10.1 Sat Nov 27 17:04 - 17:37 (00:33)
root pts/0 192.168.10.1 Sat Nov 27 16:46 - 17:03 (00:17)
root tty1 Sat Nov 27 16:46 - 17:57 (01:11)
reboot system boot 4.18.0-305.3.1.e Sat Nov 27 16:46 - 17:57 (01:11)
root tty2 tty2 Sat Nov 27 16:21 - down (00:24)
root tty1 Sat Nov 27 16:20 - 16:21 (00:00)
root web console ::ffff:192.168.1 Sat Nov 27 16:01 - 16:02 (00:00)
root pts/0 192.168.10.1 Sat Nov 27 15:58 - 16:45 (00:47)
root tty1 Sat Nov 27 15:56 - 16:20 (00:24)
reboot system boot 4.18.0-305.3.1.e Sat Nov 27 15:56 - 16:45 (00:49)
root tty2 tty2 Sat Nov 27 15:55 - down (00:00)
root tty2 tty2 Sat Nov 27 15:46 - 15:55 (00:08)
root pts/1 192.168.10.1 Sat Nov 27 15:44 - 15:55 (00:10)
root pts/0 192.168.10.1 Sat Nov 27 15:43 - 15:56 (00:12)
root pts/0 192.168.10.1 Sat Nov 27 15:42 - 15:43 (00:00)
reboot system boot 4.18.0-305.3.1.e Sat Nov 27 15:30 - 15:56 (00:25)
root pts/1 192.168.10.1 Sat Nov 27 14:40 - 15:02 (00:21)
root pts/1 192.168.10.1 Sat Nov 27 13:02 - 14:38 (01:36)
root tty4 tty4 Sat Nov 27 12:57 - down (02:05)
root tty3 tty3 Sat Nov 27 12:55 - 12:55 (00:00)
root tty2 tty2 Sat Nov 27 12:52 - 12:54 (00:01)
reboot system boot 4.18.0-305.3.1.e Sat Nov 27 12:47 - 15:02 (02:15)
reboot system boot 4.18.0-305.3.1.e Sat Nov 27 12:34 - 12:46 (00:12)
wtmp begins Sat Nov 27 12:34:32 2021
lastb> 접속 실패 로그를 출력
[fedora@server1 log]$ lastb -f btmp-20211204
lastb: cannot open btmp-20211204: Permission denied
who> 접속자 / 장치를 이용하는지 / 언제 로그인 / 어디서 로그인 확인
[fedora@server1 log]$ who
root tty1 2021-12-04 10:51
root pts/0 2021-12-04 10:51 (192.168.10.1)
team01 pts/1 2021-12-04 11:56 (192.168.10.1)
root pts/2 2021-12-04 13:12 (192.168.10.1)
[fedora@server1 log]$ who m i
root pts/0 2021-12-04 10:51 (192.168.10.1)
[fedora@server1 log]$ whoami
fedora
w> 시스템에 login한 사용자가 어떤 명령어를 실행하는지 확인
[root@server1 test]# w
16:14:46 up 5:19, 4 users, load average: 0.00, 0.00, 0.00
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
root tty1 - 10:51 5:01m 0.05s 0.05s -bash
root pts/0 192.168.10.1 10:51 2.00s 2.15s 0.00s w
team01 pts/1 192.168.10.1 11:56 6.00s 0.12s 0.03s vim /etc/passwd
root pts/2 192.168.10.1 13:12 1:48 0.19s 0.19s -bash
[root@server1 test]# watch -n 1 'w'
7교시 16:50 ~ 17:50>
파일의 종류>
일반 파일(Egular File)
디렉토리 파일(Directory File)
링크 파일(Link File)
문자 : 파일 종류>
- : 일반 파일(Egular File)
d : 디렉토리 파일(Directory File)
b : 블록 디바이스 파일 (Block Device File, (예) /dev/sha, /dev/hda, /dev/fd0)
c : 문자 디바이스 파일 (Character Device File, 입출력 장치)
l : 심볼릭 링크(Symbolic Link File)
파일에서 특수문자로 파일명을 생성하면 안되는 이유는 특수문자들이 쉘(bash)에서 특정한 기능을 수행하기 때문에 사용하게 되면 쉘은 특수문자를 특수한 기능으로 실행하려 하기 때문에 충돌이 일어난다.
inode> 파일에 대한 정보를 담고 있는 부분
[root@server1 test]# df -i
Filesystem Inodes IUsed IFree IUse% Mounted on
devtmpfs 491936 408 491528 1% /dev
tmpfs 499520 1 499519 1% /dev/shm
tmpfs 499520 801 498719 1% /run
tmpfs 499520 17 499503 1% /sys/fs/cgroup
/dev/mapper/cl-root 33488896 124052 33364844 1% /
/dev/mapper/cl-home 16349184 37 16349147 1% /home
/dev/sda1 524288 308 523980 1% /boot
tmpfs 499520 9 499511 1% /run/user/0
tmpfs 499520 12 499508 1% /run/user/1000
- 파일의 종류(File Type)
- 파일의 퍼미션모드(File Permission Mode)
- 파일의 소유자, 그룹(File Ownership, Groupship)
- 파일의 링크수(Hard Link Count)
- 파일의 마지막 접근 시간(Access Time), 수정시간(Modification Time)
- 파일의 크기(Bytes, 할당된 또는 사용중인 데이터블럭의 수)
- 두가지 형태의 포인터(Direct Pointers and Indirect Pointers)
[root@server1 test]# ls -li
total 0
1411711 -rw-r--r--. 1 root root 0 Dec 4 17:06 file1
[root@server1 test]# find . -inum 1411711
./file1
Hard Link File> 원본파일의 경로를 저장하고 있는 파일 / 파일시스템이 다르면 생성이 되지 않음
[root@server1 test]# ln file1 file2
[root@server1 test]# ls -li file1 file2
1411711 -rw-r--r--. 2 root root 0 Dec 4 17:06 file1
1411711 -rw-r--r--. 2 root root 0 Dec 4 17:06 file2
Soft Link File> 원본파일이 지워지게 되면 링크 파일에 영향을 미침
[root@server1 test]# ln -s file2 file3
[root@server1 test]# ls -li file2 file3
1411711 -rw-r--r--. 2 root root 0 Dec 4 17:06 file2
1142142 lrwxrwxrwx. 1 root root 5 Dec 4 17:15 file3 -> file2
8교시 18:00 ~ 18:30>
하드 링크 : inode 를 동일하게 사용하고 데이터 블럭을 공유 / 같은 파일시스템 내에서만 생성 가능
소프트 링크 : 원본이 수정되도 용량이 늘어나지도 않고 줄어들지도 않는다. / 절대 경로로 생성 한다.
[root@server1 test]# ln -s /test/file1 file2
[root@server1 test]# ls -l
total 4
-rw-r--r--. 1 root root 4 Dec 4 17:52 file1
lrwxrwxrwx. 1 root root 11 Dec 4 17:54 file2 -> /test/file1
[root@server1 test]# ln -s /test/file1 /home/file2
[root@server1 test]# cd /home
[root@server1 home]# ls -l
total 0
drwx------. 4 fedora fedora 113 Nov 27 17:03 fedora
lrwxrwxrwx. 1 root root 11 Dec 4 17:55 file2 -> /test/file1
drwx------. 5 team01 team01 145 Dec 4 11:56 team01
drwx------. 3 user01 user01 78 Dec 4 15:05 user01
[root@server1 home]# cat file2
444
[root@server1 home]#
디스크 확인>
[root@server1 dev]# ls -l | grep disk
drwxr-xr-x. 6 root root 120 Dec 4 10:51 disk
brw-rw----. 1 root disk 253, 0 Dec 4 10:51 dm-0
brw-rw----. 1 root disk 253, 1 Dec 4 10:51 dm-1
brw-rw----. 1 root disk 253, 2 Dec 4 10:51 dm-2
crw-rw----. 1 root disk 10, 237 Dec 4 10:51 loop-control
brw-rw----. 1 root disk 8, 0 Dec 4 10:51 sda
brw-rw----. 1 root disk 8, 1 Dec 4 10:51 sda1
brw-rw----. 1 root disk 8, 2 Dec 4 10:51 sda2
crw-rw----. 1 root disk 21, 0 Dec 4 10:51 sg0
[root@server1 dev]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 100G 0 disk
├─sda1 8:1 0 1G 0 part /boot
└─sda2 8:2 0 99G 0 part
├─cl-root 253:0 0 63.9G 0 lvm /
├─cl-swap 253:1 0 4G 0 lvm [SWAP]
└─cl-home 253:2 0 31.2G 0 lvm /home
sr0 11:0 1 1024M 0 rom
[root@server1 dev]# ls -l | grep tty
crw-rw-rw-. 1 root tty 5, 2 Dec 4 18:06 ptmx
crw-rw-rw-. 1 root tty 5, 0 Dec 4 10:51 tty
crw--w----. 1 root tty 4, 0 Dec 4 10:51 tty0
crw--w----. 1 root tty 4, 1 Dec 4 11:12 tty1
crw--w----. 1 root tty 4, 10 Dec 4 10:51 tty10
crw--w----. 1 root tty 4, 11 Dec 4 10:51 tty11
crw--w----. 1 root tty 4, 12 Dec 4 10:51 tty12
crw--w----. 1 root tty 4, 13 Dec 4 10:51 tty13
crw--w----. 1 root tty 4, 14 Dec 4 10:51 tty14
crw--w----. 1 root tty 4, 15 Dec 4 10:51 tty15
crw--w----. 1 root tty 4, 16 Dec 4 10:51 tty16
crw--w----. 1 root tty 4, 17 Dec 4 10:51 tty17
crw--w----. 1 root tty 4, 18 Dec 4 10:51 tty18
crw--w----. 1 root tty 4, 19 Dec 4 10:51 tty19
crw--w----. 1 root tty 4, 2 Dec 4 10:51 tty2
crw--w----. 1 root tty 4, 20 Dec 4 10:51 tty20
crw--w----. 1 root tty 4, 21 Dec 4 10:51 tty21
crw--w----. 1 root tty 4, 22 Dec 4 10:51 tty22
crw--w----. 1 root tty 4, 23 Dec 4 10:51 tty23
crw--w----. 1 root tty 4, 24 Dec 4 10:51 tty24
crw--w----. 1 root tty 4, 25 Dec 4 10:51 tty25
crw--w----. 1 root tty 4, 26 Dec 4 10:51 tty26
crw--w----. 1 root tty 4, 27 Dec 4 10:51 tty27
crw--w----. 1 root tty 4, 28 Dec 4 10:51 tty28
crw--w----. 1 root tty 4, 29 Dec 4 10:51 tty29
crw--w----. 1 root tty 4, 3 Dec 4 10:51 tty3
crw--w----. 1 root tty 4, 30 Dec 4 10:51 tty30
crw--w----. 1 root tty 4, 31 Dec 4 10:51 tty31
crw--w----. 1 root tty 4, 32 Dec 4 10:51 tty32
crw--w----. 1 root tty 4, 33 Dec 4 10:51 tty33
crw--w----. 1 root tty 4, 34 Dec 4 10:51 tty34
crw--w----. 1 root tty 4, 35 Dec 4 10:51 tty35
crw--w----. 1 root tty 4, 36 Dec 4 10:51 tty36
crw--w----. 1 root tty 4, 37 Dec 4 10:51 tty37
crw--w----. 1 root tty 4, 38 Dec 4 10:51 tty38
crw--w----. 1 root tty 4, 39 Dec 4 10:51 tty39
crw--w----. 1 root tty 4, 4 Dec 4 10:51 tty4
crw--w----. 1 root tty 4, 40 Dec 4 10:51 tty40
crw--w----. 1 root tty 4, 41 Dec 4 10:51 tty41
crw--w----. 1 root tty 4, 42 Dec 4 10:51 tty42
crw--w----. 1 root tty 4, 43 Dec 4 10:51 tty43
crw--w----. 1 root tty 4, 44 Dec 4 10:51 tty44
crw--w----. 1 root tty 4, 45 Dec 4 10:51 tty45
crw--w----. 1 root tty 4, 46 Dec 4 10:51 tty46
crw--w----. 1 root tty 4, 47 Dec 4 10:51 tty47
crw--w----. 1 root tty 4, 48 Dec 4 10:51 tty48
crw--w----. 1 root tty 4, 49 Dec 4 10:51 tty49
crw--w----. 1 root tty 4, 5 Dec 4 10:51 tty5
crw--w----. 1 root tty 4, 50 Dec 4 10:51 tty50
crw--w----. 1 root tty 4, 51 Dec 4 10:51 tty51
crw--w----. 1 root tty 4, 52 Dec 4 10:51 tty52
crw--w----. 1 root tty 4, 53 Dec 4 10:51 tty53
crw--w----. 1 root tty 4, 54 Dec 4 10:51 tty54
crw--w----. 1 root tty 4, 55 Dec 4 10:51 tty55
crw--w----. 1 root tty 4, 56 Dec 4 10:51 tty56
crw--w----. 1 root tty 4, 57 Dec 4 10:51 tty57
crw--w----. 1 root tty 4, 58 Dec 4 10:51 tty58
crw--w----. 1 root tty 4, 59 Dec 4 10:51 tty59
crw--w----. 1 root tty 4, 6 Dec 4 10:51 tty6
crw--w----. 1 root tty 4, 60 Dec 4 10:51 tty60
crw--w----. 1 root tty 4, 61 Dec 4 10:51 tty61
crw--w----. 1 root tty 4, 62 Dec 4 10:51 tty62
crw--w----. 1 root tty 4, 63 Dec 4 10:51 tty63
crw--w----. 1 root tty 4, 7 Dec 4 10:51 tty7
crw--w----. 1 root tty 4, 8 Dec 4 10:51 tty8
crw--w----. 1 root tty 4, 9 Dec 4 10:51 tty9
crw-rw----. 1 root dialout 4, 64 Dec 4 10:51 ttyS0
crw-rw----. 1 root dialout 4, 65 Dec 4 10:51 ttyS1
crw-rw----. 1 root dialout 4, 66 Dec 4 10:51 ttyS2
crw-rw----. 1 root dialout 4, 67 Dec 4 10:51 ttyS3
crw-rw----. 1 root tty 7, 0 Dec 4 10:51 vcs
crw-rw----. 1 root tty 7, 1 Dec 4 10:51 vcs1
crw-rw----. 1 root tty 7, 2 Dec 4 10:51 vcs2
crw-rw----. 1 root tty 7, 3 Dec 4 10:51 vcs3
crw-rw----. 1 root tty 7, 4 Dec 4 10:51 vcs4
crw-rw----. 1 root tty 7, 5 Dec 4 10:51 vcs5
crw-rw----. 1 root tty 7, 6 Dec 4 10:51 vcs6
crw-rw----. 1 root tty 7, 128 Dec 4 10:51 vcsa
crw-rw----. 1 root tty 7, 129 Dec 4 10:51 vcsa1
crw-rw----. 1 root tty 7, 130 Dec 4 10:51 vcsa2
crw-rw----. 1 root tty 7, 131 Dec 4 10:51 vcsa3
crw-rw----. 1 root tty 7, 132 Dec 4 10:51 vcsa4
crw-rw----. 1 root tty 7, 133 Dec 4 10:51 vcsa5
crw-rw----. 1 root tty 7, 134 Dec 4 10:51 vcsa6
'CentOS > Study' 카테고리의 다른 글
[리눅스]12.18 교육 정리 2 (0) | 2021.12.19 |
---|---|
[리눅스]12.18 교육 정리 1 (0) | 2021.12.19 |
[리눅스]11.27 교육 정리 (0) | 2021.11.28 |
[리눅스]Linux 프로세스 모니터링 및 관리 요점정리 (0) | 2021.07.18 |
[리눅스]ACL(접근 제어 목록)을 사용하여 파일에 대한 액세스 제어 요점정리 (0) | 2021.07.18 |