becool

20210413 (화) 본문

linux

20210413 (화)

gusalstm 2021. 4. 13. 15:45
반응형

9:32 review

 

고급권한

SetUID chmod 4755 FILE

          chmod u+s FILE

SetGID chmod 2755 FILE

          chmod g+s FILE

Stickybit chmod 1777 DIRECTORY

            chmod o+t DIRECTORY

 

소유권

[root@localhost 20210413]# chown :nobody dir1
[root@localhost 20210413]# chgrp nobody dir1

위 상태에서 dir1에서 파일을 생성하면 아래와 같이 소유그룹이 지정되어짐

[root@localhost dir1]# touch rootfile1
[root@localhost dir1]# ls -l
total 0
-rw-r--r--. 1 root nobody 0 Apr 13 09:47 rootfile1

 

아래와 같이 권한을 주게 되면 소유그룹에게 7, 기타 사용자에 쓰기권한을 뺌으로써 읽기만 가능하게 함. 기타사용자 파일생성(touch) 불가

[root@localhost 20210413]# chmod 2775 dir1

 

=================================

POSIX ACL

 

mask 값 변경

[user01@localhost dir4]$ setfacl -m m::rx user01dir1
[user01@localhost dir4]$ getfacl user01dir1/
# file: user01dir1/
# owner: user01
# group: user01
user::rwx
group::rwx #effective:r-x  → 실제 적용되는 권한
group:ntp:r-x
mask::r-x
other::r-x

 

1. 일반ACL

 : 개별파일, 디렉터리에 적용하는 ACL

 

POSIX ACL 지정

-m (수정)

[user01@localhost dir4]$ setfacl -m u:user02:rwx user01file1  - user02 rwx 권한

[user01@localhost dir4]$ setfacl -m g:ntp:rx user01dir1 - ntp  그룹에 rx 권한

 

POSIX ACL ENTRY제거

-x

[user02@localhost dir4]$ setfacl -x g:adm user02dir1

[user02@localhost dir4]$ setfacl -x u:user user02dir1

※ 삭제 시, mask를 마지막에 삭제해야한다. (다른 ACL이 설정되지 않은 경우에만 삭제가 가능하기 때문)

 

POSIX ACL 초기화

-b

[user02@localhost dir4]$ setfacl -b user02dir1

[user02@localhost dir4]$ ls -l
total 16

drwxrwx---. 2 user02 user02  6 Apr 13 10:33 user02dir1 → POSIX ACL 사라짐

 

 

2. Default ACL

 : 디렉터리에 적용하는 ACL로 디렉터리 하위에 생성되는 파일에 ACL을 설정한다. (상속)

  디렉터리 내에 생성된 파일과 디렉터리가 특정 ACL을 상속받게 한다.

  Default ACL 은 디렉터리에 대한 엑세스 제어를 구현하지 않으므로 디렉터리 자체에 

 

$ setfacl -m d:u:name:rx directory

$setfacl -d -m DEFAULT_ACL_ENTRY FILE

 

[root@localhost dir2]# setfacl -m d:u:user01:r subdir3 - user01에게 r--

[root@localhost dir2]# setfacl -m d:o::0 subdir3  - other에게 ---
[root@localhost dir2]# setfacl -m u:user01:rx subdir3 - user01 에게 r-x
[root@localhost dir2]# setfacl -x d:u:user01 subdir3 - user01에게줬던 권한 삭제

[root@localhost dir2]# setfacl -k subdir3 - Default ACL 초기화(삭제)
[root@localhost dir2]# setfacl -b subdir3 - POSIX ACL 삭제

 

 

 

 

 

[root@localhost dir2]# setfacl -m d:g:user:rwx subdir4
[root@localhost dir2]# getfacl subdir4
# file: subdir4
# owner: root
# group: root
user::rwx
group::r-x
other::r-x
default:user::rwx
default:group::r-x
default:group:user:rwx
default:mask::rwx
default:other::r-x

[root@localhost dir2]# setfacl -m g:user:rwx subdir4
[root@localhost dir2]# getfacl subdir4
# file: subdir4
# owner: root
# group: root
user::rwx
group::r-x
group:user:rwx
mask::rwx
other::r-x
default:user::rwx
default:group::r-x
default:group:user:rwx
default:mask::rwx
default:other::r-x

 

=================================

 

작업 예약

 

1. 일회성 작업 예약(Scheduling a Job to Run at a Specific Time)

 at

 $ at [option] TIMESPEC - 예약 추가 입력란

  ctrl + d : 추가 종료

 $ atq  - 현재 예약 확인

 $ atrm [job number]  - 예약 삭제

 

[root@localhost 20210413]# atq
①9 Wed Feb  2 05:13:00 2022 a root

① job number

② job 날짜, 시간

③ 기본대기열 a

④ 작업의 소유자 (및 해당 작업을 실행할 사용자)

 

TIMESPEC 조합

  YY-MM-DD

  22-01-30

  mm-dd-yyyy

  00:00 jan 1 2022

  now +5min

  teatime tommorrow (teatime은 16:00)

  noon +4 days

  5pm august 3 2021

 

 

2. 주기적 작업 예약 (Scheduling a Recurring Job)

 

$ crontab 

crontab   분     시간     일       월    요일 명령어

          (0~59) (0~23) (1~31) (1~12)(0~6) COMMAND  ※ 0 과 7은 모두 일요일을 나타낼 수 있다.

명령 용도
crontab -l 현재 사용자의 작업을 나열한다.
crontab -r 현재 사용자의 모든 작업을 제거한다.
crontab -e 현재 사용자의 작업을 편집한다.
crontab filename 모든 작업을 제거하고 filename에서 읽은 작업으로 바꾼다.
파일을 지정하지 않으면 stdin이 사용된다.

 

메타 문자 설명
* Always, Don't care
- 연속된 범위 지정
, 여러 값 구분자
/ 조건에 따른 주기 지정
   
   

※ x-y : 범위

※ 5,10-13,17 : 정시 5분후, [10분후, 11분후, 12분후, 13분후], 17분후 실행

※  표현 방법

   매월 1일 9시 0분 

 $ crontab -e

   0 9 1 1-12 *  [command]

 

   0 9 1 *  *

   매월 10일 18시 0분 

   0 18 10 * *

   매주 월요일 오후 3시 

   0 15 * * 1

   매주 수요일 오후 4시 오후 6시 

   0 16,18 * * 3

   매일 오후 7시 15분 30분

   15,30 19 * * *

   4월 10일 25일에 오전 1시에 작업

   0 1 10,25 4 *

   6월 10~12일 오후 3시 35분 마다

   35 15 10-12 6 * 

 

 

 

 

 

 

 

 

 

728x90

'linux' 카테고리의 다른 글

20210414 (수)  (0) 2021.04.14
date 표현  (0) 2021.04.14
20210412 (월)  (0) 2021.04.12
20210409 (금)  (0) 2021.04.09
20210408 (목)  (0) 2021.04.08
Comments