Ubuntu14.04 升级 SSD 产生的疑问

系统安装、升级讨论
版面规则
我们都知道新人的确很菜,也喜欢抱怨,并且带有浓厚的Windows习惯,但既然在这里询问,我们就应该有责任帮助他们解决问题,而不是直接泼冷水、简单的否定或发表对解决问题没有任何帮助的帖子。乐于分享,以人为本,这正是Ubuntu的精神所在。
回复
头像
admin_xyz
帖子: 199
注册时间: 2012-05-26 8:33
系统: Ubuntu 12.04

Re: Ubuntu14.04 升级 SSD 产生的疑问

#61

帖子 admin_xyz » 2014-09-10 10:43

poloshiao 写了:
viewtopic.php?p=3103694#p3103694

把你的一次備存 5 個分割區 的指令 試寫一下 貼上來 # 不要先動手
把你的一次回存 5 個分割區 的指令 試寫一下 貼上來 # 不要先動手

poloshiao 大大, 这指令我都是按照man fsarchiver 里面的格式写的,肯定没错的...

sudo fsarchiver -v savefs /mnt/xyz/boot_root_usr_var.fsa /dev/sdb1 /dev/sdb2 /dev/sdb4 /dev/sdb5

sudo fsarchiver -v restfs /mnt/xyz/boot_root_usr_var.fsa
id=0,dest=/dev/sda1 id=1,dest=/dev/sda2 id=2,dest=/dev/sda3 id=3,dest=/dev/sda4

要確認的是 :
1. 回存成功的條件之一
回存的分割區空間的 95 % 要大於備存分割區已使用的空間
最好再預留一些將來擴充的空間
使用 df 指令可以幫你檢查
可以先把你檢查的方法與結論 貼上來 看看你的結論有沒有需要修正
/mnt/xyz/boot.fsa
2. 需要把 /mnt 掛載到 另一個分割區
可以使用的空間的 95 % 要大於 5 個備存分割區已使用的空間的總和.


单一分区存储成文件后空间会变小, 如/boot 分区占42M , 回存成文件后只占36M ,我想应该是用的压缩技术吧。

查看大小我一般用 ll -h 或者 du -h

sdb 文件系统中的数据 真的不多(/home除外)
头像
admin_xyz
帖子: 199
注册时间: 2012-05-26 8:33
系统: Ubuntu 12.04

Re: Ubuntu14.04 升级 SSD 产生的疑问

#62

帖子 admin_xyz » 2014-09-10 10:59

代码: 全选


sudo fsarchiver -v savefs /mnt/xyz/boot_root_usr_var.fsa /dev/sdb1 /dev/sdb2 /dev/sdb4 /dev/sdb5

Statistics for filesystem 3
* files successfully processed:....regfiles=11317, directories=627, symlinks=279, hardlinks=0, specials=32
* files with errors:...............regfiles=0, directories=0, symlinks=0, hardlinks=0, specials=0
ubuntu@ubuntu:/mnt/xyz$ 

ubuntu@ubuntu:/mnt/xyz$ sudo du -h *.fsa
2.8G	boot_root_usr_var.fsa
ubuntu@ubuntu:/mnt/xyz$ 


poloshiao
论坛版主
帖子: 18279
注册时间: 2009-08-04 16:33

Re: Ubuntu14.04 升级 SSD 产生的疑问

#63

帖子 poloshiao » 2014-09-10 11:48

单一分区存储成文件后空间会变小, 如/boot 分区占42M , 回存成文件后只占36M ,我想应该是用的压缩技术吧。
fsarchiver 備存 本質上是 block by block 不是 file by file
但是 跟其它備存工具不同是 碰到整個 block 是空白時 跳過 不列入 備存
所以 備存檔案 (*.fsa) 可能會比 原來的分割區小
所以 回存分割區 可以比 原來的備存分割區小
Statistics for filesystem 3
* files successfully processed:....regfiles=11317, directories=627, symlinks=279, hardlinks=0, specials=32
* files with errors:...............regfiles=0, directories=0, symlinks=0, hardlinks=0, specials=0
應該是 OK
sudo fsarchiver -v restfs /mnt/xyz/boot_root_usr_var.fsa
id=0,dest=/dev/sda1 id=1,dest=/dev/sda2 id=2,dest=/dev/sda3 id=3,dest=/dev/sda4
可以試試
如果有錯誤訊息 請複製 貼上來
補充
-v 是讓終端機顯示資訊
不加 -v 速度更快
头像
admin_xyz
帖子: 199
注册时间: 2012-05-26 8:33
系统: Ubuntu 12.04

Re: Ubuntu14.04 升级 SSD 产生的疑问

#64

帖子 admin_xyz » 2014-09-11 9:06

poloshiao 写了:
现在的情况是我的U盘启动盘里面有grub2,sda3中没有grub2
A. 如果已經可以登入新的已安裝的 Ubuntu 桌面
參閱
viewtopic.php?f=139&t=461504&p=3092512#p3092512
2-4. 完整重新安裝指令 只要三條 其中 只有 /dev/sdk 需要你確認

B. 如果還無法登入已安裝的 Ubuntu 桌面
參閱
http://apexu.com/apexu/tw/modules/publi ... p?itemid=1
使用 ubuntu live CD/USB 重新安裝 grub2
B-1. 注意
/dev/sda2 挂载到 /mnt # 如果已回存成功
/dev/sda1 挂载到 /mnt/boot # 如果已回存成功
/dev/sda3 挂载到 /mnt/usr # 如果已回存成功
/dev/sda4 挂载到 /mnt/var # 如果已回存成功
/dev/sdb3 挂载到 /mnt /home
B-2. 修改 /mnt/etc/fstab 的 uuid



root@ubuntu:~# mount --bind /dev/ /mnt/dev/
root@ubuntu:~# mount --bind /sys /mnt/sys/
root@ubuntu:~# mount --bind /proc/ /mnt/proc/
root@ubuntu:~# df -h
Filesystem Size Used Avail Use% Mounted on
/cow 3.9G 614M 3.1G 17% /
/dev 3.9G 4.0K 3.9G 1% /mnt/dev
tmpfs 794M 1.2M 793M 1% /run
/dev/sdc1 15G 5.9G 9.1G 40% /cdrom
/dev/loop0 923M 923M 0 100% /rofs
none 4.0K 0 4.0K 0% /sys/fs/cgroup
tmpfs 3.9G 1.3M 3.9G 1% /tmp
none 5.0M 4.0K 5.0M 1% /run/lock
none 3.9G 76K 3.9G 1% /run/shm
none 100M 36K 100M 1% /run/user
/dev/sda2 40G 1.9G 36G 5% /mnt
/dev/sda1 453M 42M 376M 11% /mnt/boot
/dev/sda3 40G 5.1G 33G 14% /mnt/usr
/dev/sda4 9.8G 1.2G 8.1G 13% /mnt/var
root@ubuntu:~# chroot /mnt
root@ubuntu:/# grub-install /dev/sda
Installing for i386-pc platform.
grub-install: warning: this GPT partition label contains no BIOS Boot Partition; embedding won't be possible.
grub-install: warning: Embedding is not possible. GRUB can only be installed in this setup by using blocklists. However, blocklists are UNRELIABLE and their use is discouraged..
grub-install: error: will not proceed with blocklists.


重新安装的时候提示出错
头像
admin_xyz
帖子: 199
注册时间: 2012-05-26 8:33
系统: Ubuntu 12.04

Re: Ubuntu14.04 升级 SSD 产生的疑问

#65

帖子 admin_xyz » 2014-09-11 9:30

代码: 全选


root@ubuntu:~# chroot /mnt
root@ubuntu:/# grub-install /dev/sda
Installing for i386-pc platform.
grub-install: warning: this GPT partition label contains no BIOS Boot Partition; embedding won't be possible.
grub-install: warning: Embedding is not possible.  GRUB can only be installed in this setup by using blocklists.  However, blocklists are UNRELIABLE and their use is discouraged..
grub-install: error: will not proceed with blocklists.




root@ubuntu:/# sudo parted -l print
sudo: unable to resolve host ubuntu
Model: ATA PLEXTOR PX-128M6 (scsi)
Disk /dev/sda: 128GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt

Number  Start   End     Size    File system  Name  Flags
 1      1049kB  525MB   524MB   ext4
 2      525MB   43.5GB  42.9GB  ext4
 3      43.5GB  86.4GB  42.9GB  ext4
 4      86.4GB  97.2GB  10.7GB  ext4
 5      97.2GB  113GB   16.1GB  ext4


Model: ATA ST1000LM024 HN-M (scsi)
Disk /dev/sdb: 1000GB
Sector size (logical/physical): 512B/4096B
Partition Table: gpt

Number  Start   End     Size    File system     Name  Flags
 1      1049kB  1024MB  1023MB  ext4
 2      1024MB  101GB   100GB   ext4
 3      101GB   401GB   300GB   ext4
 4      401GB   501GB   100GB   ext4
 5      501GB   601GB   100GB   ext4
 6      601GB   620GB   19.2GB  linux-swap(v1)


Model: SanDisk Cruzer Fit (scsi)
Disk /dev/sdc: 16.0GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos

Number  Start   End     Size    Type     File system  Flags
 1      16.4kB  16.0GB  16.0GB  primary  fat32        boot, lba


root@ubuntu:/# update-grub
Generating grub configuration file ...
Warning: Setting GRUB_TIMEOUT to a non-zero value when GRUB_HIDDEN_TIMEOUT is set is no longer supported.
Found linux image: /boot/vmlinuz-3.13.0-34-generic
Found initrd image: /boot/initrd.img-3.13.0-34-generic
Found memtest86+ image: /memtest86+.elf
Found memtest86+ image: /memtest86+.bin
Found Ubuntu 14.04.1 LTS (14.04) on /dev/sdb2
done



poloshiao
论坛版主
帖子: 18279
注册时间: 2009-08-04 16:33

Re: Ubuntu14.04 升级 SSD 产生的疑问

#66

帖子 poloshiao » 2014-09-11 9:37

root@ubuntu:~# mount --bind /dev/ /mnt/dev/
root@ubuntu:~# mount --bind /sys /mnt/sys/
root@ubuntu:~# mount --bind /proc/ /mnt/proc/
1. 為何你又使用 root 登入 ?
你應該試試 使用 非 root 登入 (在這裡是 ubuntu)
需要使用 root 權限時 加 sudo 或 gksudo
否則 你會經常碰到一些奇奇怪怪的錯誤訊息 而找不到原因
因為 這不是 Ubuntu 的預設權限環境
2. 少了一個
sudo mount --bind /dev/pts /mnt/dev/pts
/dev/sda2 40G 1.9G 36G 5% /mnt
/dev/sda1 453M 42M 376M 11% /mnt/boot
/dev/sda3 40G 5.1G 33G 14% /mnt/usr
/dev/sda4 9.8G 1.2G 8.1G 13% /mnt/var
3. 少了一個
sudo mount /dev/sdb3 /mnt/home
root@ubuntu:~# chroot /mnt
root@ubuntu:/#
4. 沒有掛載 /home 分割區時
chroot 會失敗
grub-install: warning: this GPT partition label contains no BIOS Boot Partition; embedding won't be possible.
grub-install: warning: Embedding is not possible. GRUB can only be installed in this setup by using blocklists. However, blocklists are UNRELIABLE and their use is discouraged..
grub-install: error: will not proceed with blocklists.
5. 把下面指令 複製 貼進終端機 執行
5-1. sudo fdisk -l /dev/sda
5-2. sudo parted /dev/sda unit B print
把結果直接複製 貼上來
5-3. 已經貼出來的 就不必再貼了
viewtopic.php?p=3104474#p3104474
Disk /dev/sda: 128GB
Partition Table: gpt
6. 何時 重新變成 GPT 分割 ?
7. 你原來的 /boot 是在 Legacy Bios (msdos 分割) 安裝的
不能直接變成 UEFI (gpt 分割)
头像
admin_xyz
帖子: 199
注册时间: 2012-05-26 8:33
系统: Ubuntu 12.04

Re: Ubuntu14.04 升级 SSD 产生的疑问

#67

帖子 admin_xyz » 2014-09-11 9:41

我的机器是 legacy bios+GPT
但是支持EFI
我想弄成 EFI+GPT 
需要做哪些改变吗
头像
admin_xyz
帖子: 199
注册时间: 2012-05-26 8:33
系统: Ubuntu 12.04

Re: Ubuntu14.04 升级 SSD 产生的疑问

#68

帖子 admin_xyz » 2014-09-11 10:19

代码: 全选

ubuntu@ubuntu:~$ sudo mount --bind /dev/pts/ /mnt/dev/pts
ubuntu@ubuntu:~$ sudo mount /dev/sdb3 /mnt/home/
ubuntu@ubuntu:~$ df -h
Filesystem      Size  Used Avail Use% Mounted on
/cow            3.9G  615M  3.1G  17% /
/dev            3.9G   12K  3.9G   1% /mnt/dev
tmpfs           794M  1.2M  793M   1% /run
/dev/sdc1        15G  5.9G  9.1G  40% /cdrom
/dev/loop0      923M  923M     0 100% /rofs
none            4.0K     0  4.0K   0% /sys/fs/cgroup
tmpfs           3.9G  1.3M  3.9G   1% /tmp
none            5.0M  4.0K  5.0M   1% /run/lock
none            3.9G  148K  3.9G   1% /run/shm
none            100M   40K  100M   1% /run/user
/dev/sda2        40G  1.9G   36G   5% /mnt
/dev/sda1       453M   42M  376M  11% /mnt/boot
/dev/sda3        40G  5.1G   33G  14% /mnt/usr
/dev/sda4       9.8G  1.2G  8.1G  13% /mnt/var
/dev/sdb3       275G   99G  163G  38% /mnt/home
ubuntu@ubuntu:~$ sudo chroot /mnt
root@ubuntu:/# su xyz
xyz@ubuntu:/$ sudo fdisk -l /dev/sda
sudo:无法解析主机:ubuntu
[sudo] password for xyz: 

WARNING: GPT (GUID Partition Table) detected on '/dev/sda'! The util fdisk doesn't support GPT. Use GNU Parted.


Disk /dev/sda: 128.0 GB, 128035676160 bytes
255 heads, 63 sectors/track, 15566 cylinders, total 250069680 sectors
Units = 扇区 of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000

   设备 启动      起点          终点     块数   Id  系统
/dev/sda1               1   250069679   125034839+  ee  GPT
xyz@ubuntu:/$ sudo gparted /dev/sda unit B print
sudo:无法解析主机:ubuntu
No protocol specified

(gpartedbin:19942): Gtk-WARNING **: cannot open display: :0
xyz@ubuntu:/$ 
sudo chroot /mnt 之后会自动切换成root执行程序,我需要su xyz 切换成用户模式...
头像
admin_xyz
帖子: 199
注册时间: 2012-05-26 8:33
系统: Ubuntu 12.04

Re: Ubuntu14.04 升级 SSD 产生的疑问

#69

帖子 admin_xyz » 2014-09-11 10:23


6. 何時 重新變成 GPT 分割 ?
7. 你原來的 /boot 是在 Legacy Bios (msdos 分割) 安裝的
不能直接變成 UEFI (gpt 分割)
我机械硬盘是gpt 的, 要迁移分区,ssd也必须要分成gpt的呀... 介不是你告诉我的嘛... 大大
poloshiao
论坛版主
帖子: 18279
注册时间: 2009-08-04 16:33

Re: Ubuntu14.04 升级 SSD 产生的疑问

#70

帖子 poloshiao » 2014-09-11 11:10

sudo chroot /mnt
root@ubuntu:/# su xyz
xyz@ubuntu:/$ sudo fdisk -l /dev/sda
sudo:无法解析主机:ubuntu
sudo gparted /dev/sda unit B print
sudo:无法解析主机:ubuntu
No protocol specified
你 chroot /mnt 以後
要下指令
sudo fdisk -l /dev/sda
sudo gparted /dev/sda unit B print
以前
需要先
exit
離開 /mnt
退回原來的家目錄
再下指令
sudo fdisk -l /dev/sda
sudo gparted /dev/sda unit B print
我机械硬盘是gpt 的, 要迁移分区,ssd也必须要分成gpt的呀... 介不是你告诉我的嘛...
viewtopic.php?p=3103694#p3103694
sdb1 /boot
sdb2 /
sdb3 /home
sdb4 /usr
sdb5 /var
sdb6 swap
UEFI 開機盤 需要 gpt 硬盤上 有一個 efi system partition
http://en.wikipedia.org/wiki/EFI_System_partition
fat32 格式 掛載 /boot/efi

你提供的 /dev/sdb 硬盤並沒有這個分割區

曾經成功從 /dev/sdb 硬盤開機嗎 (UEFI enabled 情況)
头像
admin_xyz
帖子: 199
注册时间: 2012-05-26 8:33
系统: Ubuntu 12.04

Re: Ubuntu14.04 升级 SSD 产生的疑问

#71

帖子 admin_xyz » 2014-09-11 15:28

ubuntu@ubuntu:~$ sudo fdisk -l /dev/sda

WARNING: GPT (GUID Partition Table) detected on '/dev/sda'! The util fdisk doesn't support GPT. Use GNU Parted.


Disk /dev/sda: 128.0 GB, 128035676160 bytes
255 heads, 63 sectors/track, 15566 cylinders, total 250069680 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000

Device Boot Start End Blocks Id System
/dev/sda1 1 250069679 125034839+ ee GPT
ubuntu@ubuntu:~$ sudo gparted /dev/sda unit B print
======================
libparted : 2.3
======================

(gpartedbin:17374): GLib-CRITICAL **: Source ID 7 was not found when attempting to remove it

(gpartedbin:17374): GLib-CRITICAL **: Source ID 6 was not found when attempting to remove it

(gpartedbin:17374): GLib-CRITICAL **: Source ID 10 was not found when attempting to remove it

(gpartedbin:17374): GLib-CRITICAL **: Source ID 9 was not found when attempting to remove it

(gpartedbin:17374): GLib-CRITICAL **: Source ID 13 was not found when attempting to remove it

(gpartedbin:17374): GLib-CRITICAL **: Source ID 12 was not found when attempting to remove it

(gpartedbin:17374): GLib-CRITICAL **: Source ID 16 was not found when attempting to remove it
头像
admin_xyz
帖子: 199
注册时间: 2012-05-26 8:33
系统: Ubuntu 12.04

Re: Ubuntu14.04 升级 SSD 产生的疑问

#72

帖子 admin_xyz » 2014-09-11 15:32

曾經成功從 /dev/sdb 硬盤開機嗎 (UEFI enabled 情況)

好像有吧,记不太清了... 一直是 legacy bios模式

我的机器只有 EFI,没有UEFI

如果选中EFI模式启动机器会出现grub2的选择菜单,但是进不去系统...

当前模式还是legacy bios
poloshiao
论坛版主
帖子: 18279
注册时间: 2009-08-04 16:33

Re: Ubuntu14.04 升级 SSD 产生的疑问

#73

帖子 poloshiao » 2014-09-11 16:51

我的机器只有 EFI,没有UEFI
1. efi / uefi 版本的演進
http://zh.wikipedia.org/wiki/%E7%B5%B1% ... B%E9%9D%A2
http://en.wikipedia.org/wiki/Unified_Ex ... ce#History
版本號 1.10 以前的是 efi
版本號 1.11 以後的是 uefi

2. efi / uefi 安裝 開機指引 參考
https://help.ubuntu.com/community/UEFIBooting
https://help.ubuntu.com/community/UEFIB ... FI_systems
http://www.rodsbooks.com/efi-bootloaders/
https://help.ubuntu.com/community/UEFI

3. 確認 你的版本號是多少號
第一個開機畫面 或 使用說明書

4. 如果是 1.10 以前的版本
可能還有許多不相容的問題
建議新手 還是暫時以
Legacy Bios + msdos 分割
來安裝
當然想折騰折騰 不在此限
头像
admin_xyz
帖子: 199
注册时间: 2012-05-26 8:33
系统: Ubuntu 12.04

Re: Ubuntu14.04 升级 SSD 产生的疑问

#74

帖子 admin_xyz » 2014-09-12 7:05

现在我有两个想法
想法一
昨天我成功用U盘以efi引导成功,进入图形界面
重新安装grub2,grub-efi 方式安装

想法一产生的问题
1。要想硬盘以efi方式启动是不是需要创建一个efi分区,而且必须是在硬盘第一个分区?
昨天在网上问过,说不用,直接安装就可以。我迷茫了

想法二
以efi方式重装系统
poloshiao
论坛版主
帖子: 18279
注册时间: 2009-08-04 16:33

Re: Ubuntu14.04 升级 SSD 产生的疑问

#75

帖子 poloshiao » 2014-09-12 7:57

1。要想硬盘以efi方式启动是不是需要创建一个efi分区,而且必须是在硬盘第一个分区?
昨天在网上问过,说不用,直接安装就可以。我迷茫了
1. 關鍵在 開機硬盤
1-1. 如果 開機硬盤 是 GPT 一定要 efi 分区
efi 分区 在硬盘第一个分区 是 比較建議的選擇 不是必須的選擇
1-1-1. 如果是 uefi enabled 開機
efi 分区 掛載在 /boot/efi
efi 分区 分割區型態 fat32
1-1-2. 如果是 Legacy Bios 開機
efi 分区 掛載在 (空白 不要填 讓安裝程式自動決定)
分割區型態 bios_grub (稱為 BIOS boot partition)
如果無法設定 分割區型態 bios_grub 先格式化為 Fat16
1-2. 如果 開機硬盤 是 MSDOS (就是傳統的 MBR 分割)
不需要 efi 分区

2. 進一步參閱
https://wiki.archlinux.org/index.php/GR ... quirements

3. 在網路上還有許多 gpt + msdos 或 稱 gpt + mbr 混合型
建議 新手暫時不要陷入這個技術圈中 自己混淆自己
等技術水平夠了 有需要再研究
想法二
以efi方式重装系统
如果你想折騰看看 跟你鼓勵 但是要有心理準備 失敗為成功之母

4. 先參考
https://help.ubuntu.com/community/UEFI# ... _and_Error
使用 uefi enabled 的模式 安裝看看

5. 如果不成功 再以
https://help.ubuntu.com/community/UEFIB ... FI_systems
使用 efi enabled 的模式 安裝看看

6. 如果還不成功
http://www.rodsbooks.com/efi-bootloaders/
這一篇文章 有許多 Linux 在 efi / gpt 的 開機導引程式
都有深入實作
還有 efi / uefi / secure boot 系列 很好的參考文章

7. 歡迎分享
回复