天天看點

磁盤格式化與挂載

   在windows作業系統中,硬碟有fat32和ntfs等多種格式。在linux中同樣如此。CentOS 6之前,主要是ext4、ext3和ext2等格式。在CentOS 7這個版本開始,預設的磁盤格式變成了xfs格式。

<code>[root@server02 ~]</code><code># cat /etc/filesystems</code>

<code>xfs</code>

<code>ext4</code>

<code>ext3</code>

<code>ext2</code>

<code>nodev proc</code>

<code>nodev devpts</code>

<code>iso9660</code>

<code>vfat</code>

<code>hfs</code>

<code>hfsplus</code>

<code>*</code>

<code>[root@server02 ~]</code><code># mount  //檢視分區的檔案系統類型,需要挂載才能看見</code>

<code>sysfs on </code><code>/sys</code> <code>type</code> <code>sysfs (rw,nosuid,nodev,noexec,relatime,seclabel)</code>

<code>proc on </code><code>/proc</code> <code>type</code> <code>proc (rw,nosuid,nodev,noexec,relatime)</code>

<code>devtmpfs on </code><code>/dev</code> <code>type</code> <code>devtmpfs (rw,nosuid,seclabel,size=494380k,nr_inodes=123595,mode=755)</code>

<code>securityfs on </code><code>/sys/kernel/security</code> <code>type</code> <code>securityfs (rw,nosuid,nodev,noexec,relatime)</code>

<code>tmpfs on </code><code>/dev/shm</code> <code>type</code> <code>tmpfs (rw,nosuid,nodev,seclabel)</code>

<code>devpts on </code><code>/dev/pts</code> <code>type</code> <code>devpts (rw,nosuid,noexec,relatime,seclabel,gid=5,mode=620,ptmxmode=000)</code>

<code>tmpfs on </code><code>/run</code> <code>type</code> <code>tmpfs (rw,nosuid,nodev,seclabel,mode=755)</code>

<code>tmpfs on </code><code>/sys/fs/cgroup</code> <code>type</code> <code>tmpfs (ro,nosuid,nodev,noexec,seclabel,mode=755)</code>

<code>cgroup on </code><code>/sys/fs/cgroup/systemd</code> <code>type</code> <code>cgroup (rw,nosuid,nodev,noexec,relatime,xattr,release_agent=</code><code>/usr/lib/systemd/systemd-cgroups-agent</code><code>,name=systemd)</code>

<code>pstore on </code><code>/sys/fs/pstore</code> <code>type</code> <code>pstore (rw,nosuid,nodev,noexec,relatime)</code>

<code>cgroup on </code><code>/sys/fs/cgroup/freezer</code> <code>type</code> <code>cgroup (rw,nosuid,nodev,noexec,relatime,freezer)</code>

<code>cgroup on </code><code>/sys/fs/cgroup/cpu</code><code>,cpuacct </code><code>type</code> <code>cgroup (rw,nosuid,nodev,noexec,relatime,cpuacct,cpu)</code>

<code>cgroup on </code><code>/sys/fs/cgroup/pids</code> <code>type</code> <code>cgroup (rw,nosuid,nodev,noexec,relatime,pids)</code>

<code>cgroup on </code><code>/sys/fs/cgroup/cpuset</code> <code>type</code> <code>cgroup (rw,nosuid,nodev,noexec,relatime,cpuset)</code>

<code>cgroup on </code><code>/sys/fs/cgroup/net_cls</code><code>,net_prio </code><code>type</code> <code>cgroup (rw,nosuid,nodev,noexec,relatime,net_prio,net_cls)</code>

<code>cgroup on </code><code>/sys/fs/cgroup/memory</code> <code>type</code> <code>cgroup (rw,nosuid,nodev,noexec,relatime,memory)</code>

<code>cgroup on </code><code>/sys/fs/cgroup/perf_event</code> <code>type</code> <code>cgroup (rw,nosuid,nodev,noexec,relatime,perf_event)</code>

<code>cgroup on </code><code>/sys/fs/cgroup/devices</code> <code>type</code> <code>cgroup (rw,nosuid,nodev,noexec,relatime,devices)</code>

<code>cgroup on </code><code>/sys/fs/cgroup/hugetlb</code> <code>type</code> <code>cgroup (rw,nosuid,nodev,noexec,relatime,hugetlb)</code>

<code>cgroup on </code><code>/sys/fs/cgroup/blkio</code> <code>type</code> <code>cgroup (rw,nosuid,nodev,noexec,relatime,blkio)</code>

<code>configfs on </code><code>/sys/kernel/config</code> <code>type</code> <code>configfs (rw,relatime)</code>

<code>/dev/sda3</code> <code>on / </code><code>type</code> <code>xfs (rw,relatime,seclabel,attr2,inode64,noquota)</code>

<code>selinuxfs on </code><code>/sys/fs/selinux</code> <code>type</code> <code>selinuxfs (rw,relatime)</code>

<code>systemd-1 on </code><code>/proc/sys/fs/binfmt_misc</code> <code>type</code> <code>autofs (rw,relatime,fd=26,pgrp=1,timeout=300,minproto=5,maxproto=5,direct)</code>

<code>debugfs on </code><code>/sys/kernel/debug</code> <code>type</code> <code>debugfs (rw,relatime)</code>

<code>hugetlbfs on </code><code>/dev/hugepages</code> <code>type</code> <code>hugetlbfs (rw,relatime,seclabel)</code>

<code>mqueue on </code><code>/dev/mqueue</code> <code>type</code> <code>mqueue (rw,relatime,seclabel)</code>

<code>/dev/sda1</code> <code>on </code><code>/boot</code> <code>type</code> <code>xfs (rw,relatime,seclabel,attr2,inode64,noquota)</code>

<code>tmpfs on </code><code>/run/user/0</code> <code>type</code> <code>tmpfs (rw,nosuid,nodev,relatime,seclabel,size=100840k,mode=700)</code>

一、磁盤格式化

指令

參數

涵義

mke2fs 

-t 

指定格式,不支援xfs;

mkfs.ext4 = mke2fs -t ext4

-b

指定塊大小

-m

指定預留白間比(預設5%預留給超級使用者)

-i

指定每組的inode數,預設4個塊對應1個inode

mkfs.xfs

格式化成xfs

測試示例:

<code>[root@server02 ~]</code><code># mke2fs -t xfs /dev/sdb2</code>

<code>mke2fs 1.42.9 (28-Dec-2013)</code>

<code>Your mke2fs.conf </code><code>file</code> <code>does not define the xfs filesystem </code><code>type</code><code>.</code>

<code>Aborting...</code>

<code>[root@server02 ~]</code><code># mkfs.xfs /dev/sdb2</code>

<code>meta-data=</code><code>/dev/sdb2</code>              <code>isize=512    agcount=4, agsize=131072 blks</code>

<code>         </code><code>=                       sectsz=512   attr=2, projid32bit=1</code>

<code>         </code><code>=                       crc=1        finobt=0, sparse=0</code>

<code>data     =                       bsize=4096   blocks=524288, imaxpct=25</code>

<code>         </code><code>=                       sunit=0      swidth=0 blks</code>

<code>naming   =version 2              bsize=4096   ascii-ci=0 ftype=1</code>

<code>log      =internal log           bsize=4096   blocks=2560, version=2</code>

<code>         </code><code>=                       sectsz=512   sunit=0 blks, lazy-count=1</code>

<code>realtime =none                   extsz=4096   blocks=0, rtextents=0</code>

<code>[root@server02 ~]</code><code># blkid /dev/sdb2  </code>

<code>/dev/sdb2</code><code>: UUID=</code><code>"d1873a00-ba11-4635-81af-a1e9bd697f70"</code> <code>TYPE=</code><code>"xfs"</code>

二、磁盤挂載

    隻有格式化的分區才能被挂載。挂載使用mount指令,解除安裝使用umount指令。使用“-o”可以跟各種選項。預設選項為rw,suid,dev,exec,auto,nouser,和async。

<code>[root@server02 ~]</code><code># mount /dev/sdb2 /mnt/</code>

<code>[root@server02 ~]</code><code># mount /dev/sdb3 /mnt/</code>

<code>mount</code><code>: </code><code>/dev/sdb3</code> <code>寫保護,将以隻讀方式挂載</code>

<code>mount</code><code>: 未知的檔案系統類型“(null)”</code>

<code>[root@server02 ~]</code><code># df -h</code>

<code>檔案系統        容量  已用  可用 已用% 挂載點</code>

<code>/dev/sda3</code>        <code>28G 1016M   27G    4% /</code>

<code>devtmpfs        483M     0  483M    0% </code><code>/dev</code>

<code>tmpfs           493M     0  493M    0% </code><code>/dev/shm</code>

<code>tmpfs           493M  6.8M  486M    2% </code><code>/run</code>

<code>tmpfs           493M     0  493M    0% </code><code>/sys/fs/cgroup</code>

<code>/dev/sda1</code>       <code>197M  109M   88M   56% </code><code>/boot</code>

<code>tmpfs            99M     0   99M    0% </code><code>/run/user/0</code>

<code>/dev/sdb2</code>       <code>2.0G   33M  2.0G    2% </code><code>/mnt</code>

<code>[root@server02 ~]</code><code># umount /dev/sdb2</code>

通過mount指令挂載的分區隻在目前有效,當系統重新開機之後,分區将會消失。将分區挂載解除安裝/etc/fstab檔案中,可以使系統啟動時預設挂載。可以使用mount -a指令自動加載配置檔案裡的配置。

<code>[root@server02 ~]</code><code># cat /etc/fstab</code>

<code>#</code>

<code># /etc/fstab</code>

<code># Created by anaconda on Sat May 27 06:10:33 2017</code>

<code># Accessible filesystems, by reference, are maintained under '/dev/disk'</code>

<code># See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info</code>

<code>UUID=de480d95-018b-4e0b-a874-083a13d8412d /        xfs     defaults        0 0</code>

<code>UUID=82044aec-23c6-4e7f-8f05-51a24c0c956a </code><code>/boot</code>    <code>xfs     defaults        0 0</code>

<code>UUID=be771427-d6c1-4d01-a8ab-a473e8df8ac5 swap     swap    defaults        0 0</code>

<code>[root@server02 ~]</code><code># man fstab</code>

<code>......</code>

<code>DESCRIPTION</code>

<code>       </code><code>The  </code><code>file</code>  <code>fstab  contains  descriptive information about the various </code><code>file</code> <code>systems.  fstab is only </code><code>read</code> <code>by programs, and not written; it is the duty of the system administrator to properly create and maintain this </code><code>file</code><code>.  Each filesystem is described on a separate line; fields on each line are separated by tabs or spaces.  Lines starting with  </code><code>'#'</code> <code>are  comments, blank lines are ignored. The order of records </code><code>in</code> <code>fstab is important because </code><code>fsck</code><code>(8), </code><code>mount</code><code>(8), and </code><code>umount</code><code>(8) sequentially iterate through fstab doing their thing.</code>

<code>The first field (fs_spec). </code><code>//UUID</code><code>或LABEL</code>

<code>    </code><code>This field describes the block special device or remote filesystem to be mounted.</code>

<code>The second field (fs_file). </code><code>//</code><code>挂載點</code>

<code>    </code><code>This  field  describes  the  </code><code>mount</code>  <code>point </code><code>for</code> <code>the filesystem.  For swap partitions, this field should be specified as `none</code><code>'. If the name of the mount point contains spaces these can be escaped as `\040'</code><code>.</code>

<code>The third field (fs_vfstype). </code><code>//</code><code>分區格式</code>

<code>    </code><code>This field describes the </code><code>type</code> <code>of the filesystem.  Linux supports lots of filesystem types, such as adfs, affs, autofs, coda, coherent, cramfs, devpts, efs, ext2, ext3, hfs,hpfs,  iso9660,  jfs,  minix,  msdos,  ncpfs,  nfs, ntfs, proc, qnx4, reiserfs, romfs, smbfs, sysv, tmpfs, udf, ufs, umsdos, vfat, xenix, xfs, and possibly others. For </code><code>more</code> <code>details, see </code><code>mount</code><code>(8).</code>

<code>The fourth field (fs_mntops). </code><code>//</code><code>可選選項</code>

<code>    </code><code>This field describes the </code><code>mount</code> <code>options associated with the filesystem.</code>

<code>The fifth field (fs_freq).  </code><code>//</code><code>是否備份</code>

<code>    </code><code>This field is used </code><code>for</code> <code>these filesystems by the dump(8) </code><code>command</code> <code>to determine </code><code>which</code> <code>filesystems need to be dumped.  If the fifth field is not present, a  value  of  zero  is returned and dump will assume that the filesystem does not need to be dumped.</code>

<code>The sixth field (fs_passno).  </code><code>//</code><code>是否開機檢測,不檢查為0,檢查為2</code>

<code>    </code><code>This  field  is  used  by  the  </code><code>fsck</code><code>(8)  program  to determine the order </code><code>in</code> <code>which</code> <code>filesystem checks are </code><code>done</code> <code>at reboot </code><code>time</code><code>.  The root filesystem should be specified with a fs_passno of 1, and other filesystems should have a fs_passno of 2.  Filesystems within a drive will be checked sequentially, but filesystems on different  drives  will  be checked at the same </code><code>time</code> <code>to utilize parallelism available </code><code>in</code> <code>the hardware.  If the sixth field is not present or zero, a value of zero is returned and </code><code>fsck</code> <code>will assume that the filesystem does not need to be checked.</code>

另外一種開機自動挂載的方法是将mount指令寫在/etc/rc.local裡,開機自動執行挂載指令達到挂載的效果。

本文轉自Grodd51CTO部落格,原文連結:http://blog.51cto.com/juispan/1939163,如需轉載請自行聯系原作者

繼續閱讀