본문 바로가기
SECURITY ::/Security Academy

3일차 - 리눅스 기초실습 01

by bbombi 2024. 2. 28.

 

 

 

 


 

 

* 리눅스(Linux)

 - 1991년 리누스 토르발스가 처음 출시한 운영 체제 커널인 리눅스 커널에 기반을 둔 오픈 소스 유닉스 계열 운영 체제 계열

 - 전세계 슈퍼컴퓨터 리눅스 점유율 100%, 클라우드 환경 리눅스 점유율 90%

 

* 리눅스 커널의 역할

 - 리눅스 커널은 운영체제의 핵심 부분으로, 자원이나 프로세스, 각종 시스템과 호출 및 보안 또는 권한 관리 등의 여러 주요 역할을 수행함.

 

* 리눅스 배포판 종류

 - 레드햇 계열 : 레드햇 리눅스와 그 커뮤니티 버전인 페도라에서 파생된 배포판. 패키지 형식은 .rpm, 패키지 관리자는 yum ex) CentOS,  Oracle Linux, MeeGo(타이젠) 등

 - 데비안 계열 : 데비안에서 파생된 배포판들. 패키지 형식은 .deb, 패키지 관리자는 apt. ex) 우분투, 칼리 리눅스, 크롬 OS, 라즈비안 등

 - 안드로이드 계열 : 모바일 운영체제인 안드로이드 게열 배포판, 패키지 형식은 apk ex) Android-x86, Wear OS 등

 

 

 

* 가상화(virtualization)

 - 서버, 스토리지, 네트워크 및 기타 물리적 시스템에 대한 가상 표현을 생성하는 데 사용할 수 있는 기술. 가상 소프트웨어는 물리적 하드웨어 기능을 모방하여 하나의 물리적 머신에서 여러 가상 시스템을 동시에 실행함.

 

 

 


 

* 실습 환경 구성

* virtualBox 설치

 - Guest OS 로는 ubuntu 설치

 (cf. 가상환경 메모리는 호스트 메모리와 공유하기 때문에 적절하게 설정)

 

* 리눅스 로그인 프롬프트

 - [로그인 사용자명]@[호스트명][현재 작업 디렉토리][프롬포트모양]

 - bibi@ubuntu~$ -> 사용자 계정일때 $

 - root@ubuntu~# -> 관리자 계정일때 #

 

* 디렉토리 생성(mkdir)

 - mkdir -p a/b/c : 한번에 하위디렉토리까지 생성 가능

 - mkdir -m 777 share : share 디렉토리에 모든 권한 부여

 

 

* 리눅스 파일시스템 특징

* 리눅스는 모든 것을 파일이라는 개념으로 취급

 - 디렉토리 : 파일을 모아두는 장소

 - 파일 : Text file, Binary file 등 종류는 달라도 파일이라는 추상화된 단위로 부름

 

* 리눅스 도움말 보기

 - man <옵션> 키워드

 - ls --help

 

* Wildcard 문자로 동시에 여러 파일 생성

 ex)

 

* 파일 복사하기 (cp)

 - 기본 형식 : cp <옵션> 원본파일이름 목적지파일이름

 - 옵션 1) -i 복사할때 overwrite 할 것인지 질문

           2) -f 복사할때 overwrite 질문없이 무조건 덮어쓰기

           3) -r 디렉토리복사

 

* 파일 이동하기 (mv)

 - 기본 형식 : mv <옵션> 원본파일이름 새이름

 - 옵션 1) -i 이름을 바꿀 때 할 것인지 질문

            2) -f 복사할때 overwrite 질문없이 무조건 덮어쓰기

 - 설명 : 파일의 이름을 바꾸거나 다른 디렉터리로 이동

 

* 파일 삭제하기 (rm)

 - 기본 형식 : rm <옵션> 파일이름 or 디렉토리이름

 - 옵션 1) -i 파일을 삭제할 때 삭제 여부를 한번 더 질문

           2) -f 파일을 삭제할 때 질문없이 무조건 삭제

 

* 파일 찾기 (find)

 - 기본 형식 : find <path> <options> <exprossion>

 - 설명 : 주어진 path 이하 디렉토리에서 주어진 조건에 맞는 파일 또는 디럭터리를 검색하여 그 경로를 출력

 

* 사용자 관리와 파일 속성 - 사용자와 그룹

 ex)

 

 

 

* 실습 1. 디렉토리 경로 변경

  - 1) 한번에 A-B-C 하위디렉토리까지 생성, C 아래 tmp01,tmp02 파일을 생성하기

vboxbibi@ubuntu:~$ mkdir -p A/B/C && touch A/B/C/tmp{01..02}
vboxbibi@ubuntu:~$ tree

 - 2) tmp01과 tmp02를 각각 상대경로 절대경로 두가지 방식을 이용하여 A디렉토리로 위치 이동하기

// A 디렉토리 내의 파일
vboxbibi@ubuntu:~/A/B/C$ ls
tmp01  tmp02

// 상대경로를 사용하여 tmp01을 A 디렉토리에 옮기기
vboxbibi@ubuntu:~/A/B/C$ pwd
/home/vboxbibi/A/B/C
vboxbibi@ubuntu:~/A/B/C$ mv tmp01 ../../

// 절대경로를 사용하여 tmp02를 A 디렉토리에 옮기기
vboxbibi@ubuntu:~/A/B/C$ ls
tmp02
vboxbibi@ubuntu:~/A/B/C$ mv tmp02 /home/vboxbibi/A

// 결과
vboxbibi@ubuntu:~/A$ ls
B  tmp01  tmp02

 

- cf) mv 로 tmp 파일 이름을 tmp01로 변경, cp 로 tmp01 을 복제하고 이름은 tmp02로 변경

 

 

* 실습 2. find -exec 명령어

// 홈디렉터리에 1M 이상 파일을 크기까지 나오게 검색
vboxbibi@ubuntu:~$ find ~/ -size +1M -exec ls -lh {} \;

-rw-r--r-- 1 vboxbibi vboxbibi 1.3M  2월 26 12:15 /home/vboxbibi/.cache/mesa_shader_cache/index
-rw-r--r-- 1 vboxbibi vboxbibi 1.3M  2월 26 11:16 /home/vboxbibi/.cache/tracker3/files/http%3A%2F%2Ftracker.api.gnome.org%2Fontology%2Fv3%2Ftracker%23Video.db

 

 

 

 

댓글