迁移用户数据到独立分区

    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 21:57
下一篇 2017-08-13 22:57

相关推荐

  • 简单明了的Linux常用端口说明

    由于Linux常用端口很多,为了查看方便,所以特意整理了一些,详情如下        查看Linux常用端口   cat /etc/services # The Well Known Ports are those from 0 through 1023. 众所周知的端口是从0到1023。 # The Reg…

    Linux干货 2017-06-11
  • 文件权限

     本篇博客是对文件权限的简单介绍,将会简述下权限的数字表现形式,还有字母表现形式,还有一些特殊的suid、sgid、sticky的权限介绍,还有对ACL权限的简述。  一、权限的定义     关于权限,百度百科的解释如下:权限(privilege)是指某个特定的用户具有特定的系统资源使用权力,像是文…

    Linux干货 2017-07-29
  • ☞文件服务器 – vsftpd

    文件服务器 – vsftpd 概述 FTP协议 vsftpd的配置文件 vsftpd + pam + file_db + virtual_vsftp_user vsftpd + pam + mysql + virtual_vsftp_user 登录时错误类型 总结 文件服务器是一种专供其他电脑访问文件和存储的程序。文件服务器通常比一般的个人电脑拥…

    Linux干货 2016-10-15
  • 超文本传输安全协议—HTTPS

        超文本传输安全协议(英语:Hypertext Transfer Protocol Secure,缩写:HTTPS,常称为HTTP over TLS,HTTP over SSL或HTTP Secure)是一种通过计算机网络进行安全通信的传输协议。HTTPS经由HTTP进行通信,但利用SSL/TLS来加密数据包。H…

    Linux干货 2017-08-07
  • 运维工程师技能需求排行

    这是我今天在拉勾网搜索运维,翻完了4四页也招聘信息之后得到的,我的目的是想要看看之后的学习,哪个更应该成为重点,有些在我意料之中,有些还真的没想到,算是努力了一个小时的收获吧,分享给大家。
    注意:其中的看法仅代表个人观点,很多都是依靠我自己的学习经验和工作经验累积的

    Linux干货 2017-12-12
  • 马哥教育网络班20期+第六周博客作业

    1、复制/etc/rc.d/rc.sysinit文件至/tmp目录,将/tmp/rc.sysinit文件中的以至少一个空白字符开头的行的行首加#; ~]# cp -R /etc/rc.d/rc.sysinit /tmp/ ~]# vim /tmp/rc.sysinit   &nb…

    Linux干货 2016-07-22