三周第四次课(2月8日)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了三周第四次课(2月8日)相关的知识,希望对你有一定的参考价值。

4.1 df命令
4.2 du命令
4.3/4.4 磁盘分区 


4.1 df命令


df查看文件系统的实际情况

#df

文件系统          1K-块    已用     可用 已用% 挂载点

/dev/sda3      29150304 1026564 28123740    4% /

devtmpfs         494220       0   494220    0% /dev

tmpfs            504076       0   504076    0% /dev/shm

tmpfs            504076    6856   497220    2% /run

tmpfs            504076       0   504076    0% /sys/fs/cgroup

/dev/sda1        191140   98636    92504   52% /boot

tmpfs            100816       0   100816    0% /run/user/0


第一列,文件系统,磁盘分区的名字。

第二列,磁盘总大小,单位是k,kb

第三列,已用了多少容量,kb

第四列,还有多少容量可用,kb

*第五列,已用%,磁盘使用情况,常用,80%-90%就要警惕关注了。

第六列 挂载点,系统一个目录(相当于windows系统的c:/windows)


#df -h

文件系统        容量  已用  可用 已用% 挂载点

/dev/sda3        28G 1003M   27G    4% /

devtmpfs        483M     0  483M    0% /dev

tmpfs           493M     0  493M    0% /dev/shm

tmpfs           493M  6.7M  486M    2% /run

tmpfs           493M     0  493M    0% /sys/fs/cgroup

/dev/sda1       187M   97M   91M   52% /boot

tmpfs            99M     0   99M    0% /run/user/0


加了-h会根据磁盘大小,适当显示单位。

装机之前,我们分了几个区,分别是:/boot swap /


文件系统

tmpfs 临时文件系统 ,在此文件系统的挂载点里写入、编辑了文件进去,电脑重启之后,也会自动消失。

/dev/shm 内存,在内存里写东西,文件被写入/dev/shm里,这文件的处理速度会很快。大小,是物理内存的一半。

*一般tmpfs的文件不需要太关注,需要关注的是/dev/sda这种文件系统。


查看swap分区 

#free

              total        used        free      shared  buff/cache   available

Mem:        1008152      114560      762896        6856      130696      738944

Swap:       2097148           0     2097148

这里可以看到swap的分区容量是2G(当时装centos7的时候是1G,swap的分区是内存的2倍,所以这里设2G)


查看分区有多少个inode,以及inode的使用情况。

[[email protected] ~]# df -i

文件系统          Inode 已用(I)  可用(I) 已用(I)% 挂载点

/dev/sda3      14582272   26001 14556271       1% /

devtmpfs         123555     376   123179       1% /dev

tmpfs            126019       1   126018       1% /dev/shm

tmpfs            126019     447   125572       1% /run

tmpfs            126019      16   126003       1% /sys/fs/cgroup

/dev/sda1         97280     327    96953       1% /boot

tmpfs            126019       1   126018       1% /run/user/0


创建完分区之后,需要格式化分区。

inode有多少,是跟磁盘大小有关系。

只要inode的已用量打到100%,即使磁盘空间还有富裕的容量 也是写不进东西的



#df -h 以适当单位显示,常用

#df -m 以单位M显示




4.2 du命令


du命令 查看文件、目录大小

#du -sh /root 查看/root目录的大小

# du -sh /root

76K/root


# du -sh /etc/passwd查看passwd文件大小

4.0K/etc/passwd


# ls -lh /etc/passwd

-rw-r--r--. 1 root root 969 2月   7 18:18 /etc/passwd


*为什么同一个文件,du比ls的结果不同容量显示。

磁盘分区格式化,涉及到“块”,当文件<4kb的时候,这个文件也会显示4k,因为磁盘会划分成多个无数个小块,每个小块都是4kb,文件写入小块后,即使文件不够4k 也算是4k大小,占用一个块,一个块只有一个文件,不能多个文件占用一个块。所以 passwd的实际大小,以ls -lh的结果为准。


du一个目录 会把目录下面所有文件都列出来,不过不够仔细,不建议使用此方法。

# du /root

12/root/.ssh

76/root


常用的搭配是,#du -s ,#du -sh



4.3 磁盘分区(上)


日常工作中,常接触给一个系统增加一块磁盘,再划分分区,再挂载。


虚拟机添加硬盘

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片


#fdisk -l把目前系统里面有的磁盘给列出来。

# fdisk -l


磁盘 /dev/sda:32.2 GB, 32212254720 字节,62914560 个扇区

Units = 扇区 of 1 * 512 = 512 bytes

扇区大小(逻辑/物理):512 字节 / 512 字节

I/O 大小(最小/最佳):512 字节 / 512 字节

磁盘标签类型:dos

磁盘标识符:0x000ba6b3


   设备 Boot      Start         End      Blocks   Id  System

/dev/sda1   *        2048      391167      194560   83  Linux

/dev/sda2          391168     4585471     2097152   82  Linux swap / Solaris

/dev/sda3         4585472    62914559    29164544   83  Linux


发现没有识别到新磁盘,重启查看

#reboot 重启


识别到新硬盘

# fdisk -l


磁盘 /dev/sda:32.2 GB, 32212254720 字节,62914560 个扇区

Units = 扇区 of 1 * 512 = 512 bytes

扇区大小(逻辑/物理):512 字节 / 512 字节

I/O 大小(最小/最佳):512 字节 / 512 字节

磁盘标签类型:dos

磁盘标识符:0x000ba6b3


   设备 Boot      Start         End      Blocks   Id  System

/dev/sda1   *        2048      391167      194560   83  Linux

/dev/sda2          391168     4585471     2097152   82  Linux swap / Solaris

/dev/sda3         4585472    62914559    29164544   83  Linux


磁盘 /dev/sdb:10.7 GB, 10737418240 字节,20971520 个扇区

Units = 扇区 of 1 * 512 = 512 bytes

扇区大小(逻辑/物理):512 字节 / 512 字节

I/O 大小(最小/最佳):512 字节 / 512 字节


分区命令:#fdisk 磁盘

#fidisk /dev/sdb

欢迎使用 fdisk (util-linux 2.23.2)。


更改将停留在内存中,直到您决定将更改写入磁盘。

使用写入命令前请三思。


Device does not contain a recognized partition table

使用磁盘标识符 0x3e1c1a2f 创建新的 DOS 磁盘标签。


命令(输入 m 获取帮助):m

(常用:n=new p=print w=write+exit d=删除分区)

命令操作

   a   toggle a bootable flag

   b   edit bsd disklabel

   c   toggle the dos compatibility flag

   d   delete a partition

   g   create a new empty GPT partition table

   G   create an IRIX (SGI) partition table

   l   list known partition types

   m   print this menu

   n   add a new partition

   o   create a new empty DOS partition table

   p   print the partition table

   q   quit without saving changes

   s   create a new empty Sun disklabel

   t   change a partition's system id

   u   change display/entry units

   v   verify the partition table

   w   write table to disk and exit

   x   extra functionality (experts only)


p查看分区列表,下列结果为没有分区内容

命令(输入 m 获取帮助): p


磁盘 /dev/sdb:10.7 GB, 10737418240 字节,20971520 个扇区

Units = 扇区 of 1 * 512 = 512 bytes

扇区大小(逻辑/物理):512 字节 / 512 字节

I/O 大小(最小/最佳):512 字节 / 512 字节

磁盘标签类型:dos

磁盘标识符:0x3e1c1a2f


   设备 Boot      Start         End      Blocks   Id  System



输入n,建立分区,p为主分区,e为扩展分区。我们用的fdisk工具分区,用到了一个MBR分区格式,MBR最高支持2T,>2T不能使用fdisk去分区,这个分区最多只有4个主分区(primary),如果想划分多个分区怎么办。先划分3个主分区,剩下一个划分扩展分区(extended),然后再在扩展分区里继续划分逻辑分区。


命令(输入 m 获取帮助):n

Partition type:

   p   primary (0 primary, 0 extended, 4 free)

   e   extended

Select (default p): 


分区格式:主+扩展小于等于4。扩展分区可以为0。



主分区划分2G

命令(输入 m 获取帮助):n

Partition type:

   p   primary (0 primary, 0 extended, 4 free)

   e   extended

Select (default p): p

分区号 (1-4,默认 1):1

起始 扇区 (2048-20971519,默认为 2048):2048

Last 扇区, +扇区 or +size{K,M,G} (2048-20971519,默认为 20971519):+2G

分区 1 已设置为 Linux 类型,大小设为 2 GiB


P检查一下分区表,多了个分区。


命令(输入 m 获取帮助):p


磁盘 /dev/sdb:10.7 GB, 10737418240 字节,20971520 个扇区

Units = 扇区 of 1 * 512 = 512 bytes

扇区大小(逻辑/物理):512 字节 / 512 字节

I/O 大小(最小/最佳):512 字节 / 512 字节

磁盘标签类型:dos

磁盘标识符:0x10adc22a


   设备 Boot      Start         End      Blocks   Id  System

/dev/sdb1            2048     4196351     2097152   83  Linux


建立了3个主分区,此处省去步骤,p查看分区表


命令(输入 m 获取帮助):p


磁盘 /dev/sdb:10.7 GB, 10737418240 字节,20971520 个扇区

Units = 扇区 of 1 * 512 = 512 bytes

扇区大小(逻辑/物理):512 字节 / 512 字节

I/O 大小(最小/最佳):512 字节 / 512 字节

磁盘标签类型:dos

磁盘标识符:0x10adc22a


   设备 Boot      Start         End      Blocks   Id  System

/dev/sdb1            2048     4196351     2097152   83  Linux

/dev/sdb2         4196352     8390655     2097152   83  Linux

/dev/sdb3         8390656    10487807     1048576   83  Linux


建立新分区,只有1个空闲分区,要么分e要么分p,如果分p的话,下一次会提示没有多余的分区可以分。

命令(输入 m 获取帮助):n

命令(输入 m 获取帮助):n

Partition type:

   p   primary (3 primary, 0 extended, 1 free)

   e   extended

Select (default e): p

已选择分区 4

起始 扇区 (10487808-20971519,默认为 10487808):

将使用默认值 10487808

Last 扇区, +扇区 or +size{K,M,G} (10487808-20971519,默认为 20971519):+1G

分区 4 已设置为 Linux 类型,大小设为 1 GiB


命令(输入 m 获取帮助):n

If you want to create more than four partitions, you must replace a

primary partition with an extended partition first.


删除一个p分区,建立一个e分区,4号分区从p改成e

命令(输入 m 获取帮助):n

Partition type:

   p   primary (3 primary, 0 extended, 1 free)

   e   extended

Select (default e): e

已选择分区 4

起始 扇区 (10487808-20971519,默认为 10487808):

将使用默认值 10487808

Last 扇区, +扇区 or +size{K,M,G} (10487808-20971519,默认为 20971519):+4G

分区 4 已设置为 Extended 类型,大小设为 4 GiB


命令(输入 m 获取帮助):p


磁盘 /dev/sdb:10.7 GB, 10737418240 字节,20971520 个扇区

Units = 扇区 of 1 * 512 = 512 bytes

扇区大小(逻辑/物理):512 字节 / 512 字节

I/O 大小(最小/最佳):512 字节 / 512 字节

磁盘标签类型:dos

磁盘标识符:0x10adc22a


   设备 Boot      Start         End      Blocks   Id  System

/dev/sdb1            2048     4196351     2097152   83  Linux

/dev/sdb2         4196352     8390655     2097152   83  Linux

/dev/sdb3         8390656    10487807     1048576   83  Linux

/dev/sdb4        10487808    18876415     4194304    5  Extended


blocks是容量 

id号,分区类型:83是linux,5扩展分区。


再次创建新分区,会提示直接进入划分逻辑分区,


命令(输入 m 获取帮助):n

All primary partitions are in use

添加逻辑分区 5

起始 扇区 (10489856-18876415,默认为 10489856):

将使用默认值 10489856

Last 扇区, +扇区 or +size{K,M,G} (10489856-18876415,默认为 18876415):+1G

分区 5 已设置为 Linux 类型,大小设为 1 GiB


命令(输入 m 获取帮助):p


磁盘 /dev/sdb:10.7 GB, 10737418240 字节,20971520 个扇区

Units = 扇区 of 1 * 512 = 512 bytes

扇区大小(逻辑/物理):512 字节 / 512 字节

I/O 大小(最小/最佳):512 字节 / 512 字节

磁盘标签类型:dos

磁盘标识符:0x10adc22a


   设备 Boot      Start         End      Blocks   Id  System

/dev/sdb1            2048     4196351     2097152   83  Linux

/dev/sdb2         4196352     8390655     2097152   83  Linux

/dev/sdb3         8390656    10487807     1048576   83  Linux

/dev/sdb4        10487808    18876415     4194304    5  Extended

/dev/sdb5        10489856    12587007     1048576   83  Linux


再次建立逻辑分区


   设备 Boot      Start         End      Blocks   Id  System

/dev/sdb1            2048     4196351     2097152   83  Linux

/dev/sdb2         4196352     8390655     2097152   83  Linux

/dev/sdb3         8390656    10487807     1048576   83  Linux

/dev/sdb4        10487808    18876415     4194304    5  Extended

/dev/sdb5        10489856    12587007     1048576   83  Linux

/dev/sdb6        12589056    14686207     1048576   83  Linux



4.4 磁盘分区(下)


/dev/sdb1 的1 代表分区号

删除1号分区

命令(输入 m 获取帮助):p


磁盘 /dev/sdb:10.7 GB, 10737418240 字节,20971520 个扇区


   设备 Boot      Start         End      Blocks   Id  System

/dev/sdb1            2048     4196351     2097152   83  Linux

/dev/sdb2         4196352     8390655     2097152   83  Linux

/dev/sdb3         8390656    10487807     1048576   83  Linux

/dev/sdb4        10487808    18876415     4194304    5  Extended

/dev/sdb5        10489856    12587007     1048576   83  Linux

/dev/sdb6        12589056    14686207     1048576   83  Linux


命令(输入 m 获取帮助):d

分区号 (1-6,默认 6):1

分区 1 已删除


命令(输入 m 获取帮助):p


磁盘 /dev/sdb:10.7 GB, 10737418240 字节,20971520 个扇区



   设备 Boot      Start         End      Blocks   Id  System

/dev/sdb2         4196352     8390655     2097152   83  Linux

/dev/sdb3         8390656    10487807     1048576   83  Linux

/dev/sdb4        10487808    18876415     4194304    5  Extended

/dev/sdb5        10489856    12587007     1048576   83  Linux

/dev/sdb6        12589056    14686207     1048576   83  Linux


主分区sdb1被删除后,发现 分区表是从主分区sdb2开始


下面 再删除一个5号分区,查看变化,发现5号被删除了 ,不过少了6号,其实分区号是从后面递减上来了,也就是说,删除之前的5号跟删除后的5号是不一样,可以从start end看出。


命令(输入 m 获取帮助):d

分区号 (2-6,默认 6):5

分区 5 已删除


命令(输入 m 获取帮助):p


磁盘 /dev/sdb:10.7 GB, 10737418240 字节,20971520 个扇区



   设备 Boot      Start         End      Blocks   Id  System

/dev/sdb2         4196352     8390655     2097152   83  Linux

/dev/sdb3         8390656    10487807     1048576   83  Linux

/dev/sdb4        10487808    18876415     4194304    5  Extended

/dev/sdb5        12589056    14686207     1048576   83  Linux



取消刚才的操作,原意就是不保存,q退出。


分一个扩展分区,3G。此处发现,多了一个逻辑分区选项,其实是首先建立了扩展分区,所以有此项。



   设备 Boot      Start         End      Blocks   Id  System

/dev/sdb1            2048     6293503     3145728    5  Extended


命令(输入 m 获取帮助):n

Partition type:

   p   primary (0 primary, 1 extended, 3 free)

   l   logical (numbered from 5)


n主分区 3号 1G。

   设备 Boot      Start         End      Blocks   Id  System

/dev/sdb1            2048     6293503     3145728    5  Extended

/dev/sdb3         6293504     8390655     1048576   83  Linux


n逻辑分区5号 1G

   设备 Boot      Start         End      Blocks   Id  System

/dev/sdb1            2048     6293503     3145728    5  Extended

/dev/sdb3         6293504     8390655     1048576   83  Linux

/dev/sdb5            4096     2101247     1048576   83  Linux


逻辑分区 6 7 8 +100M 

   设备 Boot      Start         End      Blocks   Id  System

/dev/sdb1            2048     6293503     3145728    5  Extended

/dev/sdb3         6293504     8390655     1048576   83  Linux

/dev/sdb5            4096     2101247     1048576   83  Linux


把6号删掉,少了8。(逻辑分区是连续顺序排序,但是主分区跟扩展分区可以不连续排序)

   设备 Boot      Start         End      Blocks   Id  System

/dev/sdb1            2048     6293503     3145728    5  Extended

/dev/sdb3         6293504     8390655     1048576   83  Linux

/dev/sdb5            4096     2101247     1048576   83  Linux

/dev/sdb6         2310144     2514943      102400   83  Linux

/dev/sdb7         2516992     2721791      102400   83  Linux



总结:

主分区+扩展分区小于等于4

逻辑分区,从第5个开始,而且是连续排序


以上是关于三周第四次课(2月8日)的主要内容,如果未能解决你的问题,请参考以下文章

Linux学习笔记第三周第四次课(2月8日)

三周第四次课(12月28日)

Linux20180416三周第四次课(4月9日)

五周第四次课(3月8日)

五周第四次课(3月8日)

Linux20180423五周第四次课(4月23日)