Load는 서버 작업량의 크기, 즉 컴퓨터 CPU 작업 실행 큐의 길이가 길수록, 실행 중 및 실행 대기 중인 프로세스 수를 더 많이 포함할 수 있음을 나타냅니다.
w
, top
, uptime
, procinfo
커맨드를 실행하거나 /proc/loadavg
파일에 액세스하여 조회할 수 있습니다.
procinfo 툴을 설치하려면 Linux 환경에서 소프트웨어를 설치와 관련한 설명서를 참조하십시오.
서버 부하(Load/Load Average)는 프로세스 큐 길이에 따라 표시됩니다. 서버에 부하가 높은 현상은(15분 평균값 참조 권장) CPU 리소스 부족, I/O 읽기 및 쓰기 병목 현상, 메모리 리소스 부족, 집약적인 CPU 계산 등의 이유로 발생할 수 있습니다. 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
커맨드를 실행하여 좀비 프로세스 정보를 조회할 수 있습니다.
서버 포트의 시작 모니터링은 운영 체제 자체 및 애플리케이션 프로그램에서 조회해야 합니다.
Linux 운영 체제에서 1024이하의 포트는 root 사용자만 시작할 수 있습니다. 즉, 먼저 sudo su –
을 실행하여 root 권한을 얻은 후 서비스 포트를 시작해야 합니다.
애플리케이션 프로그램 문제는 애플리케이션 프로그램 시작 로그를 사용해 포트 충돌(텐센트 서버 시스템이 포트 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는 파일 시스템을 기반으로 하기 때문에 이뉴머레이션 시스템에서 오픈된 파일에서 이 커맨드는 시스템 관리에 매우 유용합니다.
예: |
ps | 프로세스 조회 커맨드를 사용해 프로세스의 세부 사항을 표시할 수 있습니다. 일반적인 커맨드 파라미터 조합은 ps -ef, ps aux이며, ps -A -o를 사용해 출력 필드를 사용자 정의하는 것을 권장합니다. |
일반적으로 사용되는 기타 커맨드 및 파일: free -m
,du
,uptime
,w
,/proc/stat
,/proc/cpuinfo
,/proc/meminfo
검사 순서는 다음과 같습니다.
crontab -e
커맨드를 실행하고 다음 테스트 항목을 추가하십시오.\*/1 \* \* \* \* /bin/date >> /tmp/crontest 2>&1 &
\*/1 \* \* \* \* /bin/date >> /tmp/crontest 2>&1 &
Linux 커널 시작 순서는 다음과 같습니다.
/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
커맨드를 사용해 디스크 사용량을 확인한 후, 여분의 파일을 릴리스하여 디스크 용량을 확보할 수 있습니다(타사 파일은 삭제하지 않는 것이 좋습니다. 필요한 경우 확인하십시오.) df -i
커맨드를 실행하여 관련 프로세스를 검사 및 확인할 수 있습니다. hosting 애플리케이션이 위의 설명한 방법으로도 원인을 확인할 수 없으면, 핫라인 95716으로 문의하시거나 티켓을 제출하여 문의하십시오.
/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 {} \다음 커맨드를 실행하여 시스템 버전을 조회할 수 있습니다.
서버 자체는 표시 언어를 제한하지 않습니다. 터미널 소프트웨어가 중국어 표시에 영향을 주는 경우, [옵션]> [세션 옵션]> [모양](secureCRT 설정, 기타 버전 소프트웨어는 관련 설정을 확인하십시오)에서 조정할 수 있습니다.
단순히 Linux shell에서 깨진 글자가 나타나면, export 커맨드를 사용해 사용자 환경 변수, LANG, LC_CTYPE 등 기타 환경 변수 설정을 조회하십시오.
SecureCRT가 클라우드 서버에 연결되면, 다음 설정을 통하여 끊김없이 연결할 수 있습니다.
원인
Linux 서버에 로그인하고 rm
커맨드를 실행하여 파일을 삭제한 후, ‘df’ 커맨드를 실행하여 디스크 공간을 조회할 때, 파일을 삭제한 후에도 사용 가능한 디스크 용량이 증가하지 않았음을 발견할 수도 있습니다. 그 이유는 rm
커맨드로 파일을 삭제할 때, 다른 프로세스가 해당 파일에 액세스 중이면 df
커맨드를 실행하여 조회할 경우, 삭제된 파일이 점유하는 용량이 즉시 릴리스되지 않기 때문입니다.
해결 방법
lsof |grep deleted
커맨드를 실행하여 삭제된 파일을 사용 중인 프로세스의 PID를 조회하십시오.
문제 해결에 도움이 되었나요?