我有一个 ubuntu 11.10,它在 2013 年 5 月停止了支持,现在我想重新安装到最新的 LTS,即 12.04。我的问题是关于我当前的分区和备份。有没有一种安全的方法可以将我的数据备份到一些本地分区上,而不是将文件复制到 DVD/外部驱动器中(这在我的情况下是无法解决的)。以下是显示我的磁盘的系统命令:
$ lsblk
NAME MAJ:MIN RM SIZE RO MOUNTPOINT
sda 8:0 0 232,9G 0
├─sda1 8:1 0 48,8G 0
├─sda2 8:2 0 63G 0
├─sda3 8:3 0 1K 0
├─sda4 8:4 0 53,7G 0 /
├─sda5 8:5 0 18,6G 0
├─sda6 8:6 0 25,5G 0
└─sda7 8:7 0 23,3G 0 [SWAP]
sr0 11:0 1 1024M 0
和
$ sudo fdisk -l
[sudo] password for xyz:
Disk /dev/sda: 250.1 GB, 250059350016 bytes
głowic: 255, sektorów/ścieżkę: 63, cylindrów: 30401, w sumie sektorów: 488397168
Jednostka = sektorów, czyli 1 * 512 = 512 bajtów
Rozmiar sektora (logiczny/fizyczny) w bajtach: 512 / 512
Rozmiar we/wy (minimalny/optymalny) w bajtach: 512 / 512
Identyfikator dysku: 0xc3ffc3ff
Device Boot Beginning End Blocks ID System
/dev/sda1 * 2048 102402047 51200000 7 HPFS/NTFS/exFAT
/dev/sda2 215044096 347080703 66018304 7 HPFS/NTFS/exFAT
/dev/sda3 347082750 488392064 70654657+ 5 Extended
/dev/sda4 102402048 215042047 56320000 83 Linux
/dev/sda5 395905923 434975939 19535008+ 83 Linux
/dev/sda6 434976003 488392064 26708031 83 Linux
/dev/sda7 347082752 395905023 24411136 82 Linux swap / Solaris
一开始我买机器时预装了 Windows Vista(该死!)然后我安装了 Linux(我现在用的就是这个)。主引导记录中的 Windows 程序已被 grub 覆盖,现在我可以用 Windows 和 Linux 启动。
这是已安装设备的列表:
$ mount
/dev/sda4 on / type ext4 (rw,errors=remount-ro,commit=0)
proc on /proc type proc (rw,noexec,nosuid,nodev)
sysfs on /sys type sysfs (rw,noexec,nosuid,nodev)
fusectl on /sys/fs/fuse/connections type fusectl (rw)
none on /sys/kernel/debug type debugfs (rw)
none on /sys/kernel/security type securityfs (rw)
udev on /dev type devtmpfs (rw,mode=0755)
devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=0620)
tmpfs on /run type tmpfs (rw,noexec,nosuid,size=10%,mode=0755)
none on /run/lock type tmpfs (rw,noexec,nosuid,nodev,size=5242880)
none on /run/shm type tmpfs (rw,nosuid,nodev)
binfmt_misc on /proc/sys/fs/binfmt_misc type binfmt_misc (rw,noexec,nosuid,nodev)
gvfs-fuse-daemon on /home/tomasz/.gvfs type fuse.gvfs-fuse-daemon (rw,nosuid,nodev,user=tomasz)
很奇怪(我不记得有这样的事),我当前的 Linux 只使用一个分区(/dev/sda4
)。但无论如何,看起来就是这样。
我的最后一个问题是:我是否能够使用现有的 Linux 分区之一进行备份并安装 ubuntu 12.04,而无需删除 Windows 或 ubuntu 11.04?我的意思是 - grub 会自动接受旧的 Windows Vista 和 2 个 Linux(旧的 11.10 和“新的”12.04)吗?安装过程中是否有任何隐藏操作可能会损害我的自定义备份分区?
我的 fstab 文件:
proc /proc proc nodev,noexec,nosuid 0 0
# / was on /dev/sda4 during installation
UUID=d44e89f5-9da2-48eb-83b3-887652ec95d2 / ext4 errors=remount-ro 0 1
# swap was on /dev/sda7 during installation
UUID=bbe50535-ba57-434a-9272-211d859f0e00 none swap sw 0 0
sda5 和 sda6 是在 Linux 安装失败期间创建的垃圾分区(这是我当前安装之前的 Linux 安装),我没有删除这些分区,但我可以访问它们(并且我可以将它们用作备份分区)。
编辑:第二个问题是:为什么 lsblk 显示 /dev/sda 有 232,9G,而 fdisk 显示它有 250.1GB?差异从何而来?
答案1
您可能已经有一个更简单的解决方案。
您的交换分区为 23.3 GiB(lsblk 的输出)!我认为这确实太多了。以前的一个经验法则是,您需要的交换空间与 RAM 一样多。考虑到现代系统管理 RAM 的能力,现在即使这样也被认为太多了,因此您应该坚持最多使用与 RAM 一样多的交换空间。
这将释放相当大一块磁盘空间(我大胆猜测是 19GiB,但这只是猜测)。如果我是对的,那么最简单的方法就是将新 Ubuntu 安装在通过重新调整交换分区大小获得的新分区中,只将 / 目录放在那里。然后,可以清空当前托管 Ubuntu 11.10 的分区 sda4(即成功安装 Ubuntu 12.04 后),其中的所有系统相关内容都可以清空,并且您的主目录将完全不受影响。
问题的答案:
edit: second question is: why does lsblk show /dev/sda having 232,9G while fdisk shows that it has 250.1GB? Where does the difference come from?
区别在于 lsblk 使用新单位 GiB(读作 GibiBytes),而较旧的实用程序 fdisk 使用 GB。您必须记住:
1 GiB = (1024)^3 bytes = 1.073741824 GB
因此
250 GB = 250 * 10^9 /(1024)^3 GiB = 232.830... GiB
请参阅“了解磁盘测量”部分此网页。
答案2
你能备份到任何具有足够可用空间的分区;但是,这只能保护您免受一小部分潜在风险。例如,如果您在升级 Ubuntu 时意外创建了一个全新的分区表,则备份到同一磁盘将毫无用处。我强烈建议您备份到外部介质。如果出于某种原因这不方便,请投资硬件和/或知识以使其变得方便。这不仅对现在有益,而且对未来也有益;磁盘可能会发生故障,无论是物理故障还是软件问题(错误、人为错误等)。
答案3
是的,一种方法是:
您可以使用 Ubuntu 附带的备份应用程序并将备份位置设置为 sda5 或 sda6。否则,您可以直接将所需文件复制并粘贴到这些位置。在 12.04 安装期间,仅格式化根分区 (/dev/sda4),无需为交换分区分配 23.3G。建议将交换大小分配为 RAM 大小的两倍。
另一种方法是:
您只需通过更新管理器即可正式从 11.10 升级到 12.04。这样,您的数据和已安装的软件将得到保留,并且您的操作系统将升级到 12.04。