리눅스 마스터 2급 기출 공부 ( 2022년 06월 11일 ) 본문
1. 예약된 프린터 작업 취소 명령
BSD 계열
lp는 line printer의 약자
-lpr : 프린터 출력
-lpq : line printer que , que에 있는 작업의 목록 출력
-lprm : lp rm ( line printer remove )
-lpc : line printer control program , 프린터와 프린터 큐에 등록된 작업내역 제어
-lpd : line printer daemon
System v 계열
-lp : BSD 계열의 lpr과 유사
-cancle : 작업 번호 취소
-lpstat : line printer status , 작업번호 확인
2. 스캐너를 사용하기 위해 설치해야 하는 패키지는 ?
XSANE : SANE , Scanner Access Now Easy 스캐너 접속은 이제 쉽다
LPRng : 버클리 프린팅 시스템으로 BSD, System v 계열 모두 지원
CUPS : Common Unix Printing System, 애플이 오픈 소스 프린팅 시스템으로 개발함
ALSA : Advanced Linux Sound Architecture , 사운드 카드 관련
3. RAID
4. 다음 중 사운드 카드와 관련된 것들은? 모르는 것만 정리
OSS : Open Sound System , 유닉스 및 유닉스 계열 운영 체제의 사운드를 만들고 캡처하는 인터페이스
오픈 소스 소프트웨어 : 소스코드를 누구나 열람하고 수정할 수 있도록 공개한 것으로 대체로 무료로 배포됨
5. LVM 용어 정리
LVM : Logical Volume Manager , 논리 볼륨 관리자 , 여러 개의 물리적인 하드디스크를 논리적인 디스크로 할당하여
유연하게 관리할 수 있도록 함 ( 물리적 디스크를 합쳐서 하나처럼 쓸 수 있게 하는 것 )
PE : Physical Extent, 파일 시스템을 구성하는 일반적인 디스크 블록에 해당, 일정한 크기를 갖는다
PV : Physical Volume , 물리적 볼륨 , 각각의 파티션을 LVM으로 사용하기 위해 형식을 변환시킨 것
LV : Logical Volume , 논리적 볼륨으로 마운트 포인터로 사용할 실질적인 파티션
VG : Volume Group, PV로 되어 있는 파티션을 하나의 물리적인 그룹으로 만드는것.
6. yum install package
7. rpm 패키지 설치 확인
[ rpm -qa | grep httpd ]
httpd라는 이름의 rpm 패키지가 설치되어 있는지 모든 대상을 상대로 쿼리하여 확인한다
옵션에 대한 설명
-q : query, to query a package
-a : all, Perform task for all
-i : install, 패키지 설치
-f : file name, to mention a file name
-l : list
-qf : ( query, filename ) query file name
-ql : ( query, list ) query and list files and directories
-qi : ( query, install ) query the information of already installed rpm package
https://www.itsmarttricks.com/useful-rpm-command-with-examples-in-linux/
이외에도
-y : yes
-e : erase
-u : upgrade / update , 기존 패키지 업그레이드
-U : Upgrade , 기존 패키지가 설치되지 않았다면 설치, 설치되어 있다면 업그레이드
8. 다음 중 소스파일로 프로그램 설치하는 방법이 나머지 셋과 다른 것은 ?
MySQL -> cmake
[ cmake 와 make의 차이들 ]
Cmake는 Makefile을 생성해주는 툴로서, CMakeLists.txt 파일을 만들어낸다.
소스 파일 내부까지 들여다보고 분석해서 의존성 정보를 스스로 파악한다 ( 헤더파일 추가 )
일종의 autotool 컴파일 방식이다
리눅스에서는 gmake = make 이다
9. 압출 파일 해제하는 과정에 대한 문제
[ tar xzvf mysql-boost 5.7.36.tar.gz ]
tape archive extract zip verbose file-> ~tar.gz
-x : extract , tar 파일 해제
-z : gzip(gz) 압축 혹은 해제
-v : verbose , 명령어 실행 과정을 자세히 보고 싶을때 사용
-f : file, 대상파일
-j : bzip2 압축또는 해제
-J : xz 압축또는 해제
-c : create , 압축 파일 생성시 사용
-C : create directory, 경로 지정하여 압축 파일 생성
10. 소스 파일을 이용한 프로그램 설치 순서
1) 대부분의 소스 코드를 컴파일 하기 위해서는 gcc나 make 컴파일러가 설치되어 있어야 함
2) 소스 코드는 대부분 tar 아카이브 파일로 배포된다. 소스 코드 확보
3) 설치 문서 README 를 잘 읽어보고 설치하자
4) 컴파일 환경 설정 ( configure )
대부분의 소스 코드 컴파일 순서는
configure > make > make install 로 진행된다.
configure : 컴파일러 존재 여부 확인, 환경 옵션 지정, 라이브러리 검색 등 환경 준비
configure 명령에 의해서 Makefile이 준비되는 과정.
5) 컴파일 ( make )
configure로 컴파일 환경을 설정한 후 make로 소스를 컴파일 한다.
6) 컴파일된 프로그램 설치 ( make install )
make && make install
( make 가 성공하였을 시에, make install을 수행해라 ).
11. 온라인 기반 패키지 관리 도구들
[ 온라인 ]
apt-get 데비안
yum 레드햇
zypper 수세
[ 온라인 기반 아님 ]
dpkg 데비안
rpm 레드햇
YaST 수세 제어판
12. vi 편집기에서 표시되고 있는 행번호 제거할때 사용하는 환경 설정값은 ?
라인 번호 출력 set nu : set number
라인 번호 해제 set nonu : set no number
설정을 저장할때 생성해야 할 파일명은 ?
vim ~/.vimrc ( rc = run commands 로, vimrc, bashrc등 특정 편집기가 시작하면 작동하는 셸 스크립트 , 커스터마이징이나 alias등 설정해놓을 수 있다 )
set nu or set nonu
13. 가장 처음 등장한 편집기는?
vi ( first ) > pico > nano > gedit
pico : PIne COmposer, 파인(이메일 프로그램)의 텍스트 에디터, 워싱턴 대학에서 만든 유닉스용 편집기로 메모장 처럼 간편하게 사용하도록 만들었음. 초기 리눅스에서 사용됨.
nano : pico를 라이선스 문제로 다시 만든 편집기 , GNU General Public License
14. vi 편집기에서 모든 windows 라는 문자열을 linux로 치환하는 명령은?
[ % s/windows/linux/g ]
% string / 대상 문자 / 치환할 문자 / g
15. emacs 편집기를 종료하는 조합
[ ctrl + x ] + [ ctrl + c ] eXecute, Close
[ ctrl + x ] + [ ctrl + f ] eXecute, Find
[ ctrl + x ] + [ ctrl + s ] eXecute, Save
[ ctrl + b ] Backwards
[ ctrl + f ] Frontwards
[ ctrl + p ] Previous line
[ ctrl + n ] Next line
16. 백그라운드로 실행시킨 프로세스 확인하는 명령어
jobs : 백그라운드로 실행시킨 프로세스를 확인함
fg : fore ground로 실행
bg : back ground로 실행
이외 명령어들
ps : present status , 현재 실행 중인 프로세스의 상태 출력
pstree : present status tree , 실행 중인 프로세스를 트리 구조로 출력
top : 프로세스 상태를 실시간으로 확인하거나 모니터링
nice : 실행할 프로그램의 우선순위를 지정하고 , 우선순위 설정값을 확인하는 명령어
nice와 value 란?
-> nice : program found on Unix and Unix-like operating systems such as Linux
리눅스 상에서 프로세스가 실행될때 nice라는 값을 가지고 실행됨
-> nice value : -20 ( 우선순위 높음 ) ~ 0 ( basic ) 19 ( 낮음 ) , used to invoke a utility or shell script with a particular CPU priority. 무건 프로세스가 우선순위로 동작하면 다른 프로세스가 동작되지 않을 것이기 때문에, 효율적인 멀티태스킹 환경을 구성하려면 무거운 프로세스는 우선순위를 낮게 줘서 다른 프로세스를 실행하면서 하는 것이 좋을 것 .
renice : 우선순위 변경
kill : 프로세스에 특정한 시그널을 보내는 명령어
killall : 프로세스 번호가 아닌 프로세스 명으로 종료시키는 명령어
+. PID ( 프로세스 아이디 ) 가 1222인 bash 프로세스의 우선순위 ( NI ) 값이 0이다. 다음 중 이 프로세스의 NI 값을 -10으로 변경하여 우선순위를 높이는 명령으로 알맞은 것은?
[ nice --10 bash ] or [ renice -10 1222 ]
nice에서는 -인자로 -10을 전달하는 것이다
renice에서는 -10을 직접 설정
17. 다음 중 백그라운드로 실행시킨 프로세스를 확인하는 명령어는?
[ jobs ] : 백그라운드로 실행시킨 프로세스를 확인하는 명령어
fg : 프로그램을 포어그라운드로 실행하는 명령어
bg : 프로그램을 백그라운드로 실행하는 명령어
18. 다음 설명에 해당하는 용어로 가장 알맞은 것은?
주기적이고 지속적인 서비스 요청을 처리하기 위해 메모리에 계속 상주하고 있는 프로그램으로 백그라운드 프로세스의 일종
-> daemon
19. 다음 중 실시간으로 CPU 사용량을 확인할 때 이용하는 명령어로 알맞은 것은 ?
top
free : 시스템에서 사용하지 않는 메모리와 이미 사용하고 있는 물리적인 메모리 등 메모리 사용현황을 확인할 때 사용하는 명령어
20. 다음 중 현재 실행 중인 포어그라운드 프로세스의 작업을 백그라운드 프로세스로 전환하기 위한 키 조합은?
포어 그라운드의 프로세스를 정지시킨 후 , 해당 작업번호를 백그라운드 프로세스로 전환해야 한다
[ ctrl + z ] : 포어그라운드의 프로세스 정지
[ bg%작업번호 ] : 백그라운드 프로세스로 전환
21. 시그널 번호와 발생조건
SIG + ~ : ~ 시그널
1 SIGHUP - 터미널과 연결이 끊어졌을 떄
2 SIGINT - SIGNAL + INTerrupt 키보드로 실행한 인터럽트 시그널 ( ctrl + c )
9 SIGTERM - kill 시스템 호출, ex) 강제종료
15 SIGTERM - terminal 정상 종료
19 SIGSTOP - 프로그램 정지
20 SIGSTOP - 키보드 정지 ctrl + z
22. cron 으로 특정 스크립트를 매주 월요일 10시 2분에 주기적으로 실행하려면?
[ 2 10 * * 1 ]
[min, hour, day, month, 요일 ]
23. 백그라운드로 실행시킨 프로세스의 우선순위 값을 확인하는 명령은?
NI, PRI 는 ps -l 옵션을 써야지만 확인 가능하다
24. Centos7 부팅 시작시 커널이 발생하는 최초의 프로세스는 systemd
이후 데몬을 비롯하여 다른 프로세스는 fork 방식으로 systemd 의 자식 프로세스로 생성된다.
( CentOS 7 이전 버전은 최초 프로세스가 init )
25. $echo SHELL -> 환경 변수를 이용해서 로그인 셸을 확인할때
로그인 계정이 사용하는 셸의 정보를 저장한 변수를 출력함
26. 선언된 셸 변수를 확인하는 명령은
set
27. 현재 시스템에서 사용 가능한 셸의 정보를 저장하고 있는 파일은
/etc/shells : 사용 가능한 셸 목록을 저장하고 있는 파일
/etc/bashrc : 별칭(alias)와 bash가 수행될 때 실행되는 함수 제어와 관련된 설정 값을 저장하고 있는 파일
/etc/passed : 리눅스 계정 정보를 저장하고 있는 파일
/etc/profile : 환경 변수와 bash가 수행될 때 실행되는 프로그램 제어와 관련된 설정 값을 저장하고 있는 파일
'BF 2024 > 리눅스' 카테고리의 다른 글
MAC에서 Linux 설치하기 (0) | 2022.07.25 |
---|