迁移用户数据到独立分区

    Linux操作系统中,/home目录下为各个普通用户的家目录,主要用于存放用户的配置信息及相关文件。若安装操作系统时,采用了home目录与根目录处在同一分区的分区策略,那么随着用户数据较多,很有可能将分区空间耗尽,导致系统崩溃。所以最好是将用户数据所在目录放在一个独立的分区上,但由于/home目录下已有一些用户数据,要想将home目录建立在一个独立的分区上,需要先迁移原有用户数据。
    在迁移数据前,应提前通知用户系统维护期间禁止登陆,否则可能导致数据丢失。

1 划分分区

这里写图片描述

    使用fdisk命令划分新的分区,fdisk的子命令p可以列出当前分区的状况,如上图,当前已有sda1、sda2、sda3、sda4、sda5五个分区;子命令n用来划分分区,可以指定初始扇区和终止扇区的位置(本例中初始扇区采用默认值,终止扇区在初始扇区的基础上增加10G),如图划分了一个10G大小的分区;子命令w将修改写入磁盘并退出。

这里写图片描述

    划分分区后极有可能出现磁盘分区表与内存中缓存的分区表不同步的情况,如上图所示,WARNING提示分区表不同步,需手动同步分区表。在CentOS7中使用partprobe 命令同步分区表。

这里写图片描述

   同步后使用lsblk命令可以看到新分的sda6分区。

这里写图片描述

2 创建文件系统

   接下来需要为sda6创建文件系统,使用mkfs.ext4命令可以为分区创建ext4格式的文件系统。

这里写图片描述

    创建完文件系统后可用blkid命令查看,如下图,sda6的文件系统已成功创建为ext4。

这里写图片描述

3 迁移数据

    接下来便可以将/home下原有数据迁移至新分区上了,但由于/dev/sda6是磁盘设备,无法直接被用户使用。若要访问,需先将/dev/sda6挂载到某个目录上。
    使用mkdir命令创建一个目录当做挂载点,然后使用mount命令将/dev/sda挂载到该目录下,挂载完后使用df命令可查看挂载是否成功,如下图。这样,访问/mnt/home目录就相当于访问/dev/sda6。

这里写图片描述

   将当前家目录下的数据拷贝至/dev/sda6。

这里写图片描述

4 删除原数据

    使用init 1 切换至单用户模式,以切断网络,防止系统维护期间用户访问数据丢失。此时远程控制软件(SecureCRT、Xshell等)已无法使用,需要在机器前操作。

这里写图片描述

    如下图,已切换至单用户模式,输入root用户的口令即可。

这里写图片描述

    在该模式下,删除原来的家目录rm -rf /home/*(事先最好做一份家目录的备份)。

5 将独立分区挂载至home目录

这里写图片描述

   接下来只需要将/dev/sda6挂载到/home目录下,以后在/home目录下修改数据就是在独立分区/dev/sda6上修改数据。为达到开机自动挂载的效果,需将挂载信息写入配置文件/etc/fstab,如上图最后一行所示:
   UUID=8d59a22c-b571-4644-9876-dffde4a9b62c唯一标识了/dev/sda6分区;/home是挂载点;ext4是/dev/sda6的文件系统类型;defaults指明了挂载选项;第一个0处表示备份频率,0表示不备份;第二个0处表示是否进行文件系统的检查,0表示不检查。

这里写图片描述

  保存退出后还未生效,需使用mount -a命令使配置生效,将/dev/sda6挂载到/home目录。
  使用init 6 重启,重启后若可以正常访问/home目录,则数据迁移成功。

 

 1350

原创文章,作者:以梦为马,如若转载,请注明出处:http://www.178linux.com/84686

(0)
以梦为马以梦为马
上一篇 2017-08-13
下一篇 2017-08-13

相关推荐

  • 脚本编写规范

    脚本编写规范 脚本名称以.sh结尾,名称见名知意 尽量使用UTF-8编码,注释及输出尽量使用英文 一般给到执行权限,但一些关于变量的配置文件不用加执行权限 执行的时候可以使用bash执行,或者使用bash -x 调试执行 脚本首行以#!/bin/bash,无空格,不带选项 第二行为空格或者添加一行空注释 开始注释内容:  #!/bin/bash&n…

    Linux干货 2017-04-16
  • 循环语句

    冯罗伊曼体系架构 1. 输入设备 2. 输出设备 3. 存储器 4. 运算器 5. 控制器 转义序列:\\, \t , \r , \n , \”,  \’ Python:是动态语言,强类型语言 算数运算符 + – */ % ** /是自然除,//是整除 位运算符 & |  ~  ^  <<  >> 原码 5=&gt…

    Linux干货 2018-03-26
  • linux终端类型

           关键词:linxu终端类型,串行端口终端,伪终端,控制终端,控制台终端,虚拟终端        摘要:终端是一种字符型设备,它有多种类型,通常使用tty来简称各种类型的终端设备。tty是Teletype的缩写。在Linux系统的设备特殊文件目录/dev/下,终端特殊…

    Linux干货 2016-10-19
  • 闲玩Xen

    简述理论 虚拟化的实现 模拟技术:模拟计算机的主要硬件硬件并协调工作,但是效率很低下,所以不常用 完全虚拟化:针对cpu的虚拟来分为,基于BT技术(Guset的特权指令在ring1,Host的特权指令在ring0,Guest的特权指令由Host的ring0来参与边翻译边执行)的完全虚拟化,基于HVM(硬件辅助,Guest的特权指令在ring0,Host的特权…

    Linux干货 2016-09-26
  • IP SAN实验

    实验环境 centos7 serverx2 IP:192.168.0.206    192.168.0.207 iscsi-server端的配置 准备磁盘设备 安装程序包 创建target 创建lun 授权   首先添加两块硬盘 sdb sdc 然后安装软件包 yum -y install epel-release yum -y install s…

    2017-12-16
  • 第二周总结(文件操作命令、用户及组权限管理、BASH命令行展开与执行命令返回值、命令别名使用、执行结果引用、通配符使用)

    1、常见文件管理命令分类         1)文件内容查看(cat、tca、more、less、head、tail)         2)文件字符替换(tr、sed、awk等)         3)文…

    Linux干货 2017-01-31