[공부] 프로그래밍/Linux

LPIC level 1 102 공부 - 4장 정리 (시스템 서비스의 관리)

woodisco 2023. 9. 10. 13:57

 

4-1 정해진 시각에 정기적으로 특정의 커맨드를 실행 시키기 위한 커맨드

: crontab

 

4-2 시스템의 로그의 로테이션과 불필요한 파일의 삭제등, 보수를 위한 커맨드가 /etc/cron.daily, /etc/cron.weekly, /etc/cron.monthly 디렉토리 이하에 있다. 이 커맨드를 정기적으로 실행하는 프로그램

: anacron

-> anacron : 일단위의 간격으로 정기적으로 실행

 

4-3 커맨드를 정기적으로 실행하기 위해 crontab의 설정을 진행하는 경우, 실행하는 커맨드 : crontab -e

 

-e
crontab 편집
-l
crontab 표시
-r
crontab 삭제

 

4-4 cron 기능을 이용하여 command를 매일 1회 새벽 1시에 실행 할 경우, crontab 기술 : 01***커맨드

-> 순서 : 분 시 일 월 요비 커맨드

 

4-5 매주 월요일에서 목요일의 PM3시에서 PM5시의 사이에 0분에 프로그램 /usr/local/bin/cleanup을 실행

: 0 15-17 * * 1-4 /usr/local/bin/cleanup

-> 1-4 : 월요일~목요일

 

4-6 crontab의 설명

: crontab의 설정 파일의 엔토리에서 간격을 지정할 경우 [*/간격]이라고 기술

유저의 crontab 파일은 /var/spool/cron/ 디렉토리의 아래에 유저명의 파일로 작성

 

4-7 유저가 crontab 커맨드를 실행하려고 했더니 권한이 없다. 어느 설정 파일에서 그 유저명을 삭제하는 것에 따라 실행 가능하게 하고 싶은 경우 변경해야 할 파일의 절대 패스 : /etc/cron.deny

-> /etc/cron.deny, /etc/cron.allow 가능

/etc/cron.allow : 파일에 기술되어 있는 유저가 cron을 이용 가능

/etc/cron.deny : 파일에 기술되어 있지 않은 유저가 cron을 이용 가능

 

4-8 crontab의 각 엔토리의 최후의 문자 : 개행

 

4-9 지정한 커맨드를 1회씩 실행하는 것으로 설정 : at, batch

 

at [옵션] 시간
-l (+atq)
실행 유저의 キュー에 들어있는 ジョブ 표시
-c (+atc)
ジョブ의 내용을 표시
-d (+atrm)
ジョブ 삭제
-r (+atrm)
ジョブ 삭제

 

HH:MM
10:15
midnight
한밤중
noon
정년
teatime
오후 4시의 티타임 시간
am, pm
 
MMDDYY
 
today
 
tomorrow
 

 

4-10 at 커맨드의 설명

: [atq]로 キュー에 들어있는 ジョブ 표시

[at -r]로 キュー에 들어있는 실행을 기다리는 ジョブ 삭제

[at -d]로 キュー에 들어있는 실행을 기다리는 ジョブ 삭제

 

4-11 특정의 유저의 at 커맨드와 batch 커맨드의 사용을 금지하고 싶을 경우, 금지하는 유저를 추가하고 편집하는 파일을 명과 절대 패스

: /etc/at.deny

-> /etc/at.deny : 거부

/etc/at.allow : 허가

 

4-12 systemd의 타이머를 이용하여 timer-test.service를 실행하고 싶다. 타이머유닛의 설정 파일

[Timer]
OnActiveSec=1hour
OneUnitActiveSec=1hour
Unit=timer-test.service
[Timer]
OnCalendar=*-*-* 4:00:00
Unit=timer-test.service

 

4-13 시스템의 시각을 표시 : date

 

4-14 커맨드 실행시에 타임존을 변경하고 시각을 표시하는 방법

: TZ=New_York date

TZ=UTC date

date --utc

-> date 커맨드 옵션에서 타임존을 지정 : -u, --utc, --universal

 

4-15 /etc/localtime에 대한 설명

: Japan, London, New_York등의 타임존 파일의 복사가 シンボリックリンク

UTC의 시각을 가진 시스템クロック에서 로컬타임에 변환하기 위한 시차정보가 격납

 

4-16 NTP에 따른 시스템 시각을 정확히 설정했다. 하드웨어 クロック도 이 시스템 시각에 맞추고 싶은 경우 : hwclock -u --systohc

-> hwclock : 하드웨어 クロック를 시스템 クロック에, 혹은 시스템 クロック를 하드웨어 クロック에 맞추는것이 가능

하드웨어 クロック를 시스템 クロック : --systohc 혹은 -w

시스템 クロック를 하드웨어 クロック : --hctosys 혹은 -s

 

4-17 CMOS クロック(하드웨어 クロック)에 엑세스 하는 것이 아니라, 시스템クロック를 설정하는 커맨드 : date

-> root유저는 date 커맨드로 시스템 クロック의 시각을 설정 가능

 

4-18 NTP를 이용하는것에 따라, NTP서버의 시각에 시스템 clock에 맞추는 것이 가능

 

4-19 NTP 클라이언트 프로그램의 설명

: NTP 클라이언트에 따라 NTP 서버와의 시각동기에는 root권한이 필요

ntpdate는 NTP 클라이언트 프로그램이며, NTP 서버의 기능은 없다

 

4-20 NTP를 사용하는 시스템 통계를 설정하는 커맨드

: ntpdate

 

4-21 NTP 서버를 사용해 시스템 통계를 설정하기 전에 시스템 통계의 시각이 올바른지 어떤지를 확인하는 커맨드

: ntpdate -q ntp.nict.jp

-> -q : 통계를 설정X, 問い合わせ만 진행

 

4-22 NTP 데몬이 참조하는 설정 파일명

: /etc/ntp.conf

 

4-23 NTP 데몬을 외부 NTP 서버의 スレーブ 하기위해서는 설정 파일의 ______에서 지정하는 값을 변경 할 필요

: server

 

4-24 /etc/ntp.conf에 기재하는 iburst 옵션에 대한 설명

: server 커맨드의 옵션으로서 지정

NTP 서버와의 초기 동기에 걸리는 시간을 단축

 

4-25 ntpd에 대신하는 새로운 NTP 데몬의 이름

: chronyd

 

4-26 시스템 로그를 수집하는 소프트웨어에 대한 설명

: syslog는 Syslog 프로토콜에 따른 시스템 로그를 수집

rsyslog의 설정 파일 rsyslog.conf는 syslog의 설정 파일 syslog.conf와 후방 호환성이 있다

systemd journal는 rsyslog등의 다른 syslog 소프트웨어와 연대하여 사용

 

4-27 Linux 시스템의 로깅데몬인 syslogd가 받은 메세지의 종류에 응하여 출력처를 나누기 위해서 참조하는 설정 파일명

: /etc/syslog.conf

 

4-28 syslogd의 설정 파일중에 모든 커넬 메세지를 콘솔에 표시하고 싶은 경우

: kern.* /dev/console

 

4-29 /etc/syslog.conf 파일중에 ファシリティkernel에서의 プライオリティcrit 이상의 모든 메세지를 /var/log/messages에 기재하고 싶은 경우, ファシリティ와プライオリティ의 설정

: kern.crit

 

4-30 /etc/syslog.conf 파일중에 특정의 ファシリティ에 대해 로그는 모든 기록을 하지 않도록 하는 プライオリティ의 지정

: none

 

4-31 커널과 데몬에서 메세지등 시스템의 대부분의 메세지를 기록하고 있는 파일

: /var/log/messages

 

4-32 세큐리티의 강화를 위해, 시스템 관리자가 로그를 취득하는 서버가 있다. 각 호스트의 로그를 이 리모트 호스트에 전송하기 위해서 각 호스트에서 설정하는 파일명

: syslog.conf

 

4-33 journalctl 커맨드에 대한 설명

: 특정 일시의 범위의 로그를 지정하여 표시

특정의 プライオリティ의 로그를 지정하여 표시

특정의 ファシリティ의 로그를 지정하여 표시

 

-e
--page-end
최신의 부분까지 점프해서 표시
-f
--follow
리얼 타임에 표시
-n
--lines
표시행수를 지정
-p
--priority
지정한 プライオリティ의 로그를 표시
-r
--reverse
반대순으로 표시, 최신의 것이 최상위에 표시
--since
지정일시 이후를 표시
--until
지정일시 이전을 표시

 

4-34 메세지를 systemd-journal에 보내는 로그를 기록하는 커맨드

: systemd-cat

 

4-35 임의의 ファシリティ, 임의의 プライオリティ의 메세지를 syslog에 보내기위해, 어떤 커맨드? : logger

 

logger [옵션] [메세지]
-f
지정한 파일의 내용을 송신
-p
ファシリティ, プライオリティ를 지정 (디폴트는 user.notice)

 

4-36 오래된 로그를 다른 이름으로 저장하는것과 함께, 원래의 이름의 새로운 빈 파일을 작성 : logrotate

 

4-37 Linux의 프린트 서비스인 CUPS에 있어 등록된 프린트의 DeviceURL이 지정되어 있는 설정 파일의 이름을 표준적인 절대패스

: /etc/cups/printers.conf

 

4-38 CUPS에 사용되어지는 PPD : Postscript Printer Description

 

4-39 프린트의 등록과 삭제등을 행하는 CUPS의 설정 커맨드

: lpadmin

 

lpadmin -p 프린터명 옵션
-p
작성하는 프린트명을 지정
-E
프린터ジョブ를 받아, 프린터에의 출력를 개시상태로 함
cupsaccept과 cupsenable 커맨드를 실행한것과 같음
-v
디바이스 URL을 지정
-m
model 디렉토리 /urs/share/cups/model의 아래에 PPD 파일명을 지정
(lpinfo -m 으로 PPD 파일 일람 표시)
-P
PPD 파일명을 지정

lpadmin -d 프린터명 : 디폴트 프린터를 설정

lpadmin -x 프린터명 : 디폴트 프린터를 삭제

 

4-40 Ghostscript의 역활

: PostScript 데이터를 비 PostScript 데이터에 변환

 

4-41 Linux의 새로운 프린트 서비스인 CUPS는 레거시한 프린터 시스템 lpd와 호환의 커맨드라인 인터페이스도 제공한다. 이 커맨드중에서 프린터에 인쇄하는 커맨드

: lpr

-> 인쇄 커맨드는 System V계는 lp, BSD계는 lpr

 

4-42 fileA를 프린터 lp1에 나오게 하기 위해서는?

: lpr -P lp1 fileA

lp -d lp1 fileA

-> 인쇄하는 프린터는 lpr에서는 -P, lp에서는 -d를 지정

지정X시에는 디폴트 프린터로 인쇄

 

4-43 sample 파일을 2부 인쇄

: cat sample | lpr -#2

cat sample | lp -n2

-> 인쇄하는 부수는 lpr에서는 -#숫자, lp에서는 -n숫자

 

4-44 프린터의 파일을 통하지 않고 인쇄

: lpr -o raw file-name

lpr -l file-name

lp -o raw file-name

-> 파일을 통과하지 않고 직접 인쇄는 -o 옵션에 raw를 지정

lpr 커맨드에서 -l 옵션을 사용해도 똑같이 직접 인쇄

 

4-45 프린터의 큐를 표시 : lpq, lpc, lpstat

-> System V계는 lpstat, BSD계는 lpq와 lpc

 

4-46 CUPS에서 인쇄를 정지할때 "Printer stopped by Admin"이라는 메세지를 부여하여 출력하고 싶은 경우

: cupsdisable -c -r "Printer stopped by Admin" 프린터명

-> -r : 현재의 프린터의 상태에 코맨트를 설정

-c : 기다리는 상태를 개시하기 위한 cupsenable 커맨드를 실행

 

4-47 현재 설정되어 있는 로케이션 정보를 표시하기 위한 커맨드

: locale

 

-a
이용 가능한 ロケール 를 전부 표시
-m
이용 가능한 エンコーディング를 전부 표시

 

4-48 국제화 된 프로그램의 메세지 언어를 일본어로 변경하기 위해 ~/.bash_profile에 추가하여야 하는 커맨드

: export LANG="ja_JP.UTF-8"

export LC_MESSAGES="ja_JP.UTF-8" LC_CTYPE="ja_JP.UTF-8"

 

4-49 파일에 격납되어진 문자의 エンコード를 변환하기 위한 커맨드

: iconv