여기서는 멈추세요
- 명령 결과에 내부 IP·호스트명·사용자·마운트 경로 등 공유하면 안 되는 정보가 보이면 원문 전달을 멈춥니다.
- 컨테이너·WSL·복구 환경처럼 실제 대상 서버와 다른 실행 위치라면 자산 정보로 확정하지 않습니다.
LINUX READ-ONLY CHEATSHEET
SAFE OPERATING BOUNDARY
이 가이드는 조회 명령만 제공하므로 시스템 변경에 대한 롤백은 없습니다. 명령에 임의의 리다이렉션, 설치, 삭제 또는 설정 변경 옵션을 추가하지 마세요.
BEFORE YOU START
CHECK THE BRANCH
서버 용도, 개발·검증·운영 구분, 보안 Agent 이름, HA 구성과 특이사항은 명령 출력만으로 확정하지 말고 담당자가 직접 기입합니다.
컨테이너에서는 CPU·메모리·호스트명과 네트워크가 호스트 전체가 아닌 namespace 또는 cgroup 범위로 보일 수 있으므로 실행 위치를 함께 기록합니다.
systemd가 아니거나 iproute2·util-linux 도구가 없는 최소 이미지에서는 일부 명령이 실패할 수 있습니다. 패키지를 즉시 설치하지 말고 사용 가능한 대체 명령과 플랫폼 문서를 확인합니다.
내부 IP, 호스트명, 마운트 경로, 실행 서비스와 사용자 정보는 시스템 구조를 드러낼 수 있으므로 승인된 범위만 남기고 민감정보를 마스킹합니다.
FOLLOW THE FLOW
서버 이름과 배포판 버전, Kernel, CPU 아키텍처, 가상화 유형을 서로 분리해서 확인합니다.
hostnamectlcat /etc/os-releasePRETTY_NAME은 표시용 이름이고 VERSION_ID는 버전 비교에 적합합니다.uname -runame -msystemd-detect-virtnone은 물리 서버일 가능성을 뜻하지만 자산 관리 정보로 재확인하세요.OS 버전과 Kernel 버전은 서로 다른 항목입니다. VM 여부도 명령 결과만으로 자산 분류를 확정하지 않습니다.
서버 용도와 환경 구분은 CMDB·담당자 정보와 대조해 기록합니다.
논리 CPU 수, 메모리 총량, 블록 장치와 실제 마운트 사용량을 각각 확인합니다.
lscpunprocfree -hlsblk -e7 -o NAME,SIZE,TYPE,FSTYPE,MOUNTPOINTdf -hTlscpu의 CPU(s)는 논리 CPU 수입니다. lsblk의 장치 크기와 df의 파일시스템 사용량을 혼동하지 않습니다.
OS/Data 디스크 구분은 마운트 지점과 스토리지 설계서를 함께 확인합니다.
인터페이스 주소, 기본 경로, DNS 설정과 LISTEN 포트를 변경 없이 조회합니다.
ip -br addressip routeresolvectl status 2>/dev/null || cat /etc/resolv.confsudo ss -lntupss -s내부 IP는 scope global 주소에서 찾고, default 경로의 gateway와 인터페이스를 확인합니다. LISTEN은 외부 접근 가능성을 보장하지 않습니다.
연결 장애라면 DNS·라우팅·방화벽·외부 네트워크 경계를 별도 트러블슈팅 가이드로 좁힙니다.
현재 부하와 실패 서비스, 상위 프로세스, 자주 쓰는 미들웨어의 설치 버전을 확인합니다.
uptimesystemctl --failed --no-pagerps -eo pid,user,%cpu,%mem,etime,comm --sort=-%cpu | head -20systemctl list-units --type=service --state=running --no-pagerjava -version 2>&1; nginx -v 2>&1; docker --version 2>&1; psql --version 2>&1; redis-server --version 2>&1설치되지 않은 명령의 오류는 무시하고 실제 사용 중인 제품만 기록하세요.설치되어 있다는 사실과 실제 서비스가 사용 중이라는 사실은 다릅니다. unit, PID, LISTEN 포트와 운영 구성을 함께 봅니다.
제품명과 버전은 담당 애플리케이션의 실행 옵션·배포 문서로 최종 확인합니다.
앞의 핵심 조회를 한 번에 실행하고 사용자가 제공한 서버 작성 항목 순서로 출력합니다.
#!/usr/bin/env sh
printf '%s
' '=== 서버 식별 ==='
printf '서버명/Hostname: '; hostname -f 2>/dev/null || hostname
printf '서버 용도: [직접 입력: WEB/WAS/DB/AI/Judge 등]
'
printf '환경: [직접 입력: 개발/검증/운영]
'
printf '내부 IPv4: '; ip -o -4 addr show scope global 2>/dev/null | awk '{print $2 "=" $4}' | paste -sd ', ' -
printf '%s
' '=== OS / Kernel ==='
grep -E '^(PRETTY_NAME|VERSION_ID)=' /etc/os-release 2>/dev/null
printf 'Kernel: '; uname -r
printf 'Architecture: '; uname -m
printf 'Virtualization: '; systemd-detect-virt 2>/dev/null || printf '확인 불가
'
printf '%s
' '=== CPU / Memory / Disk ==='
lscpu 2>/dev/null | grep -E '^(Architecture|CPU(s)|Core(s) per socket|Socket(s)|Model name):'
free -h
lsblk -e7 -o NAME,SIZE,TYPE,FSTYPE,MOUNTPOINT
df -hT
printf '%s
' '=== Network ==='
ip -br address
ip route
printf '%s
' '=== 주요 실행 서비스 ==='
systemctl list-units --type=service --state=running --no-pager 2>/dev/null
printf '주요 SW/DB/Middleware: [출력 확인 후 직접 요약]
'
printf '보안 SW: [고객사 표준 Agent 확인 후 직접 입력]
'
printf '비고: [HA/이중화/특이사항 직접 입력]
'파일을 만들거나 설정을 바꾸지 않습니다. 외부 공유 전 내부 IP·호스트명·서비스·경로를 반드시 검토하세요.자동 수집된 값은 현재 실행 환경의 관측값입니다. 서버 용도·환경·보안 SW·HA·비고는 직접 작성해야 합니다.
민감정보를 제거한 뒤 인수인계 표나 장애 접수 양식에 필요한 값만 옮깁니다.
PRIMARY REFERENCES
배포판과 버전에 따라 옵션·로그 위치가 다를 수 있습니다. 실행 전 서버의 --help와 로컬 매뉴얼을 함께 확인하세요.