linux

shell 명령어 중에 $(명령어) 이런식으로 표기되어 쓰는 경우가 있다. 예를 들어 도커에서 호스트의 모든 컨테이너들을 한꺼번에 지우고 싶을때 docker container rm $(docker container ls -a -q) 라고 명령어를 사용할 수 있다. 이때 $() 안에 있는 명령어가 먼저 실행된 후 , 바깥의 명령어가 실행된다. 모든 컨테이너의 id를 출력해주고 이를 다시 대체하여 argument 로 쓸 수 있다는 의미이다. 즉, docker container rm $(docker container ls -a -q) 는 docker container rm AAA BBB CCC DDD 와 같다. 따라서 명령어를 실행하면 결과적으로 AAA BBB CCC DDD 컨테이너가 모두 삭제될 것이다 !
DNS 서버는 요청을 받으면 특정 호스트의 주소를 제공한다. 그리고 특정 호스트 주소 뿐만 아니라 설정해준 영역에 해당하는 도메인 정보를 제공하기도 한다. DNS 서버 설정 파일 리눅스에서 dns 서버를 사용하기 위해서 사용하는 도구는 bind이다. 따라서 bind 패키지를 설치한다. yum -y install bind 설치하면 자동으로 /etc/named.conf 파일이 생기는데 기본적인 DNS 서비스 구성에 대해 설정할 수 있다. 이 설정파일에서 Master DNS 서버 설정을 할 수도 있다. 기본 설정값은 options { } 안에 listen-on port 53 {localhost}; 그리고 allow-query{localhost}; 라고 되어 있다. listen-on port 53 는 DNS 요..
at 명령어를 통해서 특정 시점에 작업이 실행될 수 있도록 예약해서 사용할 수 있다. 아주아주 간단하다 !! 단 !! at 명령어로는 단일성 작업을 예약하는 것이다. 주기적으로 작업을 스케줄링 하려면 condtab 명령어들을 사용해야 한다. at [OPTION] TIMESPEC 시간을 표기하는 방법은 다음과 같다 at 22:30 at 11:00 AM //오늘 오전 11시에 실행된다. at Jan 4 2023 13:00 at 01-03-22 at 010322 at 01.03.22 at 3:00pm 5 Jan 2023 at now + 5min //현재시점을 기준으로 실행될 시점을 지정한다. at noon tomorrow : 내일 정오에 작업 실행 예약 at midnight tomorrow : 내일 자정 작업..
system 관리 작업과 사용자의 작업 스케줄링은 원래는 같이 crond 로 관리되었다가, 보안상의 이유로 시스템 관리 작업은 system cron으로 분리하게 되었다. 시스템 cron 작업은 crontab 명령어를 통해서가 아니라, /etc/crontab 파일의 템플릿을 이용하여 /etc/cron.d 디렉토리에 파일을 생성하여 작업을 예약한다. /etc/crontab 의 내용은 다음과 같다. 여기서 제공하는 템플릿을 이용하여 시스템 작업을 스케줄링히자. cp 옮길파일경로 새로운경로/파일이름 명령어를 톻해 /etc/crontab 내용을 복사한 후 /etc/cron.d 디렉토리 하위에 test1 파일을 생성하는 동시에 내용을 붙여넣어주었다. /etc/cron.d 에 템플릿을 복사하여 추가해주었다. 다음과 ..
우선 mask란 무엇일까? 전통적인 Permission으로 권한 관리할 때의 umask가 있다. umask 란 ? 파일을 생성할 때 초기의 퍼미션을 결정해주기 위해 사용하는 mask값이다. 여기서 mask라는 것은 가린다는 의미이다. 파일에 지나치게 많은 권한들이 부여될 경우에 보안상 위험하다. 따라서 umask값을 통해서 적절한 권한을 설정할 수 있도록 도와주는 역할을 한다. 즉, 필요하지 않은 권한들을 빼주는 역할을 한다. -> 그러나 POSIX ACL에서의 mask는 umask와 오히려 반대 개념으로 이해할 수 있다!! POSIX ACL에서의 mask 란 ? posix acl를 가지고 최대한 부여할 수 있는 권한을 나타내는 의미의 mask값이다. setfacl 명령어로 POSIX ACL값을 설정하는..
1. 현재 작업 디렉토리 확인 pwd 2. 쉘 출력된 내용 지우기 clear 3-1. 디렉토리 내용 확인 [root@localhost ~]# ls aaaa anaconda-ks.cfg initial-setup-ks.cfg 3-2. 디렉토리 내용 자세히 확인하기 [root@localhost ~]# ls -l 합계 12 -rw-r--r--. 1 root root 4 12월 26 14:17 aaaa -rw-------. 1 root root 1923 12월 26 11:17 anaconda-ks.cfg -rw-r--r--. 1 root root 1971 12월 26 11:26 initial-setup-ks.cfg 여기서 각 필드의 의미를 알아보자. d rwx r-x r-x 5 root root 5 Dec 27 ..
minjiwoo
'linux' 태그의 글 목록