Linux日常运维1 w vmstat top sar nload io free ps tcpdump
1、W命令查看当前系统负载
[root@localhost ~]# w10:15:23 up 1:39, 1 user, load average: 0.00, 0.01, 0.05 USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT root pts/0 192.168.222.1 08:43 3.00s 0.09s 0.04s w [root@localhost ~]# date 2018年 06月 10日 星期日 10:16:04 CST
关注点:load average;当前系统的平均负载值;
- 第1个数值表示1分钟内系统的平均负载值;
- 第2个数值表示5分钟内系统的平均负载值;
- 第3个数值表示15分钟内系统的平均负载值;
- 重点是第1个数值,数值越大表示当前负载越大,一般情况下不超过服务器的CPU数量;
cat /proc/cpuinfo:查看CPU详细信息
[root@localhost ~]# cat /proc/cpuinfo processor : 0 **逻辑CPU** vendor_id : GenuineIntel cpu family : 6 model : 42 model name : Intel(R) Core(TM) i5-2450M CPU @ 2.50GHz stepping : 7 microcode : 0x23 cpu MHz : 2491.289 cache size : 3072 KB physical id : 0 **关键字段,表示当前物理CPU为1颗** siblings : 2 core id : 0 cpu cores : 2 apicid : 0 initial apicid : 0 fpu : yes fpu_exception : yes cpuid level : 13 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts mmx fxsr sse sse2 ss ht syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts nopl xtopology tsc_reliable nonstop_tsc aperfmperf eagerfpu pni pclmulqdq ssse3 cx16 pcid sse4_1 sse4_2 x2apic popcnt aes xsave avx hypervisor lahf_lm epb xsaveopt dtherm ida arat pln pts bogomips : 4983.93 clflush size : 64 cache_alignment : 64 address sizes : 40 bits physical, 48 bits virtual power management:processor : 1 vendor_id : GenuineIntel cpu family : 6 model : 42 model name : Intel(R) Core(TM) i5-2450M CPU @ 2.50GHz stepping : 7 microcode : 0x23 cpu MHz : 2491.289 cache size : 3072 KB physical id : 0 siblings : 2 core id : 1 cpu cores : 2 apicid : 1 initial apicid : 1 fpu : yes fpu_exception : yes cpuid level : 13 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts mmx fxsr sse sse2 ss ht syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts nopl xtopology tsc_reliable nonstop_tsc aperfmperf eagerfpu pni pclmulqdq ssse3 cx16 pcid sse4_1 sse4_2 x2apic popcnt aes xsave avx hypervisor lahf_lm epb xsaveopt dtherm ida arat pln pts bogomips : 4983.93 clflush size : 64 cache_alignment : 64 address sizes : 40 bits physical, 48 bits virtual power management:
uptime命令能够打印系统总共运行了多长时间和系统的平均负载。uptime命令可以显示的信息显示依次为:现在时间、系统已经运行了多长时间、目前有多少登陆用户、系统在过去的1分钟、5分钟和15分钟内的平均负载
[root@localhost ~]# uptime10:39:23 up 2:03, 1 user, load average: 0.00, 0.01, 0.05
2、vmstat监控系统状态
[root@localhost ~]# vmstat procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----r b swpd free buff cache si so bi bo in cs us sy id wa st1 0 0 728472 2108 149296 0 0 8 1 41 32 0 0 100 0 0
procs:显示进程的相关信息
r(run):表示运行或等待cpu时间片的进程数;
b(block):表示等待资源的进程数;
memory:显示内存相关信息;单位为KB
swqd:表示切换到交换分区中的内存数量;
free:表示当前空闲的内存数量;
buff:表示(即将写入磁盘的)缓存大小;
cache::表示(从磁盘中读取的)缓存大小;
swap:显示内存的交换情况;单位为KB;
si:表示由交换区写入内存的数据量;(写入)
so:表示由内存写入交换区的数据量;(写出)
io:显示磁盘的使用情况;单位为KB;
bi:表示从块设备读取数据的量(读磁盘);
bo:表示从块设备写入数据的量(写磁盘);
system:显示采集间隔内发生的中断次数;
in:表示在某一时间间隔内观测到的每秒设备的中断次数;
cs:表示每秒产生的上下文切换次数;
CPU:显示cpu的使用状态;
us:显示用户下所花费cpu的时间百分比;
sy:显示系统花费cpu的时间百分比;
id:表示cpu处于空闲状态的时间百分比;
wa:表示I/O等待所占用cpu的时间百分比;
st:表示被偷走的cpu所占百分比(一般为0,不用关注)
用法:vmstat 1; 表示每隔1秒输出一次状态且直接输出,按ctrl+c键结束;
用法:vmstat 1 5;表示每隔1秒输出一次状态;输出5次;
[root@localhost ~]# vmstat 1 5 procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----r b swpd free buff cache si so bi bo in cs us sy id wa st1 0 0 728784 2108 149392 0 0 7 1 40 31 0 0 100 0 00 0 0 728784 2108 149392 0 0 0 0 132 96 0 0 100 0 00 0 0 728784 2108 149392 0 0 0 0 87 80 0 0 100 0 00 0 0 728784 2108 149392 0 0 0 0 125 89 0 0 100 0 00 0 0 728784 2108 149392 0 0 0 0 89 83 0 0 100 0 0 [root@localhost ~]# vmstat 1 procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----r b swpd free buff cache si so bi bo in cs us sy id wa st2 0 0 728676 2108 149392 0 0 7 1 40 31 0 0 100 0 00 0 0 728660 2108 149392 0 0 0 0 146 94 0 1 100 0 00 0 0 728660 2108 149392 0 0 0 0 90 80 0 0 100 0 0 ^C
3、top:查看进程使用资源的情况;
- top -c 显示详细的进程信息;
- top -bn1静态显示所有进程;
- 1 显示所有核cpu使用状态;
- shift+m:按内存使用排序=M
- shift+p:cpu使用排序=P
- q 退出;
[root@localhost ~]# top -c top - 12:30:54 up 3:54, 1 user, load average: 0.00, 0.01, 0.05 Tasks: 100 total, 2 running, 98 sleeping, 0 stopped, 0 zombie %Cpu(s): 1.0 us, 0.0 sy, 0.0 ni, 99.0 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st KiB Mem : 1008176 total, 727408 free, 128532 used, 152236 buff/cache KiB Swap: 2097148 total, 2097148 free, 0 used. 712732 avail Mem PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 8602 root 20 0 157612 2216 1592 R 2.0 0.2 0:02.01 top -c 1 root 20 0 128164 6816 4048 S 0.0 0.7 0:02.13 /usr/lib/systemd/s+2 root 20 0 0 0 0 S 0.0 0.0 0:00.03 [kthreadd] 3 root 20 0 0 0 0 S 0.0 0.0 0:00.06 [ksoftirqd/0] 5 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 [kworker/0:0H] 6 root 20 0 0 0 0 S 0.0 0.0 0:00.00 [kworker/u128:0] 7 root rt 0 0 0 0 S 0.0 0.0 0:00.03 [migration/0] 8 root 20 0 0 0 0 S 0.0 0.0 0:00.00 [rcu_bh] 9 root 20 0 0 0 0 R 0.0 0.0 0:03.71 [rcu_sched] 10 root rt 0 0 0 0 S 0.0 0.0 0:00.14 [watchdog/0] 11 root rt 0 0 0 0 S 0.0 0.0 0:00.13 [watchdog/1] 12 root rt 0 0 0 0 S 0.0 0.0 0:00.01 [migration/1] 13 root 20 0 0 0 0 S 0.0 0.0 0:00.06 [ksoftirqd/1] 15 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 [kworker/1:0H] 17 root 20 0 0 0 0 S 0.0 0.0 0:00.01 [kdevtmpfs] 18 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 [netns] 19 root 20 0 0 0 0 S 0.0 0.0 0:00.00 [khungtaskd] 20 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 [writeback]
4、sar 监控系统状态 :yum install -y sysstat
- sar -n DEV :查看网卡流量
[root@localhost ~]# sar -n DEV 1 2 Linux 3.10.0-693.el7.x86_64 (localhost.localdomain) 2018年06月10日 _x86_64_ (2 CPU)13时29分42秒 IFACE rxpck/s txpck/s rxkB/s txkB/s rxcmp/s txcmp/s rxmcst/s 13时29分43秒 lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00 13时29分43秒 ens33 0.00 0.00 0.00 0.00 0.00 0.00 0.0013时29分43秒 IFACE rxpck/s txpck/s rxkB/s txkB/s rxcmp/s txcmp/s rxmcst/s 13时29分44秒 lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00 13时29分44秒 ens33 1.00 1.00 0.06 0.40 0.00 0.00 0.00平均时间: IFACE rxpck/s txpck/s rxkB/s txkB/s rxcmp/s txcmp/s rxmcst/s 平均时间: lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00 平均时间: ens33 0.50 0.50 0.03 0.20 0.00 0.00 0.00
- rxpck/s:表示每秒进入收取的包的数量;
- txpck/s:表示每秒发送出去的包的数量;
- rxKB/s:表示每秒收取的数据量;单位KB;
- txKB/s:表示每秒发送的数据量;单位KB;
- 注:当rxpck/s数值大于4000;rxKB/s数值大于5000000,表示很有可能会被攻击了;
sar -f /var/log/sa/saxx :查看某一天历史文件;xx表示日期;
[root@localhost ~]# sar -n DEV -f /var/log/sa/sa10 Linux 3.10.0-693.el7.x86_64 (localhost.localdomain) 2018年06月10日 _x86_64_ (2 CPU)
- sar -q:查看系统负载;一般加-f查看历史文件;
- sar -b:查看磁盘读写;
[root@localhost ~]# sar -q 1 2 Linux 3.10.0-693.el7.x86_64 (localhost.localdomain) 2018年06月10日 _x86_64_ (2 CPU)13时33分50秒 runq-sz plist-sz ldavg-1 ldavg-5 ldavg-15 blocked 13时33分51秒 1 118 0.00 0.01 0.05 0 13时33分52秒 0 118 0.00 0.01 0.05 0 平均时间:
[root@localhost ~]# sar -b 1 2 Linux 3.10.0-693.el7.x86_64 (localhost.localdomain) 2018年06月10日 _x86_64_ (2 CPU) 13时34分33秒 tps rtps wtps bread/s bwrtn/s 13时34分34秒 0.00 0.00 0.00 0.00 0.00 13时34分35秒 0.00 0.00 0.00 0.00 0.00 平均时间: 0.00 0.00 0.00 0.00 0.00
5、nload 命令:查看网卡流量
- yum install -y epel-release
- yum install -y nload
[root@localhost ~]# nload
- 最上一行显示网卡名字和IP,按右方向箭查看其它网卡信息;
- Incoming:进入网卡的流量;
- Outgoing: 网卡出去的流量
6、io:监控磁盘状态
[root@localhost ~]# iostat Linux 3.10.0-693.el7.x86_64 (localhost.localdomain) 2018年06月10日 _x86_64_ (2 CPU)avg-cpu: %user %nice %system %iowait %steal %idle0.06 0.00 0.17 0.10 0.00 99.67Device: tps kB_read/s kB_wrtn/s kB_read kB_wrtn scd0 0.00 0.05 0.00 1028 0 sda 0.66 10.04 7.42 188718 139509 dm-0 0.46 9.49 7.31 178430 137441 dm-1 0.01 0.12 0.00 2228 0
**iostat -x :**磁盘使用;关注:%util,数值大表示磁盘有问题;
[root@localhost ~]# iostat -x Linux 3.10.0-693.el7.x86_64 (localhost.localdomain) 2018年06月10日 _x86_64_ (2 CPU)avg-cpu: %user %nice %system %iowait %steal %idle0.06 0.00 0.17 0.10 0.00 99.67Device: rrqm/s wrqm/s r/s w/s rkB/s wkB/s avgrq-sz avgqu-sz await r_await w_await svctm %util scd0 0.00 0.00 0.00 0.00 0.05 0.00 114.22 0.00 76.83 76.83 0.00 69.72 0.01 sda 0.00 0.02 0.42 0.23 9.94 7.36 53.08 0.02 35.64 13.43 77.01 4.91 0.32 dm-0 0.00 0.00 0.32 0.14 9.40 7.25 73.34 0.03 65.32 17.69 177.52 6.78 0.31 dm-1 0.00 0.00 0.00 0.00 0.12 0.00 47.40 0.00 6.26 6.26 0.00 5.66 0.00
- iotop :进程磁盘使用状态;动态排列
- yum install -y iotop 安装包
7、free 命令:查看内存使用状况
[root@localhost ~]# freetotal used free shared buff/cache available Mem: 1008176 130076 518408 6884 359692 691200 Swap: 2097148 0 2097148
total:内存总大小;
used:真正使用的实际内存大小;
free:剩余物理内存大小;
shared:共享内存大小,不用关注;
buff/cache:分配给buffer和cache的内存总共大小;
available:系统可使用的内存大小,包含free。重点查看
free -m:表示按MB为单位显示内存使用情况;
free -g:表示按GB为单位显示内存使用情况;
free -h :查看详细内存的使用情况,centos 7使用;
[root@localhost ~]# free -mtotal used free shared buff/cache available Mem: 984 127 505 6 351 674 Swap: 2047 0 2047 [root@localhost ~]# free -gtotal used free shared buff/cache available Mem: 0 0 0 0 0 0 Swap: 1 0 1 [root@localhost ~]# free -htotal used free shared buff/cache available Mem: 984M 127M 505M 6.7M 351M 674M Swap: 2.0G 0B 2.0G
8、ps 命令:查看系统进程
- 用法:ps aux 查看系统的全部进程
[root@localhost ~]# ps aux USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND root 1 0.4 0.6 128164 6812 ? Ss 17:14 0:01 /usr/lib/systemd/system root 2 0.0 0.0 0 0 ? S 17:14 0:00 [kthreadd] root 3 0.0 0.0 0 0 ? S 17:14 0:00 [ksoftirqd/0] root 5 0.0 0.0 0 0 ? S< 17:14 0:00 [kworker/0:0H] root 7 0.0 0.0 0 0 ? S 17:14 0:00 [migration/0] root 8 0.0 0.0 0 0 ? S 17:14 0:00 [rcu_bh] root 9 0.1 0.0 0 0 ? S 17:14 0:00 [rcu_sched] root 10 0.0 0.0 0 0 ? S 17:14 0:00 [watchdog/0] root 11 0.0 0.0 0 0 ? S 17:14 0:00 [watchdog/1] root 12 0.0 0.0 0 0 ? S 17:14 0:00 [migration/1] root 13 0.0 0.0 0 0 ? S 17:14 0:00 [ksoftirqd/1] root 15 0.0 0.0 0 0 ? S< 17:14 0:00 [kworker/1:0H] root 17 0.0 0.0 0 0 ? S 17:14 0:00 [kdevtmpfs] root 18 0.0 0.0 0 0 ? S< 17:14 0:00 [netns] root 19 0.0 0.0 0 0 ? S 17:14 0:00 [khungtaskd] root 20 0.0 0.0 0 0 ? S< 17:14 0:00 [writeback] root 21 0.0 0.0 0 0 ? S< 17:14 0:00 [kintegrityd] root 22 0.0 0.0 0 0 ? S< 17:14 0:00 [bioset] root 23 0.0 0.0 0 0 ? S< 17:14 0:00 [kblockd] root 24 0.0 0.0 0 0 ? S< 17:14 0:00 [md] root 25 0.0 0.0 0 0 ? S 17:14 0:00 [kworker/0:1] root 30 0.0 0.0 0 0 ? S 17:14 0:00 [kswapd0] root 31 0.0 0.0 0 0 ? SN 17:14 0:00 [ksmd] root 32 0.0 0.0 0 0 ? SN 17:14 0:00 [khugepaged] root 33 0.0 0.0 0 0 ? S< 17:14 0:00 [crypto] root 41 0.0 0.0 0 0 ? S< 17:14 0:00 [kthrotld] root 42 0.0 0.0 0 0 ? S 17:14 0:00 [kworker/u128:1] root 43 0.0 0.0 0 0 ? S< 17:14 0:00 [kmpath_rdacd] root 44 0.0 0.0 0 0 ? S< 17:14 0:00 [kpsmoused] root 45 0.1 0.0 0 0 ? S 17:14 0:00 [kworker/0:2] root 46 0.0 0.0 0 0 ? S< 17:14 0:00 [ipv6_addrconf] root 47 0.0 0.0 0 0 ? S 17:14 0:00 [kworker/1:1] root 66 0.0 0.0 0 0 ? S< 17:14 0:00 [deferwq] root 99 0.0 0.0 0 0 ? S 17:14 0:00 [kauditd] root 281 0.0 0.0 0 0 ? S 17:14 0:00 [kworker/u128:2] root 282 0.0 0.0 0 0 ? S< 17:14 0:00 [ata_sff] root 283 0.0 0.0 0 0 ? S 17:14 0:00 [scsi_eh_0] root 284 0.0 0.0 0 0 ? S< 17:14 0:00 [scsi_tmf_0] root 285 0.0 0.0 0 0 ? S 17:14 0:00 [scsi_eh_1] root 286 0.0 0.0 0 0 ? S< 17:14 0:00 [scsi_tmf_1] root 288 0.0 0.0 0 0 ? S< 17:14 0:00 [mpt_poll_0] root 289 0.0 0.0 0 0 ? S< 17:14 0:00 [mpt/0] root 297 0.0 0.0 0 0 ? S 17:14 0:00 [scsi_eh_2] root 298 0.0 0.0 0 0 ? S< 17:14 0:00 [scsi_tmf_2] root 299 0.0 0.0 0 0 ? S< 17:14 0:00 [ttm_swap] root 315 0.1 0.0 0 0 ? S 17:14 0:00 [kworker/1:3] root 374 0.0 0.0 0 0 ? S< 17:14 0:00 [kdmflush] root 375 0.0 0.0 0 0 ? S< 17:14 0:00 [bioset] root 386 0.0 0.0 0 0 ? S< 17:14 0:00 [kdmflush] root 387 0.0 0.0 0 0 ? S< 17:14 0:00 [bioset] root 400 0.0 0.0 0 0 ? S< 17:14 0:00 [bioset] root 401 0.0 0.0 0 0 ? S< 17:14 0:00 [xfsalloc] root 402 0.0 0.0 0 0 ? S< 17:14 0:00 [xfs_mru_cache] root 403 0.0 0.0 0 0 ? S< 17:14 0:00 [xfs-buf/dm-0] root 404 0.0 0.0 0 0 ? S< 17:14 0:00 [xfs-data/dm-0] root 405 0.0 0.0 0 0 ? S< 17:14 0:00 [xfs-conv/dm-0] root 406 0.0 0.0 0 0 ? S< 17:14 0:00 [xfs-cil/dm-0] root 407 0.0 0.0 0 0 ? S< 17:14 0:00 [xfs-reclaim/dm-] root 408 0.0 0.0 0 0 ? S< 17:14 0:00 [xfs-log/dm-0] root 409 0.0 0.0 0 0 ? S< 17:14 0:00 [xfs-eofblocks/d] root 410 0.0 0.0 0 0 ? S 17:14 0:00 [xfsaild/dm-0] root 478 0.0 0.2 34940 2784 ? Ss 17:14 0:00 /usr/lib/systemd/system root 503 0.0 0.6 195088 6088 ? Ss 17:14 0:00 /usr/sbin/lvmetad -f root 506 0.8 0.5 47960 5936 ? Ss 17:14 0:03 /usr/lib/systemd/system root 514 0.0 0.0 0 0 ? S< 17:14 0:00 [kworker/1:1H] root 548 0.0 0.0 0 0 ? S< 17:14 0:00 [kworker/0:1H] root 555 0.0 0.0 0 0 ? S< 17:14 0:00 [kworker/u129:0] root 557 0.0 0.0 0 0 ? S< 17:14 0:00 [hci0] root 559 0.0 0.0 0 0 ? S< 17:14 0:00 [hci0] root 566 0.0 0.0 0 0 ? S< 17:14 0:00 [kworker/u129:2] root 606 0.0 0.0 0 0 ? S< 17:14 0:00 [xfs-buf/sda1] root 607 0.0 0.0 0 0 ? S< 17:14 0:00 [xfs-data/sda1] root 608 0.0 0.0 0 0 ? S< 17:14 0:00 [xfs-conv/sda1] root 609 0.0 0.0 0 0 ? S< 17:14 0:00 [xfs-cil/sda1] root 610 0.0 0.0 0 0 ? S< 17:14 0:00 [xfs-reclaim/sda] root 611 0.0 0.0 0 0 ? S< 17:14 0:00 [xfs-log/sda1] root 612 0.0 0.0 0 0 ? S< 17:14 0:00 [xfs-eofblocks/s] root 613 0.0 0.0 0 0 ? S 17:14 0:00 [xfsaild/sda1] root 643 0.0 0.0 55452 896 ? S<sl 17:14 0:00 /sbin/auditd root 666 0.0 0.3 210232 3752 ? Ssl 17:14 0:00 /usr/sbin/rsyslogd -n dbus 667 0.0 0.1 32772 1852 ? Ssl 17:14 0:00 /bin/dbus-daemon --syst root 674 0.0 0.6 99608 6080 ? Ss 17:14 0:00 /usr/bin/VGAuthService root 675 0.2 0.6 305368 6352 ? Rsl 17:14 0:00 /usr/bin/vmtoolsd root 676 0.0 0.1 24204 1696 ? Ss 17:14 0:00 /usr/lib/systemd/system root 679 0.0 0.1 21620 1288 ? Ss 17:14 0:00 /usr/sbin/irqbalance -- polkitd 682 0.0 1.4 534888 14860 ? Ssl 17:14 0:00 /usr/lib/polkit-1/polki root 687 0.1 0.1 126236 1664 ? Ss 17:14 0:00 /usr/sbin/crond -n root 690 0.0 0.0 110044 828 tty1 Ss+ 17:14 0:00 /sbin/agetty --noclear chrony 704 0.0 0.1 115640 1768 ? S 17:14 0:00 /usr/sbin/chronyd root 726 0.4 2.8 334236 28952 ? Ssl 17:15 0:01 /usr/bin/python -Es /us root 735 0.0 0.9 556156 9216 ? Ssl 17:15 0:00 /usr/sbin/NetworkManage root 1042 0.1 1.6 562392 16588 ? Ssl 17:15 0:00 /usr/bin/python -Es /us root 1043 0.0 0.4 105996 4072 ? Ss 17:15 0:00 /usr/sbin/sshd -D root 1135 0.0 0.2 89544 2080 ? Ss 17:15 0:00 /usr/libexec/postfix/ma postfix 1145 0.0 0.3 89648 3996 ? S 17:15 0:00 pickup -l -t unix -u postfix 1146 0.0 0.3 89716 4020 ? S 17:15 0:00 qmgr -l -t unix -u root 1162 0.0 0.0 0 0 ? S 17:19 0:00 [kworker/1:0] root 1171 0.1 0.0 0 0 ? S 17:20 0:00 [kworker/0:0] root 1172 2.5 0.5 145700 5196 ? Ds 17:20 0:00 sshd: root@pts/0 root 1176 0.1 0.1 115392 1988 pts/0 Ss 17:20 0:00 -bash root 1191 0.0 0.1 151064 1812 pts/0 R+ 17:20 0:00 ps aux
PID:进程的ID;内核管理进程靠PID来识别和管理某一进程;kill -PID,终止进程;
STAT:进程的状态;
D:不能中断的进程(I/O)
R(run):正在运行的进程;
S(sleep):已经中断的进程。系统进程通常是这个状态;
T:已经停止或暂停的进程;ctrl+z键暂停;
W:没有足够的内存页分配;内核(2.6xx以后不可用)
X:已经死掉的进程;
Z:僵尸进程,垃圾进程;如占用系统资源多了,就需要重视;
<:高优先级进程;
N:低优先级进程;
L:在内存中被锁了内存分页;
s:主进程;
l:多线程进程;
+:在前台运行的进程
ps aux|grep top 查看top进程信息;
[root@localhost ~]# ps aux|grep top root 1205 0.0 0.0 112676 980 pts/0 S+ 17:36 0:00 grep --color=auto top
*ps -elf输出全部进程
- -e 显示所有进程。
- -f 全格式。
- -h 不显示标题。
- -l 长格式。
- -w 宽输出。
- a 显示终端上的所有进程,包括其他用户的进程。
- r 只显示正在运行的进程。
- x 显示没有控制终端的进程。
[root@localhost ~]# ps -elf F S UID PID PPID C PRI NI ADDR SZ WCHAN STIME TTY TIME CMD 4 S root 1 0 0 80 0 - 32041 ep_pol 17:14 ? 00:00:01 /usr/lib/syst 1 S root 2 0 0 80 0 - 0 kthrea 17:14 ? 00:00:00 [kthreadd] 1 S root 3 2 0 80 0 - 0 smpboo 17:14 ? 00:00:00 [ksoftirqd/0] 1 S root 5 2 0 60 -20 - 0 worker 17:14 ? 00:00:00 [kworker/0:0H 1 S root 7 2 0 -40 - - 0 smpboo 17:14 ? 00:00:00 [migration/0] 1 S root 8 2 0 80 0 - 0 rcu_gp 17:14 ? 00:00:00 [rcu_bh] 1 S root 9 2 0 80 0 - 0 rcu_gp 17:14 ? 00:00:00 [rcu_sched] 5 S root 10 2 0 -40 - - 0 smpboo 17:14 ? 00:00:00 [watchdog/0] 5 S root 11 2 0 -40 - - 0 smpboo 17:14 ? 00:00:00 [watchdog/1] 1 S root 12 2 0 -40 - - 0 smpboo 17:14 ? 00:00:00 [migration/1] 1 S root 13 2 0 80 0 - 0 smpboo 17:14 ? 00:00:00 [ksoftirqd/1] 1 S root 15 2 0 60 -20 - 0 worker 17:14 ? 00:00:00 [kworker/1:0H 5 S root 17 2 0 80 0 - 0 devtmp 17:14 ? 00:00:00 [kdevtmpfs] 1 S root 18 2 0 60 -20 - 0 rescue 17:14 ? 00:00:00 [netns] 1 S root 19 2 0 80 0 - 0 watchd 17:14 ? 00:00:00 [khungtaskd] 1 S root 20 2 0 60 -20 - 0 rescue 17:14 ? 00:00:00 [writeback] 1 S root 21 2 0 60 -20 - 0 rescue 17:14 ? 00:00:00 [kintegrityd] 1 S root 22 2 0 60 -20 - 0 rescue 17:14 ? 00:00:00 [bioset] 1 S root 23 2 0 60 -20 - 0 rescue 17:14 ? 00:00:00 [kblockd] 1 S root 24 2 0 60 -20 - 0 rescue 17:14 ? 00:00:00 [md] 1 S root 30 2 0 80 0 - 0 kswapd 17:14 ? 00:00:00 [kswapd0] 1 S root 31 2 0 85 5 - 0 ksm_sc 17:14 ? 00:00:00 [ksmd] 1 S root 32 2 0 99 19 - 0 khugep 17:14 ? 00:00:00 [khugepaged] 1 S root 33 2 0 60 -20 - 0 rescue 17:14 ? 00:00:00 [crypto] 1 S root 41 2 0 60 -20 - 0 rescue 17:14 ? 00:00:00 [kthrotld] 1 S root 42 2 0 80 0 - 0 worker 17:14 ? 00:00:00 [kworker/u128 1 S root 43 2 0 60 -20 - 0 rescue 17:14 ? 00:00:00 [kmpath_rdacd 1 S root 44 2 0 60 -20 - 0 rescue 17:14 ? 00:00:00 [kpsmoused] 1 S root 46 2 0 60 -20 - 0 rescue 17:14 ? 00:00:00 [ipv6_addrcon 1 S root 66 2 0 60 -20 - 0 rescue 17:14 ? 00:00:00 [deferwq] 1 S root 99 2 0 80 0 - 0 kaudit 17:14 ? 00:00:00 [kauditd] 1 S root 281 2 0 80 0 - 0 worker 17:14 ? 00:00:00 [kworker/u128 1 S root 282 2 0 60 -20 - 0 rescue 17:14 ? 00:00:00 [ata_sff] 1 S root 283 2 0 80 0 - 0 scsi_e 17:14 ? 00:00:00 [scsi_eh_0] 1 S root 284 2 0 60 -20 - 0 rescue 17:14 ? 00:00:00 [scsi_tmf_0] 1 S root 285 2 0 80 0 - 0 scsi_e 17:14 ? 00:00:00 [scsi_eh_1] 1 S root 286 2 0 60 -20 - 0 rescue 17:14 ? 00:00:00 [scsi_tmf_1] 1 S root 288 2 0 60 -20 - 0 rescue 17:14 ? 00:00:00 [mpt_poll_0] 1 S root 289 2 0 60 -20 - 0 rescue 17:14 ? 00:00:00 [mpt/0] 1 S root 297 2 0 80 0 - 0 scsi_e 17:14 ? 00:00:00 [scsi_eh_2] 1 S root 298 2 0 60 -20 - 0 rescue 17:14 ? 00:00:00 [scsi_tmf_2] 1 S root 299 2 0 60 -20 - 0 rescue 17:14 ? 00:00:00 [ttm_swap] 1 S root 315 2 0 80 0 - 0 worker 17:14 ? 00:00:00 [kworker/1:3] 1 S root 374 2 0 60 -20 - 0 rescue 17:14 ? 00:00:00 [kdmflush] 1 S root 375 2 0 60 -20 - 0 rescue 17:14 ? 00:00:00 [bioset] 1 S root 386 2 0 60 -20 - 0 rescue 17:14 ? 00:00:00 [kdmflush] 1 S root 387 2 0 60 -20 - 0 rescue 17:14 ? 00:00:00 [bioset] 1 S root 400 2 0 60 -20 - 0 rescue 17:14 ? 00:00:00 [bioset] 1 S root 401 2 0 60 -20 - 0 rescue 17:14 ? 00:00:00 [xfsalloc] 1 S root 402 2 0 60 -20 - 0 rescue 17:14 ? 00:00:00 [xfs_mru_cach 1 S root 403 2 0 60 -20 - 0 rescue 17:14 ? 00:00:00 [xfs-buf/dm-0 1 S root 404 2 0 60 -20 - 0 rescue 17:14 ? 00:00:00 [xfs-data/dm- 1 S root 405 2 0 60 -20 - 0 rescue 17:14 ? 00:00:00 [xfs-conv/dm- 1 S root 406 2 0 60 -20 - 0 rescue 17:14 ? 00:00:00 [xfs-cil/dm-0 1 S root 407 2 0 60 -20 - 0 rescue 17:14 ? 00:00:00 [xfs-reclaim/ 1 S root 408 2 0 60 -20 - 0 rescue 17:14 ? 00:00:00 [xfs-log/dm-0 1 S root 409 2 0 60 -20 - 0 rescue 17:14 ? 00:00:00 [xfs-eofblock 1 S root 410 2 0 80 0 - 0 xfsail 17:14 ? 00:00:00 [xfsaild/dm-0 4 S root 478 1 0 80 0 - 8735 ep_pol 17:14 ? 00:00:00 /usr/lib/syst 4 S root 503 1 0 80 0 - 48772 poll_s 17:14 ? 00:00:00 /usr/sbin/lvm 4 S root 506 1 0 80 0 - 11990 ep_pol 17:14 ? 00:00:03 /usr/lib/syst 1 S root 514 2 0 60 -20 - 0 worker 17:14 ? 00:00:00 [kworker/1:1H 1 S root 548 2 0 60 -20 - 0 worker 17:14 ? 00:00:00 [kworker/0:1H 1 S root 555 2 0 60 -20 - 0 worker 17:14 ? 00:00:00 [kworker/u129 1 S root 557 2 0 60 -20 - 0 rescue 17:14 ? 00:00:00 [hci0] 1 S root 559 2 0 60 -20 - 0 rescue 17:14 ? 00:00:00 [hci0] 1 S root 566 2 0 60 -20 - 0 worker 17:14 ? 00:00:00 [kworker/u129 1 S root 606 2 0 60 -20 - 0 rescue 17:14 ? 00:00:00 [xfs-buf/sda1 1 S root 607 2 0 60 -20 - 0 rescue 17:14 ? 00:00:00 [xfs-data/sda 1 S root 608 2 0 60 -20 - 0 rescue 17:14 ? 00:00:00 [xfs-conv/sda 1 S root 609 2 0 60 -20 - 0 rescue 17:14 ? 00:00:00 [xfs-cil/sda1 1 S root 610 2 0 60 -20 - 0 rescue 17:14 ? 00:00:00 [xfs-reclaim/ 1 S root 611 2 0 60 -20 - 0 rescue 17:14 ? 00:00:00 [xfs-log/sda1 1 S root 612 2 0 60 -20 - 0 rescue 17:14 ? 00:00:00 [xfs-eofblock 1 S root 613 2 0 80 0 - 0 xfsail 17:14 ? 00:00:00 [xfsaild/sda1 5 S root 643 1 0 76 -4 - 13863 ep_pol 17:14 ? 00:00:00 /sbin/auditd 4 S root 666 1 0 80 0 - 52558 poll_s 17:14 ? 00:00:00 /usr/sbin/rsy 4 S dbus 667 1 0 80 0 - 8193 ep_pol 17:14 ? 00:00:00 /bin/dbus-dae 4 S root 674 1 0 80 0 - 24902 poll_s 17:14 ? 00:00:00 /usr/bin/VGAu 4 S root 675 1 0 80 0 - 76342 poll_s 17:14 ? 00:00:02 /usr/bin/vmto 4 S root 676 1 0 80 0 - 6051 ep_pol 17:14 ? 00:00:00 /usr/lib/syst 4 S root 679 1 0 80 0 - 5405 hrtime 17:14 ? 00:00:00 /usr/sbin/irq 4 S polkitd 682 1 0 80 0 - 133722 poll_s 17:14 ? 00:00:00 /usr/lib/polk 4 S root 687 1 0 80 0 - 31559 hrtime 17:14 ? 00:00:00 /usr/sbin/cro 4 S root 690 1 0 80 0 - 27511 n_tty_ 17:14 tty1 00:00:00 /sbin/agetty 5 S chrony 704 1 0 80 0 - 28910 poll_s 17:14 ? 00:00:00 /usr/sbin/chr 4 S root 726 1 0 80 0 - 83559 poll_s 17:15 ? 00:00:01 /usr/bin/pyth 4 S root 735 1 0 80 0 - 139039 poll_s 17:15 ? 00:00:00 /usr/sbin/Net 4 S root 1042 1 0 80 0 - 140598 poll_s 17:15 ? 00:00:00 /usr/bin/pyth 4 S root 1043 1 0 80 0 - 26499 poll_s 17:15 ? 00:00:00 /usr/sbin/ssh 5 S root 1135 1 0 80 0 - 22386 ep_pol 17:15 ? 00:00:00 /usr/libexec/ 4 S postfix 1145 1135 0 80 0 - 22412 ep_pol 17:15 ? 00:00:00 pickup -l -t 4 S postfix 1146 1135 0 80 0 - 22429 ep_pol 17:15 ? 00:00:00 qmgr -l -t un 4 D root 1172 1043 0 80 0 - 36425 flush_ 17:20 ? 00:00:00 sshd: root@pt 4 S root 1176 1172 0 80 0 - 28848 do_wai 17:20 pts/0 00:00:00 -bash 1 S root 1192 2 0 80 0 - 0 worker 17:24 ? 00:00:00 [kworker/1:1] 1 S root 1193 2 0 80 0 - 0 worker 17:25 ? 00:00:00 [kworker/0:1] 1 S root 1202 2 0 80 0 - 0 worker 17:30 ? 00:00:00 [kworker/0:2] 1 S root 1203 2 0 80 0 - 0 worker 17:34 ? 00:00:00 [kworker/1:0] 0 R root 1206 1176 0 80 0 - 37766 - 17:37 pts/0 00:00:00 ps -elf
9、netstat 命令:查看网络状态
- 用法:netstat -lnp:查看监听端口;
[root@localhost ~]# netstat -lnp |head -n 20 Active Internet connections (only servers) Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1043/sshd tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 1135/master tcp6 0 0 :::22 :::* LISTEN 1043/sshd tcp6 0 0 ::1:25 :::* LISTEN 1135/master udp 0 0 127.0.0.1:323 0.0.0.0:* 704/chronyd udp6 0 0 ::1:323 :::* 704/chronyd raw6 0 0 :::58 :::* 7 735/NetworkManager Active UNIX domain sockets (only servers) Proto RefCnt Flags Type State I-Node PID/Program name Path unix 2 [ ACC ] STREAM LISTENING 14642 1/systemd /var/run/dbus/system_bus_socket unix 2 [ ACC ] STREAM LISTENING 19696 1135/master public/qmgr unix 2 [ ACC ] STREAM LISTENING 19718 1135/master public/flush unix 2 [ ACC ] STREAM LISTENING 19747 1135/master public/showq unix 2 [ ACC ] STREAM LISTENING 19689 1135/master public/pickup unix 2 [ ACC ] STREAM LISTENING 19693 1135/master public/cleanup unix 2 [ ACC ] STREAM LISTENING 12219 1/systemd /run/lvm/lvmetad.socket unix 2 [ ACC ] SEQPACKET LISTENING 12222 1/systemd /run/udev/control unix 2 [ ACC ] STREAM LISTENING 16069 674/VGAuthService /var/run/vmware/guestServicePipe
- netstat -an:查看系统的网络连接状况;=ss -an
[root@localhost ~]# netstat -an |head -n 15 Active Internet connections (servers and established) Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN tcp 0 52 192.168.222.110:22 192.168.222.1:49423 ESTABLISHED tcp6 0 0 :::22 :::* LISTEN tcp6 0 0 ::1:25 :::* LISTEN udp 0 0 127.0.0.1:323 0.0.0.0:* udp6 0 0 ::1:323 :::* raw6 0 0 :::58 :::* 7 Active UNIX domain sockets (servers and established) Proto RefCnt Flags Type State I-Node Path unix 2 [ ACC ] STREAM LISTENING 14642 /var/run/dbus/system_bus_socket unix 2 [ ] DGRAM 15970 /var/run/chrony/chronyd.sock unix 2 [ ACC ] STREAM LISTENING 19696 public/qmgr
- netstat -lntp:只查看tcp,不包含socket;
[root@localhost ~]# netstat -lntp Active Internet connections (only servers) Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1043/sshd tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 1135/master tcp6 0 0 :::22 :::* LISTEN 1043/sshd tcp6 0 0 ::1:25 :::* LISTEN 1135/master
- 查看所有网络状态并统计:
- netstat -an | awk '/^tcp/ {++sta[$NF]} END {for(key in sta) print key,"t",sta[key]}'
[root@localhost ~]# netstat -an |awk '/^tcp/ {++sta[$NF]} END {for(key in sta) print key,"\t",sta[key]}' LISTEN 4 ESTABLISHED 1
10、抓包工具 10.1、tcpdump工具:yum install -y tcpdump
- tcpdump -nn
- tcpdump -nn -i ens33
- -i:后面跟着网卡名称;
- -nn:让第3、4列显示成"IP+端口号";不加则显示成"主机名+服务名称"
- -c :后面跟数字,表抓包的数量;
- tcpdump -nn port 80 :表示只抓22端口的包
- tcpdump -nn not port 22 and host 192.168.122.110 表示不抓22端口并只要192.168.122.110的包
- tcpdump -nn -c 100 -w /tmp/1.cap 抓100个tcp包并写入1.cap
- tcpdump -r /tmp/1.cap 查看所抓包信息
[root@localhost ~]# tcpdump -nn -i ens33 -c 10 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode listening on ens33, link-type EN10MB (Ethernet), capture size 262144 bytes 18:47:01.120930 IP 192.168.222.110.22 > 192.168.222.1.49423: Flags [P.], seq 2471539712:2471539924, ack 340573193, win 296, length 212 18:47:01.121238 IP 192.168.222.1.49423 > 192.168.222.110.22: Flags [.], ack 212, win 16425, length 0 18:47:01.121407 IP 192.168.222.110.22 > 192.168.222.1.49423: Flags [P.], seq 212:504, ack 1, win 296, length 292 18:47:01.121660 IP 192.168.222.110.22 > 192.168.222.1.49423: Flags [P.], seq 504:668, ack 1, win 296, length 164 18:47:01.122031 IP 192.168.222.1.49423 > 192.168.222.110.22: Flags [.], ack 668, win 16311, length 0 18:47:01.122217 IP 192.168.222.110.22 > 192.168.222.1.49423: Flags [P.], seq 668:944, ack 1, win 296, length 276 18:47:01.122725 IP 192.168.222.110.22 > 192.168.222.1.49423: Flags [P.], seq 944:1108, ack 1, win 296, length 164 18:47:01.123007 IP 192.168.222.1.49423 > 192.168.222.110.22: Flags [.], ack 1108, win 16201, length 0 18:47:01.123136 IP 192.168.222.110.22 > 192.168.222.1.49423: Flags [P.], seq 1108:1384, ack 1, win 296, length 276 18:47:01.123386 IP 192.168.222.110.22 > 192.168.222.1.49423: Flags [P.], seq 1384:1564, ack 1, win 296, length 180 10 packets captured 11 packets received by filter 0 packets dropped by kernel
**10.2、wireshark工具:**yum install -y wireshark
- tshark -n -t a -R http.request -T fields -e "frame.time" -e "ip.src" -e "http.host" -e "http.request.method" -e "http.request.uri"
11、Linux 网络相关
ifconfig命令:查看网卡ip 安装:yum install net-tools
- ifup ens33 启用网卡
- ifdown ens33 关闭网卡
- 重启网卡尽量使用:systemctl restart network
[root@localhost ~]# ifconfig ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500inet 192.168.222.110 netmask 255.255.255.0 broadcast 192.168.222.255inet6 fe80::effe:fc70:7a68:994c prefixlen 64 scopeid 0x20<link>ether 00:0c:29:97:24:0e txqueuelen 1000 (Ethernet)RX packets 16994 bytes 19217839 (18.3 MiB)RX errors 0 dropped 0 overruns 0 frame 0TX packets 8255 bytes 1265095 (1.2 MiB)TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536inet 127.0.0.1 netmask 255.0.0.0inet6 ::1 prefixlen 128 scopeid 0x10<host>loop txqueuelen 1 (Local Loopback)RX packets 68 bytes 5920 (5.7 KiB)RX errors 0 dropped 0 overruns 0 frame 0TX packets 68 bytes 5920 (5.7 KiB)TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0[root@localhost ~]# ifdown ens33 [root@localhost ~]# ifup ens33 [root@localhost ~]# systemctl restart network
设定虚拟网卡ens33:1
- cd /etc/sysconfig/network-scripts/
- cp ifcfg-ens33 ifcfg-ens33:1
- vi ifcfg-ens33:1 更改NAME\DEVICE\IPADDR;设置完后重启网卡
查看网卡连接状态
- mii-tool ens33
- ethtool ens33
[root@localhost ~]# mii-tool ens33 ens33: negotiated 1000baseT-FD flow-control, link ok [root@localhost ~]# ethtool ens33 Settings for ens33:Supported ports: [ TP ]Supported link modes: 10baseT/Half 10baseT/Full 100baseT/Half 100baseT/Full 1000baseT/Full Supported pause frame use: NoSupports auto-negotiation: YesAdvertised link modes: 10baseT/Half 10baseT/Full 100baseT/Half 100baseT/Full 1000baseT/Full Advertised pause frame use: NoAdvertised auto-negotiation: YesSpeed: 1000Mb/sDuplex: FullPort: Twisted PairPHYAD: 0Transceiver: internalAuto-negotiation: onMDI-X: off (auto)Supports Wake-on: dWake-on: dCurrent message level: 0x00000007 (7)drv probe linkLink detected: yes
更改主机名
- hostnamectl set-hostname aminglinux
[root@localhost ~]# hostname localhost.localdomain [root@localhost ~]# hostnamectl set-hostname aminglinux [root@localhost ~]# hostname aminglinux [root@localhost ~]# bash [root@aminglinux ~]#
设置DNS
- DNS配置文件/etc/resolv.conf 临时更改,永久更改则修改网卡信息;
[root@aminglinux ~]# cat /etc/resolv.conf # Generated by NetworkManager nameserver 192.168.43.1
- /etc/hosts文件 临时解析域名
- 格式:每一行有两部份,前面为ip,后面为域名; 一个IP可以有多个域名; 每行只能一个IP,一个域名不能对应多个IP; 如果有多个相同域名(对应IP不一样),则按最前面记录解析;
[root@aminglinux ~]# cat /etc/hosts 127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
Linux日常运维1 w vmstat top sar nload io free ps tcpdump相关推荐
- 12:Linux日常运维技巧-1
Linux日常运维管理技巧–1 Linux日常运维管理技巧–1 1:使用w查看系统负载. w命令所显示字段的含义: load average详解: w命令常用选项 w相关的命令:uptime 2:vm ...
- RedHat Linux和Cent Linux日常运维之安全加固详细篇
Linux的使用环境也日趋成熟,各种开源产品络绎不绝,大有百花齐放的盛景,那么当Linux落地企业,回归工作时,我们还要面对这Linux运维方面的诸多问题.下面就列举一些安全加固方面的操作. http ...
- 日常运维1w、vmstat、
w查看系统负载 date 查看当前系统的时间 w查看系统负载 第一行,从左面开始显示的信息依次为:时间,系统运行时间,登录用户数,平均负载. 第二行,开始以及下面所有的行,告诉我们的信息是,当前登录的 ...
- Linux日常运维--6
2019独角兽企业重金招聘Python工程师标准>>> linux任务计划cron cat /etc/crontab 查看任务计划配置文件 格式:分 时 日 月 周 user c ...
- linux日常运维手册_Linux日常运维上传下载工具lrzsz
安装好Linux系统之后,我们使用SecureCRT连接上我们的服务器 对着 黑乎乎的命令行,好激动 突然,需要上传个zip或者什么网页项目到服务器上,怎么上传呢 今天给大家介绍一个非常简单,非常之好 ...
- Linux日常运维(rsync通过服务连接,linux日志,screen)
一.rsync通过服务同步 分为服务端(server1) 和客户端(server2) 服务端(server1): [root@litongyao ~]# vim /etc/rsyncd.conf po ...
- [10] Linux系统日常运维
[10] Linux系统日常运维 10.1 使用w查看系统负载 [root@Temence ~]# w19:28:05 up 45 days, 9:20, 1 user, load average: ...
- Linux 系统日常运维九大技能和运维网络知识总结
一.Linux 系统日常运维九大技能 1.安装部署 方式:U盘,光盘和网络安装 其中网络安装已经成为了目前批量部署的首选方式:主要工具有Cobbler和PXE+kickstart 可以参考如下链接内容 ...
- Linux系统运维九大技能及知识总结,90%日常运维
Linux 系统运维九大技能及知识总结,搞定 90% 日常运维 | 周末送资料 以下内容包括RedHat和CentOS运维工作中常用的几大技能,并总结了系统运维中网络方面的规划.操作及故障处理等知识. ...
最新文章
- 基于开源jabber(XMPP)架设内部即时通讯服务的解决方案
- c语言 中insert变量值,c – 在VS2010中的vector :: insert执行意外结果
- ruby动态new对象
- arcgis 出图背景_ArcGIS中导出数据时老显示导出失败,显示“保存对象时出错”什么原因?...
- 做领导应该注意的几个问题
- 机器人运维时代已来临?这是真的......
- 【转】WCF、WebAPI、WCFREST、WebService之间的区别
- bec初级第一课_在您的第一个初级开发人员工作中如何生存和发展
- 华为已捐献 HarmonyOS 全部基础能力;腾讯、字节跳动隔空互怼;人人视频从App Store下架整改|极客头条...
- docker增加端口映射_docker配置lamp环境笔记
- java案例代码9-冒泡算法:
- java编程显当前月示日历表_显示当前月的日历 1(java实现)
- 欢迎使用CSDN-markdown编辑器wewqewqew
- 数据分析面试:业务题
- Win10(Windows)系统中窗口切换 最大最小化窗口等快捷键
- Picture Flash(图片放映)
- python 自动输入文字_pyautogui和pyperclip实现自动输入中文
- 【数据集显示标注】VOC文件结构+数据集标注可视化+代码实现
- 综合应用 -- 购物车
- 大数据专业毕业后前景如何?能做什么职位?