在 Ubuntu 中,deluser(或 userdel)删除用户后,默认是不可直接“恢复”的,因为用户信息(如 /etc/passwd、/etc/shadow、/etc/group)已经被移除。不过可以根据情况采取不同措施:
deluser 默认不会自动删除家目录,除非你用了:
deluser --remove-home 用户名
或
userdel -r 用户名
ls -ld /home/用户名
如果有,说明数据还在,只是系统“不认识这个用户”。
这是 Ubuntu 下最实际、最稳妥的恢复方法。
先查看原 UID(如果家目录还在):
ls -n /home/用户名
例如看到:
drwxr-xr-x 1001 user 4096 ...
说明 UID 是 1001
sudo adduser --uid 1001 用户名
或
sudo useradd -u 1001 -m -s /bin/bash 用户名
sudo chown -R 用户名:用户名 /home/用户名
✅ 这样用户“看起来”就像恢复了一样,文件权限也不会乱。
这种情况下:
rsync /backup/home/用户名 /home/
extundeletetestdiskphotorec⚠️ 删除后不要再往磁盘写数据,否则覆盖就无法恢复。
sudo tar czf user_backup.tar.gz /home/用户名
--disabled-login 代替删除sudo usermod --expiredate 1 用户名
sudo passwd -l 用户名
| 情况 | 能否恢复 |
|---|---|
| 只删用户,家目录在 | ✅ 重建用户并指定 UID |
| 用户+家目录都删 | ❌ 只能备份/数据恢复 |
| 有系统备份 | ✅ 直接恢复 |
如果你愿意,可以告诉我:
deluser 还是 userdel--remove-home我可以给你更精确的命令。