참고
시스템 정보
dmidecode(하드웨어 컴포넌트 정보제공)
NOTE
Desktop Management Interface, decode는 하드웨어 정보를 확인하는 명령어다!
uname -a # 리눅스 버전확인
cat /etc/*-release
cat /proc/version
dmidecode -t bios # bios 정보확인
dmidecode -t system # 시스템 장비
dmidecode -t processor # cpu 정보
cat /proc/cpuinfo # 똑같이 확인가능
lscpu
dmidecode -t memory # 메모리 확인
cat /proc/meminfo
grep MemTotal /proc/meminfo. # 물리적 메모리에 대한 세부정보
grep VmallocTotal /proc/meminfo # 가상메모리 세부정보
gre Huge /proc/meminfo # 대형 페이지 정보 나열
cat /proc/diskstats # 디스크 확인(dmidecode는 없음)
Bash
복사
lsb_release(배포판 정보)
NOTE
Linux Standard Base에 관한 정보를 표시한다!
lsb_release -a # 모든 LSB정보 표시
lsb_release -d # 배포판에 대한 설명
lsb_release -r # 배포판 릴리스 번호
Bash
복사
LSB는 리눅스 운영체제의 표준화를 목표로하는 프로젝트이며, 다양한 리눅스 배포판 간의 호환성을 올리기 위해 만들어졌다.
•
해당 표준은 리눅스 시스템이 제공해야하는 기본 라이브러리, 명령어 셋, 도구 등을 명시한다.
uname(UNIX name)
NOTE
UNIX 운영체제에서 시스템 정보를 표시하는 명렁어다!
uname -a # 모든 정보
uname -n # 노드의 호스트 이름
uname -s # 커널 이름
uname -o # 운영체제
Bash
복사
hostnamectl(시스템 및 호스트 정보)
NOTE
systemd 시스템 및 서비스 관리자의 일부로 호스트 이름과 시스템 관련 정보를 관리하고 표시한다!
hostnamectl # 호스트 이름, 운영 체제, 커널 등 상세한 정보 표시
hostnamectl set-hostname # 호스트 변경
Bash
복사
df (Disk Free)
NOTE
파일 시스템의 디스크 사용 가능한 공간을 보여주는 명령어다!
df # 전체 파일 시스템 디스크 사용량
df -h # h(가독성 높은형식)
df /dev/sda1 # 특정 파일시스템 디스크 사용량
Bash
복사
du (Disk Usage)
NOTE
폴더 또는 파일의 디스크 사용량을 보여주는 명령어다!
du . # 특정 디렉토리의 크기 확인
du -h . # h(가독성)
du -sh . # s(디스크 사용량 합계)
du -ah . # 파일,디렉토리 모두 표시
Bash
복사
top, htop (실시간 프로세스 출력)
NOTE
top # 현재 시스템에서 실행중인 프로세스에 대한 정보가 나온다)
tob -b -n 1 -d 2# b(배치모드), n(횟수), d(반복초)
top -b -n 1 -d 2 >> toptext
htop # top의 확장버전
Bash
복사
VIRT, RES, SHR은 무엇인가?
VIRT, RES, SHR의 관계
•
VIRT: task가 사용하고 있는 virtual memory의 총량
◦
실제 할당되는 공간이 아니기 때문에 크다고 문제되지 않는다.
•
RES: task가 사용하고 있는 물리 메모리의 양
◦
실제 사용하고 있는 메모리가 RES, 메모리 점유율을 볼 때 가장 중요하게 볼 것
•
SHR: 다른 프로세스와 공유하고 있는 shared memory
free
NOTE
시스템의 메모리 사용량을 확인한다!
free # 시스템의 총 메모리 용량과 사용가능한 메모리 제공
free -h # h(가독성)
free -t # t(총 메모리 사용량)
free -s 1 # s(초 마다)
Bash
복사
free -h -s 5 명령어 결과
lsof(list open files)
NOTE
현재 시스템에서 열린 파일들의 리스트를 보여주는 명령어다!
lsof # 전체 열린 파일목록 보기
lsof -u testuser # u(사용자)에 의해 열린파일
lsof -p PID # p(PID), 특정 PID로 인해 열린파일
lsof -i TCP:22-80 # i(프로토콜:포트), 특정 포트를 사용하는 프로세스
lsof -c ssh # c(프로세스 이름 - 시작기준)
lsof /path # 특정 파일을 열고 있는 프로세스 보기
Bash
복사
파일은 리눅스/유닉스에서의 파일을 말하며, 폴더, 네트워크,소켓 등을 포함한다.
watch
NOTE
watch는 주로 다른 명령어를 주기적으로 실행하고 결과를 화면에 보여주는 명령어다!
watch ls -l # 2초마다 명령어 실행
watch -n 5 date # 5초마다 명령어 실행
watch -d ls -l # d(이전과 다름)을 강조
watch -t ls -l # watch 제목숨김
watch -g ls -l # g(출력이 바뀌면 종료)
watch uptime # uptime 모니터링
watch free -m # 메모리 사용량 모니터링
watch -n 1 ls -l /some/directory # 1초마다 경로검사
watch -d ifconfig # 네트워크 상태검사
Bash
복사
systemctl, service
NOTE
시스템 서비스 매니저인 systemd의 주요 명령어이다!
systemctl status ssh # 서비스 상태 확인
systemctl start ssh # 서비스 시작
systemtcl stop ssh # 서비스 중지
systemctl restart ssh # 서비스 재시작
# 서비스를 부팅 시 자동 시작하도록 설정
systemctl enable ssh # 설정 O
systemctl disable ssh # 설정 X
Bash
복사
service는 systemctl의 구버전
log
NOTE
시스템 서비스 매니저인 systemd의 주요 명령어이다!
cd /var/log # 로그 확인
ls -al
cd journalctl # 로그를 저장하는 저널링 서비스를 읽기위해 등장
journalctl --list-boots
Bash
복사
service는 systemctl의 구버전
로그 이름 | 목적 |
syslog | 기본 시스템 로그입니다. 시스템 및 애플리케이션에 대한 모든 중요한 정보가 포함되어 있습니다. 일반적으로 자체 로그를 작성하지 않는 항목은 여기, 에 있을 것입니다 syslog. |
auth.log | 권한 부여에 대한 정보가 포함되어 있습니다. 모든 사용자 로그인 시도(성공 여부에 대한 정보 포함), 로그아웃, 비밀번호 변경, 원격 로그인 및 sudo. |
dmesg | 로그가 아닌 커널 링 버퍼입니다(우리가 로그를 이해하는 것처럼). 이를 통해 커널과 상호 작용하고 부팅 메시지를 쿼리하여 정보를 얻을 수 있습니다. 이는 dmesg부팅 데이터가 포함되어 있다는 의미가 아니라 시스템 작업 중에 진행되는 모든 내용이 포함되어 있음을 의미합니다. |
kern.log | 커널 메시지를 저장합니다. |
boot.log | 시스템의 시작 순서를 포함합니다(커널 부팅 아님). 즉, 시작된 서비스, 애플리케이션, 디스크 구성 등에 대한 정보입니다. |
lastlog | 유틸리티 와 함께 사용할 파일입니다 lastlog. 마지막 로그인에 대한 정보가 포함되어 있습니다. |
faillog | lastlog와 유사하며 faillog유틸리티와 함께 이 파일을 사용합니다. 로그인 실패와 같은 로그 실패 |
wtmp.log | 로그인 정보가 포함되어 있습니다. lastlog그러나 와 유사하지만 와 같은 다른 유틸리티에서 사용되는 정보는 표시되지 않습니다 who. |
dpkg.log | 패키지 관리(설치, 제거, 업데이트 등)에 대한 데이터가 포함되어 있습니다. |