레이블이 mpstat인 게시물을 표시합니다. 모든 게시물 표시
레이블이 mpstat인 게시물을 표시합니다. 모든 게시물 표시

Linux 시스템 다양한 정보 보기, 성능 분석

# 시스템 정보 보기 (호스트네임,커널,프로세서,OS,..etc)
uname -a

# linux 이름 및 버전 정보 보기
vi /etc/issue

# 또는
cat /etc/*-release

# 사용자 리스트
vi /etc/passwd

# CPU 정보
vi /proc/cpuinfo

# memory 정보
vi /proc/meminfo

# 또는
# -m MB 로 표시, -g GB 로 표시,...etc
free -m

# 또는
# virtual memory 상태 -w wide
vmstat -w

# 또는
# -s status -S m MB 로 표시
vmstat -s -S m

# vmstat,mpstat,sar 설치
yum install sysstat

# memory 사용률 1초마다 갱신해서 5번까지 보기
vmstat 1 5

# 시스템 성능 통계
# cpu 사용률 1초마다 갱신해서 5번까지 보기
sar 1 5

# process 사용률 1초마다 갱신해서 5번까지 보기
mpstat 1 5

# Disk 별 uuid 정보
ls -ahl /dev/disk/by-uuid/

# Disk 사용량 보기
df -h

# 부팅 후 운용시간 보기
uptime

# dns 서버 설정
vi /etc/resolv.conf

# host 커스텀 설정
vi /etc/hosts

# hostname 보기
cat /proc/sys/kernel/hostname

# 시스템 정보
sudo dmidecode -t system

# 메모리 정보
sudo dmidecode -t memory

# 바이오스 정보
sudo dmidecode -t bios

# 소켓 간단한 상태 보기
cat /proc/net/sockstat

# 소케 메모리 사용량 확인
netstat -m

# 소켓 사용 현황 보기
# -n(numberic ip 로 표현, 도메인 리졸브 안함)
# -a(all)
# -t(tcp)
netstat -nat

# 또는
ss -nat

# 도메인 ip 보기
nslookup google.com

# 또는(좀더 자세하다.)
dig google.com

# 패킷 라우팅 보기
traceroute google.com

# 포트 범위
sysctl net.ipv4.ip_local_port_range

# 또는
cat /proc/sys/net/ipv4/ip_local_port_range

# tcp 관련 설정 정보
sysctl -a | grep net.ipv4.tcp

# 프로세스가 사용하는 시스템 콜 api 보기
sudo yum install strace
strace 명령어

# 예) ls 명령에서 open 시스템 콜만 골라 보기
strace -e trace=open ls

# 예) 실행중인 프레스 attach 해서, 결과 파일로 쓰기
strace -p 프로세스id -o zzz.strace

# 열린 파일 리스트
sudo yum install lsof
lsof

# 1234 포트 사용중인 파일 리스트
# 해당 PID 를 파악할 수 있다.
lsof -i :1234

# rsync 커맨드가 사용중인 파일 리스트
lsof -c rsync

# io 트랙픽 보기
sudo yum install iotop
sudo iotop

# network 트래픽 보기
# -i  eth0 으로 특정 네트워크 인터페이스를 지정할 수 있다.
sudo yum install iftop
iftop

# 시스템 부팅 시 메시지
dmesg -e

# 에러, startup, shutdown 등의 각종 시스템 이벤트 로그
sudo vi /var/log/messages


#####


# mac 참고
# 모든 정보
sysctl -a

# cpu 브랜드 이름
sysctl -a | grep cpu.brand_string

# cpu 개수
sysctl -n hw.ncpu

# 메모리 크기
sysctl -n hw.memsize

# 메모리 사용량 1초마다 보기
vm_stat  1

# 컴퓨터 이름 보기
networksetup -getcomputername

# 컴퓨터 이름 설정
networksetup -setcomputername "ysoftman macbook pro"

# 사용 가능한 네트워크 종류 보기
networksetup -listallnetworkservices

# 연결중인 네트워크 리스트
networksetup -listallhardwareports

# wi-fi(listallnetworkservices 중하나) 정보
networksetup -getinfo wi-fi

# en0(보통 wi-fi) 끄기
networksetup -setairportpower en0 off

# en0(보통 wi-fi) 켜기
networksetup -setairportpower en0 on

# airport(wi-fi) 상태 정보
/System/Library/PrivateFrameworks/Apple80211.framework/Versions/Current/Resources/airport -I

# 시스템 자세한 정보
system_profiler

# 시스템 자세한 정보(app)
spotlight -> 시스템 정보.app(또는 system profiler 로 실행)

# 시스템 메시지(로그)
# mac 에선 dmesg 로 부팅 로그 전체를 볼 수 없어 log 를 사용하는것이 좋다.
# log 는 dmesg 를 포함한 시스템 로그를 취합해 보여준다.
# start 날짜 이후의 시스템 메시지
log show --start "2010-02-19"

# 실시간 시스템 로그 보기
log stream

# 로그 전체 삭제
sudo log erase --all

# 시스템 로그 파일
vi /var/log/system.log

# 참고 리눅스에서 상황/대상별에 맞는 분석/성능 툴
http://www.joyent.com/blog/linux-performance-analysis-and-tools-brendan-gregg-s-talk-at-scale-11x