네트워크_04 호스트명으로 IP 주소 취득하기
출처 : 유닉스 리눅스 쉘스크립트 예제사전_한빛미디어
명령어: arp, awk
키워드: MAC 주소, IP 주소, ARP
사용처: 네트워크에서 IP 주소를 지정해서 대상의 물리 주소(MAC 주소)를 검색하고 싶을 때
실행 예제
$ ./hostip.sh
Address of www.google.com
==========================
173.194.120.81 IPv4
173.194.120.80 IPv4
173.194.120.83 IPv4
173.194.120.82 IPv4
173.194.120.84 IPv4
2404:6800:4004:80c::1012 IPv6
스크립트
...
네트워크_03 arp 테이블에서 지정 IP 주소에 대응하는 MAC 주소를 표시하기
출처 : 유닉스 리눅스 쉘스크립트 예제사전_한빛미디어
명령어: arp, awk
키워드: MAC 주소, IP 주소, ARP
사용처: 네트워크에서 IP 주소를 지정해서 대상의 물리 주소(MAC 주소)를 검색하고 싶을 때
실행 예제
$ ./arp.sh
192.168.2.1 -> 00:00:5e:XX:XX:XX
스크립트
#!/bin/sh
ipaddr="192.168.2.1"
macaddr=$(arp -ap | awk "/\($ipaddr\)/ {print $4}") # --- 1
if [ -n "$macaddr" ]; then # ------------------------...
네트워크_02 ping으로 특정 호스트 응답 평균 시간을 취득하기
출처 : 유닉스 리눅스 쉘스크립트 예제사전_한빛미디어
명령어: ping, sed, awk
키워드: ICMP, 응답 속도, 평균값
사용처: 특정 서버와 통신 상태를 조사하고 싶을 때
실행 예제
$ ./pingavg.sh
Ping to: 192.168.2.1
Ping count: 10
Ping average[ms]:
38.79
스크립트
#!/bin/sh
ipaddr="192.168.2.1" # ipaddr, count 변수 --------- 1
count=10
echo "Ping to: $ipaddr" # echo 항목 --------------- 2
echo "Ping coun...
네트워크_01 디폴트 게이트웨이에 ping이 통하는지 확인하기(리눅스)
출처 : 유닉스 리눅스 쉘스크립트 예제사전_한빛미디어
명령어: route, awk, ping
키워드: ICMP, 디폴트 게이트웨이, Default Gateway
사용처: 디폴트 게이트웨이를 자동으로 얻어서 ping 명령어로 네트워크 연결을 확인하고 싶을 때
실행 예제
$ ./gwping-linux.sh
[Syccess] ping -> 192.168.1.1
스크립트
#!/bin/sh
# 라우터 명령어 출력에서 디폴트 게이트웨이 얻기
# 첫 번째 컬럼이 "0.0.0.0"인 줄의 두 번째 컬럼을 추출
gateway=$(route -n | awk '$1 == "0.0.0.0" ...
Amazon Linux 2023에서 Let's Encrypt SSL 설정 하기
Amazon Web Service의 light-sail에 워드프레스를 설치한 후 SSL을 설정하는 과정입니다.
Let’s Encrypt를 사용하였습니다. 홈페이지
1. Certbot 설치하기
설치하기에 앞서 작업편의상 root계정으로 작업하였습니다.
/usr/bin/certbot명령을 사용하기 위해 아래과 같이 순차적으로 명령을 실행합니다.
# dnf install -y python3 augeas-libs pip
...(생략)
Complete!
# python3 -m venv /opt/certbot/
# ls /opt/certbot
bin include lib lib64 pyvenv...
서버관리_20 로그 출력을 감시해서 로그에 특정 문자열이 있으면 경고하기
출처 : 유닉스 리눅스 쉘스크립트 예제사전_한빛미디어
명령어: tail, read
키워드: 로그 파일, 감시, 실시간
사용처: 시스템 점검 작업을 하면서 실시간으로 감시 대상 로그 파일을 보기 좋게 가공해서 출력하고 싶을 때
실행 예제
$ ./log-tailgrep.sh
!주의! 파일을 찾지 못했습니다 : [03ac2fsd.dat] File Not Found
!주의! 파일을 찾지 못했습니다 : [pxac2fsd.dat] File Not Found
!경고! 애플리케이션 이상 : [6I7cht1npA] Application Error
실시간으로 로그를 추적해서 주의 메시지를 추가해서 출력
...
서버관리_19 MySQL 테이블을 CSV로 출력하기
출처 : 유닉스 리눅스 쉘스크립트 예제사전_한빛미디어
명령어: mysql, date, tr
키워드: MySQL, 레플리케이션, 감시
사용처: 정기적으로 데이터베이스에서 SELECT한 결과를 CSV 파일로 출력하고 싶을 때
실행 예제
$ ./mysql-csvout.sh
csv_outputdir로 지정한 디렉터리에 CSV 파일로 출력
스크립트
#!/bin/sh
# 데이터베이스 접속 설정
DBHOST="192.168.11.5" #------------------------------------------ 1
DBUSER="user1"
DBPASS="PASSWORD"
DBNAME="h...
207 post articles, 30 pages.