1、内存
(1)、简介
Linux中swap与memory。对于memory没什么可说的就是机器的物理内存,读写速度低于cpu一个量级,但是高于磁盘不止一个量级。所以,程序和数据如果在内存的话,会有非常快的读写速度。但是,内存的造价是要高于磁盘的,虽然相对来说价格一直在降低。除此之外,内存的断电丢失数据也是一个原因说不能把所有数据和程序都保存在内存中。既然不能全部使用内存,那数据还有程序肯定不可能一直霸占在内存中。当内存没有可用的,就必须要把内存中不经常运行的程序给踢出去。但是踢到哪里去,这时候swap就出现了。swap全称为swap place,即交换区,当内存不够的时候,被踢出的进程被暂时存储到交换区。当需要这条被踢出的进程的时候,就从交换区重新加载到内存,否则它不会主动交换到真实内存中。
(2)、常用命令 free 默认单位kb
代码语言:javascript复制[root@localhost ~]# free
total used free shared buffers cached
Mem: 16333612 1467664 14865948 0 101672 890356
-/ buffers/cache: 475636 15857976
Swap: 18579448 0 18579448
total:物理内存的总大小
used:被使用的大小
free:可用内存空闲内存大小
shared:被多个进程共享的内存
buffer/cached:磁盘缓存的大小
available:还可以被进程使用的物理内存大小
(3)、free -b 单位bytes free -k 单位Kb free -m 单位Mb free -g 单位Gb
代码语言:javascript复制[root@localhost ~]# free -b
total used free shared buffers cached
Mem: 16725618688 1502760960 15222857728 0 104144896 911724544
-/ buffers/cache: 486891520 16238727168
Swap: 19025354752 0 19025354752
[root@localhost ~]# free -k
total used free shared buffers cached
Mem: 16333612 1467292 14866320 0 101704 890356
-/ buffers/cache: 475232 15858380
Swap: 18579448 0 18579448
[root@localhost ~]# free -m
total used free shared buffers cached
Mem: 15950 1432 14517 0 99 869
-/ buffers/cache: 464 15486
Swap: 18143 0 18143
[root@localhost ~]# free -g
total used free shared buffers cached
Mem: 15 1 14 0 0 0
-/ buffers/cache: 0 15
Swap: 17 0 17
(4)、高低内存使用率
代码语言:javascript复制[root@localhost ~]# free -l
total used free shared buffers cached
Mem: 16333612 1467772 14865840 0 101752 890368
Low: 16333612 1467772 14865840
High: 0 0 0
-/ buffers/cache: 475652 15857960
Swap: 18579448 0 18579448
(5)、全部内存使用情况
代码语言:javascript复制[root@localhost ~]# free -t
total used free shared buffers cached
Mem: 16333612 1467276 14866336 0 101760 890368
-/ buffers/cache: 475148 15858464
Swap: 18579448 0 18579448
Total: 34913060 1467276 33445784
(6)、每隔N秒打印内存使用情况 这里是每隔1秒
代码语言:javascript复制[root@localhost ~]# free -s 1
total used free shared buffers cached
Mem: 16333612 1467032 14866580 0 101792 890368
-/ buffers/cache: 474872 15858740
Swap: 18579448 0 18579448
total used free shared buffers cached
Mem: 16333612 1467040 14866572 0 101792 890368
-/ buffers/cache: 474880 15858732
Swap: 18579448 0 18579448
(7)、查看版本信息
代码语言:javascript复制[root@localhost ~]# free -V
procps version 3.2.8
2、硬盘
(1)、df -h 以人类可读的格式显示磁盘使用情况,例如显示为 KB、MB 或 GB。
代码语言:javascript复制[root@localhost ~]# df -h
文件系统 容量 已用 可用 已用%% 挂载点
/dev/sda2 50G 3.8G 43G 8% /
tmpfs 7.8G 76K 7.8G 1% /dev/shm
/dev/sda1 485M 49M 411M 11% /boot
/dev/sda5 130G 188M 123G 1% /home
/dev 详见3中的目录介绍.
sda1:
scsi(接口协议)-disk(硬盘)-a(第几块)-1(分区)
第1块硬盘分区1:sda1
第1块硬盘分区2:sda2
第1块硬盘分区3:sda3
第2块硬盘分区1:sdb1
第3块硬盘分区1:sdc1
接口协议如下几种:
ide/ata
IDE/ATA 是Integrated Device Electronics/Advanced Technology Attachment (IDE/ATA)的缩写。这是一种十分流行的计算机外设接口,它不但能用于连接硬盘,也广泛地用于连接CD-ROM,软盘驱动器等设备。其中IDE是指一种协议,它规定了主板上的控制器如何与连接的硬盘通信。ATA是指连接主板和外设的借口类型。 这种类型的接口的优点是廉价,兼容性好。缺点是速度相对较慢,比如Ultra DMA/133标准支持的带宽是133MB/s。而且缆线长度很短,一般只能用于机箱内的设备连接
sata SATA其实就是Serail ATA,串行的ATA。SATA设计的目的就是取代并行的ATA,第三版的SATA最高传输速度可以达到6Gb/s(大概等于715MB/s)。SATA是可热插拔的,它使用7针脚的窄连接线。 我2009年买的电脑就用SATA硬盘了。
scsi SCSI是Small Computer System Interface的缩写。是一种历史比较悠久但仍广泛使用的的外设连接标准。它除了被用于连接硬盘和磁带机以外还可以连接其它外设,如扫描仪和打印机之类的。SCSI包括了一系列标准,其使用的物理接口类型也都不尽相同。其中Ultra-640 SCSI支持640MB/s的带宽。 相对于IDE设备,SCSI设备一般比较贵一点,SCSI硬盘以往常常用于服务器级别的主机上。
sas Serial Attached SCSI。串行版本的SCSI,是SCSI的进化版本。而且SAS对SATA是兼容的,3 Gbit/s的SATA盘可以连接到SAS的接口,不过SAS的硬盘不能连接到SATA的接口上。 目前SAS硬盘被广泛地应用于服务器级别的主机上。
因此/dev/sda3代表第一块sata接口的硬盘的第三个分区。
tmpfs:临时文件系统,基于内存的文件系统 参考百度百科
3、目录
(1)、/boot
这里存放的是启动Linux是使用的一些核心文件,包括一些连接文件以及镜像文件。Linux内核相关。不要轻易的动
(2)、/dev 上面已经介绍
dev是device的简写,在Linux系统中dev有着非常重要的作用,它是Linux下的一个目录,各种各样设备都在它的下面。/dev这个目录对所有的用户都十分重要。因为在这个目录中包含了所有Linux系统中使用的外部设备。但是这里并不是放的外部设备的驱动程序,这一点和Windows、dos操作系统不一样。它实际上是一个访问这些外部设备的端口。我们可以非常方便地去访问这些外部设备,和访问一个文件,一个目录没有任何区别。Linux沿袭Unix的风格,将所有设备认成是一个文件。设备文件一般存放在/dev目录下,对常见设备文件作如下说明:
/dev/hd[a-t]:IDE设备
/dev/sd[a-z]:SCSI设备和SATA设备
/dev/fd[0-7]:标准软驱
/dev/md[0-31]:软raid设备
/dev/loop[0-7]:本地回环设备
/dev/ram[0-15]:内存
(3)、/etc
这个目录用来存放所有系统管理所需要的配置文件和子目录。
(4)、/home
用户的主目录,在linux中,每个用户都有一个自己的目录,一般该目录名是以用户的账号命名的。
(5)、/usr
这个是很重要的一个目录,用户的很多应用程序和文件都在这个目录下
(6)、/usr/bin
系统用户使用的应用程序
(7)、/lib
用户里存放着系统最基本的动态连接共享库,其作用类似于windows里的DLL文件(不要动)
(86)、/lost found 这个目录一般情况下是空的,当系统非法关机后这里存放一些文件。
(9)、/media linux系统会自动识别一些设备,例如U盘,光驱等等。当时识别后,linux会把识别的设备挂载到这个目录下。
(10)、/opt 这是给主机额外安装软件所摆放的目录,比如安装一个ORACLE数据库则可以放到这个目录下,默认是空的。
(11)、其余相关目录 /proc:这个目录是一个虚拟的目录,它是系统内存的隐射,我们可以通过直接访问这个目录来获取系统信息。 /root:该目录为系统管理员,也称作超级权限者的用户主目录。 /sbin:s就是super User的意思,这里存放的是i系统管理员使用的系统管理程序。 /srv:该目录存放一些服务启动之后需要提取的数据。 /sys:这个是linux2.6内核的一个很大的变化, /tmp:这个目录是用来存放一些临时文件。
(12)、/dev/shm 对应tmpfs临时文件系统,基于内存的文件系统 参考百度百科
/dev/shm/是linux下一个非常有用的目录,因为这个目录不在硬盘上,而是在内存里。因此在linux下,就不需要大费周折去建ramdisk,直接使用/dev/shm/就可达到很好的优化效果。默认系统就会加载/dev/shm ,它就是所谓的tmpfs,有人说跟ramdisk(虚拟磁盘),但不一样(后面给出区别)。象虚拟磁盘一样,tmpfs 可以使用您的 RAM,但它也可以使用您的交换分区来存储。而且传统的虚拟磁盘是个块设备,并需要一个 mkfs 之类的命令才能真正地使用它,tmpfs 是一个文件系统,而不是块设备;您只是安装它,它就可以使用了。