救命! boot 分区被破坏! - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Distributions
Ubuntu
Fedora
CentOS
中文资源站
网易开源镜像站
outman87
V2EX    Linux

救命! boot 分区被破坏!

  •  
  •   outman87 2022-06-10 14:06:24 +08:00 4216 次点击
    这是一个创建于 1220 天前的主题,其中的信息可能已经有所发展或是发生改变。
    SUSE 误删 libc.so.6 。而后从光盘启动,选择 Automatic Repair(重大失误)。结果人工智障似乎把原先的 boot 分区( sda1 )给破坏了filesystem type 变成了 swap (隔天才发现)。开机直接 grub >

    根据网路上的教程,新建一个 boot 分区( sdb1 ),grub 也装好了。但是 kernel 无法安装,也不能从原来的 boot 分区 cp原因是 swap 无法 mount 。咋办呢?各位老师,救救萌新。从昨天早上折腾到现在...心塞。







    24 条回复    2022-06-13 17:33:09 +08:00
    KagurazakaNyaa
        1
    KagurazakaNyaa  
       2022-06-10 14:11:26 +08:00
    考虑使用 fat 的文件系统作为 /boot 的文件系统
    j0ck1e
        2
    j0ck1e  
       2022-06-10 14:14:16 +08:00
    先直接注释掉,没 swap 一样跑
    7RTDKSAK
        3
    7RTDKSAK  
       2022-06-10 14:17:15 +08:00
    你还有 suse iso ?

    启动 iso ,安装到一块空 u 盘,注意一定要手动分区

    然后拿新安装地 os 的启动分区来启动旧 rootfs ,只需要手写一下 grub.cfg 就行了

    (我乱说地不负责)
    e7
        4
    e7  
       2022-06-10 14:17:28 +08:00
    swap 功能上就不是能挂载的,换个文件系统比如 xfs 、ext4 格式化,然后拷贝文件过去,最后 grub-install 写引导记录就可以了,只是思路具体操作还是搜下
    outman87
        5
    outman87  
    OP
       2022-06-10 14:22:50 +08:00
    @XiLingHost 请教下 /dev/sda1 如何修改 fs type 呢。感谢。
    j0ck1e
        6
    j0ck1e  
       2022-06-10 14:27:11 +08:00
    mkfs.ext4 /dev/sda1
    @outman87
    outman87
        7
    outman87  
    OP
       2022-06-10 14:27:57 +08:00
    @e7 不知道怎么更改 fs type 。格式化吗?会不会把里面的数据给清空了?我是菜鸟...感谢
    spike060
        8
    spike060  
       2022-06-10 14:28:19 +08:00
    EFI 分区(/boot)使用 FAT32 文件系统,可用 mkfs.vfat 进行格式化,完成后可以将内核文件和 initramfs 文件拷贝至该目录。
    最后使用 grub 命令行加载内核启动系统。
    j0ck1e
        9
    j0ck1e  
       2022-06-10 14:28:58 +08:00
    @outman87 格式化当然清空了
    KagurazakaNyaa
        10
    KagurazakaNyaa  
       2022-06-10 14:30:16 +08:00
    mkfs.vfat -F32
    用这个命令来重新制作文件系统
    FYFX
        11
    FYFX  
       2022-06-10 14:44:27 +08:00
    你这个其实和 arch 安装引导的过程差不多吧,如果是 UEFI 的话
    先 mkfs.fat -F 32 /dev/efi_system_partition 格式化一下引导分区 https://wiki.archlinux.org/title/installation_guide#Format_the_partitions
    然后挂载 efi 分区,再用 grub 安装应该就行了
    https://wiki.archlinux.org/title/GRUB#Installation
    outman87
        12
    outman87  
    OP
       2022-06-10 15:05:22 +08:00
    @j0ck1e @spike060 谢谢几位老师,请问 mkfs 把 /dev/sda1 格式化以后,内核文件和 initramfs 文件从哪里拷贝过来?
    j0ck1e
        13
    j0ck1e  
       2022-06-10 15:08:54 +08:00
    @outman87 从 iso 镜像里面拷贝
    outman87
        14
    outman87  
    OP
       2022-06-10 15:30:46 +08:00
    @FYFX 谢谢,我啃啃
    outman87
        15
    outman87  
    OP
       2022-06-10 18:06:34 +08:00   1
    @j0ck1e @XiLingHost @spike060 @e7 @7RTDKSAK 感谢各位大佬的相助。从虚拟机另一台 suse 11 上把 boot 目录拷贝到 U 盘,再挂载到故障系统上。进入救援模式,覆盖到 sdb1 的同名目录。重启后再用 grub 命令人工引导,启动成功了!哭了...
    ShellRank
        16
    ShellRank  
       2022-06-10 18:31:11 +08:00
    恭喜 op 渡劫成功
    basncy
        17
    basncy  
       2022-06-10 18:45:09 +08:00   5
    论从零开始安装 archlinux 的重要性.(学习 linux 启动流程)

    另一种方案(没有多余备份情况下, 重新生成 boot 分区里的内容):
    U 盘启动 live CD, mount 好各种挂载点, chroot 到根分区
    1. 生成 fstab
    2. 重装 grub
    3. mkinitcpio 生成内核和 ramfs
    4. grub-mkconfig
    5. reboot
    ToBeHacker
        18
    ToBeHacker  
       2022-06-10 20:07:30 +08:00
    通过 grub 不是也能启动起来么,指明内核参数就可以了
    james122333
        19
    james122333  
       2022-06-10 22:06:30 +08:00 via Android
    ….................
    basncy
        20
    basncy  
       2022-06-10 22:51:27 +08:00
    @ToBeHacker 哪里看的半吊子教程? 你当企业版 linux 是学生玩的开发板啊?
    ToBeHacker
        21
    ToBeHacker  
       2022-06-11 22:02:55 +08:00
    ToBeHacker
        22
    ToBeHacker  
       2022-06-11 22:15:57 +08:00
    basncy
        23
    basncy  
       2022-06-12 00:11:21 +08:00
    @ToBeHacker 嗯, 书上就是这么说的:
    把 /boot/grub/menu.lst 或 /boot/grub/grub.cfg. 备份, 然后 rm -rf /boot ; reboot 进入 GRUB> 界面后, 照着 menu.lst 或 grub.cfg 的命令敲一遍试.
    kaiger
        24
    kaiger  
       2022-06-13 17:33:09 +08:00
    @basncy

    无法启动,我直接重装系统( oTo )
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2734 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 27ms UTC 08:44 PVG 16:44 LAX 01:44 JFK 04:44
    Do have faith in what you're doing.
    ubao snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86