2차 시험에 들어가기 전, 1차 과목이었던 리눅스일반을 정리입니다.
☆ 이기적 무료강의를 토대로 정리했습니다.
1. 리눅스의 이해
01-01-01 리눅스의 개요
(1) 특징:
- 오픈소스 운영체제이다.
- 멀티유저(다중사용자), 멀티테스킹(다중작업) 운영체제이다.
- 다중 스레드를 지원하는 네트워크 운영체제이다. (프로그램 vs 프로세스 vs 스레드)
프로그램 vs 프로세스 vs 스레드
프로그램: 코드로 작성되어 아직 실행되지 않은 정적인 상태
프로세스: (실행중인 프로그램) 프로그램이 CPU를 할당받아 특정 업무를 처리 중인 동적인 상태
스레드: 프로세스 내에서 실행되는 작업
-> 일반적으로 1개의 프로세스는 1개의 스레드를 처리하지만, 위처럼 동시에 다중 스레드를 지원하는 네트워크 기반인 것이 리눅스의 특징이라고 할 수 있다.(강력한 네트워크 지원 가능)
(2) 리눅스 디렉터리 종류와 특징 (계층적 트리형태):
디렉터리 | 저장내용 |
/ | 파일시스템이 있는 최상위 디렉터리로 루트 디렉터리라고도 함 모든 디렉터리의 출발점인 동시에 다른 시스템과의 연결점이 되는 디렉터리 |
/boot | 부트 디렉터리로 부팅 시 커널 이미지와 부팅 정보 파일 저장 |
/proc | 시스템 정보 디렉터리(=프로세스 디렉터리)이며 커널 기능을 제어하는 역할 현재 실행되는 프로세스와 실제로 사용되는 장치, 하드웨어 정보 저장 |
/lib | 공유 라이브러리 디렉터리(정적라이브러리 VS 동적라이브러리) 커널 모듈 파일들과 프로그램 실행을 지원해주는 라이브러리 저장 |
/bin | 기본적인 명령어가 저장된 디렉터리(실행파일=바이너리 디렉터리라 불림) root 사용자와 일반 사용자가 함께 사용할 수 있는 명령어 디렉터리 |
/dev | 시스템 디바이스 파일들을 저장하는 디렉터리(드라이브 Drive, block 장치파일, 문자(character)장치파일 I/O 하드디스크 장치 파일, CD-ROM 장치파일 같은 파일 저장 |
/etc | 시스템 환경 설정 파일 저장 디렉터리 (암호..) |
/root | 시스템 관리자용 홈 디렉터리 |
/sbin | 관리자용 시스템 표준 명령 및 시스템 관리와 관련된 실행 명령어 저장 |
/usr | 사용자 디렉터리로 사용자 데이터나 애플리케이션 저장 |
/home | 사용자 계정 디렉터리로 계정들의 홈 디렉터리가 위치(telnet/FTP 접근시 처음 접근하도록 설정하는 디렉터리) 일반 사용자들이 로그인시 처음으로 위치하게 되는 디렉터리 |
/var | 가변 자료 저장 디렉터리로 로그 파일이나 메세지와 관련된 임시 파일 |
/tmp | 각종 프로그램이나 프로세스 작업을 할 때 임시로 생성되는 파일 저장 모든 사용자에 대해서 읽기와 쓰기가 허용 스티키 비트 Sticky bit 설정으로 파일의 소유자만이 자신의 소유 파일을 지울 수 있음 |
/mnt | 파일 시스템을 일시적으로 마운트할 때 사용(마운트: 디렉터리 연결하여 해당 논리시스템을 연결하여 사용할 수 있도록 하는 행위) |
/lost+fiund | 결함이 있는 파일에 대한 정보가 저장되는 디렉터리 |
정적라이브러리 VS 동적라이브러리
시스템이 실행될 때 메모리에 어떻게 올리느냐에 따라 나뉩니다.
정적라이브러리는 /lib 처럼 공유라이브러리에 파일을 두지 않고 해당 프로세스 안으로 로직을 복사해와서 사용하는 방식인데, 리눅스의 경우 이와 반대로 동적 라이브러리를 사용하여 공통의 /lib 디렉터리 안에 공유 라이브러리를 두고 여러 프로그램들의 실행을 지원해주기 때문에 지원을 재사용하면서 메모리 효율성을 좋게 하는 장점을 갖을 수 있다.
(3) 리눅스 배포판:
- 슬랙웨어 리눅스
- 데비안
- 우분투
- 레드헷
- RHEL
- 페도라
- CentOS
- 수세
01-01-02 리눅스의 역사
BSD계열 - 운영체제
시스템V - bell 연구소를 중심으로 개발
유닉스 - 어셈블리언어 & C 언어
GNU - 시스템이 상업적으로 발전되는 것에 거부반응을 느끼고, 자유소프트웨어
01-01-03 리눅스 라이센스
01-02-01 기본 설치 및 유형
리눅스 설치 방법 소개
01-02-02 파티션
(1) 파티션(partition)의 특징과 종류
- 하나의 물리적 디스크를 여러개의 논리적인 디스크로 분할하는 것이다.
- 주 파티션(primary partition), 확장 파티션(extended partition), 논리 파티션(logical partition), 스왑(swap partition)으로 구분된다.
(2) 디스크와 장치명
- 분할된 파티션은 디스크의 장치 파일명 뒤에 숫자를 붙인다.
- 리눅스에서 파티션을 만들고 마운트할 때 지정된 디바이스명을 사용한다.
(3) 파일 시스템
- 파일 시스템은 운영체제가 파일을 시스템의 디스크 파티션상에 구성하는 방식이다.
(4) LVM(Logical Volume Manager)
- 여러개의 하드디스크를 합쳐서 사용하는 기술로 한 개의 파일 시스템을 사용한다.
(5) RAID
- 복수 배열 독립 디스크의 약자이다.
- 여러 개의 물리적 디스크를 하나의 논리적 디스크로 인식하여 작동하게 하는 기술이다.
- 여러 개의 하드디스크에 일부 중복된 데이터를 나눠서 저장하는 기술이다.
(6) 파티션 분할
- fdisk는 파티션 테이블을 관리하는 명령어로 리눅스의 디스크 파시션을 생성, 수정, 삭제할 수 있는 일종의 유틸리티이다.
- fdisk 명령어: a, l, n, t, w, p, q
01-02-03 부트 매니저
01-03-01 사용자 생성 및 계정 관리
(1) 리눅스 명령어
which
- 명령어의 경로를 확인
- 명령어의 위치를 찾거나 alias를 보여주는 명령어
- 형식: which 명령어
alias
- 자주 사용하는 명령어를 특정 문자로 입력해 두고 명령어 대신 해당 문자를 사용할 수 있게 하는 명령어
- 형식: alias [별명]=['명령어']
unalias
- alias 기능을 해제한다
- 형식: unalias [옵션] [단축명령어]
환경변수 PATH
- 실행 파일들의 디렉터리 위치를 저장해 놓은 환경 변수이다.
- 명령어 echo $PATH 는 지정된 PATH 값을 확인할 수 있다.
- 기존의 PATH에 새로운 경로를 추가하는 방법에는 명령어 PATH나 홈 디렉터리의 .bash_profile에 PATH를 추가한다. 기존 경로와 새 경로는 콜론(:)으로 구분한다.
- 형식: export 변수명=S변수명:변수값
(2) 리눅스 도움말
man
- 리눅스에서 사용하는 명령어들의 매뉴얼을 제공한다
- 매뉴얼은 9개의 섹션으로 구분되어 해당 섹션에서 해당 정보들을 확인할 수 있다.
- 형식: man [섹션] [옵션] 명령어
info
- 리눅스 명령어의 사용 방법, 옵션 등을 나타낸다.
- man에 비해 제공되는 명령어가 한정적이다.
- 형식: info 명령어
whatis
- 명령어에 대한 기능을 간략하게 나타낸다.
- 완전히 키워드가 일치해야만 해당 명령어의 기능을 확인할 수 있다.
- whatis 데이터베이스에서 문자열만 검색한다.
- 형식: whatis 명령어
manpath
- man 페이지의 위치 경로를 검색하여 표시해 주는 명령어이다.
- 형식: manpath 명령어
whereis
- 찾고자 하는 명령어의 실행 파일 절대 경로와 소스코드, 설정 파일 및 매뉴얼 페이지를 찾아 출력하는 명령어다.
- whereis [옵션] 명령어
apropos
- man 페이지 설명에서 지정한 키워드를 포함하고 있는 명령어이다
- whatis 데이터베이스에서 문자열을 포함한 것을 검색한다.
- whatis 데이터베이스가 만들어져 있어야 이 명령어를 쓸 수 있다.
- apropos 문자열
(3) 사용자 생성 명령어
useradd
- 계정을 생성하는 명령어 adduser와 동일한 기능을 갖는다
passwd
- 생성된 계정자의 패스워드를 입력
'IT 자격증 > 리눅스마스터' 카테고리의 다른 글
[Linux] 리눅스마스터 2급 2차 합격 후기, D-3 벼락치기 (7) | 2024.09.10 |
---|---|
[Linux] 리눅스마스터 2급 2차, D-3 오답정리 (0) | 2024.09.05 |
[Linux] 리눅스마스터 2급 - 1차 시험 후기, 꿀팁, 주의점!! (0) | 2024.08.08 |
[Linux] 리눅스마스터 2급 - 응시방법, 주의점, 꿀팁, 공부법 총정리 (2) | 2024.06.21 |