Linux 创建文件系统及挂载文件系统流程详解
- 格式:doc
- 大小:86.50 KB
- 文档页数:10
linux建立和使用文件系统的步骤
在Linux上建立和使用文件系统的步骤如下:
1. 检查磁盘分区:使用命令fdisk -l或者lsblk来查看系统上的
磁盘分区信息。
2. 创建文件系统:选择一个分区来创建文件系统。
常用的文件系统包括ext4、btrfs、xfs等。
例如,使用命令mkfs.ext4
/dev/sda1来在/dev/sda1分区上创建ext4文件系统。
3. 挂载文件系统:将新创建的文件系统挂载到一个目录上,使得文件系统可以在该目录下访问。
例如,使用命令mount
/dev/sda1 /mnt来将/dev/sda1分区挂载到/mnt目录上。
4. 自动挂载文件系统:如果想要每次开机都自动挂载文件系统,可以编辑/etc/fstab文件,将文件系统的挂载信息添加到其中。
5. 使用文件系统:在文件系统挂载后,可以使用cd命令切换
到挂载点目录下,进行文件的读写等操作。
6. 卸载文件系统:如果要卸载文件系统,可以使用umount命令。
例如,使用umount /mnt来卸载/mnt目录下的文件系统。
以上是建立和使用文件系统的基本步骤,具体操作可以根据实际需要进行调整。
linux磁盘管理三部曲——(3)mount挂载,etcfstab配置⽂件当我们分完区,并做好⽂件系统格式化,就到了最后的挂载mount了,挂载完毕就可以使⽤磁盘设备了。
⼀、什么是挂载,卸载任何块设备都不能直接访问,需挂载在⽬录上访问挂载: 将额外⽂件系统与根⽂件系统某现存的⽬录建⽴起关联关系,进⽽使得此⽬录做为其它⽂件访问⼊⼝的⾏为(挂载的设备必须有⽂件系统)卸载:为解除此关联关系的过程mount [-选项] DEVICE(设备) MOUNT_POINT(挂载点)(1)device :指明要挂载的设备 ①设备⽂件:例如/dev/sda5 ②卷标:-L 'LABEL', 如例如 -L mage ③ UUID, -U 'UUID'(2)挂载点下原有⽂件在挂载完成后会被临时隐藏 若事先存在:建议使⽤空⽬录,进程正在使⽤中的设备⽆法被卸载(3)/etc/mtab:⽂件显⽰当前已挂载的所有设备(在centos 7中,是/proc/mounts的软连接,查看结果⼀样,centos 6中,ASCII text,查询结果和/proc/mounts不⼀样)⼆、mount:挂载常⽤命令选项(下⾯有具体的⽤法⽰例)1、查看挂载情况① findmnt 查看所有设备挂载情况(树状结构显⽰) findmnt 设备查看单个设备的挂载情况② mount :查看所有设备挂载情况③ cat /proc/mounts:查看内核追踪到的已挂载的所有设备2、mount 语法mount -选项设备挂载点 -t:vsftype :指定要挂载的设备上的⽂件系统类型(不常⽤,不加-t默认⾃带⾃⼰的⽂件系统类型),有时,系统报错提⽰,没指定⽂件系统类型,-t指定后,仍然有错。
(注释1) -r:readonly ,只读挂载,不能进⾏其他操作,和权限⽆关,介质只能读,多⽤于冷备份。
在mount 查询时时显⽰ ro -w:read and write, 读写挂载(defaults默认) -n:隐藏挂载信息不显⽰,但在/proc/mounts可以查到,卸载只能 umount /app/sdb2(挂载点) -a:⾃动挂载/etc/fstab⽂件没有挂载的设备( 定义在了/etc/fstab⽂件中,且挂载选项中有auto 功能,默认中包括) ,不看已挂载过的设备,如果在/etc/fstab ⾥挂载过的设备修改了设置,不刷新;如果想刷新修改过已挂载的设备,mount -o remount /dev/sdX(挂载点) -L 'LABEL':以卷标指定挂载设备 -U 'UUID':以UUID 指定要挂载的设备 -B --bind:绑定⽬录到另⼀个⽬录上,例: mount -B /var/ftp/pub /app/apache /app/apache就是显⽰ /var/ftp/pub⽬录的东西 -o options:( 挂载⽂件系统的选项) ,多个选项使⽤逗号分隔 async(defaults),sync 异步,同步,内存更改时,同时写磁盘(可以⽤于重要数据) atime(defaults),noatime 是否在读访问时更新atime diratime(defaults),nodiratime ⽬录的访问时间戳 auto(defaults)/noauto 写在/etc/fstab当中的分区,是否在mount -a时被挂载 exec(defatuls)/noexec 在该分区所挂载的⽬录中的脚本是否可以执⾏。
Linux 创建文件系统及挂载文件系统流程详解摘要:本文对新增硬盘,切割硬盘,创建硬盘分区,为硬盘分区创建文件系统,以及加载文件系统的流程做总结性论述;主要是为初学者弄清楚这一操作过程;本文涉及fdisk、mkfs、mount ... ... 等工具;对/etc/fstab 进行了解说;还有磁盘扫描工具fsck 等介绍;++++++++++++++++++++++++++++++++++++++++++++++++++++++正文++++++++++++++++++++++++++++++++++++++++++++++++++++++阅读此文,必须具备知识点:《Linux 查看磁盘分区、文件系统、使用情况的命令和相关工具介绍》《实例解说fdisk 使用方法》《合理规划您的硬盘分区》《Fedora / Redhat 软件包管理指南》如果您想加载一个分区(文件系统),首先您得确认文件系统的类型,然后才能挂载使用,比如通过mount 加载,或者通过修改/etc/fstab来开机自动加载;如果您想添加一个新的分区,或者增加一个新的硬盘,您要通过分区工具来添加分区,然后要创建分区的文件系统,然后才是挂载文件系统;比如通过mount 加载,或者通过修改/etc/fstab来开机自动加载;本文总有一部份是您想要的;比如在新的分区上创建文件系统,如何挂载;如何卸载文件系统或者设备(比如cdrom )等;我建您最好通读本文,然后根据自己的需要再做选择性实践;Linux的一个小问题涉及的很多方面的知识,有时一篇文档是难以说清楚;我为了尽可能详细解说每一个过程,所以把分区工具、创建文件系统工具、查看文件系统的工具分开来说,主要是让初学者比较容易理解。
希望您能理解本人的用心;传说北南长的比较丑,但心的还是善良的 ... ...我是不会用一些垃圾文档来害您 ... ... 哈哈 ... ... 言归正传,开文~~~~一、对存储设备的分区;我们这里所指的存储设备主要是本地硬盘、移动硬盘(比如USB 和1394接口的硬盘);由于磁盘很大并且为了满足我们各种需要,所以把硬盘分成若干个分区;比如我们可以用这个分区来安装Linux系统,那个分区用来安装Windows系统... ... ;这点小事大家都明白;至于如何在Linux中进行硬盘分区操作,我们推荐您用fdisk ,目前看来也是最好用的分区工具;其它工具比如parted 和cfdisk在某一方面有点优点,但这些优点可能为大家带来一些方便,比如parted中的数据备份功能,这个功能对老手来说可能是优点,但对新手来说,的确是有风险的;所以我们还是推荐您用fdisk 分区工具;fdisk 的使用说明:请参考:《实例解说fdisk 使用方法》二、存储设备进行格式化,即建立文件系统的过程;1、文件系统的一点介绍我们对存储设备分区还是远远不够的,我们还要对这些新增分区进行格式化;一个分区只有建立了某种文件系统后,这个分区才能使用;建立文件系统过程,就是用相应格式化工具格式化分区的过程,这个过程和我们在Windows中格式化某个分区为NTFS分区类似;没有什么高深的内容,只是所用的工具不一样罢了;在Linux操作系统中,目前几乎支持目前主流的文件系统,比如NTFS(只读)、FAT(可读可写)、ext2、ext3、reiserfs、hfs (MAC 操作系统的文件系统)、swap 交换分区... ... 还有一些咱们不熟悉的操作系统的文件系统等;在Linux中,我们常用的文件系统无非是上面例出的这些;如果您新增了一个硬盘,可能想格式化成Linux的文件系统,最佳选择是reiserfs 或ext3;目前ext2已被ext3取代;我们不推荐用ext2文件系统,ext2的使用风险比较大;速度最快的文件系统,当属reiserfs;reiserfs 还有很多优点,比如更安全;ext3是Redhat认为最好的文件系统,所以在Fedora 4.0在安装时,特地为reiserfs 的选择弄出点麻烦;相对来说reiserfs还是比ext3要优秀;如果想深入学习文件系统的,您可以到官方论坛找相应的资料,最好是实践实践;2、格式化工具介绍和使用;以fedora 4.0为例,我们常用的工具mkfs mkfs.ext3 mkfs.reiserfs mkfs.ext2 mkfs.msdos mkfs.vfat mkswap 提示:如果您不能创建reiserfs 文件系统,也就是说没有mkfs.reiserfs 或者mkreiserfs 命令,是您没有安装reiserfs-utils工具包,请参考:《让Fedora 支持创建reiserfs 文件系统,以及创建reiserfs 文件系统的一点说明》1)mkfs的使用;使用方法:[root@localhost beinan]# mkfs -t 文件系统存储设备注:这里的文件系统是要指定的,比如ext3 ;reiserfs ;ext2 ;fat32 ;msdos 等... ...设备比如是一个硬盘的分区,软盘,光驱等.. ... 在格式化分区之前,您得懂得如何查看硬盘分区情况,并有针对性的格式化;比如用fdisk -l 来查看;请参考:《Linux 查看磁盘分区、文件系统、使用情况的命令和相关工具介绍》比如我想格式化一个移动U盘中的一个分区;全景应该是:[root@localhost beinan]# fdisk -lDisk /dev/hda: 80.0 GB, 80026361856 bytes255 heads, 63 sectors/track, 9729 cylindersUnits = cylinders of 16065 * 512 = 8225280 bytesDevice Boot Start End Blocks Id System/dev/hda1 * 1 765 6144831 7 HPFS/NTFS/dev/hda2 766 2805 16386300 c W95 FAT32 (LBA)/dev/hda3 2806 9729 55617030 5 Extended/dev/hda5 2806 3825 8193118+ 83 Linux/dev/hda6 3826 5100 10241406 83 Linux/dev/hda7 5101 5198 787153+ 82 Linux swap / Solaris/dev/hda8 5199 6657 11719386 83 Linux/dev/hda9 6658 7751 8787523+ 83 Linux/dev/hda10 7752 9729 15888253+ 83 LinuxDisk /dev/sda: 1035 MB, 1035730944 bytes256 heads, 63 sectors/track, 125 cylindersUnits = cylinders of 16128 * 512 = 8257536 bytesDevice Boot Start End Blocks Id System/dev/sda1 1 25 201568+ 83 Linux/dev/sda2 26 125 806400 5 Extended/dev/sda5 26 50 201568+ 83 Linux/dev/sda6 51 76 200781 83 Linux我们可以看到有sda这个设备,所以可以用fdisk -l /dev/sda专门来显示他的分区情况;比如我想格式化/dev/sda6 分区为ext3文件系统,则为:[root@localhost beinan]# mkfs -t ext3 /dev/sda6mke2fs 1.37 (21-Mar-2005)Filesystem label=OS type: LinuxBlock size=1024 (log=0)Fragment size=1024 (log=0)50200 inodes, 200780 blocks10039 blocks (5.00%) reserved for the super userFirst data block=1Maximum filesystem blocks=6737100825 block groups8192 blocks per group, 8192 fragments per group2008 inodes per groupSuperblock backups stored on blocks:8193, 24577, 40961, 57345, 73729Writing inode tables: doneCreating journal (4096 blocks): doneWriting superblocks and filesystem accounting information: 注:在这里直接回车;doneThis filesystem will be automatically checked every 26 mounts or180 days, whichever comes first. Use tune2fs -c or -i to override.这样就格式化好了,sda6现在就是ext3文件系统了;我们就可以用mount 加载这个分区,然后使用这个文件系统;[root@localhost beinan]# mkdir /mnt/sda6[root@localhost beinan]# chmod 777 /mnt/sda6[root@localhost beinan]# mount /dev/sda6 /mnt/sda6当然您也可以把分区格式化成其它的文件系统;比如我们把/dev/sda6格式化为ext3 、ext2、reiserfs、fat32、msdos 文件系统,命令格式如下;[root@localhost beinan]# mkfs -t ext3 /dev/sda6[root@localhost beinan]# mkfs -t ext2 /dev/sda6[root@localhost beinan]# mkfs -t reiserfs /dev/sda6[root@localhost beinan]# mkfs -t fat32 /dev/sda6[root@localhost beinan]# mkfs -t msdos /dev/sda6... ...2)mkfs.ext3 mkfs.reiserfs mkfs.ext2 mkfs.msdos mkfs.vfat mke2fs 的介绍;我们先说了一个mkfs 工具后,我们再来介绍mkfs.ext3 mkfs.reiserfs mkfs.ext2 mkdosfs mkfs.msdos mkfs.vfat ,其实mkfs 在执行的命令的时候,也是调用的这个工具,这也是我先把mkfs介绍的主要原因;通过文件名,我们就知道这些工具是支持什么文件系统;这些命令为我们提供了更多的方便;[root@localhost beinan]# mkfs.ext3 /dev/sda6 注:把该设备格式化成ext3文件系统[root@localhost beinan]# mke2fs -j /dev/sda6 注:把该设备格式化成ext3文件系统[root@localhost beinan]# mkfs.ext2 /dev/sda6 注:把该设备格式化成ext2文件系统root@localhost beinan]# mke2fs /dev/sda6 注:把该设备格式化成ext2文件系统[root@localhost beinan]# mkfs.reiserfs /dev/sda6 注:把该设备格式化成reiserfs文件系统[root@localhost beinan]# mkfs.vfat /dev/sda6 注:把该设备格式化成fat32文件系统[root@localhost beinan]# mkfs.msdos /dev/sda6 注:把该设备格式化成fat16文件系统,msdos文件系统就是fat16;[root@localhost beinan]# mkdosfs /dev/sda6 注:把该设备格式化成fat16文件系统,同mkfs.msdos... ...2)mkswap 把一个分区格式化成为swap交换区;[root@localhost beinan]# mkswap /dev/sda6 注:创建此分区为swap 交换分区[root@localhost beinan]# swapon /dev/sda6 注:加载交换分区;[root@localhost beinan]# swapoff /dev/sda6 注:关闭交换分区;我们查看系统已经加载的swap交换分区;[root@localhost beinan]# swapon /dev/sda6 注:加载交换分区;[root@localhost beinan]# swapon -sFilename Type Size Used Priority/dev/hda7 partition 787144 0 -1/dev/sda6 partition 225144 0 -3<code>为什么我的系统有两个交换分区?因为我用移动U盘做的实验,主要是为写教程之用;sda6是我在U盘上建的swap分区;如果让swap开机就加载,应该改 /etc/fstab文件,加类似如下一行;<code>/dev/sda6 swap swap defaults 0 0 注:把此行中的/dev/hda7 改为您的交换分区就行;或者把命令行直接写入/etc/rc.d/rc.local中也行;swapon /dev/sda6如果您的硬盘不能再分区,您可以创建一个swap文件[root@localhost beinan]# dd if=/dev/zero of=/tmp/swap bs=1024 count=524288 注:创建一个大小为512M 的swap 文件,在/tmp目录中;您可以根据自己的需要的大小来创建swap 文件;读入了 524288+0 个块输出了 524288+0 个块[root@localhost beinan]# mkswap /tmp/swap 注:把/tmp/swap 文件,创建成swap 交换区Setting up swapspace version 1, size = 536866 kBno label, UUID=d9d8645d-92cb-4d33-b36e-075bb0a2e278[root@localhost beinan]# swapon /tmp/swap 注:挂载swap[root@localhost beinan]# swapon -sFilename Type Size Used Priority/dev/hda7 partition 787144 888 -1/tmp/swap file 524280 0 -2注意:其实我们在安装系统的时候,就已经划分了交换分区;查看/etc/fstab,应该swap的行;如果您在安装系统时没有添加swap,可以通过这种办法来添加;三、挂载文件系统;挂载文件系统,目前有两种方法,一是通过mount 来挂载,另一种方法是通过/etc/fstab文件来开机自动挂载;1、通过mount 来挂载磁盘分区(或存储设备)mount的用法其实也简单,我们说几个常用的;挂载文件系统的命令格式:[root@localhost beinan]# mount [-t 文件系统 ] [-o 选项] 设备目录注:-t 通过这个参数,我们来指定文件系统的类型,一般的情况下不必指定有时也能识加,-t 后面跟ext3 、ext2 、reiserfs、vfat 、ntfs 等,其中vfat 是fat32和fat16分区文件系统所所用的参数;如果您忘记了文件系统,也可以在-t 后面加auto ;-o 这个选项,主要选项有权限、用户、磁盘限额、语言编码等,但语言编码的选项,大多用于vfat和ntfs文件系统;由于选项太多,还是请您看看man mount ;这里不多说;设备指存储设备,比如/dev/hda1,/dev/sda1 ,cdrom 等...至于您的系统中有哪些存储设备,主要通过fdisk -l 或者查看/etc/fstab 或dmesg ;一般的情况下光驱设备是/dev/cdrom ;软驱设备是/dev/fd0 ;硬盘及移动硬盘以fdisk -l 的输出为准;1)对光驱和软驱的挂载;举例:[root@localhost beinan]# mount /dev/cdrom[root@localhost beinan]# mount /dev/fd0第一行是mount 光驱,至于mount 到哪了,我们可以通过查看/etc/fstab来查看;同理软驱/dev/fd0设备也是如此;比如我们在/etc/fstab/dev/hdc /media/cdrecorder auto users,exec,noauto,managed 0 0我们可以肯定的是光盘被mount 到了/media/cdrecorder 目录;但我们也可以自己来指定cdrom 挂载的位置;比如/mnt/cdrom ,所以我们也可以这样来挂载光驱;[root@localhost beinan]#mkdir /mnt/cdrom[root@localhost beinan]# mount /dev/cdrom /mnt/cdrom我们先建一个目录,然后执行mount 命令,这样cdrom 就挂在/mnt/cdrom 中了;我们就可以在/mnt/cdrom 中查看光盘中资料和文件;这个目录您想怎么建就怎么建。
linux中的磁盘的操作步骤Linux中的磁盘的操作步骤磁盘是计算机中存储数据的重要硬件设备之一,对于Linux系统来说,磁盘的操作是非常常见和重要的。
本文将介绍Linux中磁盘的操作步骤,包括磁盘的查看、挂载、格式化、分区和扩容等操作。
1. 查看磁盘信息在Linux系统中,可以使用命令来查看磁盘信息。
常用的命令有:- fdisk -l:列出系统中所有的磁盘和分区信息;- df -h:查看磁盘的使用情况和剩余空间;- lsblk:以树状结构展示磁盘和分区的关系。
2. 挂载磁盘在Linux中,需要将磁盘挂载到文件系统中才能使用。
挂载的步骤如下:- 创建挂载点:可以在文件系统中选择一个目录作为挂载点;- 查看磁盘分区:使用fdisk -l命令查看磁盘的分区信息;- 挂载磁盘分区:使用mount命令将磁盘分区挂载到指定的挂载点。
3. 格式化磁盘在使用磁盘之前,需要对其进行格式化,以便文件系统能够识别和管理磁盘上的数据。
常用的格式化命令有:- mkfs.ext4:格式化为ext4文件系统;- mkfs.xfs:格式化为xfs文件系统;- mkfs.ntfs:格式化为ntfs文件系统。
4. 分区磁盘在Linux中,可以将磁盘分为多个分区来管理数据。
分区的步骤如下:- 使用fdisk命令对磁盘进行分区操作;- 使用mkfs命令对分区进行格式化;- 使用mount命令将分区挂载到文件系统中。
5. 扩容磁盘当磁盘空间不足时,可以对磁盘进行扩容以增加存储容量。
扩容的步骤如下:- 在虚拟机或物理机中扩大磁盘的容量;- 使用fdisk命令对磁盘进行分区扩容;- 使用resize2fs或xfs_growfs命令对文件系统进行扩容。
总结:本文介绍了Linux中磁盘的操作步骤,包括磁盘的查看、挂载、格式化、分区和扩容等操作。
通过掌握这些操作,可以更好地管理和利用系统中的磁盘空间,提高系统的性能和稳定性。
在实际应用中,需要根据具体情况选择合适的命令和参数进行操作,并注意备份重要数据,以免造成数据丢失。
linux创建文件系统的步骤
1. 确认磁盘分区:使用fdisk或parted等工具对磁盘进行分区,确保分区正确。
2. 格式化分区:使用mkfs命令对分区进行格式化,例如:mkfs.ext4 /dev/sda1。
3. 挂载分区:使用mount命令将分区挂载到指定的挂载点上,例如:mount /dev/sda1 /mnt。
4. 配置/etc/fstab文件:将分区的挂载信息添加到/etc/fstab 文件中,以便系统在启动时自动挂载。
5. 设置权限:使用chmod和chown命令设置文件系统的权限和所有者。
6. 创建目录:使用mkdir命令创建需要的目录。
7. 配置文件系统:根据需要,可以使用tune2fs等工具对文件系统进行配置,例如:tune2fs -c 10 /dev/sda1,表示每10次挂载后进行一次文件系统检查。
8. 测试文件系统:使用df和du等命令检查文件系统的使用情况,确保文件系统正常工作。
Linux文件系统详解系统管理员很重要的任务之一就是管理好自己的磁盘文件系统,每个分区不可太大也不能太小,太大会造成磁盘容量的浪费,太小则会产生档案无法储存的困扰。
此外,我们在前面几章谈到的档案权限与属性中,这些权限与属性分别记录在文件系统的那个区块内?这就得要谈到filesystem中的inode与block了。
在本章我们的重点在于如何制作文件系统,包括分割、格式化与挂载等,是很重要的一个章节喔!1认识EXT2文件系统Linux最传统的磁盘文件系统(filesystem)使用的是EXT2这个啦!所以要了解文件系统就得要由认识EXT2开始!而文件系统是建立在硬盘上面的,因此我们得了解硬盘的物理组成才行。
磁盘物理组成的部分我们在第零章谈过了,至于磁盘分区则在第三章谈过了,所以底下只会很快的复习这两部份。
重点在于inode,block还有superblock 等文件系统的基本部分喔!1.1硬盘组成与分割的复习由于各项磁盘的物理组成我们在第零章里面就介绍过,同时第三章也谈过分割的概念了,所以这个小节我们就拿之前的重点出来介绍就好了!详细的信息请您回去那两章自行复习喔!^_^。
好了,首先说明一下磁盘的物理组成,整颗磁盘的组成主要有:1)圆形的磁盘盘(主要记录数据的部分);2)机械手臂,与在机械手臂上的磁盘读取头(可擦写磁盘盘上的数据);3)主轴马达,可以转动磁盘盘,让机械手臂的读取头在磁盘盘上读写数据。
从上面我们知道数据储存与读取的重点在于磁盘盘,而磁盘盘上的物理组成则为(假设此磁盘为单盘片,磁盘盘图标请参考第三章图2.2.1的示意):扇区(Sector)为最小的物理储存单位,每个扇区为512bytes;将扇区组成一个圆,那就是磁柱(Cylinder),磁柱是分割槽(partition)的最小单位;第一个扇区最重要,里面有:(1)主要开机区(Master boot record,MBR)及分割表(partition table),其中MBR占有446bytes,而partition table则占有64bytes。
实训项目3 文件系统管理一、实训目的●掌握Linux下文件系统的创建,挂载与卸载●文件系统的自动挂载二、项目背景某企业的Linux服务器中新增了以块硬盘/dev/sdb.请使用fdisk命令新建/dev/sdb1主分区和/dev/sdb2扩展分区,并在扩展分区中新建逻辑分区/dev/sdb5,并使用mkfs命令分别创建vfat和ext3文件系统。
然后用fsck命令检查这两个文件系统,最后,把这两个文件系统挂载到系统上。
三、实训内容练习Linux系统下文件系统的创建,挂载与卸载及自动挂载实现。
四、实训步骤子项目1.创建/dev/sdv1和/dev/sdb5.用fdisk命令创建/dev/sdb1主分区.使用fdisk命令创建/dev/sdb2扩展分区.使用fdisk命令创建/dev/sdb5 逻辑分区..输入子命令W,把设置写入硬盘分区表,退出fdisk并重新启动系统..用mkfs命令在上述刚刚创建的分区上创建ext3文件系统和vfat文件系统..用fsck命令检查上面创建的文件系统.子项目2.挂载/dev/sdb1 和/dev/sdb5.利用mkdir命令.在/mnt目录下建立挂载点,mountpoint1和mountpoint2..把上述新创建的ext3分区挂载到/mnt/mountpoint1上..把上述新创建的vfat分区挂载到/mnt/mountpoint2上..利用mount命令列出挂载到系统上的分区,查看挂在是否成功..利用umount命令卸载上面的两个人区.子项目3实现/dev/sdb1和/dev/sdb5的自动挂载..编辑系统文件/etc/fstab/文件,把上面两个分区加入此文件中。
.重新启动系统,显示已经挂载到系统上的分区,检查设置是否成功。
子项目4.挂载光盘和U盘.取一张光盘放入光驱中,将光盘挂载到/media/cdrom目录下.查看光盘中的文件..利用与上述相似的命令完成U盘的挂载与卸载.五、实训思考题.1.在Linux下能创建Windows的分区吗?在Linux下能创建Windows的文件系统吗?Windows操作系统可以识别ext3文件系统吗?2.系统挂装表的文件名?系统挂装表的作用是什么?其文件格式是什么?3.利用mount命令挂装一个文件系统和将其写入/etc/fstab文件的区别是什么?六、实训报告要求.实训目的.实训内容.实训步骤.实训中的问题和解决方法.回答实训思考题.实训心得与体会.建议与意见1。
linux文件系统初始化过程(1)---概述术语表:struct task:进程struct mnt_namespace:命名空间struct mount:挂载点struct vfsmount:挂载项struct file:文件struct super_block:超级块struct dentry:目录struct inode:索引节点一、目的linux文件系统主要分为三个部分:文件系统调用;虚拟文件系统(VFS);挂载到VFS 的实际文件系统。
其中,VFS是核心,linux文件系统的本质就是在内存中创建一棵VFS树。
当根目录被创建后,用户就可以使用系统调用在VFS上创建文件、删除文件、挂载各种文件系统等操作。
该系列文章主要分析linux3.10文件系统初始化过程,分为三个阶段:1、挂载根文件系统(rootfs);2、加载initrd;3、挂载磁盘文件系统;二、常用数据结构linux文件系统中重要的数据结构有:文件、挂载点、超级块、目录项、索引节点等。
每个数据结构的具体实现请参见源代码,这里不再描述。
为了直观的表示数据结构之间的关系,请参见图1:图中含有两个文件系统(红色和绿色表示的部分),并且绿色文件系统挂载在红色文件系统tmp目录下。
一般来说,每个文件系统在VFS层都是由挂载点、超级块、目录和索引节点组成;当挂载一个文件系统时,实际也就是创建这四个数据结构的过程,因此这四个数据结构的地位很重要,关系也很紧密。
由于VFS要求实际的文件系统必须提供以上数据结构,所以不同的文件系统在VFS层可以互相访问。
如果进程打开了某个文件,还会创建file(文件)数据结构,这样进程就可以通过file来访问VFS的文件系统了。
另外,该图只给出了主要的关系结构,忽略了部分细节。
图1三、函数调用关系图2描述了文件系统初始化过程中主要的函数调用关系。
linux文件系统初始化过程主要分为三个阶段:1、vfs_caches_init()负责挂载rootfs文件系统,并创建了第一个挂载点目录:'/';2、rest_init()负责加载initrd文件,扩展VFS树,创建基本的文件系统目录拓扑;3、init程序负责挂载磁盘文件系统,并将文件系统的根目录从rootfs切换到磁盘文件系统;图2四、总结linux文件系统初始化过程主要分为三个阶段:挂载rootfs,提供第一个挂载点''/;加载initrd,扩展VFS树;执行init程序,完成linux系统的初始化。
Linux命令高级技巧使用mkfs命令进行文件系统创建与格式化在Linux系统中,mkfs命令被广泛用于创建和格式化文件系统。
它是一种高级技巧,可以帮助用户灵活地管理存储设备和分区。
本文将介绍mkfs命令的使用方法和一些常见的高级技巧,以帮助读者更好地掌握这一命令。
1. 概述mkfs命令是Linux系统中的一个工具,用于在存储设备或分区上创建文件系统。
它可以根据指定的参数和选项,在设备上创建出各种不同类型的文件系统,如ext2、ext3、ext4等。
同时,mkfs命令还可以格式化现有的文件系统,以便重新使用。
2. 基本用法使用mkfs命令创建一个新的文件系统非常简单,只需在命令后面跟上要创建文件系统的设备或分区即可。
例如,要在/dev/sdb1分区上创建ext4文件系统,可以执行以下命令:```mkfs.ext4 /dev/sdb1```执行该命令后,mkfs命令会在指定的分区上创建一个新的ext4文件系统。
3. 格式化选项mkfs命令还支持一系列选项,用于更精细地控制文件系统的创建和格式化过程。
下面介绍几个常用的选项:- "-t"选项:指定要创建的文件系统类型。
例如,要创建ext3文件系统,可以使用"-t ext3"选项。
- "-c"选项:在创建文件系统之前进行完整性检查,以确保设备没有坏道。
- "-L"选项:给文件系统设置一个标签。
- "-m"选项:设置保留空间的百分比。
保留空间是为系统保留的,一般用于root用户进行操作。
4. 高级技巧除了基本用法和选项外,mkfs命令还有一些高级技巧,可以帮助用户更好地使用和管理文件系统。
4.1 调整inode数量inode是文件系统中用于存储文件和目录元数据的数据结构。
在创建文件系统时,默认会为每个文件系统分配一定数量的inode。
然而,有时候默认分配的inode数量可能会不足,导致文件系统无法存储更多的文件。
正文++++++++++++++++++++++++++++++++++++++++++++++++++++++阅读此文,必须具备知识点:《Linux 查看磁盘分区、文件系统、使用情况的命令和相关工具介绍》《实例解说fdisk 使用方法》《合理规划您的硬盘分区》《Fedora / Redhat 软件包管理指南》如果您想加载一个分区(文件系统),首先您得确认文件系统的类型,然后才能挂载使用,比如通过mount 加载,或者通过修改/etc/fstab来开机自动加载;如果您想添加一个新的分区,或者增加一个新的硬盘,您要通过分区工具来添加分区,然后要创建分区的文件系统,然后才是挂载文件系统;比如通过mount 加载,或者通过修改/etc/fstab来开机自动加载;本文总有一部份是您想要的;比如在新的分区上创建文件系统,如何挂载;如何卸载文件系统或者设备(比如cdrom )等;我建您最好通读本文,然后根据自己的需要再做选择性实践;Linux的一个小问题涉及的很多方面的知识,有时一篇文档是难以说清楚;我为了尽可能详细解说每一个过程,所以把分区工具、创建文件系统工具、查看文件系统的工具分开来说,主要是让初学者比较容易理解。
希望您能理解本人的用心;传说北南长的比较丑,但心的还是善良的... ...我是不会用一些垃圾文档来害您... ... 哈哈... ... 言归正传,开文~~~~一、对存储设备的分区;我们这里所指的存储设备主要是本地硬盘、移动硬盘(比如USB 和1394接口的硬盘);由于磁盘很大并且为了满足我们各种需要,所以把硬盘分成若干个分区;比如我们可以用这个分区来安装Linux系统,那个分区用来安装Windows系统... ... ;这点小事大家都明白;至于如何在Linux中进行硬盘分区操作,我们推荐您用fdisk ,目前看来也是最好用的分区工具;其它工具比如parted 和cfdisk在某一方面有点优点,但这些优点可能为大家带来一些方便,比如parted中的数据备份功能,这个功能对老手来说可能是优点,但对新手来说,的确是有风险的;所以我们还是推荐您用fdisk 分区工具;fdisk 的使用说明:请参考:《实例解说fdisk 使用方法》二、存储设备进行格式化,即建立文件系统的过程;1、文件系统的一点介绍我们对存储设备分区还是远远不够的,我们还要对这些新增分区进行格式化;一个分区只有建立了某种文件系统后,这个分区才能使用;建立文件系统过程,就是用相应格式化工具格式化分区的过程,这个过程和我们在Windows中格式化某个分区为NTFS分区类似;没有什么高深的内容,只是所用的工具不一样罢了;在Linux操作系统中,目前几乎支持目前主流的文件系统,比如NTFS(只读)、FAT(可读可写)、ext2、ext3、reiserfs、hfs (MAC 操作系统的文件系统)、swap 交换分区... ... 还有一些咱们不熟悉的操作系统的文件系统等;在Linux中,我们常用的文件系统无非是上面例出的这些;如果您新增了一个硬盘,可能想格式化成Linux的文件系统,最佳选择是reiserfs 或ext3;目前ext2已被ext3取代;我们不推荐用ext2文件系统,ext2的使用风险比较大;速度最快的文件系统,当属reiserfs;reiserfs 还有很多优点,比如更安全;ext3是Redhat认为最好的文件系统,所以在Fedora 4.0在安装时,特地为reiserfs 的选择弄出点麻烦;相对来说reiserfs还是比ext3要优秀;如果想深入学习文件系统的,您可以到官方论坛找相应的资料,最好是实践实践;2、格式化工具介绍和使用;以fedora 4.0为例,我们常用的工具mkfs mkfs.ext3 mkfs.reiserfs mkfs.ext2 mkfs.msdos mkfs.vfat mkswap 提示:如果您不能创建reiserfs 文件系统,也就是说没有mkfs.reiserfs 或者mkreiserfs 命令,是您没有安装reiserfs-utils工具包,请参考:《让Fedora 支持创建reiserfs 文件系统,以及创建reiserfs文件系统的一点说明》1)mkfs的使用;使用方法:[root@localhost beinan]# mkfs -t 文件系统存储设备注:这里的文件系统是要指定的,比如ext3 ;reiserfs ;ext2 ;fat32 ;msdos 等... ...设备比如是一个硬盘的分区,软盘,光驱等.. ... 在格式化分区之前,您得懂得如何查看硬盘分区情况,并有针对性的格式化;比如用fdisk -l 来查看;请参考:《Linux 查看磁盘分区、文件系统、使用情况的命令和相关工具介绍》比如我想格式化一个移动U盘中的一个分区;全景应该是:[root@localhost beinan]# fdisk -lDisk /dev/hda: 80.0 GB, 80026361856 bytes255 heads, 63 sectors/track, 9729 cylindersUnits = cylinders of 16065 * 512 = 8225280 bytesDevice Boot Start End Blocks Id System/dev/hda1 * 1 765 6144831 7 HPFS/NTFS/dev/hda2 766 2805 16386300 c W95 FAT32 (LBA)/dev/hda3 2806 9729 55617030 5 Extended/dev/hda5 2806 3825 8193118+ 83 Linux/dev/hda6 3826 5100 10241406 83 Linux/dev/hda7 5101 5198 787153+ 82 Linux swap / Solaris/dev/hda8 5199 6657 11719386 83 Linux/dev/hda9 6658 7751 8787523+ 83 Linux/dev/hda10 7752 9729 15888253+ 83 LinuxDisk /dev/sda: 1035 MB, 1035730944 bytes256 heads, 63 sectors/track, 125 cylindersUnits = cylinders of 16128 * 512 = 8257536 bytesDevice Boot Start End Blocks Id System/dev/sda1 1 25 201568+ 83 Linux/dev/sda2 26 125 806400 5 Extended/dev/sda5 26 50 201568+ 83 Linux/dev/sda6 51 76 200781 83 Linux我们可以看到有sda这个设备,所以可以用fdisk -l /dev/sda专门来显示他的分区情况;比如我想格式化/dev/sda6 分区为ext3文件系统,则为:[root@localhost beinan]# mkfs -t ext3 /dev/sda6mke2fs 1.37 (21-Mar-2005)Filesystem label=OS type: LinuxBlock size=1024 (log=0)Fragment size=1024 (log=0)50200 inodes, 200780 blocks10039 blocks (5.00%) reserved for the super userFirst data block=1Maximum filesystem blocks=6737100825 block groups8192 blocks per group, 8192 fragments per group2008 inodes per groupSuperblock backups stored on blocks:8193, 24577, 40961, 57345, 73729Writing inode tables: doneCreating journal (4096 blocks): doneWriting superblocks and filesystem accounting information: 注:在这里直接回车;doneThis filesystem will be automatically checked every 26 mounts or180 days, whichever comes first. Use tune2fs -c or -i to override.这样就格式化好了,sda6现在就是ext3文件系统了;我们就可以用mount 加载这个分区,然后使用这个文件系统;[root@localhost beinan]# mkdir /mnt/sda6[root@localhost beinan]# chmod 777 /mnt/sda6[root@localhost beinan]# mount /dev/sda6 /mnt/sda6当然您也可以把分区格式化成其它的文件系统;比如我们把/dev/sda6格式化为ext3 、ext2、reiserfs、fat32、msdos 文件系统,命令格式如下;[root@localhost beinan]# mkfs -t ext3 /dev/sda6[root@localhost beinan]# mkfs -t ext2 /dev/sda6[root@localhost beinan]# mkfs -t reiserfs /dev/sda6[root@localhost beinan]# mkfs -t fat32 /dev/sda6[root@localhost beinan]# mkfs -t msdos /dev/sda6... ...2)mkfs.ext3 mkfs.reiserfs mkfs.ext2 mkfs.msdos mkfs.vfat mke2fs 的介绍;我们先说了一个mkfs 工具后,我们再来介绍mkfs.ext3 mkfs.reiserfs mkfs.ext2 mkdosfs mkfs.msdos mkfs.vfat ,其实mkfs 在执行的命令的时候,也是调用的这个工具,这也是我先把mkfs介绍的主要原因;通过文件名,我们就知道这些工具是支持什么文件系统;这些命令为我们提供了更多的方便;[root@localhost beinan]# mkfs.ext3 /dev/sda6 注:把该设备格式化成ext3文件系统[root@localhost beinan]# mke2fs -j /dev/sda6 注:把该设备格式化成ext3文件系统[root@localhost beinan]# mkfs.ext2 /dev/sda6 注:把该设备格式化成ext2文件系统root@localhost beinan]# mke2fs /dev/sda6 注:把该设备格式化成ext2文件系统[root@localhost beinan]# mkfs.reiserfs /dev/sda6 注:把该设备格式化成reiserfs文件系统[root@localhost beinan]# mkfs.vfat /dev/sda6 注:把该设备格式化成fat32文件系统[root@localhost beinan]# mkfs.msdos /dev/sda6 注:把该设备格式化成fat16文件系统,msdos文件系统就是fat16;[root@localhost beinan]# mkdosfs /dev/sda6 注:把该设备格式化成fat16文件系统,同mkfs.msdos... ...2)mkswap 把一个分区格式化成为swap交换区;[root@localhost beinan]# mkswap /dev/sda6 注:创建此分区为swap 交换分区[root@localhost beinan]# swapon /dev/sda6 注:加载交换分区;[root@localhost beinan]# swapoff /dev/sda6 注:关闭交换分区;我们查看系统已经加载的swap交换分区;[root@localhost beinan]# swapon /dev/sda6 注:加载交换分区;[root@localhost beinan]# swapon -sFilename Type Size Used Priority/dev/hda7 partition 787144 0 -1/dev/sda6 partition 225144 0 -3<code>为什么我的系统有两个交换分区?因为我用移动U盘做的实验,主要是为写教程之用;sda6是我在U盘上建的swap分区;如果让swap开机就加载,应该改/etc/fstab文件,加类似如下一行;<code>/dev/sda6 swap swap defaults 0 0 注:把此行中的/dev/hda7 改为您的交换分区就行;或者把命令行直接写入/etc/rc.d/rc.local中也行;swapon /dev/sda6如果您的硬盘不能再分区,您可以创建一个swap文件[root@localhost beinan]# dd if=/dev/zero of=/tmp/swap bs=1024 count=524288 注:创建一个大小为512M 的swap 文件,在/tmp目录中;您可以根据自己的需要的大小来创建swap 文件;读入了524288+0 个块输出了524288+0 个块[root@localhost beinan]# mkswap /tmp/swap 注:把/tmp/swap 文件,创建成swap 交换区Setting up swapspace version 1, size = 536866 kBno label, UUID=d9d8645d-92cb-4d33-b36e-075bb0a2e278[root@localhost beinan]# swapon /tmp/swap 注:挂载swap[root@localhost beinan]# swapon -sFilename Type Size Used Priority/dev/hda7 partition 787144 888 -1/tmp/swap file 524280 0 -2注意:其实我们在安装系统的时候,就已经划分了交换分区;查看/etc/fstab,应该swap的行;如果您在安装系统时没有添加swap,可以通过这种办法来添加;三、挂载文件系统;挂载文件系统,目前有两种方法,一是通过mount 来挂载,另一种方法是通过/etc/fstab文件来开机自动挂载;1、通过mount 来挂载磁盘分区(或存储设备)mount的用法其实也简单,我们说几个常用的;挂载文件系统的命令格式:[root@localhost beinan]# mount [-t 文件系统] [-o 选项] 设备目录注:-t 通过这个参数,我们来指定文件系统的类型,一般的情况下不必指定有时也能识加,-t 后面跟ext3 、ext2 、reiserfs、vfat 、ntfs 等,其中vfat 是fat32和fat16分区文件系统所所用的参数;如果您忘记了文件系统,也可以在-t 后面加auto ;-o 这个选项,主要选项有权限、用户、磁盘限额、语言编码等,但语言编码的选项,大多用于vfat和ntfs文件系统;由于选项太多,还是请您看看man mount ;这里不多说;设备指存储设备,比如/dev/hda1,/dev/sda1 ,cdrom 等...至于您的系统中有哪些存储设备,主要通过fdisk -l 或者查看/etc/fstab 或dmesg ;一般的情况下光驱设备是/dev/cdrom ;软驱设备是/dev/fd0 ;硬盘及移动硬盘以fdisk -l 的输出为准;1)对光驱和软驱的挂载;举例:[root@localhost beinan]# mount /dev/cdrom[root@localhost beinan]# mount /dev/fd0第一行是mount 光驱,至于mount 到哪了,我们可以通过查看/etc/fstab来查看;同理软驱/dev/fd0设备也是如此;比如我们在/etc/fstab/dev/hdc /media/cdrecorder auto users,exec,noauto,managed 0 0我们可以肯定的是光盘被mount 到了/media/cdrecorder 目录;但我们也可以自己来指定cdrom 挂载的位置;比如/mnt/cdrom ,所以我们也可以这样来挂载光驱;[root@localhost beinan]#mkdir /mnt/cdrom[root@localhost beinan]# mount /dev/cdrom /mnt/cdrom我们先建一个目录,然后执行mount 命令,这样cdrom 就挂在/mnt/cdrom 中了;我们就可以在/mnt/cdrom 中查看光盘中资料和文件;这个目录您想怎么建就怎么建。