2016-10-20
iptables是Linux中基于内核的防火墙,功能十分强大。
iptables工作在网络层,不需要把数据发送到用户空间,在系统内核空间中进行数据过滤可以保证数据处理效率。
当数据包到达iptables之后,如果MAC地址相符,就会由内核中的相应驱动程序接收,通过一系列操作决定将数据包发送给本地程序或转发到其他主机,或进行其他操作。
iptables由一系列表(table)组成,表再由一系列链(chain)组成,当数据包到达iptables之后,就会基于规则按一定顺序穿越不同的表和链。
...2016-10-20
理解Swap Space
#
对服务器进行性能监控,除了CPU, 内存, 磁盘IO,网络外,Swap Space也是值得关注的关键项。
用户进程在内存空间中数据有以下形式:
- 程序代码和共享库
- 文件内容的缓存数据
- 程序使用的堆栈空间
其中前两项都是从文件系统中读取进来的。
Linux本身是一个分页请求系统,用户进程使用的内存需要映射到物理内存。为了更好的使用内存,Linux会对物理内存中的页面进行回收:
...2015-09-03
计算机中使用的时间是UTC时间(世界标准时间或世界协调时)。CentOS下的时区设置文件被编译好后保存在/usr/share/zoneinfo目录下,包含了大部分的城市和编码。
系统安装完成设置好时间之后,这些信息保存在/etc/localtime这个文件中,实际上这个文件是指向/usr/share/zoneinfo下某个文件的链接。当/etc/localtime不存在的时候,则系统使用UTC时间。
...2015-09-02
安装ntp组件
#
网络时间协议ntp是时间服务器的一种协议。在时间服务器工作时,其可利用不同的工作模式与其他服务器或用户端进行时间的调整,实现时间的同步。
使用ntp需要安装ntp服务组件:
1yum install -y ntpdate ntp
2
3
4systemctl start ntpdate
5systemctl start ntpd
6
7systemctl enable ntpd
8systemctl enable ntpdate
在ntpd服务进程启动的时候,可以使用ntpstat命令获取系统每次校正时间的间隔:
...2014-12-22
Linux的例行任务包含两种:一种是需要周期执行的任务其命令为cron;另外一种是在某个特定时间执行一次的任务,其命令为at。
使用at在特定时间执行一次任务
#
当前时间后多长时间执行一次任务:
1# at now + 3 minutes
2at> echo hello > hello.txt
3at> <EOT>
4job 1 at Mon Dec 22 18:29:00 2014
<EOT>
是输入组合键CTL+D
...
2014-12-13
一般使用mii-tool可以设置以太网设备,使用它还可以显示当前的设置信息。
1mii-tool -v em1
2em1: negotiated 1000baseT-FD flow-control, link ok
3 product info: vendor 00:d8:97, model 54 rev 0
4 basic mode: autonegotiation enabled
5 basic status: autonegotiation complete, link ok
6 capabilities: 1000baseT-HD 1000baseT-FD 100baseTx-FD 100baseTx-HD 10baseT-FD 10baseT-HD
7 advertising: 1000baseT-HD 1000baseT-FD 100baseTx-FD 100baseTx-HD 10baseT-FD 10baseT-HD flow-control
8 link partner: 1000baseT-FD 100baseTx-FD 100baseTx-HD 10baseT-FD 10baseT-HD flow-control
ethtool与mii-tool类似,可以提供更多的配置选线和设备统计信息显示。
...2014-12-12
free
#
free显示系统内存整体使用情况。Linux内核可以将内存作为用于硬盘读取的高速缓存和作为用于硬盘写入的缓冲区。
free命令可以显示空闲内存加减这些cache和buffer。
1free -g
2 total used free shared buff/cache available
3Mem: 31 22 1 0 7 7
4Swap: 15 4 10
vmstat
#
vmstat即虚拟内存统计,使用它可以获取系统虚拟内存信息。
...2014-12-11
vmstat
#
vmstat即虚拟内存统计,但用它不仅仅是可以获取系统的虚拟内存性能信息,还能获取整个系统性能的大概信息。
当我们用vmstat获取系统的CPU性能信息时命令格式如下:
vmstat [-n] [-s] [delay [count]]
-n
表示当按时间间隔采样显示的数据在初始显示行标题后,后边的数据行不再重复显示标题-s
汇总显示统计数据delay
采样的时间间隔,单位秒count
采样次数
例如:
...2014-12-10
查看开机启动项:
1systemctl list-unit-files --type=service | grep enabled
2014-02-03
磁盘的分区、格式化、挂载
#
使用fdisk -l
列出系统上所有的磁盘分区信息。它会显示您系统中的硬盘设备以及每个设备上的分区情况,包括分区的起始扇区、大小、文件系统类型等。
1fdisk -l
2Disk /dev/vda: 100 GiB, 107374182400 bytes, 209715200 sectors
3Units: sectors of 1 * 512 = 512 bytes
4Sector size (logical/physical): 512 bytes / 512 bytes
5I/O size (minimum/optimal): 512 bytes / 512 bytes
6Disklabel type: dos
7Disk identifier: 0xa26fc47b
8
9Device Boot Start End Sectors Size Id Type
10/dev/vda1 2048 4194303 4192256 2G e W95 FAT16 (LBA)
11/dev/vda2 4194304 83886079 79691776 38G 83 Linux
12
13
14Disk /dev/vdb: 8 GiB, 8589934592 bytes, 16777216 sectors
15Units: sectors of 1 * 512 = 512 bytes
16Sector size (logical/physical): 512 bytes / 512 bytes
17I/O size (minimum/optimal): 512 bytes / 512 bytes
使用df -h
命令显示系统上各个文件系统的磁盘使用情况和剩余空间。它会显示文件系统的挂载点、总容量、已用空间、剩余空间和使用率等信息。
...