find
- 파일시스템에서 조건에 만족하는 파일을 검색한다.
# find 검색경로 검색조건 1 검색조건 2 …
검색조건
-name : 파일명으로 검색 (와일드카드문자 사용)
-perm : 특정 퍼미션을 가진 파일을 검색
-empty : 크기가 0인 파일 검색
name과 empty를 많이 사용함.
-user | 지정한 사용자가 소유한 파일 |
-group | 지정한 그룹이 소유한 파일 |
-nouser | 소유자가 없는 파일 |
-nogroup | 그룹 소유자가 없는 파일, 검색하고자 하는 파일의 종류 지정 |
-type | b(block), c(char), d(dir),l(slink), f(regular) |
-mount | 마운트된 파일 시스템만 검색 |
-empty | 빈 파일 검색 |
-mtime, -atime, -ctime | 변경된 파일 (-숫자), mtime:내용 변경, ctime:정보 변경, atime:마지막 접근날짜 |
예시
[root@Nlinux156 vmware-tools]# find /etc/vmware-tools/ -name '*default'
/etc/vmware-tools/poweroff-vm-default
/etc/vmware-tools/poweron-vm-default
/etc/vmware-tools/resume-vm-default
/etc/vmware-tools/suspend-vm-default
[root@Nlinux156 vmware-tools]# find /etc/ -name ???.d
/etc/rc.d/rc0.d
/etc/rc.d/rc1.d
/etc/rc.d/rc2.d
/etc/rc.d/rc3.d
/etc/rc.d/rc4.d
/etc/rc.d/rc5.d
/etc/rc.d/rc6.d
/etc/rc0.d
/etc/rc2.d
/etc/rc4.d
/etc/rc6.d
/etc/dconf/db/gdm.d
/etc/rc1.d
/etc/rc3.d
/etc/rc5.d
/etc/pam.d
/etc/sane.d/dll.d
/etc/kdump/pre.d
? = 글자 하나를 나타냄
tar
여러 개의 파일을 하나의 파일로 압축한다. 단 용량은 줄어들지 않습니다. 용량을 줄이기 위해서 는 gzip을 이용하거나 특별한 옵션을 이용합니다.
압축
컴퓨터에서 컴프레스 의미 : 하드드라이브에 파일이 여기저기로 나눠져 있는걸 한 군데로 몰아주는 작업
리눅스가 나오면서부터 : 압축 = 파일 여러 개를 하나의 파일로 만들어주는 것.
gzip은 용량을 줄여줍니다. tar로 여러 개 파일을 하나로 만들고 gzip으로 용량을 줄입니다.
tar은 gzip으로 압축한다.
# tar [옵션] [압축파일명] [대상]
-c : 압축,
-x : 풀기,
-v : 작업내용을 출력
-z : gzip를 이용 압축(압축해제),
-j : bzip2 이용
-f : 파일명을 지정,
-p : 퍼미션 유지
-기호 안 넣어도 됩니다.
cvfz 압축
xvfz 압축 풀기
파일을 압축할 때 파일로 압축 x
디렉터리를 하나 만들고 거기에 파일을 넣고 디렉터리를 압축하기.
bzip2, compress, cpio는 이제 안 씁니다.
예시
[root@Nlinux156 ~]# mkdir -p hi/hello/howareyou
[root@Nlinux156 ~]# ls
anaconda-ks.cfg initial-setup-ks.cfg 다운로드 바탕화면 사진 음악
hi 공개 문서 비디오 서식
[root@Nlinux156 ~]# echo hi? > hi/hello/howareyou/a.txt
[root@Nlinux156 ~]# echo hello? > hi/hello/b.txt
[root@Nlinux156 ~]# echo howareyou? > hi/hello/howareyou/c.txt
[root@Nlinux156 ~]# tar cvfz hi.tar.gz hi/
hi/
hi/hello/
hi/hello/howareyou/
hi/hello/howareyou/a.txt
hi/hello/howareyou/c.txt
hi/hello/b.txt
[root@Nlinux156 ~]# ls
anaconda-ks.cfg hi.tar.gz 공개 문서 비디오 서식
hi initial-setup-ks.cfg 다운로드 바탕화면 사진 음악
[root@Nlinux156 ~]# rm -rf hi
[root@Nlinux156 ~]# ls
anaconda-ks.cfg initial-setup-ks.cfg 다운로드 바탕화면 사진 음악
hi.tar.gz 공개 문서 비디오 서식
[root@Nlinux156 ~]# tar xvfz hi.tar.gz
hi/
hi/hello/
hi/hello/howareyou/
hi/hello/howareyou/a.txt
hi/hello/howareyou/c.txt
hi/hello/b.txt
[root@Nlinux156 ~]# ls
anaconda-ks.cfg hi.tar.gz 공개 문서 비디오 서식
hi initial-setup-ks.cfg 다운로드 바탕화면 사진 음악
[root@Nlinux156 ~]# ls -R hi
hi:
hello
hi/hello:
b.txt howareyou
hi/hello/howareyou:
a.txt c.txt
이렇게 압축, 압축 풀기까지 확인할 수 있습니다.
stat
파일의 시간 정보를 출력한다.
# stat 파일
리눅스 파일의 타임스탬프
• atime
- 파일에 마지막으로 접근한 시간
- 시스템이나 응용프로그램이 마지막으로 파일에 접근한 시간
• ctime
- 파일의 퍼미션 등 속성이 변경된 시간.
• mtime
- 파일의 내용이 마지막으로 수정된 시간
예시
[root@Nlinux156 hello]# stat b.txt
File: b.txt
Size: 7 Blocks: 8 IO Block: 4096 일반 파일
Device: 10303h/66307d Inode: 3380945 Links: 1
Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root)
Context: unconfined_u:object_r:admin_home_t:s0
Access: 2025-07-07 11:17:00.378621260 +0900
Modify: 2025-07-07 11:15:28.000000000 +0900
Change: 2025-07-07 11:17:00.378621260 +0900
Birth: 2025-07-07 11:17:00.378621260 +0900
[root@Nlinux156 hello]# mv b.txt bbb.txt
[root@Nlinux156 hello]# ls
bbb.txt howareyou
[root@Nlinux156 hello]# stat bbb.txt
File: bbb.txt
Size: 7 Blocks: 8 IO Block: 4096 일반 파일
Device: 10303h/66307d Inode: 3380945 Links: 1
Access: (0755/-rwxr-xr-x) Uid: ( 0/ root) Gid: ( 0/ root)
Context: unconfined_u:object_r:admin_home_t:s0
Access: 2025-07-07 12:19:19.329481625 +0900
Modify: 2025-07-07 11:15:28.000000000 +0900
Change: 2025-07-07 12:20:10.794479703 +0900
Birth: 2025-07-07 11:17:00.378621260 +0900
touch
파일의 시간 정보를 갱신, 빈 파일 만들 때 사용.
([YYYYMMDDhhmi.ss] 시간 서식문자.)
Y : 년도, M : 월, D : 일, h : 시간, mi : 분, s : 초
옵션
-t [YYYYMMDDhhmi.ss] : 임의의 시간으로 변경, a, mtime 변경
-a : 최근 사용 시간 변경, a, ctime 변경
-m : 파일의 최근 수정 시간 변경, m, ctime 변경
-r [file] : 지정한 파일과 동일한 시간으로 변경
-c : 파일을 생성하지 않는다.(존재하지 않을 때)
예시
[root@Nlinux156 ~]# touch example.txt
[root@Nlinux156 ~]# ls
anaconda-ks.cfg hi initial-setup-ks.cfg 다운로드 바탕화면 사진 음악
example.txt hi.tar.gz 공개 문서 비디오 서식
[root@Nlinux156 ~]# ls -al example.txt
-rw-r--r--. 1 root root 0 7월 7 12:12 example.txt
[root@Nlinux156 ~]# touch -t 200102240001.42 example.txt
[root@Nlinux156 ~]# ls -al example.txt
-rw-r--r--. 1 root root 0 2월 24 2001 example.txt
[root@Nlinux156 ~]# stat example.txt
File: example.txt
Size: 0 Blocks: 0 IO Block: 4096 일반 빈 파일
Device: 10303h/66307d Inode: 68363268 Links: 1
Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root)
Context: unconfined_u:object_r:admin_home_t:s0
Access: 2001-02-24 00:01:42.000000000 +0900
Modify: 2001-02-24 00:01:42.000000000 +0900 <- 바뀜
Change: 2025-07-07 12:13:14.137495263 +0900 <- 바뀜
Birth: 2025-07-07 12:12:32.721496810 +0900
임의로 시간 수정은 되도록이면 하지 않는다.
tcp/udp
4 계층 Transport Layer - tcp/udp
flow control - 수신 측에서 작동
congestion control - 송신 측에서 작동
tcp
- host에서 작동하는 app process 간에 논리적인 데이터 전송의 기능을 제공합니다.
- end시스템에서 작동함.(메시지를 주고받는 프로세스에서 작동합니다.)
송신 : app message를 segment로 변환해서 Network layer로 전달함
ㄴ app layer → transport layer(TCP) → network layer
수신 : Network layer로 받은 segment로부터 message를 추출해서 app layer로 전달.
ㄴ network layer → TCP → app layer
network layer : host 간에 logical communication을 제공
transport layer : process 간에 logical communication을 제공
ㄴ Network layer가 제공하지 못하는 신뢰적인 전송을 제공할 수 있습니다.
신뢰적인 연결지향 서비스(TCP)
• 혼잡제어
• 흐름제어
• 연결지향
비신뢰적인 비연결지향 서비스 (UDP)
• best-effort delivery(최선을 다한다.- [나 책임 안져])
service : IP
: data 전달에 최선을 다하지 만 어떠한 보장도 하지 않는다.
보장하지 않는 것
• 최대 지연시간
• 전달 대역폭
왜 보장하지 못하는가?
- 패킷망을 사용하기 때문. 보장하려면 서킷망을 써야 합니다.
multiplexing - (여러 개를 묶어서 하나로 해서 처리)
- 소캣을 통과해서 전송계층으로 전송되는 것. 내려가는 것( app layer에서 Transport Layer로 내려가는 것.)
demultiplexing - (하나가 여러 개로 분산돼서 보내는 것.)
- 전송계층이 segment에서 메시지를 뽑아내서 각강의 소켓으로 전달하는 것. 올라가는 것( Transport Layer에서 app layer로 올라가는 것.)
port = 프로그램(서비스)을 식별하기 위한 번호
fork = 프로세스를 복제하는 시스템 호출
소켓 : 통신을 위한 파이프 같은 것, 메모리에 존재하는 객체(구조체)
패킷 트레이서
- 네트워크 시물레이션 도구
접속 모드
사용자 모드 : User EXEC Mode
-장치 설정 불가
-Router>, Switch>
관리자 모드 : Privileged EXEC Mode
-설정이나 동작 확인
-제한적인 설정 명령
-show 등의 명령어
-네트워크 확인 : ping, telnet, traceroute
-설정 저장이나 재시작 : write memory, reload
-Router#, Switch#
전역 설정 모드 : Global Configuration Mode
- 장치 설정 모드
- EXEC 모드의 모든 명령어 사용 가능
- Switch나 Router의 설정 모드
- Router(config)#, Switch(config)#
> → 아무것도 할 수 있는 게 없음
# 에서 → 저장하기
Router(config) → 설정하기
show 명령
• 장비의 다양한 정보를 확인하는 데 사용한다.
• show [옵션]
running-config : RAM의 현재 설정 정보 확인
startup-config : NVRAM에 저장된 설정 내용 확인
version : IOS 버전 정보
flash : Flash 정보
ip interface brief : 인터페이스별 설정 정보
interface [if명] : 인터페이스의 통계 정보
cdp neighbor : 주변 장비 확인
cdp neighbor detail : 인접 장비 정보 확인
running-config
startup-config
ip interface brief - 중요함
interface [if명]
많이 사용함.
NVRAM에 설정 저장 명령(저장하는 명령어)
• copy running-config startup-config ← 되도록이면 이거 쓰기
• write memory ← 예전 명령어
NVRAM의 설정 삭제 명령
• erase startup-config
장비 재부팅
• reload(#에서 사용)
no ip domain-lookup - 오타 쳐도 금방 넘어옵니다.
명령어 앞에 no를 붙이면 뒤에 있는 명령어를 취소해 달라는 것입니다.
ip세팅
IP 할당
• 라우터는 인터페이스별로 IP를 갖는다.
• 스위치는 장치에 IP가 할당된다
• VLAN 별로 IP가 할당된다.
'kh교육' 카테고리의 다른 글
(20250709011)사용자 관리&STP, VLAN (5) | 2025.07.09 |
---|---|
(20250708010) VI 에디터 & udp, pt (1) | 2025.07.09 |
(2025070408) VLSM & html&php (3) | 2025.07.04 |
(2025070307)리눅스로 NAT,BRIDGE 네트워크 만들기&복습 (0) | 2025.07.03 |
(2025070206) 라우터 & 네트워크 분할, NAT (0) | 2025.07.02 |