Linux将/home目录合并到/(根)目录

一、Linux分区背景

linux中,每个磁盘是以挂载到目录的形式使用。

例如:

当磁盘1挂载到/(根)目录、磁盘2挂载到/home目录时,
在/(根)目录下创建文件夹或文件时,存储在磁盘1中,
在/home目录下创建文件夹或文件时,存储在磁盘2中。

二、具体步骤

1. 查看当前磁盘分区情况

# 别忘了先切root用户

[root@localhost ~]# df -lh
Filesystem               Size  Used Avail Use% Mounted on
/dev/mapper/centos-root  925G   47G  879G   6% /
devtmpfs                 1.9G     0  1.9G   0% /dev
tmpfs                    1.9G  116K  1.9G   1% /dev/shm
tmpfs                    1.9G  191M  1.7G  11% /run
tmpfs                    1.9G     0  1.9G   0% /sys/fs/cgroup
/dev/sda1                494M   97M  398M  20% /boot
tmpfs                    376M     0  376M   0% /run/user/0
/dev/mapper/centos-home  2.0G   33M  2.0G   2% /home

注:只需注意/dev/目录下的就好,其他应该是系统处理不用管。
可以看到这里只有三个,分别是/dev/mapper/centos-root、/dev/sda1、/dev/mapper/centos-home

2. 删除/home分区

# 把/home内容备份,然后将/home文件系统所在的逻辑卷删除,扩大/root文件系统,新建/home:

tar cvf /tmp/home.tar /home    #备份/home  没东西可以不备份

# 记录一下 home下有多少可用空间 ,比如2G,后面扩展根目录要用
# 如果无法卸载,先终止使用/home文件系统的进程,kill
# 卸载/home

umount /home

# 删除/home所在的lv,如果提示正在文件系统正在使用中,就先终止进程,使用下面第一段的命令找到进程并杀死

fuser -m /dev/mapper/centos-home
kill -9 <把上一条命令得到的所有结果的字母去掉,纯数字复制到这里>
lvremove /dev/centos/home

3. 扩展/(根)目录

# 扩展/root所在的lv,增加/home的大小

lvextend -L +2G /dev/centos/root

#扩展/root文件系统,(xfs系统必要)

xfs_growfs /dev/centos/root

4. 恢复/home目录文件

# 重新创建home目录

mkdir -p /home && cd /home

# 恢复备份的文件

tar xvf /tmp/home.tar

5. 编辑/usr/stab文件

三、完工

# 现在如下:

[root@localhost ~]# df -lh
Filesystem               Size  Used Avail Use% Mounted on
/dev/mapper/centos-root  925G   47G  879G   6% /
devtmpfs                 1.9G     0  1.9G   0% /dev
tmpfs                    1.9G  116K  1.9G   1% /dev/shm
tmpfs                    1.9G  191M  1.7G  11% /run
tmpfs                    1.9G     0  1.9G   0% /sys/fs/cgroup
/dev/sda1                494M   97M  398M  20% /boot
tmpfs                    376M     0  376M   0% /run/user/0
/dev/mapper/centos-home  2.0G   33M  2.0G   2% /home
  • 4
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 要更新整个目录,可以使用以下命令: ``` git pull ``` 这个命令会从远程仓库拉取最新的代码,并将其合并到您的本地仓库中。如果您之前已经克隆了仓库,这个命令会更新整个目录。 ### 回答2: 在Linux操作系统中,使用Git更新整个目录可以通过以下命令完成: 1. 首先,进入需要更新的目录,可以使用cd命令切换到相应的目录。例如,要更新/home/user/project目录,可以使用以下命令切换到该目录: ``` cd /home/user/project ``` 2. 然后,使用git pull命令进行更新。该命令会从远程存储库(如GitHub)下载最新的更改并应用到本地目录中。例如,如果项目的远程存储库名为origin,可以使用以下命令进行更新: ``` git pull origin ``` 如果项目使用的是其他远程存储库,需要将origin替换为相应的远程存储库名称。 3. Git会检查远程存储库是否有新的提交,并将任何新的更改合并到当前目录中。如果有冲突,Git会提示你解决冲突才能完成更新。 这样,整个目录就成功地更新到了最新版本。如果想要更新多个目录,只需重复以上步骤,分别进入不同的目录并执行git pull命令即可。 ### 回答3: 要在Linux系统中使用Git更新整个目录,可以使用以下命令: 1. 首先,打开终端,进入要更新的目录所在的工作目录。 2. 使用`git status`命令查看当前目录的Git状态,确认是否有未提交的修改。 3. 如果有未提交的修改,请先使用`git add .`命令将所有修改添加到暂存区。 4. 接下来,使用`git stash`命令将修改暂存起来,以便在更新后再恢复。 5. 使用`git pull`命令将远程仓库中的最新代码拉取到本地。 6. 如果有冲突产生,Git会自动尝试合并代码。如果合并成功,可以直接进入下一步。如果合并失败,需要手动解决冲突。 7. 使用`git stash apply`命令恢复之前暂存的修改。如果恢复时出现冲突,需要手动解决冲突。可以使用`git stash drop`命令丢弃已恢复的修改。 8. 最后,使用`git status`命令再次确认目录的Git状态,确保更新成功。 通过以上步骤,可以使用Git在Linux系统中更新整个目录。这些命令可以确保在更新过程中保留未提交的修改,并且处理冲突时提供一些解决方案。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值