Linux 로드를 확인하는 데 사용되는 명령은 무엇입니까?
Linux 로드를 확인하는 명령은 다음과 같습니다. 1. Linux 로드를 확인하는 [top] 명령 2. Linux 로드를 확인하는 [w] 명령 4. [ vmstat] 명령을 사용하여 Linux 로드를 확인합니다.
Linux 로드를 보는 명령은
1입니다. Linux 로드를 보는 가장 높은 명령:
관련 학습 권장 사항: linux 비디오 자습서
첫 번째 줄 설명:
top - 11:03:08 up 1 days, 04:01, 3 user, load average: 0.05, 0.05, 0.01
11:03:08: 현재 시스템 시간
up 1 days, 04:01: 시스템이 부팅된 지 1일이 지났습니다.
3명의 사용자: 현재 3명의 사용자가 온라인 상태입니다
-
로드 평균: 0.05, 0.05, 0.01: 1분, 5분, 15분 동안의 시스템 CPU 로드 정보
참고: 세 가지 값의 의미 로드 후 평균은 마지막 1분, 마지막 5분, 마지막 15분의 시스템 로드 값입니다. 이 값의 의미는 단위 시간당 CPU 활성 프로세스 수입니다. 기계에 단일 코어가 있는 경우 이 값이 모두 < 1이면 시스템에 부하 압력이 없음을 의미합니다. N개의 코어가 있는 경우 이 값은 < N이어야 합니다. 시스템에 부하가 없는 것으로 간주하십시오.
두 번째 줄 설명:
Tasks: 176 total, 1 running, 175 sleeping, 0 stopped, 0 zombie
총 176개: 현재 176개 작업이 있습니다
1개 실행 중: 1개 작업이 실행 중입니다
175개 대기 중: 175개 프로세스가 대기 중입니다
-
0 중지됨: 중지된 프로세스 수
0 좀비: 좀비 프로세스 수
세 번째 줄 설명:
%Cpu(s): 0.1 us, 0.2 sy, 0.2 ni, 99.4 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
0.1%us: 사용자 모드 프로세스가 차지하는 CPU 시간의 백분율
0.2 %sy: 커널이 차지하는 CPU 시간의 백분율
0.2%ni: 음수 renice 값을 가진 작업의 사용자 모드 프로세스의 CPU 시간 백분율입니다. Nice는 우선순위
99.4%id: 유휴 CPU 시간의 백분율
0.0%wa: I/O를 기다리는 CPU 시간의 백분율
0.0%hi: CPU 하드 인터럽트 시간의 백분율
-
0.0%si: CPU 소프트 인터럽트 시간 백분율
네 번째 줄 설명:
KiB Mem : 3882172 total, 1079980 free, 1684652 used, 1117540 buff/cache
3882172 k 총: 총 물리적 메모리
1684652k 사용됨: 사용된 물리적 메모리
1079980k 무료 : 여유 물리적 메모리
1117540k 캐시됨: 캐시로 사용되는 메모리
다섯 번째 줄 설명:
KiB Swap: 0 total, 0 free, 0 used. 1871412 avail Mem
0k 총: 총 스왑 공간의 양
0k 사용: 사용된 스왑 공간
0k free: 여유 스왑 공간
1871412k 캐시됨: 캐시된 스왑 공간
마지막 줄:
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
PID: 프로세스 ID
-
USER: 모든 프로세스
홍보: 프로세스 우선 순위
NI: 좋은 값
VIRT: 점유된 가상 메모리
RES: 점유된 물리적 메모리
-
SHR: 공유 메모리 사용
S: 진행 상태 S: 최대 절전 모드 R running Z 좀비 프로세스 N nice 값은 음수
%CPU: CPU 점유
%MEM: 메모리 점유
TIME+: CPU 점유 시간 누적 값
COMMAND: 명령 시작
2. Linux 로드를 보기 위한 가동 시간:
3. Linux 로드를 보기 위한 w:
첫 번째 줄 참조 top 명령 설명
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
설명은 다음과 같습니다 :
USER — 로그인한 사용자 이름
TTY — 로그인 후 시스템에서 할당한 터미널 번호
-
FROM — 원격 호스트 이름, 즉
에서 로그인할 위치 LOGIN@—로그인 시기
IDLE—유휴 상태인 기간으로 사용자가 유휴 상태였던 시간을 나타냅니다. 사용자가 어떤 작업을 수행하면 재설정되는 타이머입니다.
JCPU - 터미널(tty)에 연결된 모든 프로세스가 차지하는 시간, 이 시간에는 과거 백그라운드 작업 시간은 포함되지 않지만, JCPU에서 걸린 시간은 포함됩니다. 현재 실행 중인 백그라운드 작업
PCPU - 현재 프로세스에 소요된 시간을 나타냅니다(즉, WHAT 항목에 표시되는 프로세스)
WHAT - 현재 실행 중인 프로세스의 명령 OK
4. vmstat
로 Linux 로드를 확인하세요.
r
은 실행 중인 대기열(즉, 실제로 CPU에 할당된 프로세스 수)을 나타냅니다. 이 값이 CPU 수를 초과하면 CPU 병목 현상이 발생합니다. 발생하다. 이는 top의 부하와도 관련이 있는데, 일반적으로 부하가 3을 넘으면 상대적으로 높고, 5를 넘으면 높다고 하며, 10을 넘으면 비정상이라 서버의 상태가 매우 위험하다. . top의 로드는 초당 실행 대기열과 유사합니다. 실행 대기열이 너무 크면 CPU 사용량이 매우 많아 일반적으로 CPU 사용량이 높아진다는 의미입니다.r
表示运行队列(就是说多少个进程真的分配到CPU),当这个值超过了CPU数目,就会出现CPU瓶颈。这个也和top的负载有关系,一般负载超过了3就比较高,超过了5就高,超过了10就不正常了,服务器的状态很危险。top的负载类似每秒的运行队列。如果运行队列过大,表示你的CPU很繁忙,一般会造成CPU使用率很高。b
表示阻塞的进程,这个不多说,进程阻塞,大家懂的。swpd 虚拟内存已使用的大小,如果大于0,表示你的机器物理内存不足了,如果不是程序内存泄露的原因,那么你该升级内存了或者把耗内存的任务迁移到其他机器。
free
空闲的物理内存的大小,我的机器内存总共8G,剩余3415M。buff Linux/Unix
系统是用来存储,目录里面有什么内容,权限等的缓存,我本机大概占用300多Mcache cache
直接用来记忆我们打开的文件,给文件做缓冲,(这里是Linux/Unix的聪明之处,把空闲的物理内存的一部分拿来做文件和目录的缓存,是为了提高 程序执行的性能,当程序使用内存时,buffer/cached会很快地被使用。)
si
每秒从磁盘读入虚拟内存的大小,如果这个值大于0,表示物理内存不够用或者内存泄露了,要查找耗内存进程解决掉。我的机器内存充裕,一切正常。so
每秒虚拟内存写入磁盘的大小,如果这个值大于0,同上。bi
块设备每秒接收的块数量,这里的块设备是指系统上所有的磁盘和其他块设备,默认块大小是1024byte。bo
块设备每秒发送的块数量,例如我们读取文件,bo就要大于0。bi和bo一般都要接近0,不然就是IO过于频繁,需要调整。in
每秒CPU的中断次数,包括时间中断
cs
每秒上下文切换次数,例如我们调用系统函数,就要进行上下文切换,线程的切换,也要进程上下文切换,这个值要越小越好,太大了,要考虑调低线程或者进程的数目,例如在apache和nginx这种web服务器中,我们一般做性能测试时会进行几千并发甚至几万并发的测试,选择web服务器的进程可以由进程或者线程的峰值一直下调,压测,直到cs到一个比较小的值,这个进程和线程数就是比较合适的值了。系统调用也是,每次调用系统函数,我们的代码就会进入内核空间,导致上下文切换,这个是很耗资源,也要尽量避免频繁调用系统函数。上下文切换次数过多表示你的CPU大部分浪费在上下文切换,导致CPU干正经事的时间少了,CPU没有充分利用,是不可取的。us
用户CPU时间,我曾经在一个做加密解密很频繁的服务器上,可以看到us接近100,r运行队列达到80(机器在做压力测试,性能表现不佳)。sy
系统CPU时间,如果太高,表示系统调用时间长,例如是IO操作频繁。id
空闲 CPU时间,一般来说,id + us + sy = 100,一般认为id是空闲CPU使用率,us是用户CPU使用率,sy是系统CPU使用率。wt
等待IO CPU时间。
5、其他一些操作
cat /proc/cpuinfo
:即可查看CPU信息,几个processor即为几个CPU;sar
:可以监控系统所有资源状态,sar -n DEV查网卡流量历史、sar -q 查看历史负载,最有用的就是查网卡流量,流量过大: rxpck/s大于4000,或者rxKB/s大于5000,则很有可能被攻击了,需要抓包分析;free
:查看当前系统的总内存大小以及使用内存的情况;ps
:查看进程,ps aux 或者 ps -elf,常和管道符一起使用,查看某个进程或者它的数量;netstat
:查看端口,netstat -lnp用于打印当前系统启动了哪些端口,netstat -an用于打印网络连接状况;tcpdump
🎜
b
는 차단된 프로세스를 나타냅니다. 이에 대해 자세히 설명하지는 않지만 프로세스가 차단된 것은 누구나 알고 있습니다. 🎜🎜🎜swpd 사용된 가상 메모리 크기가 0보다 크면 컴퓨터의 물리적 메모리가 부족하다는 의미입니다. 프로그램 메모리 누수의 원인이 아니라면 메모리를 업그레이드하거나 메모리를 많이 사용하는 작업을 다른 시스템으로 마이그레이션합니다. 🎜🎜🎜free
내 컴퓨터의 메모리는 총 8G이고 남은 메모리는 3415M입니다. 🎜🎜🎜buff Linux/Unix
시스템은 디렉터리의 콘텐츠, 권한 등을 저장하고 캐시하는 데 사용됩니다. 내 컴퓨터는 약 300M🎜🎜🎜 cache 캐시
는 우리가 연 파일을 기억하고 캐시하는 데 직접 사용됩니다. (이것은 Linux/Unix의 영리함입니다. 여유 물리적 메모리의 일부는 파일과 디렉터리를 캐시하는 데 사용됩니다. 이는 성능을 향상시키기 위한 것입니다. 프로그램이 메모리를 사용하면 버퍼/캐시가 빠르게 사용됩니다.)🎜si
는 1초마다 디스크에서 읽어옵니다. 이 값이 0보다 크면 물리적 메모리가 부족하거나 메모리가 누수된다는 의미입니다. 내 컴퓨터에는 충분한 메모리가 있고 모든 것이 잘 작동합니다. 🎜🎜🎜so
초당 디스크에 쓰는 가상 메모리의 크기입니다. 이 값이 0보다 크면 위와 동일합니다. 🎜🎜🎜bi
블록 장치가 초당 수신하는 블록 수입니다. 여기서 블록 장치는 시스템의 모든 디스크 및 기타 블록 장치를 의미합니다. 기본 블록 크기는 1024바이트입니다. 🎜🎜🎜bo
블록 장치가 초당 전송하는 블록 수입니다. 예를 들어 파일을 읽을 때 bo는 0보다 커야 합니다. Bi와 bo는 일반적으로 0에 가깝습니다. 그렇지 않으면 IO가 너무 자주 발생하므로 조정이 필요합니다. 🎜🎜🎜in
시간 인터럽트를 포함한 초당 CPU 인터럽트 수🎜🎜🎜🎜cs
컨텍스트 수 초당 스위치 수, 예를 들어 시스템 함수를 호출할 때 컨텍스트 전환, 스레드 전환, 프로세스 컨텍스트 전환을 수행해야 합니다. 값이 작을수록 너무 크면 줄이는 것을 고려해야 합니다. Apache, nginx와 같은 스레드나 프로세스에서는 성능 테스트를 수행할 때 일반적으로 수천 또는 수만 개의 동시성 테스트를 수행합니다. 프로세스 또는 스레드의 최대 값과 cs가 상대적으로 작은 값에 도달할 때까지 스트레스 테스트를 수행하는 경우 이 프로세스 및 스레드 수가 더 적절한 값입니다. 시스템 호출의 경우에도 마찬가지입니다. 시스템 함수가 호출될 때마다 코드가 커널 공간에 들어가고 이로 인해 리소스가 많이 소모되므로 시스템 함수를 자주 호출하지 않도록 해야 합니다. 과도한 컨텍스트 전환은 대부분의 CPU가 컨텍스트 전환에 낭비되어 CPU가 심각한 작업을 수행하는 데 걸리는 시간이 줄어들고 CPU가 완전히 활용되지 않음을 의미하며 이는 바람직하지 않습니다. 🎜🎜🎜us
사용자 CPU 시간. 저는 암호화와 암호 해독을 매우 자주 수행하는 서버에 있었고 우리가 100에 가까웠고 r 실행 대기열이 80에 도달한 것을 볼 수 있었습니다. 기계가 스트레스 테스트를 하고 있었고 성능이 좋지 않았습니다.) 🎜🎜🎜sy
시스템 CPU 시간이 너무 높으면 잦은 IO 작업 등 시스템 호출 시간이 길다는 의미입니다. 🎜🎜🎜id
유휴 CPU 시간, 일반적으로 말하면 id + us + sy = 100이며 일반적으로 id는 유휴 CPU 사용량, us는 사용자 CPU 사용량, sy는 시스템 CPU 사용량입니다. 🎜🎜🎜wt
IO CPU 시간을 기다리는 중입니다. 🎜🎜5. 기타 작업🎜🎜🎜🎜cat /proc/cpuinfo
: 여러 프로세서를 포함한 CPU 정보를 볼 수 있습니다. 🎜🎜🎜sar
: 시스템의 모든 리소스 상태를 모니터링할 수 있습니다. sar -n DEV는 네트워크 카드 트래픽 기록을 확인하고, sar -q는 기록 로드를 가장 많이 확인합니다. 유용한 점은 네트워크 카드 트래픽을 확인하는 것입니다. 트래픽이 너무 큽니다. rxpck/s가 4000보다 크거나 rxKB/s가 5000보다 크면 공격을 받을 가능성이 높으며 패킷 캡처 및 분석이 필요합니다. 🎜🎜free
: 현재 시스템 보기 총 메모리 크기 및 메모리 사용량 🎜🎜🎜ps
: 프로세스 보기, ps aux 또는 ps -elf, 프로세스 또는 해당 수량을 보기 위해 파이프 문자와 함께 자주 사용됩니다. 🎜🎜🎜netstat
: 포트 보기, netstat -lnp는 현재 시작되는 포트를 인쇄하는 데 사용됩니다. 시스템 netstat -an은 네트워크 연결 상태를 인쇄하는 데 사용됩니다. 🎜🎜 🎜tcpdump
: 패킷 캡처 도구는 데이터 패킷을 분석하여 어떤 IP가 공격하는지 파악합니다. -w가 없으면 데이터 흐름 방향이 화면에 표시됩니다.wireshark
: 패킷 캡처 도구, 일시적으로 이 명령을 사용하여 현재 서버의 웹 요청을 볼 수 있습니다
위 내용은 Linux 로드를 확인하는 데 사용되는 명령은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











Root로 MySQL에 로그인 할 수없는 주된 이유는 권한 문제, 구성 파일 오류, 암호 일관성이 없음, 소켓 파일 문제 또는 방화벽 차단입니다. 솔루션에는 다음이 포함됩니다. 구성 파일의 BAND-ADDRESS 매개 변수가 올바르게 구성되어 있는지 확인하십시오. 루트 사용자 권한이 수정 또는 삭제되어 재설정되었는지 확인하십시오. 케이스 및 특수 문자를 포함하여 비밀번호가 정확한지 확인하십시오. 소켓 파일 권한 설정 및 경로를 확인하십시오. 방화벽이 MySQL 서버에 연결되는지 확인하십시오.

C 언어 조건부 컴파일은 컴파일 시간 조건을 기반으로 코드 블록을 선택적으로 컴파일하는 메커니즘입니다. 입문 방법에는 다음이 포함됩니다. #IF 및 #ELSE 지시문을 사용하여 조건에 따라 코드 블록을 선택합니다. 일반적으로 사용되는 조건부 표현에는 STDC, _WIN32 및 LINUX가 포함됩니다. 실제 사례 : 운영 체제에 따라 다른 메시지를 인쇄합니다. 시스템의 숫자 수에 따라 다른 데이터 유형을 사용하십시오. 컴파일러에 따라 다른 헤더 파일이 지원됩니다. 조건부 컴파일은 코드의 휴대 성과 유연성을 향상시켜 컴파일러, 운영 체제 및 CPU 아키텍처 변경에 적응할 수 있도록합니다.

Linux의 5 가지 기본 구성 요소는 다음과 같습니다. 1. 커널, 하드웨어 리소스 관리; 2. 기능과 서비스를 제공하는 시스템 라이브러리; 3. 쉘, 사용자가 시스템과 상호 작용할 수있는 인터페이스; 4. 파일 시스템, 데이터 저장 및 구성; 5. 시스템 리소스를 사용하여 기능을 구현합니다.

MySQL 설치 오류에 대한 솔루션은 다음과 같습니다. 1. MySQL 종속성 라이브러리 요구 사항이 충족되도록 시스템 환경을주의 깊게 확인하십시오. 다른 운영 체제 및 버전 요구 사항이 다릅니다. 2. 오류 메시지를주의 깊게 읽고 프롬프트 (예 : 라이브러리 파일 누락 또는 부족한 권한)에 따라 종속성 설치 또는 Sudo 명령 사용과 같은 해당 조치를 취합니다. 3. 필요한 경우 소스 코드를 설치하고 컴파일 로그를주의 깊게 확인하십시오. 그러나 일정량의 Linux 지식과 경험이 필요합니다. 궁극적으로 문제를 해결하는 핵심은 시스템 환경 및 오류 정보를 신중하게 확인하고 공식 문서를 참조하는 것입니다.

MySQL 시작이 실패하는 데는 여러 가지 이유가 있으며 오류 로그를 확인하여 진단 할 수 있습니다. 일반적인 원인에는 포트 충돌 (포트 점유 체크 및 구성 수정), 권한 문제 (서비스 실행 사용자 권한 실행), 구성 파일 오류 (파라미터 설정 확인), 데이터 디렉토리 손상 (데이터 복원 또는 테이블 공간 재건), IBDATA 테이블 공간 문제 (IBDATA1 파일 확인), 플러그로드 (확인 오류 로그)가 포함됩니다. 문제를 해결할 때 오류 로그를 기반으로 문제를 분석하고 문제의 근본 원인을 찾고 문제를 방지하고 해결하기 위해 정기적으로 데이터를 백업하는 습관을 개발해야합니다.

MySQL은 Android에서 직접 실행할 수는 없지만 다음 방법을 사용하여 간접적으로 구현할 수 있습니다. Android 시스템에 구축 된 Lightweight Database SQLite를 사용하여 별도의 서버가 필요하지 않으며 모바일 장치 애플리케이션에 매우 적합한 작은 리소스 사용량이 있습니다. MySQL 서버에 원격으로 연결하고 데이터 읽기 및 쓰기를 위해 네트워크를 통해 원격 서버의 MySQL 데이터베이스에 연결하지만 강력한 네트워크 종속성, 보안 문제 및 서버 비용과 같은 단점이 있습니다.

MySQL 설치 실패의 주된 이유는 다음과 같습니다. 1. 권한 문제, 관리자로 실행하거나 Sudo 명령을 사용해야합니다. 2. 종속성이 누락되었으며 관련 개발 패키지를 설치해야합니다. 3. 포트 충돌, 포트 3306을 차지하는 프로그램을 닫거나 구성 파일을 수정해야합니다. 4. 설치 패키지가 손상되어 무결성을 다운로드하여 확인해야합니다. 5. 환경 변수가 잘못 구성되었으며 운영 체제에 따라 환경 변수를 올바르게 구성해야합니다. 이러한 문제를 해결하고 각 단계를 신중하게 확인하여 MySQL을 성공적으로 설치하십시오.

터미널에서 MySQL에 액세스 할 수 없음 : MySQL 서비스가 실행되지 않음; 연결 명령 오류; 불충분 한 권한; 방화벽 블록 연결; MySQL 구성 파일 오류.
