Home

서버관리_08 특정 프로세스가 정지했는지 감시하기

출처 : 유닉스 리눅스 쉘스크립트 예제사전_한빛미디어 명령어: ps, grep, wc 키워드: 프로세스, 감시, 정지 사용처: 서비스 제공 시 존재해야 할 프로세스가 정지하지 않았는지 감시하고 싶을 때 사용합니다. 실행 예제 $ ./process-isalive.sh [ERROR] 프로세스 /usr/llibexec/mysqlid 찾지 못했습니다. start alert.sh ... 스크립트 #!/bin/sh # 감시할 프로세스 명령어 commname="usr/libexec/mysqld" # -------------------------------------------------- 1...

Read more

서버관리_07 서버 구축 패키지 목록을 셸 스크립트 형태로 관리하기

출처 : 유닉스 리눅스 쉘스크립트 예제사전_한빛미디어 명령어: yum 키워드: RPM 패키지, 설치, 구축 사용처: 서버 구축 작업에서 패키지 설치를 자동화하고 싶을 때 사용합니다. 실행 예제 # ./yum-install.sh Loaded plugins: fastestmirror, security Loding mirror speeds from cached hostfile (생략) yum 명령어로 httpd, zsh, xy, git 설치 스크립트 #!/bin/sh # 설치할 패키지명 정의 pkglist="httpd zsh xz git" # ----- 1...

Read more

서버관리_06 RPM 패키지명이 적힌 목록 파일에서 각각의 패키지가 설치, 갱신된 날짜를 확인하기

출처 : 유닉스 리눅스 쉘스크립트 예제사전_한빛미디어 명령어: cat, rpm 키워드: RPM패키지, 갱신 시각, 설치, 업데이트 사용처: 여러 서버에 패키지 설치 및 업데이트를 진행하는데 서버마다 작업에 실수가 없는지 확인하고 싶을 때 실행 예제 # 설치 후 확인해야 할 패키지 목록을 작성합니다. $ cat pkg.lst httpd zsh xz git $ ./rpm-lastdate.sh pkg.lst 2021/04/19 11:14:11 : httpd 2021/04/20 13:43:23 : zsh 2020/06/03 15:21:09 : xz 2021/03/24 09:33:12 : gi...

Read more

서버관리_05 파일명으로 설치된 RPM 패키지명을 확인하기

출처 : 유닉스 리눅스 쉘스크립트 예제사전_한빛미디어 명령어: rpm, exit 키워드: RPM패키지, 설치 사용처: 서버에 있는 파일인지, 패키지에 있는지, 직접 작성한 것인지 알기 위해 RPM패키지를 조사하고 싶을 때 실행 예제 $ ./rpm-compkg.sh /etc/ntp.conf /etc/ntp.conf -> ntp-4.2.4p8-3.el6.centos.x86_64 $ ./rpm-compkg.sh /etc/my.cnf /etc/my.cnf는 패키지에 포함되지 않습니다. 스크립트 #!/bin/bash # 파일을 지정하는 명령행 인수를 확인 if [ ! -f "$1...

Read more

서버관리_04 시스템 셧다운하기

출처 : 유닉스 리눅스 쉘스크립트 예제사전_한빛미디어 명령어: who, ps, shutdown 키워드: 로그인 사용자, 셧다운, 프로세스, 확인, 정지 사용처: 셧다운 절차를 스크립트로 작성해서 확인 항목을 자동으로 체크하고 전원을 내리고 싶을 때 실행 예제 # ./shutdown.sh [ERROR] who 명령어 출력이 2줄 이상: 작업 중인 사용자가 있습니다. # ./shutdown.sh Broadcast message from user1@linux (/dev/pts/1) at 15:32 ... The system is going down for hal...

Read more

서버관리_03 허가된 사용자만 스크립트 실행 가능하게 하기

출처 : 유닉스 리눅스 쉘스크립트 예제사전_한빛미디어 명령어: id, whoami, echo 키워드: 실행 사용자, 권한, root 사용처: 어떤 스크립트를 지정한 사용자 이외는 실행 금지하고 싶을 때 실행 예제 $ whoami user1 $ ./id-script.sh [ERROR] batch1 사용자로 실행하세요 스크립트 #!/bin/bash # 스크립트 실행을 허용할 사용자 정의 script_user="batch1" # --------------------------------- 1 # id 명령어로 현재 사용자를 취득, 정의와 일치하는지 확인 if [ $(id -nu) ...

Read more

서버관리_02 서버에 작성된 사용자 계정 목록 얻기(Server Get User List)

출처 : 유닉스 리눅스 쉘스크립트 예제사전_한빛미디어 명령어: grep, cut 키워드: 사용자 계정, 구분자, 컬럼 사용처: 텍스트 파일에서 구분자를 지정해서 특정 컬럼을 추출하고 싶을 때 실행예제 $ ./sep-cut.sh root bin daemon :(생략) sshd nginx user1 스크립트 #!/bin/bash # 사용자 계정 정보 파일 filename="/etc/passwd" # 줄 첫글자가 #인 주석 줄은 제외하고 cut 명령어로 # * 첫 번째 값을 표시 [-f 1] # * 구분자 기호는 : [-d ":"]로 표시 grep -v "^#" "$filenam...

Read more