w, top, uptime, procinfo 명령어를 실행하거나 /proc/loadavg 파일을 액세스하여 확인할 수 있습니다.
procinfo 툴을 설치하려면 Linux 환경에서 소프트웨어 설치 관련 문서를 참조 바랍니다. vmstat, iostat, top 명령어를 사용해 부하가 너무 높은 원인을 판단하고, 구체적으로 리소스 이용률이 높은 프로세스를 찾아 최적화할 것을 권장합니다. free, top (실행 후 shift+m으로 메모리순 정렬), vmstat, procinfo 명령어를 실행하거나 /proc/meminfo 파일을 액세스하여 확인할 수 있습니다. top -p PID, pmap -x PID, ps aux|grep PID 명령어를 실행하거나 /proc/$process_id(프로세스의 PID)/status 파일에서 /proc/7159/status 등의 파일을 액세스하여 확인할 수 있습니다. netstat -tunlp, netstat -antup, lsof -i:PORT 명령어를 실행하여 확인할 수 있습니다. ps auxww|grep PID, ps -ef, lsof -p PID, top -p PID 명령어를 실행하여 확인할 수 있습니다. kill -9 PID(PID는 프로세스 식별자를 의미), killall 프로그램명(예: killall cron)을 실행하여 프로세스를 중지할 수 있습니다.
좀비 프로세스를 중지해야 하는 경우, 프로세스의 부모 프로세스를 종료해야 합니다. 실행 명령어는 kill -9 ppid(ppid는 부모 프로세스의 ID 번호이며, ps -o ppid PID에서 명령어를 통해 확인할 수 있습니다. 예: ps -o ppid 32535)입니다. top 명령어를 통해 좀비 프로세스(zombie)의 전체 수를 확인할 수 있고, ps -ef | grep defunct | grep -v grep를 실행하여 좀비 프로세스의 구체적인 정보를 확인할 수 있습니다. sudo su –를 실행하여 root 권한을 얻어야 서비스 포트를 활성화할 수 있습니다.
응용 프로그램 문제는 애플리케이션 프로그램 실행 로그를 사용해 포트 충돌(Tencent 서버 시스템이 사용하는 포트 36000을 사용할 수 없는 문제), 설정 문제 등 오류 원인을 진단하시기를 권장합니다. 명령어 이름 | 설명 |
top | 프로세스 모니터링 명령어로, 시스템의 전체 성능 모니터링에 사용합니다. 시스템 부하, 프로세스, CPU, 메모리, 페이징 등 정보를 표시할 수 있습니다. 일반적으로 shift + m 및 shift + p를 사용해 메모리 및 CPU 사용량을 기준으로 프로세스를 정렬합니다. |
vmstat | 버츄얼 메모리에 중점을 둔 시스템 모니터링 명령어로 CPU, 프로세스, 메모리 페이징 및 IO 상태 정보도 모니터링할 수 있습니다. 예시, vmstat 3 10은 3초마다 결과를 출력하며, 10회 동안 실행합니다. |
iostat | CPU 상태 및 IO 상태를 출력하는 툴로, 시스템의 IO 정보를 상세히 표시합니다.예시, iostat -dxmt 10은 10초마다 IO 세부 정보를 MB 형식으로 출력합니다. |
df | 시스템의 디스크 용량 사용 현황을 확인하는 데 사용합니다. 예시, df -m은 디스크 사용 현황을 MB 단위로 표시합니다. |
lsof | 이뉴머레이션 시스템에서 오픈된 파일로, Linux가 파일 시스템을 기반으로 하기 때문에 이 명령어는 시스템 관리 시에 매우 유용합니다. 예:lsof -i:36000는 36000포트를 사용하는 프로세스를 표시합니다. lsof -u root는 root로 실행되는 프로그램을 표시합니다. lsof -c php-fpm는 php-fpm 프로세스에 의해 열린 파일을 표시합니다. lsof php.ini는 php.ini를 여는 프로세스를 표시합니다. |
ps | 프로세스 조회 명령어를 사용해 프로세스의 세부 정보를 표시할 수 있습니다. 일반적인 명령어 매개변수 조합은 ps -ef, ps aux이며, ps -A -o를 사용해 출력 필드를 사용자 정의하시기를 권장합니다.예:ps -A -o pid,stat,uname,%cpu,%mem,rss,args,lstart,etime |sort -k6,6 -rn, 나열된 필드에 따라 출력되며 여섯 번째 필드를 기준으로 정렬합니다.ps -A -o comm |sort -k1 |uniq -c|sort -k1 -rn|head, 실행 중인 인스턴스가 가장 많은 프로세스를 나열합니다. |
free -m, du, uptime, w, /proc/stat, /proc/cpuinfo, /proc/meminfocrontab -e 명령어를 실행하고 다음의 테스트 항목을 추가합니다.\\*/1 \\* \\* \\* \\* /bin/date >> /tmp/crontest 2>&1 &
/tmp/crontest 파일을 확인합니다. \\*/1 \\* \\* \\* \\* /bin/date >> /tmp/crontest 2>&1 &./etc/rc.d/rc\\*.d, * 계수값은 실행 모드와 같습니다. /etc/inittab 에서 확인할 수 있습니다./etc/rc.d/rc.local 을 실행합니다./etc/rc.d/rc\\*.d의 S\\*\\*rclocal 파일에서 구성하거나 /etc/rc.d/rc.local 에서 구성할 수 있습니다. df -m 명령어를 사용해 디스크 사용량을 확인한 후, 필요 없는 파일을 삭제하여 디스크 용량을 확보할 수 있습니다(3rd party 이외의 파일은 삭제하지 않는 것이 좋습니다. 필요한 경우 확인 바랍니다). df -i 명령어를 실행하여 관련 프로세스를 확인 및 확인할 수 있습니다. /var/log입니다.df 명령어를 실행하여 디스크 파티션 사용 현황을 확인합니다. 예: df -mdu 명령어를 실행하여 구체적인 폴더의 크기를 확인합니다. 예: du -sh ./*, du -h --max-depth=1|head -10ls 명령어를 실행하여 파일과 파일 크기를 정렬합니다. 예: ls -lSh.
find 명령어로도 특정 디렉터리 아래의 파일 크기를 바로 확인할 수 있습니다. 예: find / -type f -size +10M -exec ls -lrt {} \\rm 명령어를 실행하여 파일을 삭제한 후에, ‘df’ 명령어를 실행하여 디스크 공간을 확인한 결과, 파일을 삭제했음에도 사용 가능한 디스크 용량이 증가하지 않을 수 있습니다. 그 이유는 rm 명령어로 파일을 삭제할 때 다른 프로세스가 해당 파일에 액세스하는 중이었다면, df 명령어를 실행하여 확인해도 삭제된 파일이 사용한 공간이 즉시 확보되지 않기 때문입니다.lsof |grep deleted 명령어를 실행하여 삭제된 파일을 사용 중인 프로세스의 PID를 확인합니다.rm 명령어를 통해 파일을 삭제할 수 있으나, 해당 명령어로 삭제한 파일은 복구할 수 없으니 신중히 사용하시기 바랍니다.
rm 명령어의 형식은 rm(옵션)(매개변수)입니다.test.txt 파일을 삭제하려면 rm test.txt를 실행합니다.test 디렉터리를 삭제하려면 rm -r test를 실행합니다.rm -r *를 실행합니다.피드백