hdparm (디스크 정보 확인 및 성능 테스트)
·
Linux
hdparm 디스크의 성능 측정 시 많이 사용하나 디스크 정보 확인 및 설정 변경이 가능 설치 CentOS 7.9 # yum install hdparm Ubuntu 20.04LTS # apt install hdparm 사용법 디스크 읽기 속도 측정 -t : 디스크 읽기 속도 -T: 디스크 버퍼 캐시 읽기 속도 # hdparm -tT /dev/sda /dev/sda: Timing cached reads: 16386 MB in 2.00 seconds = 8201.89 MB/sec Timing buffered disk reads: 844 MB in 3.00 seconds = 280.89 MB/sec 디스크 캐시에 따른 성능 차이를 비교 할 수 있음. 디스크 정보 확인 # hdparm /dev/sda /dev/..
ps_mem (메모리 사용량 확인)
·
Linux
ps_mem 프로그램(프로세스)의 메모리 사용량을 확인하는 유틸리티(Python 스크립트) 설치 CentOS 7.9 # yum install ps_mem Ubuntu 20.04 # pip3 install ps_mem Collecting ps_mem Downloading ps_mem-3.14-py2.py3-none-any.whl (19 kB) Installing collected packages: ps-mem Successfully installed ps-mem-3.14 apt 를 통한 설치는 안되며, pip3를 통한 설치 또는 GitHub 에서 스크립트 파일을 다운로드 받아 사용 가능 # wget -qO /usr/local/bin/ps_mem https://raw.githubusercontent.com/..
메모리 캐시에 저장 된 파일 확인
·
Linux
메모리 128GB 중 102GB가 cache 로 잡혀 있어 어떤 파일이 저장되어 있는지 궁금해서 검색 함. 사용 툴 perf 리눅스 성능 프로파일링 툴 커널 이벤트 추적은 메모리 읽는것과 관련 된 mm_filemap_add_to_page_cache 사용 커널 이벤트 추척 mm_filemap_add_to_page_cache 이벤트를 20초간 녹화 # perf record -a -e filemap:mm_filemap_add_to_page_cache sleep 20 [ perf record: Woken up 1 times to write data ] [ perf record: Captured and wrote 0.450 MB perf.data (1888 samples) ] 로그 확인 PID 6261 이 cro..
메모리 확인 - free
·
Linux
/proc/meminfo 에서 내용을 가져와서 리눅스 전체 메모리 현황을 보여 줌 # free -h total used free shared buff/cache available Mem: 15G 2.1G 10G 768M 3.0G 12G Swap: 15G 0B 15G w 옵션을 사용하면 buffer 와 cache 를 분리하여 확인이 가능 # free -wh total used free shared buffers cache available Mem: 15G 2.1G 10G 768M 191M 2.8G 12G Swap: 15G 0B 15G Mem total: 설치 된 총 메모리의 크기 used: 시스템에서 사용중인 메모리 (total 에서 free와 buff/cache를 제외한 용량) free: 시스템에서 사용..
ethtool - 네트워크 정보 확인
·
Linux
# ethtool eth0 네트워크 카드가 지원하는 속도 및 현재 연결 속도 등 기본적인 정보 확인 # ethtool -g eth0 링 버퍼 크기 확인 # ethtool -G eth0 링 버퍼 값 수정 # ethtool -G eth0 rx 18811; ethtool -G eth0 tx 2560 # ethtool -k eth0 네트워크 카드의 성능 설정값 확인 # ethtool -K eth0 네트워크 카드의 성능 설정값 수정 # ethtool -i eth0 네트워크 카드의 드라이버 버전 확인
Ubuntu 20.04LTS - rc.local 활성화
·
Linux
Ubuntu 20.04LTS 버전 rc.local 활성화 (root 권한 필요) rc.local 상태 확인 # systemctl status rc-local.service ● rc-local.service - /etc/rc.local Compatibility Loaded: loaded (/lib/systemd/system/rc-local.service; static; vendor preset: enabled) Drop-In: /usr/lib/systemd/system/rc-local.service.d └─debian.conf Active: inactive (dead) Docs: man:systemd-rc-local-generator(8) rc.local 파일 생성 # echo -e "#! /bin/bas..
NIC 링 버퍼(Ring Buffer) 사이즈 조절
·
Linux
스위치를 통해 들어온 패킷은 1차로 링 버퍼에 저장 된 후 처리가 진행되기 때문에 링 버퍼 사이즈가 작은 경우 패킷이 드랍되어 네트워크 성능 저하가 발생 링 버퍼 확인 # ethtool -g eth0 Ring parameters for eth0: Pre-set maximums: RX: 18811 RX Mini: 0 RX Jumbo: 0 TX: 2560 Current hardware settings: RX: 9709 RX Mini: 0 RX Jumbo: 0 TX: 170 패킷 드랍 확인 드랍 카운터의 높은 값은 사용 가능한 버퍼가 패킷을 처리할 수 있는 속도보다 빠르게 채워지는 것을 의미하며, 링 버퍼를 늘리면 손실을 피할 수 있음 # ethtool -S eth0 | grep -i drop vf_tx_dr..
cannot create temp file for here-document: No space left on device - inode 100% 사용
·
Linux
디스크 공간은 여유가 있는데, No space left on device 가 발생하면서 파일 생성이 안됨. 이런경우 inode 사용량 확인이 필요 함. # df -i Filesystem Inodes IUsed IFree IUse% Mounted on /dev/sda2 10240000 10240000 0 100% / inode 는 할당 된 공간이 한정되어 있기 때문에 시스템이 저장할 수 있는 파일 최대 개수도 한정되어 있음. inode 설정 값 변경을 하려면 파일 시스템 포멧이 필요함 파일 시스템 재구성이 불가능한 경우 사용량이 많은 곳을 찾아 파일 삭제가 필요함. # for i in /*; do echo $i; find $i/ | wc -l; done # for i in /usr/*; do echo $i..
apt remove, purge, autoremove 차이
·
Linux
모두 패키지를 삭제하는 명령어지만 약간의 차이가 있음 A - 설치하고자 하는 패키지 B - A 설치를 위한 의존성 관계로 설치 된 패키지 apt remove 패키지는 삭제하지만 환경설정은 삭제하지 않음 apt remove A A 패키지만 삭제하고, A 패키지의 설정 값 및 B 패키지는 유지 apt purge 패키지와 해당 패키지의 환경설정 값을 모두 삭제 apt purge A A 패키지와 설정값을 삭제하고, B 패키지는 유지 apt autoremove 다른 패키지의 의존성 때문에 설치 되었지만 지금은 사용하지 않는 패키지 삭제 apt autoremove A A 패키지와 설정값을 삭제하고, A 패키지 의존성에 의해 설치 된 B 패키지도 삭제 B 패키지가 사용 중일 경우는 삭제하지 않음.