일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- vgcreate
- chatGPT
- docker image
- M365필터
- newbingai
- firewalld
- ssh
- Kubernetes
- 엑셀파일명변경
- 같은폴더
- ansible
- yum
- MSBing
- docker network
- tar
- docker
- swapon
- vagrant kubernetes
- nmcli
- pvcreate
- 프로세스
- mount
- journalctl
- 리다이렉션
- chmod
- permission
- 날짜변경
- 랜카드인식불량
- HTTPD
- lvcreate
- Today
- Total
becool
20210413 (화) 본문
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 *
'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 |