Linux磁盘管理 3月23日课程笔记
linux磁盘管理
一、查看磁盘或者目录的容量
1、df:查看磁盘各分区使用情况,不加任何参数是以k为单位来显示的
df -i:查看inodes使用状况
df -h:使用合适单位来显示,根据容量的大小来使用G或者T或者M显示
df -m: 以M为单位显示
2、du:查看目录或者文件的容量,不加参数以k为单位显示
du -s:列出总和
du -a:列出所有文件和目录
du -k:以k为单位 ,跟默认输出的值一样
du -m:以MB为单位
du -h:最合适的单位 最常用组合 -sh
du -c:显示目录的大小,也显示所有目录或文件的总合
du -c cheng:显示cheng这目录的大小
[root@ftp ~]# du -c cheng
扩展 ls -lh 看到的大小和du相比
二、磁盘的分区和格式化
1、fdisk -l:查看磁盘和分区,只能查看2T一下的,大于2T用GPT
查看centos支持哪几种格式的分区类型
[root@web ~]# cat /etc/filesystems
iso9600
光盘的系统格式
fdisk如果不加命令,会进入一下模式:
root@ftp ~]# fdisk /dev/sda WARNING: DOS-compatible mode is deprecated. It‘s strongly recommended to switch off the mode (command ‘c‘) and change display units to sectors (command ‘u‘). Command (m for help): #在这里输入m目录会出现一下的选项 Command action a toggle a bootable flag b edit bsd disklabel c toggle the dos compatibility flag d delete a partition #删除一个分区 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) Command (m for help): #在这里根据自己的需要输入上面的选项
2、mkesfs:格式化磁盘分区
-t:指定文件的系统(ext2,ext3,ext4)
-L: 分区标签
root@ftp ~]# mke2fs -t ext4 /dev/sdb1 -L cheng
给sdb1分区指定分区表为cheng
mkfs也是格式化磁盘的命令,后面直接跟文.文件系统就可以了
root@ftp ~]# mkfs.ext4 /dev/sdb1
格式化/dev/sdb1分区,并且指定文件系统为ext3
root@ftp ~]# mke2fs -t ext4 /dev/sdb1
格式化磁盘之后出现的信息解释:
文件系统类型:类似于微软系统中的盘符
13253 blocks (5.00%) reserved for the super user
#这里的5%是留个系统管理员使用的,这里的大小也可以手动指定
#root@ftp ~]# mke2fs -t ext4 -m 1 /dev/sdb1
-m 1:表示的就是手动指定的预留分区为1%
块大小=4096 (log=2)
#块大小的单位是字节
#硬盘格式化的时候指定快的大小为1024字节
#root@ftp ~]# mke2fs -t ext4 -b 1024 /dev/sdb1
3、free:查看swap信息
三、 挂载、卸载磁盘分区
1、mount:不加任何选项和参数,查看已经挂载情况
[root@ftp /]# mount
把dev/sdb2分区挂载到/date2目录下
[root@ftp /]# mount /etc/sdb2 /date2
df -T:查看磁盘的分区类型
如果把两个分区挂载到同一个目录下,那么第二次挂载的分区会覆盖掉第一次挂载的
mount -o 后面跟各种选项,具体选项如下:
-o:主要用来描述设备或档案的挂接方式的
“async/sync” : async表示和磁盘和内存不同步,系统每隔一段时间把内存数据写入磁盘中,而sync则会时时同步内存和磁盘中数据;
“auto/noauto” : 开机自动挂载/不自动挂载
“default” : 按照大多数永久文件系统的缺省值设置挂载定义,它包含了rw, suid, dev, exec, auto, nouser, async
“ro” : 按只读权限挂载
“rw” : 按可读可写权限挂载
"loop":挂载iso镜像文件
monut -o loop linux.iso /mnt
--bind:挂载目录
monut --bind /home /cheng
“exec/noexec” : 允许/不允许可执行文件执行,但千万不要把根分区挂载为noexec,那就无法使用系统了,连mount命令都无法使用了,
这时只有重新做系统了;
“user/nouser” : 允许/不允许root外的其他用户挂载分区,为了安全考虑,请用nouser ;
“suid/nosuid” : 允许/不允许分区有suid属性,一般设置nosuid ;
“usrquota” : 启动使用者磁盘配额模式,磁盘配额相关内容在后续章节会做介绍;
“grquota” : 启动群组磁盘配额模式;
mount -a:加载文件"/etc/fstab"中描述的所有文件系统,其实也就是从新挂载。
需要注意的是如果挂载的分区没有写在配置文件中,那么就不会被挂载
2、 blkid:查询设备上锁采用的文件系统类型
[root@ftp ~]# blkid
查看硬盘分区的UUID
使用UUID来挂载分区
[root@ftp ~]# mount UUID="9001648b-45d0-4db9-b485-5da1f68a9b96" /date5
使用UUID的好处是,多块磁盘,如果在服务器上换了插槽位置,设备名会变,但UUID是唯一的
partprobe:重读分区表,当出现删除文件之后,任然在占用空间的时候,可以是这个目录在不重启的
情况下重读分区表
3、umout:卸载磁盘分区
umount /dev/sda1
umount后面直接跟挂载目录也可以卸载
umount /date2
umount -l:强制卸载
umount -l /dev/sda1
fsck:磁盘修复,一般很少用,修复之后可能会导致资料丢失
四、设置开机自动挂载
1、配置文件 /etc/fstab,启动的时候可以自动挂载
第一列就是分区的标识,可以LABEL,也可以UUID,当然也可以 (/dev/sda1);
第二列是挂载点;
第三列是分区的格式;
第四列则是mount的一些挂载参数,一般情况下,直接写defaults即可;
第五列的数字表示是否被dump备份,是的话这里就是1,否则就是0;第六列是开机时是否自检磁盘。1,2都表示检测,
0表示不检测,/ 分区必须设为1,而且整个fstab中只允许出现一个1,1比2优先级高,所以先检测1,然后再检测2,
如果有多个分区需要开机检测那么都设置成2吧,1检测完了后会同时去检测2。
2、把挂载命令写入/ect/rc.d/rc/local配置文件也可以
磁盘分区实验:
1、给系统添加一块硬盘,我增加的是一个10GB的硬盘
2、使用fdisk -l命令可来查看系统是否有我新添加的那一块硬盘
[root@ftp ~]# fdisk -l Disk /dev/sda: 32.2 GB, 32212254720 bytes #这是我原有硬盘 255 heads, 63 sectors/track, 3916 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk identifier: 0x000742a0 Device Boot Start End Blocks Id System /dev/sda1 * 1 64 512000 83 Linux Partition 1 does not end on cylinder boundary. /dev/sda2 64 3917 30944256 8e Linux LVM Disk /dev/sdb: 10.7 GB, 10737418240 bytes #这里就是我刚才添加的那一块硬盘,显示的大小是10.7GB,名称是sdb. 255 heads, 63 sectors/track, 1305 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk identifier: 0x00000000 Disk /dev/mapper/vg_ftp-lv_root: 29.6 GB, 29603397632 bytes 255 heads, 63 sectors/track, 3599 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk identifier: 0x00000000 Disk /dev/mapper/vg_ftp-lv_swap: 2080 MB, 2080374784 bytes 255 heads, 63 sectors/track, 252 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk identifier: 0x00000000
[root@ftp ~]#
3、使用fdisk /dev/sdb对硬盘进行分区
[root@ftp ~]# fdisk /dev/sdb Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel Building a new DOS disklabel with disk identifier 0xa7a62de8. Changes will remain in memory only, until you decide to write them. After that, of course, the previous content won‘t be recoverable. Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite) WARNING: DOS-compatible mode is deprecated. It‘s strongly recommended to switch off the mode (command ‘c‘) and change display units to sectors (command ‘u‘). Command (m for help): #在这里输入p查看当前磁盘的分区信息 Command (m for help): p Disk /dev/sdb: 10.7 GB, 10737418240 bytes 255 heads, 63 sectors/track, 1305 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk identifier: 0xa7a62de8 Device Boot Start End Blocks Id System #显示的是空白,没有分区信息 Command (m for help):
4、使用n命令创建新的分区
Command (m for help): n
Command action
e extended #扩展分区
p primary partition (1-4) #主分区,主分区只能分为4个
5、输入p命令,回车
p Partition number (1-4): 1 #这里的1表示的是第一个分区 First cylinder (1-1305, default 1): 1 #这里的是表示你要从那一个柱面开始,输入,直接回车默认的也是1 Last cylinder, +cylinders or +size{K,M,G} (1-1305, default 1305): +1G #这是指你要给这个分区分配多的空间
6、使用4、5条继续给硬盘分区,给第一个主分区分为1G,第二个2G,第三个3G。
7、分扩展分区,然后给逻辑分区分为100M空间的大小
Command (m for help): n Command action e extended p primary partition (1-4)
e #输入e划分扩展分区
Selected partition 4 First cylinder (788-1305, default 788):
8、查询一下所创建的分区
Command (m for help): p Disk /dev/sdb: 10.7 GB, 10737418240 bytes 255 heads, 63 sectors/track, 1305 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk identifier: 0x862208c6 Device Boot Start End Blocks Id System /dev/sdb1 1 132 1060258+ 83 Linux /dev/sdb2 133 394 2104515 83 Linux /dev/sdb3 395 787 3156772+ 83 Linux /dev/sdb4 788 1305 4160835 5 Extended #这个表示的是扩展分区 /dev/sdb5 788 801 112423+ 83 Linux #逻辑分区,逻辑分区的序号是以5开始的
9、输入wq保存退出
Command (m for help): wq The partition table has been altered! Calling ioctl() to re-read partition table. \Syncing disks
.
10、格式化刚才创建的分区
root@ftp ~]# mke2fs -t ext4 /dev/sdb1 #格式化第一块分区 mke2fs 1.41.12 (17-May-2010) 文件系统标签= 操作系统:Linux 块大小=4096 (log=2) 分块大小=4096 (log=2) Stride=0 blocks, Stripe width=0 blocks 66384 inodes, 265064 blocks 13253 blocks (5.00%) reserved for the super user 第一个数据块=0 Maximum filesystem blocks=272629760 9 block groups 32768 blocks per group, 32768 fragments per group 7376 inodes per group Superblock backups stored on blocks: 32768, 98304, 163840, 229376 正在写入inode表: 完成 Creating journal (8192 blocks): 完成 Writing superblocks and filesystem accounting information: 完成 This filesystem will be automatically checked every 27 mounts or 180 days, whichever comes first. Use tune2fs -c or -i to override
以刚才的方法格式化以下分区
root@ftp ~]# mke2fs -t ext4 /dev/sdb2
root@ftp ~]# mke2fs -t ext4 /dev/sdb3
root@ftp ~]# mke2fs -t ext4 /dev/sdb5
11、挂载磁盘,把刚才创建的4个分区分别挂载到date1,date2,date3,date4目录中去
[root@ftp /]# mount /dev/sdb1 /date1
12、使用df -h命令查看我们刚才挂载的硬盘信息
[root@ftp /]# df -h Filesystem Size Used Avail Use% Mounted on /dev/mapper/vg_ftp-lv_root 28G 3.7G 22G 15% / tmpfs 935M 72K 935M 1% /dev/shm /dev/sda1 477M 52M 400M 12% /boot /dev/sdb1 988M 1.3M 935M 1% /date1 #这里就是我们sdb1分区的挂载目录 /dev/sdb2 2.0G 3.1M 1.9G 1% /date2 /dev/sdb3 3.0G 4.6M 2.8G 1% /date3 /dev/sdb5 103M 1.6M 96M 2% /date5
13、用vim打开/etc/fstab文件,设置开机自动挂载,设置完成后wq推出并存。
dev/mapper/vg_ftp-lv_root / ext4 defaults 1 1 UUID=57b259bd-6076-4dfe-b232-24b97a3cd764 /boot ext4 defaults 1 2 /dev/mapper/vg_ftp-lv_swap swap swap defaults 0 0 tmpfs /dev/shm tmpfs defaults 0 0 devpts /dev/pts devpts gid=5,mode=620 0 0 sysfs /sys sysfs defaults 0 0 proc /proc proc defaults 0 0 /dev/sdb1 /date1 ext4 defaults 0 0 #要按照这个格式来写,1,2,3,5,这个几个分区进就 /dev/sdb2 #这里是分区 /date2 #这里是挂载点 ext4 defaults 0 0 是我们开机需要自动挂载的,要按照这个模式来写 /dev/sdb3 /date3 ext4 defaults 0 0 /dev/sdb5 /date5 ext4 defaults 0 0
小白实验笔记,不知之处还请打算指正。
本文出自 “交流” 博客,请务必保留此出处http://sxct168.blog.51cto.com/824373/1624020
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。