리눅스마스터 2급 최종 합격을 기념하며 공부하는 동안 작성했던 개념들을 정리해본다.
문제를 풀면서 헷갈렸던 부분이나 반복해서 나오는 문제 위주로 기록했다.
깔끔하게 정리된 필기는 아니지만, 기록 자체에 의미를 두고 마구잡이로라도 남겨본다.
+ 중간과제 기간이라 쉬어가는 Time....😇
* 흘려 쓴 글씨를 옮겨 적은 것이라 일부 내용이 어색하거나 잘못될 수 있으며, 중복된 내용이 있을 수 있음
1과목) 리눅스 운영 및 관리
- 사용자 쿼터를 설정하기 위해 /etc/fstab에 설정하는 항목 값 : usrquota
- fdisk 실행 상태에서 특정 파티션의 속성을 Raid로 변경하려면 : t 명령을 누른 후에 fd 키 눌러서 설정
- lin.txt 파일 허가권 모르는 상태에서 'chmod 755 lin.txt' 명령 = chmod u=rwx, go=rx lin.txt
- Set-Bit 활용한 사례가 아닌 것 : 실행 파일에 Sticky-Bit를 설정 <-> 맞는 것 : 디렉터리/실행파일에 Set-GID. 디렉터리 Sticky-Bit
- 특수권한인 Set-Bit가 설정된 파일 : /usr/bin/passwd
- CD-ROM 드라이브의 트레이 여는 과정 : eject /dev/cdrom
- umask 설정된 값 확인 명령 : umask -S
- /etc/fstab의 두번째 필드 : 마운트될 디렉터리
- /data 디렉터리 포함 하위 dir 및 파일 소유권을 ihduser로 변경 : chown -R ihduser /data
- /tmp 디렉터리의 허가권 확인 : ls -ld /tmp
- 사용자가 설정한 alias를 다음 로그인에도 사용하게 등록하는 파일 : ~/.bashrc
- 관리자 계정으로 ihduser의 로그인 셸 변경할 때 파일 : /etc/passwd
- $user = lin $echo user => 결과 : user (echo=텍스트출력)
- alias 목록 명령어 : alias
- 리눅스 표준 셸 : bash
- 셸의 역할 :사용자에게 명령 받아서 해석
- alias 설정된 ls 해제 : unalias ls
- ctrl + C 입력 시 발생하는 시그널 : SIGINT
- find / -type d 2>/dev/null > list & : 리눅스 시스템 전체에서 디렉터리만 찾아서 관련 정보 저장 (백그라운드 프로세스로 실행)
- 리눅스시스템에서 사용하는 시그널 이름과 번호 확인 : kill -l
- 백그라운드 실행중, 작업번호로 2번 프로세스를 포어그라운드로 전환 : fg %2
- 백그라운드 실행 작업 목록 : jobs
- 동작중인 웹 서버 데몬 모두 종료 : killall httpd
- 사용중인 프로세스 종료 (사용자 제거 작업 전에) : kill -9 [프로세스ID]
- daemon : 주기적이고 지속적인 서비스 요청처리 위해 계속 실행되는 서비스. => 실행방식에 standalone inetd가 있음
- standalone : 서비스 요청 들어오기 전에 서비스가 메모리에 상주하는 단독 실행방식. 보통 부팅 시에 실행
- inetd : 여러 데몬을 관리하면서 서비스 요청이 들어왔을 때 관련 프로세스를 메모리에 상주시키는 방식
- 시스템 부팅 시 리눅스 커널이 최초로 발생시키는 프로세스 : init
* CentOS 7버전 : systemd
- 원래의 프로세스를 새로운 프로세스로 대체하는 형태로 호출한 프로세스의 메모리에 새로운 프로세스의 코드로 덮어씌움 : exec
- fork : 부모의 프로세스를 그대로 복사, 새로운 주소공간 할당
- emacs : ESC + % 키 누르면 Query replace : 프롬프트로 질의 치환
- 에디터별 키 조합 | pico : Ctrl+K=현재줄 삭제, Ctrl+E=커서가 위치한 줄의 끝으로 커서를 이동 / vi : Ctrl+F=커서가 위치한 부분부터 한 화면 아래로 이동 / emacs : Ctrl+A=현재 커서가 위치한 줄의 처음으로 커서를 이동
- pico 에디터 지원 기능 : 단락 정의, 맞춤법 검사, 복붙 <-> 아닌것 : 구문 강조 => nano 지원 가능
- vim 지원 : 히스토리, 문법검사, 다중 되돌리기 <-> 아닌것 : 질의 통한 치환 => emacs 지원
- 소스 설치 과정 순서 : configure -> make -> make install
- emacs 커서 이동 명령 : Ctrl+P=윗줄 previous, Ctrl+F=오른쪽 forward, Ctrl+N=아랫줄 next, Ctrl+B=왼쪽 back
- totem 패키지 설치 무조건 승낙 : yum install -y totem
- vi 에디터 실행 시 지속적으로 지정한 설정 이용 환경설정 등록할 때 파일명 : exrc
- yum 명령의 저장 관련 파일들이 위치하는 dir : /etc/yum.repos.d
- 파일 압축해제 없이 내용만 확인 : tvf
- 압축 효율성 순서 : xz(가장높음) > bzip2 > gzip > compress(가장낮음)
- rvf : 기존 생성된(ihd).tar 파일에 (lin).txt 파일 추가
- rpm 설치 관련 옵션 : -Fvh, -Uvh, -ivh <-> fvh: 파일에 대한 페이지 질의 수행
- 인쇄 명령(kait.txt파일) - 1) lpr kiat.txt 2) cat kait.txt>/dev/lpo 3) cat kait.txt /lpr
- 프린트 명령어 BSD계열 : lpr, lpq, lprm, lpc 등 / System V 계열 : lp, lpstat, cancel 등
- 프린팅 시스템 CUPS의 데몬 환경 설정 파일 : /etc/cups/cupsd.conf
- USB 연결된 스캐너 검색 : sane-find-scanner -v
- 스캐너 이미지 수정 작업을 수행할 수 있는 프로그램 XSANE 실행 : xsane
2과목) 리눅스 활용
- X윈도 응용프로그램 종류 : dolphin, nautilus, konqueror - 파일 관리 프로그램 <-> 아닌것 : Okular-KDE의 문서 뷰어 프로그램
- DISPLAY : X클라이언트를 원격지로 전송하기 위해 변경하는 환경변수 (시스템A -> 시스템B 전송 : 시스템 A의 DISPLAY 변경)
- X서버 접근 가능한 클라이언트 IP주소 ~만 지정 : xhost + 192.168.12.22
- xauth list $DISPLAY
- 텍스트 모드로 부팅된 상태에서 X윈도 실행 : startx
- xhost : x서버 접근 클라이언트 지정/해제
- NFS와 거리 먼 것 : NetBIOIS = 세션층에서 TCP, IP, IPX 등의 네트워크/전달 계층 프로토콜을 연결하는 역할 <-> NFS 관련 : RPC, rpcbind, portmap
- CIFS : 인터넷을 통해 원격지 컴퓨터 파일/서비스 요청하는 표준 프로토콜. TCP/IP 프로토콜 기반
- 잘 알려진 포트 범위 : 0~1023
- C클래스 대역 : IP주소 첫번째 부분의 3비트가 110
- TCP/IP 계층 관련 : 전송, 인터넷, 네트워크, 애플리케이션 계층 <-> 아닌것 : 세션 계층
- 원격지 SSH 서버의 포트번호 변경 시 접속 방법 : ssh -p 19000 192.168.5.13
- 네트워크 인터페이스 카드의 물리적 연결 여부 확인 : ethtool
- SSH 인증파일 경로 (사용자명 ihduser, 홈dir경로 /home/ihduser) : /home/ihduser/.ssh/authorized_keys
- netstat 응답했지만 아직 클라이언트 확인메시지 못받은 상태 : SYN_RECEIVED
- 서버 접속한 클라이언트 IP주소, 포트번호 확인 : SS(socket statistics) -> 네트워크 상태 확인 netstat의 대체 명령어
- ip addr show : 시스템에 설정된 IP 주소 확인
- 3-way 핸드쉐이킹 : SYN -> ACK/SYN -> ACK
- LAN 구성 방식 : 1) 링형=각 장치들이 원형 경로 따라 연결 2) 망(Mesh)형=모든 장치가 그물처럼 완전히 직접 연결된 네트워크 3) 버스형=하나의 통신회성에 여러 컴퓨터 연결해서 전송. 모든 장치 동등한 조건으로 경쟁 4) 스타형=모든 장치가 중앙노드에 직접 연결
- FTP에서 사용하는 포트번호 정보 확인 : /etc/services
- int 도메인 : 정부 간 국제규약에 의해 설립된 국제기구 등 특수기관 사용 (*org: 비영리기관 도메인)
- OSI 7계층 프로토콜 데이터 단위 : 하위 ==== bit=1계층(물리) / frame=2계층(데이터링크) / packet=3계층(네트워크) / segment=4계층(전송) ==== 상위
- ssh 명령어 실행 시 : 암호화키 생성하겠느냐는 질문에 답해야 함 'yes'
- 메일 프로토콜 아닌 것 : SNMP <-> 맞는것: POP3, IMAP, SMTP
- 웹서비스 구성 아닌 것 : IRC(Internet Relay Chat)
- 다수의 운영체제를 하나의 컴퓨터 시스템에서 가동 가능 : 하이퍼바이저
- 에뮬레이션 : 실제 기기의 내부 논리 재현
- 하나의 작업을 여러개로 구성된 노드를 이용해서 처리 : 고성능 클러스터
- 지속적인 서비스 제공 목적 : 고가용성 클러스터