from 유닉스/리눅스/우분투 2011/05/15 23:29

* cron 데몬의 정의

 > 스케줄 관리 프로그램
 > 주기적으로 반복해야 하는 작업을 자동으로 처리

   (일시적으로 수행되어야 할 작업에는 at을 사용)

 > /etc/crontab 파일을 편집해 주는 것만으로 쉽게 관리

   - crontab 파일에 지정되어 있는 스케줄대로 명령들을 실행

   - crontab 실행 파일은 레드햇 리눅스에서는 /usr/bin/crontab에 위치

 > cron 데몬의 사용 유저 제한

 > cron 데몬의 사용법

* crontab [-u 사용자] { -l | -r | -e}

* crontab [-u 사용자] file

> 첫번째 행의 경우 날짜 달 요일 필드 부분이 *로 처리되어 있어 모든 범위를 의미하며, 시는 4시 1분에 설정되어 있다. 그러므로, 매일 4시 1분에 /etc/rc.d/init.d/network stop 명령을 실행하라는 의미이다.

> cron 데몬의 형식

M H D m d command-line

    - M : 분 (0-59, *)

    - H : 시 (0-23, *)

    - D : 날짜 (1-31, *)

    - m : 달 (1-12, *)

    - d : 요일(0-7, *) → 0과 7은 일요일을 의미한다

    - command-line : 실행할 명령을 써 준다

> 이렇게 각각의 사용자가 등록한 cron table은 /var/spool/cron 디렉토리에 저장된다

 

* at 데몬의 정의

> 작업스케줄 예약 데몬

> 여러 개의 프로그램을 차후 지정한 시간에 한 번 실행

> 4개의 클라이언트 명령어로 구성

   - at : 원하는 명령어를 특정한 시간에 실행

   - atq : 실행하는 명령어의 리스트

   - atrm : 명령 리스트에서 삭제

   - batch : 시스템 부하가 허용될 때 명령어를 수행

 

*  at 데몬의 사용법

> at [-V] [-q queue] [-f] [-midbv] TIME

> at -c job [job ....] 

> 옵션

- V : 버전을 보여줌

- q queue : 실행할 대기 큐를 정할 수 있다. 사용할 수 있는 문자는 a-z, A-Z 까지이며, a가 기본큐, 특별히 b는 batch 명령에서 사용하는 큐이며, 그 외에는 높은 글자를 사용할 수록 nice값을 높여서 실행

- f file : 표준출력이 아니라 파일명에서 명령어를 읽어들임

- m : 실행한 결과를 메일로 통보해 줌

- l : atq를 실행하는 alias

- d : atrm을 실행하는 alias

- c : 작업 리스트를 명령행을 포함하여 표준 출력으로 보여줌

TIME : 실행할 시간을 기록, 기본적으로 "hh:mm: YYYY-MM-DD"로 적는다. hh:mm은 시간인데, 시간은 24시간제를 기본으로 한다.

 

 quota 란?

 quota의 개념 : 사용자가 디스크 공간을 제한된 양 이상으로 사용하거나, 시스템상에서 무제한적으로 디스크 공간을 낭비하는 것을 금하는 것

> 사용자 개개인에게 적당한 용량을 할당, 시스템의 성능과 효율성이 향상

> quota는 디스크 저장의 두 가지 점에서 관리자가 제한을 가하는 것을 허락

  - 사용자가 소유하는 inode의 수

  - eltmzm qmffhrdml tn

quota 를 사용하기 위해서는 quota.user나 quota.group이 설정되어야 한다

> 실제적인 용량할당을 위해서는 edquota 명령으로 사용자 용량 제한

> 1.3.8 대 커널 버전부터 통합되었고, 버전 2.0 대 부터는 커널 자체에서 제공

> quota는 파일 시스템이 ext2형 에서만 작동된다

> quota 확인

    'gnorpm'에서 System Environment > Base > Quota-3.01pre9-3 실행

 

*  edquota 의 세 가지 조건

> Soft Limit : 사용자가 가지고 있는 파티션 상에서 디스크 사용의 최대량을 지정함

> Hard Limit : grace period가 설정되어 있을 때만 작동. 사용자에게 할당된 disk의 양을 절대 초과하지 못하도록 한계를 지정함

> Grace Period (옵션사항) : "edquota -t" 명령어와 함께 수행되는 Grace Period는 soft limit에서 용량을 초과한 후부터 적용되는 시간 제한으로 시간의 단위는 시, 분, 초, 일, 주, 월을 사용할 수 있다.

 

quota 프로그램 설정

> 커널설정 : quota 설정 전에 quota를 사용하도록 커널을 설정해야 한다. 즉, 커널에서 quota를 지원하지 않으면 quota를 사용할 수 없기 때문에 커널을 먼저 설정해야 한다.

 - /usr/src/linux-2.4로 이동한 후, 커널 도구인 'Make Xconfig' 입력 > 리눅스 커널 configuration 창이 실행 됨> 메뉴 'File System' 클릭

- quota support를 y로 선택하고 저장

- 'Save snd Exit'를 클릭하여 저장하고 나옴

- 커널 설정이 완료되었으면 'Make dep'을 입력하여 컴파일한다

> quota를 설정할 디스크 선택

- '/etc/fstab' 파일 수정

- usrquota는 사용자 단위로 하드 용량을 제한

- grpquota는 그룹 단위로 용량을 제한

 

> 시스템 리부팅. 시스템 부팅 중에 Quota 를 체크하는 것을 볼 수 있다.

> '/etc/mtab' 파일을 열어 현재 구동되는 파일 시스템 정보를 확인한다.

> quota 설정

- quota를 적용할 디렉토리로 이동 : quotaon -avup

 

> 사용자별 용량 제한

- 사용자별로 용량을 제한하기 위해서 user별로 설정

- edquota -u userID (group이면 g 설정)

 

> 유예 기간 설정

- 사용자의 사용 용량이 Soft Limit 용량을 넘은 후 부터 적용되는 시간 제한

- edquota -t

-시간은 sec(conds), min(nutes), hour(s), day(s), week(s), month(s) 단위로 사용

 

 

티스토리 툴바