1. sysstat service

1.1. /etc/cron.d/sysstat

Linux 下的性能分析,少不了要使用 sysstat 工具包中的命令。同时 sysstat 服务会自动每个10分钟收集一次系统状态信息,并将它们存储到 /var/log/sa目录下。每天一个文件,文件名分别是sa01, sa02,... sa30..

[root@localhost sa]# pwd
/var/log/sa
[root@localhost sa]# ls
sa01 sa03 sa05 sa06 sa07 sa08 sa09 sa10 sa11 sa12 sa13 sa14 sa15 sa25 sa26 sa27 sa28 sa29 sa30 sar25

自动收集系统信息,是通过 /etc/cron.d/sysstat 来实现的:

[root@localhost sa]# cat /etc/cron.d/sysstat
# Run system activity accounting tool every 10 minutes
*/ * * * * root /usr/lib/sa/sa1
# 0 * * * * root /usr/lib/sa/sa1 600 6 &
# Generate a daily summary of process accounting at 23:53
* * * root /usr/lib/sa/sa2 -A

上面标示每个10分钟,运行一次 /usr/lib/sa/sa1 1 1, 该命令 man sa1:

sa1 - Collect and store binary data in the system activity daily data file.

SYNOPSIS:/usr/lib/sa/sa1 [ --boot | interval count ]

sa1 收集到的是 binary data. 所以 sa2 -A 负责将当天的二进制文件转换成文本文件。

sa2 - Write a daily report in the /var/log/sa directory

其中的收集信息的频率(10分钟一次)我们可以根据需要进行修改。

1.2. /etc/sysconfig/sysstat

/var/log/sa/目录下的文件保存时间等相关配置存在于文件 /etc/sysconfig/sysstat中:

[root@localhost ~]# cat /etc/sysconfig/sysstat
# sysstat-9.0.4 configuration file. # How long to keep log files (in days).
# If value is greater than 28, then log files are kept in
# multiple directories, one for each month.
HISTORY= # Compress (using gzip or bzip2) sa and sar files older than (in days):
COMPRESSAFTER= # Parameters for the system activity data collector (see sadc manual page)
# which are used for the generation of log files.
SADC_OPTIONS="-S DISK" # Compression program to use.
ZIP="bzip2"

其中的 HISTORY=28 表示最多保存28天的数据。保存时间,我们可以根据需要进行修改。

1.3. 确保 sysstat 服务启动:

[root@localhost ~]# chkconfig --level 35 sysstat on
[root@localhost ~]# chkconfig |grep sysstat
sysstat :off :on :on :on :on :on :off

上面是 sysstat 服务运行的知识。下面是 sysstat 工具包中的命令行如何使用收集到的信息,来了解系统的运行情况。

2. sysstat 工具包中的命令

sysstat工具包中有很多的分析命令,常用的有:sar, iostat, mpstat(multi processor stat), pidstat, vmstat等等。

其中的sar命令尤其强大,它一个命令就能够收集系统CPU, 内存,磁盘,网络,进程切换,swap, 甚至文件inode,等个方面的信息。sar 的应用比较多,而且也比较复杂,数据更为精确。

2.1 sar 命令

1)sar -u 查看CPU信息:

sar -u, sar -u ALL, sar -u 1 5, sar -u ALL 1 5

[root@localhost ~]# sar -u 1 2
Linux 2.6.-.el6.i686 (localhost.localdomain) // _i686_ ( CPU) :: AM CPU %user %nice %system %iowait %steal %idle
:: AM all 0.99 0.00 2.97 0.00 0.00 96.04
:: AM all 0.00 0.00 3.03 0.00 0.00 96.97
Average: all 0.50 0.00 3.00 0.00 0.00 96.50

2)sar -r, sar -R 查看内存信息:

sar -r, sar -R, sar -r 1 5, sar -R 1 5

[root@localhost ~]# sar -r  1 2
Linux 2.6.-.el6.i686 (localhost.localdomain) // _i686_ ( CPU) :: AM kbmemfree kbmemused %memused kbbuffers kbcached kbcommit %commit
:: AM 20.00 3.96
:: AM 20.00 3.96
Average: 20.00 3.96
[root@localhost ~]# sar -R 1 2
Linux 2.6.-.el6.i686 (localhost.localdomain) // _i686_ ( CPU) :: AM frmpg/s bufpg/s campg/s
:: AM -11.11 0.00 0.00
:: AM 0.00 0.00 0.00
Average: -5.56 0.00 0.00

3)sar -S, sar -W 查看 swap:

sar -S, sar -S 1 5, sar -W, sar -W 1 5. sar -S 查看的是swap空间的使用情况,sar -W 是每秒发生的swap/page情况

[root@localhost ~]# sar -S
Linux 2.6.-.el6.i686 (localhost.localdomain) // _i686_ ( CPU) :: AM LINUX RESTART :: AM kbswpfree kbswpused %swpused kbswpcad %swpcad
:: AM 0.00 0.00
:: AM 0.00 0.00
:: AM 0.00 0.00
:: AM 0.00 0.00
:: AM 0.00 0.00
:: AM 0.00 0.00
:: AM 0.00 0.00
Average: 0.00 0.00
[root@localhost ~]# sar -S 1 5
Linux 2.6.-.el6.i686 (localhost.localdomain) // _i686_ ( CPU) :: AM kbswpfree kbswpused %swpused kbswpcad %swpcad
:: AM 0.00 0.00
:: AM 0.00 0.00
:: AM 0.00 0.00
:: AM 0.00 0.00
:: AM 0.00 0.00
Average: 0.00 0.00
[root@localhost ~]# sar -W
Linux 2.6.-.el6.i686 (localhost.localdomain) // _i686_ ( CPU) :: AM LINUX RESTART :: AM pswpin/s pswpout/s
:: AM 0.00 0.00
:: AM 0.00 0.00
:: AM 0.00 0.00
:: AM 0.00 0.00
:: AM 0.00 0.00
:: AM 0.00 0.00
:: AM 0.00 0.00
Average: 0.00 0.00
[root@localhost ~]# sar -W 1 5
Linux 2.6.-.el6.i686 (localhost.localdomain) // _i686_ ( CPU) :: AM pswpin/s pswpout/s
:: AM 0.00 0.00
:: AM 0.00 0.00
:: AM 0.00 0.00
:: AM 0.00 0.00
:: AM 0.00 0.00
Average: 0.00 0.00

4)sar -b, sar -B 查看磁盘IO:

sar -b, sar -b 1 5, sar -B, sar -B 1 5. sar -b 查看磁盘tps(iops);sar -B 主要查看每秒磁盘 page/ fault

[root@localhost ~]# sar -b
Linux 2.6.-.el6.i686 (localhost.localdomain) // _i686_ ( CPU) :: AM LINUX RESTART :: AM tps rtps wtps bread/s bwrtn/s
:: AM 0.01 0.00 0.01 0.00 0.11
:: AM 0.06 0.03 0.03 1.41 0.43
:: AM 0.01 0.00 0.01 0.00 0.11
:: AM 0.01 0.00 0.01 0.00 0.17
:: AM 0.16 0.10 0.06 4.84 0.89
:: AM 18.11 17.81 0.31 334.52 26.32
:: AM 0.11 0.09 0.02 5.12 0.34
:: AM 0.02 0.00 0.02 0.00 0.17
Average: 2.31 2.25 0.06 43.13 3.56
[root@localhost ~]# sar -b 1 5
Linux 2.6.-.el6.i686 (localhost.localdomain) // _i686_ ( CPU) :: AM tps rtps wtps bread/s bwrtn/s
:: AM 0.00 0.00 0.00 0.00 0.00
:: AM 0.00 0.00 0.00 0.00 0.00
:: AM 0.00 0.00 0.00 0.00 0.00
:: AM 0.00 0.00 0.00 0.00 0.00
:: AM 0.00 0.00 0.00 0.00 0.00
Average: 0.00 0.00 0.00 0.00 0.00
[root@localhost ~]# sar -B
Linux 2.6.-.el6.i686 (localhost.localdomain) // _i686_ ( CPU) :: AM LINUX RESTART :: AM pgpgin/s pgpgout/s fault/s majflt/s pgfree/s pgscank/s pgscand/s pgsteal/s %vmeff
:: AM 0.00 0.05 3.29 0.00 0.86 0.00 0.00 0.00 0.00
:: AM 0.71 0.22 12.02 0.00 3.16 0.00 0.00 0.00 0.00
:: AM 0.00 0.05 3.43 0.00 0.85 0.00 0.00 0.00 0.00
:: AM 0.00 0.09 3.28 0.00 0.83 0.00 0.00 0.00 0.00
:: AM 2.42 0.44 59.48 0.02 14.86 0.00 0.00 0.00 0.00
:: AM 167.26 13.16 1580.24 0.09 336.45 0.00 0.00 0.00 0.00
:: AM 2.56 0.17 15.00 0.02 3.95 0.00 0.00 0.00 0.00
:: AM 0.00 0.09 25.18 0.00 9.43 0.00 0.00 0.00 0.00
Average: 21.57 1.78 212.26 0.02 46.20 0.00 0.00 0.00 0.00
[root@localhost ~]# sar -B 1 5
Linux 2.6.-.el6.i686 (localhost.localdomain) // _i686_ ( CPU) :: AM pgpgin/s pgpgout/s fault/s majflt/s pgfree/s pgscank/s pgscand/s pgsteal/s %vmeff
:: AM 0.00 0.00 45.45 0.00 59.60 0.00 0.00 0.00 0.00
:: AM 0.00 0.00 38.38 0.00 59.60 0.00 0.00 0.00 0.00
:: AM 0.00 0.00 30.30 0.00 59.60 0.00 0.00 0.00 0.00
:: AM 0.00 0.00 30.30 0.00 59.60 0.00 0.00 0.00 0.00
:: AM 0.00 0.00 30.00 0.00 59.00 0.00 0.00 0.00 0.00
Average: 0.00 0.00 34.88 0.00 59.48 0.00 0.00 0.00 0.00

5)sar -d 查看磁盘IO活动:

[root@localhost ~]# sar -d
Linux 2.6.-.el6.i686 (localhost.localdomain) // _i686_ ( CPU) :: AM LINUX RESTART :: AM DEV tps rd_sec/s wr_sec/s avgrq-sz avgqu-sz await svctm %util
:: AM dev11- 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
:: AM dev8- 0.01 0.00 0.11 12.80 0.00 2.00 1.60 0.00
:: AM dev11- 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
:: AM dev8- 0.06 1.41 0.43 29.62 0.00 5.86 5.30 0.03
:: AM dev11- 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
:: AM dev8- 0.01 0.00 0.11 12.80 0.00 2.80 2.60 0.00
:: AM dev11- 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
:: AM dev8- 0.01 0.00 0.17 14.86 0.00 3.29 2.14 0.00
:: AM dev11- 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
:: AM dev8- 0.16 4.84 0.89 35.13 0.00 7.26 6.59 0.11
:: AM dev11- 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
:: AM dev8- 18.11 334.52 26.32 19.92 0.05 3.15 2.98 5.40
:: AM dev11- 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
:: AM dev8- 0.11 5.12 0.34 50.62 0.00 20.66 13.55 0.15
:: AM dev11- 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
:: AM dev8- 0.02 0.00 0.17 11.56 0.00 1.67 1.56 0.00
Average: dev11- 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
Average: dev8- 2.31 43.13 3.56 20.25 0.01 3.29 3.08 0.71
[root@localhost ~]# sar -d 1 3
Linux 2.6.-.el6.i686 (localhost.localdomain) // _i686_ ( CPU) :: AM DEV tps rd_sec/s wr_sec/s avgrq-sz avgqu-sz await svctm %util
:: AM dev11- 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
:: AM dev8- 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 :: AM DEV tps rd_sec/s wr_sec/s avgrq-sz avgqu-sz await svctm %util
:: AM dev11- 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
:: AM dev8- 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 :: AM DEV tps rd_sec/s wr_sec/s avgrq-sz avgqu-sz await svctm %util
:: AM dev11- 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
:: AM dev8- 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 Average: DEV tps rd_sec/s wr_sec/s avgrq-sz avgqu-sz await svctm %util
Average: dev11- 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
Average: dev8- 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00

6)sar -n { keyword [,...] | ALL } 查看网络:

Possible keywords are DEV, EDEV, NFS, NFSD, SOCK, IP, EIP, ICMP, EICMP, TCP,  ETCP,  UDP,  SOCK6,  IP6,  EIP6, ICMP6, EICMP6 and UDP6.

你想查看网络哪个方面的信息,就将 keyword 换成上面的那个选项。

sar -n DEV 查看网络设备上的数据包收发情况,sar -n EDEV 查看网络设备上发生的数据包收发错误的情况,sar -n DEV 1 5, sar -n EDEV 1 5.

[root@localhost ~]# sar -n DEV 1 2
Linux 2.6.-.el6.i686 (localhost.localdomain) // _i686_ ( CPU) :: AM IFACE rxpck/s txpck/s rxkB/s txkB/s rxcmp/s txcmp/s rxmcst/s
:: AM lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00
:: AM eth0 0.00 0.00 0.00 0.00 0.00 0.00 0.00
:: AM eth1 0.00 0.00 0.00 0.00 0.00 0.00 0.00 :: AM IFACE rxpck/s txpck/s rxkB/s txkB/s rxcmp/s txcmp/s rxmcst/s
:: AM lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00
:: AM eth0 2.02 3.03 0.12 0.70 0.00 0.00 0.00
:: AM eth1 0.00 0.00 0.00 0.00 0.00 0.00 0.00 Average: IFACE rxpck/s txpck/s rxkB/s txkB/s rxcmp/s txcmp/s rxmcst/s
Average: lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00
Average: eth0 1.01 1.52 0.06 0.35 0.00 0.00 0.00
Average: eth1 0.00 0.00 0.00 0.00 0.00 0.00 0.00
[root@localhost ~]# sar -n EDEV 1 2
Linux 2.6.-.el6.i686 (localhost.localdomain) // _i686_ ( CPU) :: AM IFACE rxerr/s txerr/s coll/s rxdrop/s txdrop/s txcarr/s rxfram/s rxfifo/s txfifo/s
:: AM lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
:: AM eth0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
:: AM eth1 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 :: AM IFACE rxerr/s txerr/s coll/s rxdrop/s txdrop/s txcarr/s rxfram/s rxfifo/s txfifo/s
:: AM lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
:: AM eth0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
:: AM eth1 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 Average: IFACE rxerr/s txerr/s coll/s rxdrop/s txdrop/s txcarr/s rxfram/s rxfifo/s txfifo/s
Average: lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
Average: eth0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
Average: eth1 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00

sar -n TCP, sar -n TCP 1 5 查看TCP;sar -n ETCP 查看tcp错误; sar -n SOCK, sar -n SOCK 1 5 查看socket;

7)sar -q 查看系统load负载:

[root@localhost ~]# sar -q
Linux 2.6.-.el6.i686 (localhost.localdomain) // _i686_ ( CPU) :: AM LINUX RESTART :: AM runq-sz plist-sz ldavg- ldavg- ldavg-
:: AM 0.00 0.02 0.09
:: AM 0.00 0.00 0.03
:: AM 0.00 0.00 0.00
:: AM 0.00 0.00 0.00
:: AM 0.00 0.00 0.00
:: AM 0.00 0.16 0.14
:: AM 0.00 0.02 0.06
:: AM 0.00 0.00 0.00
:: AM 0.00 0.00 0.00
Average: 0.00 0.02 0.04
[root@localhost ~]# sar -q 1 3
Linux 2.6.-.el6.i686 (localhost.localdomain) // _i686_ ( CPU) :: AM runq-sz plist-sz ldavg- ldavg- ldavg-
:: AM 0.00 0.00 0.00
:: AM 0.00 0.00 0.00
:: AM 0.00 0.00 0.00
Average: 0.00 0.00 0.00

runq-sz 表示在CPU上排队等待执行的任务;plist-sz系统所有任务。

8)sar -w 每秒进程创建 和 进程切换:

[root@localhost ~]# sar -w
Linux 2.6.-.el6.i686 (localhost.localdomain) // _i686_ ( CPU) :: AM LINUX RESTART :: AM proc/s cswch/s
:: AM 0.01 25.14
:: AM 0.04 25.58
:: AM 0.01 25.01
:: AM 0.01 25.40
:: AM 0.19 27.64
:: AM 4.02 120.10
:: AM 0.04 41.77
:: AM 0.09 38.55
:: AM 0.23 50.63
Average: 0.51 42.18
[root@localhost ~]# sar -w 1 4
Linux 2.6.-.el6.i686 (localhost.localdomain) // _i686_ ( CPU) :: AM proc/s cswch/s
:: AM 0.00 80.39
:: AM 0.00 90.82
:: AM 0.00 45.45
:: AM 0.00 60.00
Average: 0.00 69.17

9)sar -W 每秒swap/page:

[root@localhost ~]# sar -W
Linux 2.6.-.el6.i686 (localhost.localdomain) // _i686_ ( CPU) :: AM LINUX RESTART :: AM pswpin/s pswpout/s
:: AM 0.00 0.00
:: AM 0.00 0.00
:: AM 0.00 0.00
:: AM 0.00 0.00
:: AM 0.00 0.00
:: AM 0.00 0.00
:: AM 0.00 0.00
:: AM 0.00 0.00
:: AM 0.00 0.00
Average: 0.00 0.00
[root@localhost ~]# sar -W 1 4
Linux 2.6.-.el6.i686 (localhost.localdomain) // _i686_ ( CPU) :: AM pswpin/s pswpout/s
:: AM 0.00 0.00
:: AM 0.00 0.00
:: AM 0.00 0.00
:: AM 0.00 0.00
Average: 0.00 0.00

10)sar -v 查看文件inode使用,缓存情况:

[root@localhost ~]# sar -v
Linux 2.6.-.el6.i686 (localhost.localdomain) // _i686_ ( CPU) :: AM LINUX RESTART :: AM dentunusd file-nr inode-nr pty-nr
:: AM
:: AM
:: AM
:: AM
:: AM
:: AM
:: AM
:: AM
:: AM
Average:
[root@localhost ~]# sar -v 1 3
Linux 2.6.-.el6.i686 (localhost.localdomain) // _i686_ ( CPU) :: AM dentunusd file-nr inode-nr pty-nr
:: AM
:: AM
:: AM
Average:

2.2 iostat 命令

注意查看IO和CPU负载情况

参见:http://www.cnblogs.com/digdeep/p/4863502.html 和 man 手册

2.3 mpstat 命令

注意查看多核CPU情况

参见:http://www.cnblogs.com/digdeep/p/4847484.html 和 man 手册

2.4 pidstat命令

注意查看进程情况

参见:http://www.cnblogs.com/digdeep/p/4847484.html 和 man 手册

Linux 性能优化工具包 sysstat 以及 sysstat 服务的更多相关文章

  1. Linux性能优化-平均负载

    Linux性能优化-平均负载 目录 Linux性能优化-平均负载 平均负载的含义 平均负载为多少时合理 平均负载与 CPU 使用率 平均负载案例分析 场景一:CPU 密集型进程 场景二:I/O 密集型 ...

  2. Linux 性能优化之 IO 子系统 系列 图

    http://blog.sina.com.cn/s/articlelist_1029388674_11_1.html Linux 性能优化之 IO 子系统(一) 本文介绍了对 Linux IO 子系统 ...

  3. 如何学习Linux性能优化?

    如何学习Linux性能优化? 你是否也曾跟我一样,看了很多书.学了很多 Linux 性能工具,但在面对 Linux 性能问题时,还是束手无策?实际上,性能分析和优化始终是大多数软件工程师的一个痛点.但 ...

  4. Linux 性能优化解析

    前情概述 进程调度 老板 cpu 任劳任怨的打工仔 线程 工作在做什么 可运行队列 拥有的工作清单 上下文切换 和老板沟通以便得到老板的想法并及时调整自己的工作 中断 部分工作做完以后还需要及时向老板 ...

  5. 深挖计算机基础:Linux性能优化学习笔记

    参考极客时间专栏<Linux性能优化实战>学习笔记 一.CPU性能:13讲 Linux性能优化实战学习笔记:第二讲 Linux性能优化实战学习笔记:第三讲 Linux性能优化实战学习笔记: ...

  6. Linux 性能优化排查工具

    下图1为 Linux 性能优化排查工具的总结 图1 诊断 CPU 工具 查看 CPU 核数 总核数 = 物理CPU个数 X 每颗物理CPU的核数 总逻辑CPU数 = 物理CPU个数 X 每颗物理CPU ...

  7. Linux性能优化从入门到实战:01 Linux性能优化学习路线

      我通过阅读各种相关书籍,从操作系统原理.到 Linux内核,再到硬件驱动程序等等.   把观察到的性能问题跟系统原理关联起来,特别是把系统从应用程序.库函数.系统调用.再到内核和硬件等不同的层级贯 ...

  8. 《Linux 性能优化实战—倪朋飞 》学习笔记 CPU 篇

    平均负载 指单位时间内,系统处于可运行状态和不可中断状态的平均进程数,即平均活跃进程数 可运行状态:正在使用CPU或者正在等待CPU 的进程,也就是我们常用 ps 命令看到的,处于 R 状态 (Run ...

  9. linux性能优化cpu-02平均负载

    每次我们系统变慢时,我们通常做的第一件事就是top命令或者uptime命令,看一下系统的负载情况,比如下面: 我在命令行中输入uptime 22:15:51    表示当前系统时间 up 13 min ...

随机推荐

  1. Software Development Engineer - Database Services

    http://stackoverflow.com/jobs/116486/software-development-engineer-database-services-amazon?med=clc& ...

  2. FireMonkey ListView 自动计算行高

    说明:展示 ListView 视其每一行 Item 的 Detail 字串长度自动调整高度(可每行高度不同). 适用:Delphi XE7 / XE8 源码下载:[原创]ListView_自动计算行高 ...

  3. javaweb项目springmvc,和tomcat对静态文件的处理

    1.激活Tomcat的defaultServlet来处理静态文件,web.xml配置 <servlet-mapping> <servlet-name>default</s ...

  4. 通俗易懂地讲解TCP建立连接的三次握手和释放连接的四次挥手

    TCP建立连接时,为什么要进行三次挥手? 每一次TCP连接都需要三个阶段:连接建立.数据传送和连接释放.三次握手就发生在连接建立阶段. 在谢希仁著<计算机网络>第四版中讲三次握手的目的是为 ...

  5. python学习笔记3(元组、字典)

    Python中有三种内置的数据类型.dictionary(字典).List(列表)和tuple(元组). 元组(tuple) 只读列表(列表的值可以修改,元组的不可以) 元组与列表类似,不同之处在于元 ...

  6. linux Centos 6.5 安装桌面环境GNOME

    在某种场合之下,我们使用的Linux还是要选择安装桌面环境的,所以在这里介绍一下如何给没有安装桌面环境的系统安装桌面环境.以Centos 6.5 为例演示一下如何安装桌面环境. 工具/原料 Linux ...

  7. Java数组排序和查找

    Java 1.2 添加了自己的一套实用工具,可用来对数组或列表进行排列和搜索.这些工具都属于两个新类的"静态"方法.这两个类分别是用于排序和搜索数组的Arrays,以及用于排序和搜 ...

  8. 设置MySQL允许外网访问

    1:设置mysql的配置文件      /etc/mysql/my.cnf      找到 bind-address  =127.0.0.1  将其注释掉://作用是使得不再只允许本地访问:   重启 ...

  9. L20n – Mozilla 推出的 Web 本地化框架

    L20n是 Mozilla 开发的用于 Web 开发的本地化框架.它允许本地化开发者把逻辑细分为本地化的资源. L20n 的框架不再需要开发人员深入理解自然语言的具体细节,并提供了机会为本地化创造更好 ...

  10. Webpack - CommonJs & AMD 模块打包器

    Webpack 是一个 CommonJs & AMD 模块打包器.可以把你的 JavaScript 代码分离为多个包,在需要的时候进行加载,支持预处理文件,例如 json, jade, cof ...