본문 바로가기

프로그래밍

서버 모니터링 명령

- uptime : 시스템의 부하 상태
- vmstat : us (user time, 프로세스가 사용하는 총 CPU 시간의 비율)
sy (system time, 시스템 부하로 소비되는 총 CPU 시간의 비율)
id (idle time)
swpd (사용된 가상메모리)
free, buff, si (하드로부터 스왑된 메모리의 양), so (하드로 스왑된 메모리의 양)
(ex) vmstat 5 4 : 5초 단위로 갱신된 네 개의 정보를 화면 출력


- ps -aux : 프로세스 모니터링
            (ex) ps -aux | grep apache
                 ps -aux | head -4  (CPU를 가장 최대로 사용하는 상위 4개 프로세스)


- top : 시스템의 전반적인 내용 총괄하여 화면에 표시

- df : 파일 시스템 단위로 남은 공간 표시
(ex) df -h, df -a, df -m


- du : Disk Usage ,  디렉토리의 사용량 출력
(ex) du /var,   du -s /var

- 시스템 감시기, gkrellm  : X-window 용


[크론(cron)으로 무인 서버 관리]


- vi /etc/crontab


- # run-parts
01       * * * *  root  run-parts  /etc/cron.hourly
(한시간에 한번씩 매시 1분에 /etc/cron.hourly 디렉토리의 스크립트를 실행하라)

02       4 * * *  root  run-parts  /etc/cron.daily
(매일 4시 2분에 /etc/cron.daily 디렉의 스크립트를 실행하라)

22       4 * * 0  root  run-parts  /etc/cron.weekly
(매주 일요일 4시 22분에 스크립트 실행하라)

42       4 1 * *  root  run-parts  /etc/cron.monthly
(매달 1일 4시 42분에 스크립트를 실행하라)


-   01  *   *    *   *   명령
    분 시간 날짜 달 요일

- 분(0-59)  시간(0-23)  날짜(0-31)  달(1-12)  요일(0-6, 0:일요일)


[crontab 명령을 이용한 작업내용 작성, 스케쥴 등록]
- crontab -e  (작업할 내용 작성)

- vi editor로 입력

0 12 * * 0  tar cpf /root/backup/backup.tar /var/www/html
(일요일 12시마다 /var/www/html의 내용을 backup.tar 파일로 백업하라)

0 12 * * 1  rm -f /var/log/httpd/access_log; reboot
(월요일 12시마다 웹서버의 로그파일 삭제하고 재부팅하라)


- crontab -l  (작업내용 확인)

- crontab -r  (모든 설정된 작업스케쥴 정보를 삭제하라)

(cf) 0 1 1-15 * * [명령]
(1일부터 15일까지 지정된 명령을 매일 1시에 수행하라)

(cf) rdate -s time.bora.net   (보라넷의 타임서버와 시간 맞추라)
    hwclock --systohc      (리눅스 서버의 CMOS 시간을 리눅스에서 인식하는 현재시간으로 설정)
0 0 * * 1 root rdate -s time.bora.net && hwclock -systohc


[보안 취약성 검사 프로그램, X-window 용 : nessus]
- http://www.nessus.org 에서 4개의 파일 다운로드
- nessus-libraries-xxx.tar.gz   ./configure   make   make install
- vi /etc/ld.so.conf     /usr/local/lib 항목 추가     ldconfig 실행
- libnasl-xxx.tar.gz   nessus-core-xxx.tar.gz   nessus-plugins-xxx.tar.gz
  3개의 파일을 ./configure  make   make install
- ldconfig 실행 한번 더
- /usr/local/sbin/nessus-adduser  (사용자 등록)
- /usr/local/sbin/nessus-mkcert    (SSL 인증서)
- nessus-update-plugins   (플러그인 업데이트)
- nessus 클라이언트 실행:  /usr/local/sbin/nessusd -D        nessus &

[up2date : 패키지 자동 업데이트]
- 로컬 설정 파일이 수정되는 동안 패키지들을 업그레이드하지 마십시오 에 체크
- 레드햇 적색아이콘 (Red Hat Network Alert) 활용