【Linux学习笔记09】第九章 文件系统管理

13 篇文章 5 订阅

9.1 回顾分区和文件系统

  1. 分区类型
  • 主分区:总共最多只能分四个

  • 扩展分区:只能有一个,也算作主分区的一种,也就是说主分区加扩展分区最多有四个。但是扩展分区不能存储数据和格式化,必须再划分成逻辑分区才能使用。

  • 逻辑分区:逻辑分区是在扩展分区中划分的,如果是IDE硬盘,Linux最多支持59个逻辑分区,如果是SCSI硬盘Linux最多支持11个逻辑分区

  1. 分区表示方法

img

img

img

img

  1. 文件系统
  • ext2:是ext文件系统的升级版本,Red Hat Linux7.2版本以前的系统默认都是ext2 文件系统。1993年发布,最大支持16TB 的分区和最大2TB的文件(1TB=1024GB=1024*1024KB)

  • ext3: ext3文件系统是ext2文件系统的升级版本,最大的区别就是带日志功能,以在系统突然停止时提高文件系统的可靠性。支持最大16TB的分区和最大2TB的文件

  • ext4:它是ext3文件系统的升级版。ext4 在性能、伸缩性和可靠性方面进行了大量改进。EXT4 的变化可以说是翻天覆地的,比如向下兼容EXT3、最大1EB文件系统和16TB文件、无限数量子目录、Extents连续数据块概念、多块分配、延迟分配、持久预分配、快速FSCK、日志校验、无日志模式、在线碎片整理、inode增强、默认启用barrier等。是CentOS 6.3的默认文件系统 (1EB=1024PB=1024*1024TB)

9.2 文件系统常用命令

9.2.1 df命令、du命令、fsck命令和dump2fs命令

1.文件系统查看命令df

[root@localhost ~]# df [选项] [挂载点]

选项:

-a 显示所有的文件系统信息,包括特殊文件系统,如 /proc、/sysfs

-h 使用习惯单位显示容量,如KB,MB或GB等

-T 显示文件系统类型

-m 以MB为单位显示容量

-k 以KB为单位显示容量。默认就是以KB为单位

2.统计目录或文件大小

[root@localhost ~]# du [选项] [目录或文件名]

选项:

-a 显示每个子文件的磁盘占用量。默认只统计 子目录的磁盘占用量

-h 使用习惯单位显示磁盘占用量,如KB,MB 或GB等

-s 统计总占用量,而不列出子目录和子文件的 占用量

du命令和df命令的区别
  • df命令是从文件系统考虑的,不光要考虑文件占用的空间,还要统计被命令或程序占用的空间(最常见的就是文件已经删除,但是程序并没有释放空间)
  • du命令是面向文件的,只会计算文件或目录占用的空间

img

启发:

  • 服务器定期进行重启
  • linux容错率高
3.文件系统修复命令fsck

[root@localhost ~]# fsck [选项] 分区设备文件名 选项: -a: 不用显示用户提示,自动修复文件系统 -y: 自动修复。和-a作用一致,不过有些文件系统只支 持-y

4.显示磁盘状态命令dumpe2fs

[root@localhost ~]# dumpe2fs 分区设备文件名

dumpe2fs命令为ext文件系统家族的命令,我的系统为CentOS7,文件系统为XFSXFS默认支持ACL。可以使用 xfs_info /dev/xxx查看’XFS`文件系统信息。

  • 分区就是把大柜子变成小柜子
  • 格式化就是将小柜子打隔断,通常就是bcoke块4kb,磁盘碎片就是清理

9.2.2 挂载命令

1.查询与自动挂载

[root@localhost ~]# mount [-l]

#查询系统中已经挂载的设备,-l会显示卷标名称

[root@localhost ~]# mount –a

#依据配置文件/etc/fstab的内容,自动挂载

2.挂载命令格式

[root@localhost ~]# mount [-t 文件系统] [-L 卷标名] \

[-o 特殊选项] 设备文件名 挂载点

选项:

-t 文件系统:加入文件系统类型来指定挂载的类型,可以ext3、ext4、iso9660等文件系统

-L 卷标名: 挂载指定卷标的分区,而不是安装设备文件名挂载

-o 特殊选项:可以指定挂载的额外选项

img

home下使用noexec权限那么即使是root用户也无法执行

[root@localhost ~]# mount -o remount,noexec /home

#重新挂载/boot分区,并使用noexec权限

[root@localhost sh]# cd /home

[root@localhost boot]# vi hello.sh

[root@localhost boot]# chmod 755 hello.sh

[root@localhost boot]# ./hello.sh

[root@localhost boot]# mount -o remount,exec /home

#记得改回来啊,要不会影响系统启动的

  • 一般不需要修改,默认即可
  • 需要修改的特殊情况如:home目录若允许其他人同步上传,就需要控制挂载权限,否则有并不

9.2.3 挂载光盘与U盘

1.挂载光盘

[root@localhost ~]# mkdir /mnt/cdrom/

#建立挂载点

[root@localhost ~]# mount -t iso9660 /dev/cdrom /mnt/cdrom/

#挂载光盘

[root@localhost ~]# mount /dev/sr0 /mnt/cdrom/

2.卸载命令

[root@localhost ~]# umount 设备文件名或挂载点

[root@localhost ~]# umount /mnt/cdrom

3.挂载U盘

[root@localhost ~]# fdisk –l

#查看U盘设备文件名

[root@localhost ~]# mount -t vfat /dev/sdb1 /mnt/usb/

注意:Linux默认是不支持NTFS文件系统的

9.2.4 支持NTFS文件系统

1.下载NTFS-3G插件

http://www.tuxera.com/community/ntfs-3g- download/

2.安装NTFS-3G

[root@localhost ~]# tar -zxvf ntfs-3g_ntfsprogs-2013.1.13.tgz

#解压

[root@localhost ~]# cd ntfs-3g_ntfsprogs-2013.1.13

#进入解压目录

[root@localhost ntfs-3g_ntfsprogs-2013.1.13]# ./configure

#编译器准备。没有指定安装目录,安装到默认位置中

[root@localhost ntfs-3g_ntfsprogs-2013.1.13]# make

#编译

[root@localhost ntfs-3g_ntfsprogs-2013.1.13]# make install

#编译安装

3.使用 [root@localhost ~]# mount -t ntfs-3g 分区设备文件名 挂载点

9.3 fdisk分区

(本节没看只是ppt内容照搬过来)

9.3.1 fdisk命令分区过程

1、添加新硬盘

img

2、查看新硬盘

[root@localhost ~]# fdisk -l

3、使用fdisk命令分区

[root@localhost ~]# fdisk /dev/sdb

img

4.重新读取分区表信息

[root@localhost ~]# partprobe

5. 格式化分区

[root@localhost ~]# mkfs -t ext4 /dev/sdb1

6.建立挂载点并挂载

[root@localhost ~]# mkdir /disk1

[root@localhost ~]# mount /dev/sdb1 /disk1/

9.3.2 分区自动挂载与fstab文件修复

1./etc/fstab文件
  • 第一字段:分区设备文件名或UUID(硬盘通用唯一识别码)

  • 第二字段:挂载点

  • 第三字段:文件系统名称

  • 第四字段:挂载参数

  • 第五字段:指定分区是否被dump备份,0代表不备份,1 代表每天备份,2代表不定期备份

  • 第六字段:指定分区是否被fsck检测,0代表不检测,其他数字代表检测的优先级,那么当然1的优先级比2高

2.分区自动挂载 [root@localhost ~]# vi /etc/fstab

…省略部分输出…

/dev/sdb5 /disk5 ext4 defaults 1 2

3./etc/fstab文件修复 [root@localhost ~]# mount -o remount,rw /

9.4 分配swap分区

1.新建swap分区

[root@localhost ~]# fdisk /dev/sdb

别忘记把分区ID改为82

  • 注意:sdb不需要加任何东西

2.格式化

[root@localhost ~]# mkswap /dev/sdb1

3.加入swap分区

[root@localhost ~]# swapon /dev/sdb1

#加入swap分区

[root@localhost ~]# swapoff /dev/sdb1

#取消swap分区

4.swap分区开机自动挂载

[root@localhost ~]# vi /etc/fstab

/dev/sdb1 swap swap defaults 0 0

5.free命令

[root@localhost ~]# free

#查看内存与swap分区使用状况

  • cached(缓存):是指把读取出来的数据保存在内存当中,当再次读取时,不用读取硬盘而直接从内存当中读取,加速了数据的读取过程
  • buffer(缓冲):是指在写入数据时,先把分散的写入操作保存到内存当中,当达到一定程度再集中写入硬盘,减少了磁盘碎片和硬盘的反复寻道,加速了数据的写入过程
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

是我,Zack

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值