磁盘格式化,磁盘挂载,手动增长swap空间

磁盘格式化

  • 对磁盘分区以后,若是不格式化是没办法使用的,因此须要格式化
  • 安装centos7时,默认的文件系统是 xfs 格式
  • 要查看硬盘分区的文件系统格式,可使用 mount 命令查看
  • 使用mount命令后能够看到以上信息,可是不少与分区无关的信息
  • 主要看开头为 /dev/ 的信息,这些才是硬盘分区信息
  • 能够看到两个分区,/dev/sda3(/) 和 /dev/sda1(/boot) 格式是 xfs
  • swap分区没法在这里查看,swap分区的文件系统格式是swap分区本身独有的格式,与其它分区都不一样
  • cat /etc/filesystems 查看这个文件能够看到centos支持的文件系统格式
  • 默认格式是 xfs
  • 格式化硬盘可使用 mk2fs 和 mkfs 两个命令来操做
  • 其中mk2fs是专用于ext文件系统的工具
  • 想格式化成 xfs 文件系统须要使用 mkfs 命令
  • mke2fs -t ext4 /dev/sdb1
  • 上面是格式化ext4格式的操做方式,使用了mk2fs命令
  • mkfs.xfs -f /dev/sdb1 就能够将sdb1格式化成xfs格式,-f参数是强制格式化的意思
  • 由于原来的硬盘已经格式化了一次,mkfs再格式化就须要强制格式化,覆盖原来的文件系统格式
  • 参数 -b 能够指定块的大小,若是存储系统存放的文件都比较大,块能够设置大一些
  • 这样文件检索速度会很快
  • 若是存放大量小文件,块就要设置小一些,否则会浪费不少空间
  • 如图,使用mke2fs对硬盘格式化的时候,会预留一些空间给root用户
  • 这里显示是5%的预留空间,若是硬盘很大,那么这5%的预留空间就很浪费了
  • mk2fs -m 1 /dev/sdb1 这里参数 -m 能够自定义预留多少空间给root
  • 这里 -m 1 表示预留 1% 的空间给root,若是输入 -m 0.1 那么就是预留0.1%的空间
  • 若是不知道一个分区的文件系统格式是什么
  • 可使用 blkid /dev/sdb1 查看sdb1分区的文件系统格式
  • 这里显示为 ext2 文件系统格式
  • 这里 -t 参数就能够指定文件系统格式为 ext4,这样格式化后文件系统就是ext4格式了
  • 如图,能够看到,格式化sdb1的信息
  • 有196608个inodes 和 786432个blocks,blocks的数量大概是inodes数量的四倍
  • 也就是说4个blocks组成一个inode
  • 如图,-i 参数能够自定义多少个blocks组成一个inode
  • 1个block = 4kb ,这里-i参数后面设置为 8192 = 8kb, 8kb = 2个blocks
  • 这样就可使两个blocks组成一个inode,能够看到,inodes数量变成原来的两倍为393216

磁盘挂载

  • 硬盘就算没有分区,也是能够格式化的
  • 上图就是直接格式化没有分区的硬盘,由于以前分过区,而后把分区删除了,可是还留下了一些分区信息
  • 使用 -f 参数就能够强制格式化
  • 用blkid查看 sdb 文件系统格式,能够看到格式为xfs
  • 硬盘只有格式化以后,才能够挂载
  • 如图,使用 mount /dev/sdb /mnt/ 这样就能够把sdb文件挂载到/mnt/目录下
  • 这样就算成功挂载了,成功挂载后,就可使用df -h 查看硬盘了
  • 如今使用df -h 后,能够看到 /dev/sdb 的硬盘信息了
  • 这个时候使用 mount 命令就能够看到/dev/sdb的信息了
  • 挂载硬盘后,若是不想要了,想把硬盘卸载掉
  • 可使用 umount /dev/sdb 这样就能够把sdb硬盘卸载掉
  • 能够看到sdb不见了
  • 可是有一个问题,若是用户在当前磁盘内,也就是所在的目录在当前磁盘内
  • 好比说/mnt/目录,由于这个硬盘是挂载在/mnt/目录下的
  • 因此用户进入/mnt/目录的时候,就处于这个硬盘内了,没法在这个状态下卸载这个硬盘
  • 须要退出当前的磁盘才能够卸载,也就是说退到挂载点以外,/mnt/外面的目录
  • 这样才能够卸载这个挂载点下的硬盘
  • 也可使用 -l 参数,如图,用户就在/mnt/目录下
  • 使用了 -l(懒人模式)参数后就能够在/mnt/目录下卸载/mnt
  • 卸载/mnt会把/mnt目录里面的全部挂载硬盘都卸载掉
  • 命令 mount -o ,-o 参数能够设置一些options,就是一些磁盘的设置
  • 好比 mount -o rw 磁盘就能够读写,mount -o ro 磁盘就只能读不能写
  • 使用 man mount 进入说明文档,使用 /defaults 搜索 defaults 关键字
  • 找到这行信息,这里说明,不修改options的话,默认设置是这些
  • 分别是 rw,suid,dev,exec,auto,nouser,async
  • 可使用 -o 参数来修改这些默认设置,不修改的话就是以上设置
  • rw表明可读写,suid表明磁盘里的文件能够设置s权限,dev没什么用通常不动
  • exec表明可执行,就是能够运行磁盘里的文件,若是改为noexec,那么磁盘里的文件就不能执行了
  • auto表明自动挂载,nouser表明普通用户不能挂载磁盘,就是普通用户没有挂载的权限
  • 通常写文件的时候,都是先在内存写完,过一段时间再保存到硬盘里面去
  • async就表明这种状态
  • 若是修改为 sync 的话,那么每在内存写一个字符,就会同时写入硬盘,内存边写硬盘边存
  • 这样对于硬盘的负荷就会很大,容易故障,因此通常不设置为sync都是保持默认async
  • 每一个选项都有正有反,好比 nouser 相对的就是 user,exec 相对的就是 noexec 等反义词
  • mount -o remount,rw 这样能够从新挂载并把这个位置的设置变为rw,原来多是ro之类的
  • vi /etc/fstab 打开磁盘配置文件,系统启动的时候挂载哪些磁盘就是根据这个配置文件来的
  • 新增硬盘以后,须要把硬盘信息写入 fstab 配置文件里面
  • 如图,第一列能够写路径,/dev/sdb,也能够写UUID,做用是同样的,表示挂载哪一个硬盘
  • 使用blkid能够查看到硬盘的UUID
  • 第二列表示要挂载的位置,例如 /mnt 或者其它目录路径
  • 第三列要写文件系统格式,格式化时是什么格式,这里就写什么格式
  • 第四列是一些硬盘设置选项,通常不须要修改,就用默认设置,因此这里是 defaults
  • 第五列是系统备份设置,能够选1和0,通常都不须要备份,因此通常都使用默认的0
  • 第六列是启动时是否检测磁盘,根目录 / 须要设置为1,就是要检测,只能设置一个磁盘为1,不能设置两个1
  • 其它磁盘看状况设置0或者2,0就是不须要检测,2就是要检测

手动增长swap空间

  • 系统安装时,设置了8g swap空间,可是若是后面须要使用更大的swap空间,就须要手动增长
  • dd命令能够用来操做磁盘,能够读写磁盘
  • if 指定从哪里读取数据,/dev/zero 文件能够不断产生0
  • of 指定目标地址,将zero文件产生的0写入/tmp/newdisk这个文件
  • bs=1M bs能够指定块的大小,这里表示一个块的大小是1MB
  • count=100 这里表示有100个块,count表明数量,数量是100
  • 1个块=1MB, 有一百个块,说明空间大小是100MB,这就是newdisk文件的大小
  • newdisk就是一个虚拟磁盘
  • 执行dd命令后,用du查看一下/tmp/newdisk的状态
  • 还须要执行格式化,使用 mkswap -f /tmp/newdisk 格式化一下
  • 使用free -m 查看一下目前的swap空间,大小是2047
  • 使用 swapon /tmp/newdisk 将newdisk加载到swap空间里面去
  • 再使用 free -m 查看,能够发现swap的空间增长了100变成了2147
  • 加载的过程当中能够看到系统提示权限不安全,应该修改成0600
  • 为了安全起见,使用 chmod 0600 /tmp/newdisk 将权限修改成0600
  • 若是不想使用这个增长的swap空间了,能够卸载下来
  • 使用 swapoff /tmp/newdisk 把这个磁盘卸载掉
  • 而后可使用 rm -f /tmp/newdisk 把这个文件删除
相关文章
相关标签/搜索