본문 바로가기

Linux

C276x260.fwebp.q85 [draft] watchdog: BUG: soft lockup 오류 분석 및 조치 가이드 watchdog: BUG: soft lockup 오류 분석 및 조치 가이드watchdog: BUG: soft lockup - CPU#0 stuck for 63s!"watchdog: BUG: soft lockup" 에러는 리눅스 시스템에서 발생할 수 있는 소프트 락업(soft lockup) 상황을 나타내는 경고 메시지입니다. 이러한 에러는 일반적으로 CPU가 장시간 동안 사용 중인 상태로 보고되지 않는 경우에 발생합니다.이 문제를 해결하기 위해 다음과 같은 단계를 시도할 수 있습니다.최신 커널 업데이트: 우선, 시스템에 적용 가능한 최신 커널 패치 및 업데이트가 있는지 확인하십시오. 새로운 커널 버전에는 소프트 락업과 관련된 문제에 대한 수정 사항이 포함되어 있을 수 있습니다.하드웨어 문제 확인: 소프트 .. 더보기
C276x260.fwebp.q85 [draft] 우분투에 MySQL 5.7을 바이너리 파일로 설치하는 방법 우분투에 MySQL 5.7을 바이너리 파일로 설치하는 방법1. 바이너리 파일 다운로드MySQL 5.7 바이너리 파일을 MySQL 공식 웹사이트에서 다운로드합니다. 원하는 버전의 바이너리 파일을 선택하고 다운로드한 파일을 원하는 디렉토리에 저장합니다.cd /usr/local/src/wget https://downloads.mysql.com/archives/get/p/23/file/mysql-5.7.41-linux-glibc2.12-x86_64.tartar xf mysql-5.7.41-linux-glibc2.12-x86_64.tarmkdir /usr/local/mysql-5.7.41tar xfz mysql-5.7.41-linux-glibc2.12-x86_64.tar.gz -C /usr/local/mysql-.. 더보기
C276x260.fwebp.q85 [draft] BIND(named)에서 $GENERATE 지시어를 사용하는 방법 BIND(named)에서 $GENERATE 지시어를 사용하는 방법BIND(named)에서 $GENERATE 지시어를 사용하여 여러 개의 DNS 레코드를 생성할 수 있습니다. $GENERATE 지시어는 특정 패턴을 기반으로 DNS 레코드를 생성하므로 DNS 서버를 구성하는 데 매우 유용합니다.기본 파일 확장자: $GENERATE 지시어$GENERATE first-last@interval patternfirst : 생성될 첫 번째 레코드의 숫자last : 생성될 마지막 레코드의 숫자interval : 레코드 간의 간격pattern : 레코드의 이름 및 기타 속성을 지정하는 패턴예를 들어,172.20.0.0/24 역도메인(reverse domain) zonefile 생성named.conf(/etc/bind/n.. 더보기
C276x260.fwebp.q85 [draft] NGINX 특정 파일이나 디렉터리만 허용하고 나머지 요청 제한하기 NGINX 특정 파일이나 디렉터리만 허용하고 나머지 요청 제한하기NGINX에서는 location 블록과 접근 제어 지시어(allow, deny, return)를 활용해 특정 파일 또는 디렉터리만 허용하고 나머지 모든 요청을 제한할 수 있다.기본 개념 정리location 매칭 우선순위location = /exact (정확 매칭)location ^~ /prefixlocation ~ regexlocation / (기본)허용할 경로를 먼저 정의하고, 차단 규칙은 가장 마지막에 둔다가 핵심 원칙특정 파일만 허용하고 나머지는 리다이렉트health_check.html만 허용, 나머지는 301 리다이렉트server { listen 80; server_name _; root /usr/share/nginx.. 더보기
C276x260.fwebp.q85 [draft] HashiCorp Vault를 사용하여 SSH 인증을 관리하는 방법 HashiCorp Vault를 사용하여 SSH 인증을 관리하는 방법(ssh authentication)테스트 환경호스트 이름아이피역할운영체제비고node141192.168.0.141vault serverubuntu 24.04 node142192.168.0.142ssh serverubuntu 22.04 node143192.168.0.143ssh clientubuntu 22.04 Vault 데이터 디렉터리 초기화 및 서버 재시작sudo systemctl stop vaultsudo rm -rf /opt/vault더보기---GPG 키와 저장소 추가wget -O- https://apt.releases.hashicorp.com/gpg \ | sudo gpg --dearmor --yes -o /usr/share/.. 더보기
C276x260.fwebp.q85 [draft] scp 명령어를 사용하여 파일을 쉽게 업로드 및 다운로드할 수 있는 스크립트 scp 명령어를 사용하여 파일을 쉽게 업로드 및 다운로드할 수 있는 스크립트스크립트 작성vim file_transfer.sh#!/bin/bash# Check if the correct number of arguments is providedif [ "$#" -ne 4 ]; then echo "Usage: $0 {up|down} " exit 1fi# Set variables for better readabilityACTION=$1REMOTE=$2LOCAL_PATH=$3REMOTE_PATH=$4KEY_PATH=~/aws-key/ec2key.pem# Perform the action based on the first argumentcase "$ACTION" in up) scp -i "$KEY_P.. 더보기
C276x260.fwebp.q85 [draft] Logrotate를 설정하는 방법 Logrotate를 설정하는 방법logrotate의 기본적인 설정은 매일 새벽 3시에 실행되도록 되어 있습니다. 이는 대부분의 경우, 시스템 사용량이 가장 적은 시간대이기 때문입니다. logrotate는 로그 파일을 회전시켜서 로그 파일의 크기나 날짜에 따라 새로운 파일을 생성하고 이전 파일을 삭제하는 등의 작업을 수행합니다. 이 작업은 일반적으로 시스템의 디스크 I/O나 CPU 자원을 많이 사용하기 때문에, 시스템 사용량이 가장 적은 새벽 시간대에 실행되는 것이 좋습니다. 그러나, 이는 logrotate의 기본 설정이며 사용자가 직접 설정을 변경하여 로테이션 시간을 조정할 수도 있습니다. 적절한 시간대를 설정하여 로그를 회전시키는 것이 시스템의 부하를 줄일 수 있습니다. 단, 로그 파일이 지나치게 커서.. 더보기
C276x260.fwebp.q85 [draft] jq 명령어 jq 명령어jq는 커맨드 라인에서 JSON 데이터를 파싱하고 조작하는 유용한 도구입니다. 이 도구를 사용하면 JSON 형식의 데이터를 쉽게 쿼리하고 필요한 정보를 추출하거나 수정할 수 있습니다.jq 설치CentOSyum install -y epel-releaseyum install -y jqUbuntusudo apt updatesudo apt install jqjq 버전jq --version$ jq --versionjq-1.6jq 명령어의 사용 예제1. JSON 데이터 파싱하기jq를 사용하여 JSON 데이터를 파싱하고 보기 쉬운 형태로 출력할 수 있습니다.echo '{"name": "John", "age": 30}' | jq .이 명령어는 다음과 같이 JSON 데이터를 예쁘게 포맷하여 출력합니다.{ ".. 더보기