在 Linux 环境直接复移动硬盘上的 GRUB
手头有一块用了 10 年的旧移动硬盘,其中安装了 Debian 系统,从低版本一直升级到现在的 9 已经用了很长时间。前不久正连着那块硬盘跑着 Debian 修改文件的时候,由于一个本可避免的意外震动了数据线,瞬间连接中断。后果不必说,自然是系统无法再读写磁盘数据各种 I/O 错误不能进行任何工作。关机重启后,移动硬盘的启动项从 BIOS 快捷菜单里消失,成了一个无引导的普通磁盘。
将移动硬盘连接到运行 openSUSE 的笔记本检查,见所有的分区都能正确识别,挂载后所有分区可正常读写,文件全部健在。直接重建 GRUB,过程记录如下:
打开 openSUSE 终端,切换到 root 用户
su -
查看当前所有分区,确定 Debian 根分区位置为 /dev/sdb2 (没有单独的 /boot 分区)
lsblk
挂载 Debian 根分区
mount /dev/sdb2 /mnt
挂载其他需要的系统目录
mount --bind /dev /mnt/dev
mount --bind /proc /mnt/proc
mount --bind /sys /mnt/sys
chroot 到移动硬盘上的 Debian
chroot /mnt
重装 GRUB
grub-install /dev/sdb
更新 GRUB 配置
grub-mkconfig -o /boot/grub/grub.cfg
退出 chroot 环境
exit
卸载分区和目录
umount /mnt/dev
umount /mnt/proc
umount /mnt/sys
umount /mnt
重建完成
再次连接移动硬盘已经恢复引导顺利进入 Debian 系统,修复成功。硬盘里的文件内容和设置停留在传输连接中断前一瞬间的状态,幸好早预料到发生这种事情的可能没有存放重要数据。
建议不要将进行重要工作的系统安装在老旧、接触不良、质量很一般和读写数据慢的移动设备上,一旦发生意外事件损坏数据甚至磁盘的概率是相当高的。特别是质量一般的 USB 2.0 U 盘不要冒险,除非打算专门实战各种修复和数据恢复技能。另外在熊孩子和宠物经常出没的环境尽量不要用移动设备上的系统,以免意外惊喜。
在 Linux 环境直接复移动硬盘上的 GRUB的更多相关文章
- Linux环境下在Tomcat上部署JavaWeb工程
本文讲解如何将我们已经编译好的JavaWeb工程在Linux环境下的Tomcat上进行部署,总体上的思路是和Windows下JavaWeb项目部署到tomcat差不多,具体步骤和命令如下. 注:部署之 ...
- Linux环境进程间通信(二): 信号(上)
linux下进程间通信的几种主要手段: 管道(Pipe)及有名管道(named pipe):管道可用于具有亲缘关系进程间的通信,有名管道克服了管道没有名字的限制,因此,除具有管道所具有的功能外,它还允 ...
- Linux环境下搭建Tomcat+mysql+jdk
Linux环境 1.下载并安装一个VMware workstation, 这个是虚拟机的平台(自行度娘下载~),虚拟机是在后面要在里面搭建Linux系统. 2.下载一个centos安装包,linux版 ...
- 在Linux 环境下搭建 JDK 和 Tomcat
在Linux 环境下搭建 JDK 和 Tomcat 参考地址:http://www.cnblogs.com/liulinghua90/p/4661424.html [JDK安装] 1.首先下载 ...
- 在Linux环境下搭建Tomcat+mysql+jdk环境
按照下面的步骤一步一步来搭建tomcat+jdk+mysql环境. [Linux环境]------我搭建的是64位centos版本的linux系统 1.下载并安装一个VMware workstat ...
- QWT编译与配置-Windows/Linux环境
QWT编译与配置-Windows/Linux环境 QWT和FFTW两种开源组件是常用的工程软件支持组件,QWT可以提供丰富的绘图组件功能,FFTW是优秀数字波形分析软件.本文使用基于LGPL版权协议的 ...
- 在移动硬盘上安装Linux Mint19记录
前要: 有一12年买的手提电脑,打算在其上直接装linux部署分布式爬虫顺便学linux 唔,开机吧--然开机动画没有,只有间断有序的悲鸣,一查,主板逝世 卖给收买旧电脑估计不到20-不能忍,想了想不 ...
- 把Linux安装到移动硬盘上
把Linux安装到移动硬盘上 转载于:http://mrkh.me/install-linux-on-a-portable-hard-drive.html 这一篇文章讲一下,怎么把linux安装到移动 ...
- <转>Linux环境进程间通信(二): 信号(上)
原文链接:http://www.ibm.com/developerworks/cn/linux/l-ipc/part2/index1.html 原文如下: 一.信号及信号来源 信号本质 信号是在软件层 ...
随机推荐
- Java 线程转储
软件维护是一个枯燥而又有挑战性的工作.只要软件功能符合预期,那么这个工作就是好的.设想一个这样的情景,你的电话半夜也一直在响(这不是一个令人愉快的感受,是吧?)任何软件系统,无论它当初是被设计的多好, ...
- PHP执行外部命令【转】
PHP是完全支持外部命令的,但是出于安全考虑,一般很少使用. PHP提供共了3种方法调用外部命令: (1)调用执行外部命令函数(system(),exec(),passthru(),shell_exe ...
- Facebook图片存储系统Haystack——存小文件,本质上是将多个小文件合并为一个大文件来降低io次数,meta data里存偏移量
转自:http://yanyiwu.com/work/2015/01/04/Haystack.html 一篇14页的论文Facebook-Haystack, 看完之后我的印象里就四句话: 因为[传统文 ...
- Linux下抓包工具tcpdump应用详解
TCPDUMP简介 在传统的网络分析和测试技术中,嗅探器(sniffer)是最常见,也是最重要的技术之一.sniffer工具首先是为网络管理员和网络程序员进行网络分析而设计的.对于网络管理人员来说 ...
- RTP Payload Format for Transport of MPEG-4 Elementary Streams over http
1.SDP (1)Http Request GET /getSdpForUrl?HttpUrl=nphMpeg4/g726-640x480 HTTP/1.0/r/n Host: 58.63.71.90 ...
- php获取YouTube视频信息的方法
YouTube的视频地址格式https://www.youtube.com/watch?v=[VIDEO_ID]例子:https://www.youtube.com/watch?v=psvkyf3Pz ...
- Tyvj1052(树形DP)
P1052 没有上司的舞会 时间: 1000ms / 空间: 131072KiB / Java类名: Main 描述 Ural大学有N个职员,编号为1~N.他们有从属关系,也就是说他们的关系就像一棵以 ...
- FTP服务基础
网络文件共享 本章内容 FTP服务 NFS服务 SAMBA服务 DAS.NAS.SAN(文件) DAS:开放系统的直连式存储(Direct-Attached Storage) 磁盘连接到本机的电脑上, ...
- Metatable In Lua 浅尝辄止
http://www.cnblogs.com/simonw/archive/2007/01/17/622032.html 什么是Metatable Lua中Metatable这个概念, 国内将他翻译为 ...
- 带着问题看 react-redux 源码实现
前言 Redux作为通用的状态管理器,可以搭配任意界面框架.所以并搭配react使用的话就要借助redux官方提供的React绑定库react-redux,以高效灵活的在react中使用redux.下 ...