双系统之重装linux系统并保持原软件和配置不变(亲测好用推荐)
本文最后更新于:4 个月前
前言
我第一次装ubuntu时,只是想学会使用linux操作系统,因此装的双系统,并且只给ubuntu分派了小小的20G硬盘,以至于后面根本不够用,中间又从windows压缩10G挂载到根目录的一个目录下,但后面还是不够用,而且自动挂载的空间用起来不方便。而且现在已经习惯在linux下编程了,但是平时办公又用习惯了windows,而且windows下的office一系列功能确实要强大许多。于是决定继续双系统,在某个周末鼓起勇气要重装ubuntu系统,给它多分配一些空间。
重装ubuntu并完整恢复原来的环境和软件,如编程环境、IDE、其他应用如Chrome、办公文件。来吧,兄弟,我有重装十多遍的教训要告诉你,每个步骤都带图,要是看不懂,你打我。
面临以下问题:
- 怎么备份ubuntu系统里的数据?
- 怎么完全卸载ubuntu?
- 怎么重装?
- 怎么恢复环境和数据?
开始操作前
我有很多IDE诸如idea,pycharm,webstore等,还有jdk、python、node的环境,还有装得wine+QQ,wine+钉钉,还有chrome等等,还有一些服务的配置如ssh服务等等,我希望我这些东西都能在重装系统后能够一如往常的使用。
我们的思路是先把数据备份,然后卸载ubuntu重装后再把数据恢复,下面马上操作起来。
一、数据备份
准备一个U盘,用tar命令打包归档,保留各文件之间的权限信息。
1. 切换root并来到u盘挂载的目录
2. tar命令备份目录
1 |
|
上面的命令的效果是把/usr
打包为usr.tgz
并存放在当前的目录下。
除了/usr
还有/opt
/home
,这三个必须打包备份,然后还有自己定义的目录,比如我有个自定义的目录/new
,我也打包好。
/etc
可以打包也可以不打包,如果你希望新装的系统继续保持现在的各个用户名和密码,就也打包。至于其他目录不用打包了,比如/boot
/bin
cdrom
dev
media
mnt
等,打包了也是没用的,因为他们要么在新系统无法使用,要么就算效果和信息系统一样,比如/bin
里面都是命令,新系统并不缺命令, 再如/media
是根本派不上用场的。(下图中我还打包了/lib
,其实不用,而且后面解压这个数据到新系统会引起驱动不适配导致系统崩溃)
二、卸载ubuntu
3. 制作U盘启动盘
关键是找好iso镜像文件,然后用刻录工具来制作启动盘。
ubuntu自带启动盘制作器,windows下也可以制作,可以参考我以前的文章
《如何安装windows和linux双操作系统?》: https://blog.csdn.net/qq_43289711/article/details/110312956.
4. 关机进入windows来卸载干净ubuntu
- (1).首先进入磁盘管理,然后选择ubuntu所在的分区直接右击然后删除卷使得其成为未分配状态。
- (2).然后win+x,选择(windows PowerShell(管理员))然后按照下面命令操作再搜索记事本,以管理员身份打开,然后如图操作删除ubuntu:
1
2
3
4
5
6
7diskpart # 进入系统dispart组件
list disk # 查看系统所有磁盘,并找到window系统所安装的磁盘,(会出现列表,比如你有两个硬盘,0和1)
select disk $ # 选择磁盘 $ 指window所安装的磁盘(列表,磁盘后的数字)(例如select disk 0)
list partition # 找到类型为系统的分区(列表会显示)
select partition $ # $为类型为系统的分区 (例如select partition 0)
assign letter=p # 将分区分配到磁盘P中,p是直接写得,不和c,d,e等盘冲突就可以了
exit # 退出diskpart
然后在回到管理员命令行,移除p盘
1 |
|
至此,ubuntu无论是磁盘上的数据,还是开机时的条目,都被清理掉。
三、安装ubuntu
5. 插U盘重启,进入BIOS选择U盘启动盘。
依旧可以参考我以前的文章
《如何安装windows和linux双操作系统?》: https://blog.csdn.net/qq_43289711/article/details/110312956.
每个不同的机器要按不同的键来进入BIOS,我的华硕是esc,所以我在开机时多按几次,
依次进入下面两个画面:
选择Install Ubuntu就开始安装。
6. 进入ubuntu安装向导
这里基本都很简单,语言选中文简体,正常安装,在最后的磁盘分区上选择与windows共存,然后开始安装把分区设置写入硬盘。不用多久就可以安装完成。
!!!注意!!注意!!!:在设置你第一个用户名的时候,一定要设置成你上一台机器第一个设置的用户,也就是你的sudo用户,如果你不这样的话,那么在后面,请不要导入/etc
,否则覆盖用户后,系统会找不到当前登录的用户,之后关机重启会有各种问题(很有可能循环登录无法进入图形界面),并且家目录也需要自己手动的复原了。
四、恢复数据
7. 切换root并进入保存数据的U盘的数据所在目录
有同学可能就疑惑了,不知到root用户的密码,因为自己只设置了当前的sudo用户的密码。那么我来教你改root的密码。
1
2
3
4>sudo -i
>可以输入当前用户密码然后就切换root用户了,然后再:
>passwd root
>设置新密码
8.恢复数据
使用tar
命令来恢复数据
1 |
|
这条命令的意思是把usr.tgz
解压到/
下,并且新系统的/usr
就会被替代掉。
对应自己备份的数据来操作所有的包。
==注意!!!!注意!!!!注意
不是任何原来系统的包都可以随意替代新系统的,除了本文讲到的/usr
/home
opt
和新系统没有的自定义目录外,其他包都是要特殊处理的,否则可能系统关机后就等着重装吧。==
我们的配置信息都在系统级配置都在/etc
,我们在将其来替代新系统的/etc
时注意:
- 开始说好的,当前第一次注册的用户名要和以前的一样
- 把新系统的
/etc/fstab
文件先换个地方保存起来,等到整个/etc
被替换后,再把它替换回来,因为它里面保存的是当前系统挂载的硬盘的物理首地址,这个地址每次重装都不一样,如果被修改了,新系统在重启时直接找不到自己的硬盘,你就可以再次重装了。
大功告成,检查有无异常
一般都每什么问题,我自己现在空间从之前的20G变成现在的74G
然后,我的软件也都可以用,数据也都在,和重装前感觉一样
再看编程环境:
都还在,还好还好。
本博客所有文章均采用 CC BY-SA 4.0 协议,除友链外 ,转载请注明出处!