当前位置: 首页 > news >正文

Linux系统用户迁移到其它盘方法

步骤 1:创建脚本文件

        使用文本编辑器(如 nano 或 vim)创建脚本文件,例如 migrate_users.sh:

sudo nano /root/migrate_users.sh


脚本代码如下:

#!/bin/bash
# 迁移用户主目录到 /mnt/sdb1 的批量脚本# 用户列表(按需修改)
USERS=("用户名1" "用户名2" "用户名3")# 检查挂载点是否存在
if [ ! -d "/mnt/sdb1" ]; thenecho "错误:/mnt/sdb1 不存在或未挂载!"exit 1
fi# 循环处理每个用户
for USER in "${USERS[@]}"; doecho "正在处理用户: $USER"# 1. 复制目录(保留权限)sudo rsync -av --progress "/home/$USER/" "/mnt/sdb1/$USER/"# 2. 修改用户主目录路径sudo usermod -d "/mnt/sdb1/$USER" "$USER"# 3. 修复所有权和权限sudo chown -R "$USER:$USER" "/mnt/sdb1/$USER"sudo chmod 700 "/mnt/sdb1/$USER"echo "用户 $USER 迁移完成"echo "----------------------------------"
done
echo "所有用户迁移完毕!请手动验证数据完整性。"


步骤 2:赋予脚本执行权限

sudo chmod +x /root/migrate_users.sh


步骤 3:运行脚本


测试运行(空跑模式)首次运行时,建议添加 -n 参数测试 rsync 的模拟操作(不实际复制文件):

sudo bash /root/migrate_users.sh -n


正式运行
确认测试无误后,正式执行:

sudo bash /root/migrate_users.sh


步骤 4:验证迁移结果


检查用户主目录:
# 查看用户配置

grep 用户1 /etc/passwd

# 应显示主目录为 /mnt/sdb1/用户1
切换用户测试:

sudo su - 用户1
pwd  # 应输出 /mnt/sdb1/用户1
exit

验证文件权限:

ls -ld /mnt/sdb1/用户1  # 权限应为 drwx------(700)

关键注意事项


        备份数据
        强烈建议 在操作前备份 /home 和 /mnt/sdb1:

sudo tar -czvf /backup/home_backup.tar.gz /home
sudo tar -czvf /backup/mnt_sdb1_backup.tar.gz /mnt/sdb1


停机时间
确保迁移时用户未登录或运行进程。可通过以下命令检查:

who          # 查看当前登录用户
lsof /home   # 检查文件占用情况

挂载持久性
        确保 /mnt/sdb1 在 /etc/fstab 中配置,避免重启后失效:

echo "/dev/sdb1 /mnt/sdb1 ext4 defaults 0 0" | sudo tee -a /etc/fstab

http://www.dtcms.com/a/148595.html

相关文章:

  • “融合Python与机器学习的多光谱遥感技术:数据处理、智能分类及跨领域应用”​
  • 在Windows上安装Git
  • AiEditor v1.3.8 发布
  • LeetCode---整数反转
  • 每日算法-250422
  • JavaFX实战:从零到一实现一个功能丰富的“高级反应速度测试”游戏
  • IO流详解
  • 【MCP Node.js SDK 全栈进阶指南】中级篇(3):MCP高级资源设计
  • API路由大法:统一前缀,化繁为简
  • C# MP3 伴奏
  • 仓储物流管理系统开发:提升企业供应链效率的关键技术
  • 为啥低速MCU单板辐射测试会有200M-1Ghz的辐射信号
  • 【教程】ESP32制作为ISP烧录器
  • 三网通电玩城平台系统结构与源码工程详解(一):系统概述与前端搭建
  • 如何精准查询住宅IP?工具、方法与注意事项
  • 凤凰架构-笔记
  • 精益数据分析(13/126):洞察数据关系,灵活调整创业方向
  • 近几年字节测开部分面试题整理
  • 【YOLOv8改进 - C2f融合】C2f融合SHViTBlock:保证计算效率的同时,能够有效地捕捉图像的局部和全局特征
  • 智慧城市新标配:苏州金龙无人清扫车开启城市清洁“智”时代
  • 同样的html标记,不同语言的文本,显示的字体和粗细会不一样吗
  • 【AAudio】A2dp sink创建音频轨道的源码流程分析
  • TCP/IP协议新手友好详解
  • 使用C#写的HTTPS简易服务器
  • Rest Client插件写http文件直接发送请求
  • 深度解析:基于卷积神经网络的宠物识别
  • Feign 深度解析:Java 声明式 HTTP 客户端的终极指南
  • Linux操作系统--进程程序替换and做一个简单的shell
  • Node.js 模块导入的基本流程
  • 【操作系统间文件共享_Samba】一、Samba 技术基础与核心功能剖析​