linux文件系统管理命令

网友投稿 542 2022-05-28

1、回顾分区和文件系统

1.1 分区类型

主分区:总共最多只能分4个

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

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

1.2 分区表示法

分区的设备文件名

主分区1        /dev/sda1

主分区2        /dev/sda2

主分区3        /dev/sda3

扩展分区       /dev/sda4

逻辑分区1     /dev/sda5

逻辑分区2     /dev/sda6

逻辑分区3     /dev/sda7

分区的设备文件名

主分区1        /dev/sda1

扩展分区       /dev/sda2

逻辑分区1     /dev/sda5

逻辑分区2     /dev/sda6

逻辑分区3     /dev/sda7

1.3 文件系统

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

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

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

2、文件系统常用命令

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

2.1.1 文件系统查看命令df

$ df -ahTmk 挂载点

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

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

-T    显示文件系统类型

-m   以MB为单位显示容量

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

2.1.2 统计目录和文件大小

$ du -ahs 目录或文件名

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

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

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

2.1.3 du命令和df明林的区别

df命令是从文件系统考虑的,不光要考虑文件占用的空间,还要统计被命令或程序占用的空间(最常见的就是文件已经产出,但程序并没有释放空间)

du命令是面向文件的,只会计算文件或目录占用的空间

2.1.4 文件系统修复命令fsck

$ fsck -ay 分区设备文件名

-a    不用显示用户提示,自动修复文件系统

-y    自动修复。和-a作用抑制,不过有些文件系统只支持-y

2.1.5 显示磁盘状态命令dumpe2fs

$ dumpe2fs 分区设备文件名

2.2 挂载命令

2.2.1 查询与自动挂载

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

$ mount -a             依据配置文件 /etc/fstab的内容,自动挂载

2.2.2 挂载命令格式

$ mount [-t 文件系统] [-L 卷标名] [-o 特殊选项]设备文件名 挂载点

-t 文件系统          加入文件系统类型来制定挂载的类型,可以ext3(硬盘)、ext4(硬盘)、iso9660(光驱)等文件系统

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

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

mount -o 特殊选项            下面列出常用mount特殊选项

atime/noatime        更新访问时间/不更新访问时间。访问分区文件时,是否更新文件的访问时间,默认为更新

async/sync             异步/同步,默认为异步

auto/noauto            自动/手动,mount -a命令执行时,是否会自动安装/etc/fstab文件内容挂载,默认为自动

defaults                 定义默认值,相当于rw, suid, dev, exec, auto, nouser, async这七个选项

exec/noexec           执行/不执行,设定是否允许在文件系统中执行可执行文件,默认是exec允许

remount               重新挂载已经挂载的文件系统,一般用于指定修改特殊权限

rw/ro                    读写/只读,文件系统挂载时,是否具有读写权限,默认是rw

suid/nosuid            具有/不具有SUID权限,设定文件系统是否具有SUID和SGID的权限,默认是具有

user/nouser            允许/不允许普通用户挂载,设定文件系统是否允许普通用户挂载,默认是不允许,只有root可以挂载分区

usrquota                写入代表文件系统支持用户磁盘配额,默认不支持

grpquota                写入代表文件系统支持组磁盘配额,默认不支持

$ mount -o remount,noexec /home                     重新挂载/boot分区,并使用noexec权限

$ cd /home

$ vi hello.sh

$ chmod 755 hello.sh

$ ./hello.sh

$ mount -o remount,exec /home                  记得改回来哈,要不然会影响系统启动的

2.3 挂载光盘与U盘

2.3.1 挂载光盘

$ mkdir /mnt/cdrom                                         建立挂载点

$ mount -t iso9660 /dev/cdrom /mnt/cdrom         挂载光盘

$ mount /dev/sr0 /mnt/cdrom                             同前一命令

2.3.2 卸载命令

$ umount 设备文件名或挂载点                       光盘、U盘等介质,需要先卸载载拔除

$ umount /mnt/cdrom

2.3.3 挂载U盘

$ fdisk -l                                                  查看U盘设备文件名

$ mount -t vfat /dev/sdb1 /mnt/usb/             挂载U盘

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

2.4 支持NTFS文件系统

2.4.1 下载NTFS-3G插件

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

2.4.2安装NTFS-3G

$ tar -zxvf ntfs-3g_ntfsprogs-2013.1.13.tgz         解压

$ cd ntfs-3g_ntfsprogs-2013.1.13                       进入解压目录

$ ./configure                                                    编译器准备。未指定安装目录,安装到默认位置

$ make                                                            编译

$ make install                                                  编译安装

2.4.3 使用

$ fdisk -l                                                         查看NTFS格式硬盘文件名

$ mount -t ntfs-3g 分区设备文件名 挂载点      挂载NTFS硬盘

3、fdisk分区

3.1 fdisk命令分区过程

3.1.1 添加新硬盘

3.1.2 查看新硬盘

$ fdisk -l

3.1.3 使用fdisk命令分区

$ fdisk /dev/sdb/

fdisk交互指令说明

a      设置可引导标记

b     编辑bsd磁盘标签

c      设置DOS操作系统兼容标记

d     删除一个分区

l      显示已知的文件系统类型。82为Linux swap分区,83为linux分区

m    显示帮主菜单

n     新建分区

o     建立空白DOS分区表

p     显示分区列表

q     不保存退出

s      新建空白SUN磁盘标签

t      改变一个分区的系统ID

u     改变现实记录单位

v     验证分区表

w     保存退出

x     附加功能

3.1.4 重新读取分区表信息

$ partprobe

3.1.5 格式化分区

$ mkfs -t ext4 /dev/sdb1               只有主分区和逻辑分区可以被格式化,扩展分区不行

3.1.6 建立挂载点并挂载

$ mkdir /disk1

$ mount /dev/sdb1 /disk1/

3.2 分区自动挂载与fstab修复

3.2.1 /etc/fstab 文件

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

第2字段:挂载点

第3字段:文件系统名称

第4字段:挂载参数

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

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

3.2.2 分区自动挂载

$ vi /etc/fstab

/dev/sdb1        /disk1             ext4        defaults          1 2

$ mount -a             依据配置文件/etc/fstab的内容,自动挂载

3.2.3 /etc/fstab文件修复

linux文件系统管理命令

$ mount -o remount,rw /

4. 分配swap分区

4.1 free命令

$ free             查看内存与swap分区使用情况

cached(缓存)是指把读取出来的数据保存在内存当中,当再次读取时,不用读取硬盘而直接从内存当中读取,加快了数据的读取过程

buffer(缓冲)是指在写入数据是,先把分散的写入操作保存到内存当中,当达到一定程度再集中写入硬盘,减少了磁盘碎片内核硬盘的反复寻到,加速了数据的写入过程。

4.2 新建swap分区

$ fdisk /dev/sdb             别忘记把分区ID改为82

4.3 格式化

$ mkswap /dev/sdb6

4.4 加入swap分区

$ swapon /dev/sdb6       加入swap分区

$ swapoff /dev/sdb6       取消swap分区

4.5 swap分区开机自动挂载

$ vi /etc/fstab

/dev/sdb6        swap       swap      defaults          0 0

Linux

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:10.4 Linux df用法详解:查看文件系统硬盘使用情况
下一篇:池桌面配置用户目录漫(hexie)游——后篇:配置AD支持用户目录共(man)享(you)
相关文章