国庆和中秋放假回来后,相信或多或少你的Linux服务器都会遇到一些问题,为了帮助大家回来后在遇到问题时找到合适的解题思路,特地给大家找到了一个Linux运维工程师发现故障和处理故障的反思,希望给到大家一些指明方向的引导。 我发现Linux系统在启动过程中会出现一些故障,导致系统无法正常启动,我在这里写了几个应用单用户模式、GRUB命令操作、Linux救援模式的故障修复案例帮助大家了解此类问题的解决。 (一)单用户模式 Linux系统提供了单用户模式(类似Windows安全模式),可以在最小环境中进行系统
我发现Linux系统在启动过程中会出现一些故障,导致系统无法正常启动,我在这里写了几个应用单用户模式、GRUB命令操作、Linux救援模式的故障修复案例帮助大家了解此类问题的解决。
之前在本机有fedora 29的系统,但是由于错误安装,把windows10 启动安装到 linux 所在的硬盘中,导致原来的 efi中的grub启动被破坏,不能进入到linux中;我首先通过磁盘精灵,把efi中启动文件拷贝到现有的windows安装盘中,重新启动后成功从新的efi分区进入windows; 然后开始进行恢复fedora系统;这时候,有两种办法,一种是重新安装 linux; 另外一种方法就是重新修复grub引导;因为对linux比较了解,我选择了后者;首先参考了几篇已经实践的博客;
描述:GRUB英文全称GRand Unified Bootloader俗称引导程序是硬盘中的软件,它可以启动用户在计算机中的多个操作系统所以也叫多重启动管理器。 目前主流版本是 GRUB2,在windows中也有类似的引导程序ntloader虽然它也可以引导Linux操作系统但是比较麻烦;
相信很多人和我一样,主要用着Linux,但是玩游戏娱乐啥的或者一些图形化界面软件必须要用到Windows系统,这个时候就不得不装双系统了。
安装linux,vista/win7双系统后,怎么引导是个问题 理论上,可以从windows的boot loader引导linux,也可以linux的grub引导windows 但windows更霸道,经常霸占MBR,所以最好是linux不放MBR,然后从windows的boot loader引导linux 把linux装在自己的分区,不要在MBR 然后把linux分区的头512字节弄成一个文件,拷到boot loader所在的分区根下 dd if=/dev/sda1 of=/tmp/linux.bin bs=512 count=1 cp /tmp/linux.bin /media/你的window c分区 到windows上执行: bcdedit /create /d “GRUB” /application BOOTSECTOR 下面的{LinuxID}改为此命令输出的id bcdedit /set {LinuxID} device boot bcdedit /set {LinuxID} PATH \linux.bin bcdedit /displayorder {LinuxID} /addlast bcdedit /timeout 10
手里头有台六年前买的 Windows 平板——昂达 V891W。预装系统 Win8,采用当年有着英特尔补贴而被寨厂们钟爱的 Z3735F 芯片方案,以及勉强能用的 2G 内存和 32G 的 emmc——不过随着前两年升级几次 Win10 后,它的系统盘基本被系统更新占满,卡得没法再用了。
配置文件 :/boot/grub2/grub.cfg 修改:/etc/default/grub GRUB_DEFAULT=saved saved改为0 grub2-mkconfig -o /boot/grub2/grub.crg 重新生成
如果GRUB是Linux版本才出会这样的问题;WINGRUB可以不写在MBR上;所以不会出现这样的问题。WINGRUB用起来比较简单。menu.lst 和命令行的用法和Linux版本的GRUB是一样的;
系统的启动其实是一项非常复杂的过程,因为内核得要检测硬件并加载适当的驱动程序,接下来则必须要调用程序来准备好系统运行的环境,以让用户能够顺利的操作整台主机系统,如果你能够理解系统启动的原理,那么将有助于你在系统出问题时能够很快速的修复系统,而且还能够顺利的配置多重操作系统的多重启动问题,为了多重启动的问题,你就不能不学 grub 这个 Linux 下优秀的启动管理程序(boot loader),而在系统运行期间,你也得要学会管理内核模块,下面进入正题开始学习吧.
一些朋友不知道CentOs7如何修复MBR和GRUB;今天小编将为大家分享CentOs7修复MBR和GRUB的方法;感兴趣的朋友一起去看看吧
我的电脑装有 Windows 10 和 Manjaro 双系统,最近我把 Windows 10 升级了,没想到原来漂亮的 Manjaro grub 菜单界面就再也出不来了,只见终端弹出一下信息:
CentOS在开机的时候,突然出现了GRUB引导错误,导致系统进入不了,遇到这种情况很多人就束手无策了,其实这类的问题不难解决,请按照以下步骤进行操作即可。
二、模拟破坏mbr引导扇区: [root@localhost ~]# dd if=/dev/zero of=/dev/sda bs=512 count=1 记录了1+0 的读入 记录了1+0 的写出 512字节(512 B)已复制,0.000106943 秒,4.8 MB/秒 三、重启后,加载系统镜像文件中的急救模式:
****前言:**** 今晚快要下班的时候,cp文件夹到U盘里面,由于文件过大并且里面的文件都是代码小文件,想想接近700M大有多少小文件,然而电脑就发烧式的发烫,真不敢想象呢,前所未有的发热,于是我就想关机来让电脑来歇歇,万万没想到的就是,电脑关机出现异常了,这时候我已经意识到电脑maybe出了问题。然后我就立马开机,果然不出我所料,电脑系统进不了了。来公司前我安装了linux+win双系统,电脑开机默认进入的是win系统,看到提示,感觉是win除了问题,真是奇怪:上次使用win系统都没有问题的,让你w
由于虚拟机无法启动,vmware vcenter已经无法监控到虚机vmware tools的心跳。登陆VC通过虚拟机控制台查看发现虚机REDHAT LINUX卡在如下界面:
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
简单描述状况: 1.系统安装有64位的windows 7和64位的CentOS操作系统,使用Legacy BIOS 安装引导启动,没有使用UEFI。 2.CentOS6.5 grub引导菜单正常引导WINDOWS 7+CENTOS,CentOS包含/boot分区,/分区以及/home分区 3.安装ubuntu 14.04(64位) 之后,使用alongside windows空闲分区。安装完成后使用ubuntu grub 引导启动,只能引导windows 7+ubuntu,centos 无法启动. 4.在ubuntu系统下,安装grub2/grub 然后 update-grub 均无法正常搜索到centos 。
输入:chroot /mnt/sysimage ,回车 #将当前目录切换到原来系统的根目录
服务是什么?先来看一下服务的定义:一台主机上提供的、运行的各种功能统称为服务。有本机内服务,如:at,cron,有对外的网络服务,如:web、ftp等,又称为业务、应用。下面我们来分析一下Linux中服务的具体管理。
然后修改deepin.iso为你下载的ISO文件名称即可,保存退出 其中,有两个在启动阶段报找不到文件错误的地方是:
更改或编辑内核启动参数非常重要,当您想要修复在引导过程中导致错误,测试新功能,激活其他驱动程序或禁用系统上的功能的问题。 这些参数作为文本存储在引导加载程序的配置文件中,内核在“init”过程中解析。 要确定系统上次启动时使用的参数,应在终端上输入以下内容:
-多年互联网运维工作经验,曾负责过大规模集群架构自动化运维管理工作。 -擅长Web集群架构与自动化运维,曾负责国内某大型金融公司运维工作。 -devops项目经理兼DBA。 -开发过一套自动化运维平台(功能如下): 1)整合了各个公有云API,自主创建云主机。 2)ELK自动化收集日志功能。 3)Saltstack自动化运维统一配置管理工具。 4)Git、Jenkins自动化代码上线及自动化测试平台。 5)堡垒机,连接Linux、Windows平台及日志审计。 6)SQL执行及审批流程。 7)慢查询日志分析web界面。
我们安装软件都有一种不停按下一步而不看内容的心理,我第一次安装黑苹果就是败在这里了,在标题为安装摘要的窗口里面,下一步就会开始安装,这个时候其实窗口左下角有一个按钮“自定”,这里是用于选择安装时候附带的软件包的,包括引导程序的选择、显卡声卡网卡的驱动选择,这里面就驱动部分要仔细选一下,例如我显卡选的Natit的驱动,声卡VoodooHDA0.2.6(后来发现这样还是没声音,后面进去系统之后再装了另外一个东西才行),以太网卡RTL8169。还有个值得一提的地方就是PS/2键盘,后面我选了Voodoo PS2(默认是没有选PS/2键盘的)。我是笔记本电脑,我第一次没有“自定”安装的时候就检测不到键盘,我就奇怪了这键盘还得驱动,其实还真要,USB键盘和PS/2键盘有点不一样。
有时重启后发现无法进入系统,此时可以利用光盘进入紧急救援模式,然后进行grub-install安装修复
今天遇到一个问题,就是台式机开机进入GNU GRUB引导,默认是linux,需要手动选择win,而且不太好修改顺序,高标准严格要求自己的(强迫症的)我,决定删除linux系统,去除GRUB引导。
电脑一次睡眠未醒死机,强制重启后,长时间的等待给了我一种不好的预感。果然,发现没了熟悉的 GRUB 界面,反而直接进 Win10,进 BIOS 一看,发现没有 GRUB 的启动项了?... 故障描述
安装完Ubuntu忘记写入引导文件,或者使用工具调整分区后,很容易出现grub损坏无法进入系统的情况。 也可能是由于分区调整或分区UUID改变造成grub2不能正常启动,从而进入修复模式了(grub rescue),也称救援模式。
镜像 : CentOS-7-x86_64-Minimal-2009.iso
本章与之后文章将会持续更新Linux服务器系列的优质文章,本章将会讲解Linux操作系统安装及服务控制。
grub配置文件/boot/grub2/grub.cfg 一般不会修改此配置文件 修改/etc/default/grub文件后,使用命令生成grub.cfg配置文件 grub2-mkconifg -o /boot/grub2/grub.cfg 2.grub不同的模式
很多人都喜欢在自己的电脑上装个双系统啥的,毕竟现在硬盘的成本是越来越低了,像明月这种老爷机都是双硬盘了,不多装个系统真心有点儿对不起它呀!前几天体验了一番 Linux Mint 19 后(可参考【Linux Mint 19 体验学习笔记】一文)感觉各种的不爽,特别是没有 QQ 和微信真心接受不了,没有想到这么多年过来了, Linux 桌面版依然还是这么的“鸡肋”,唉!
Grub 2与以前版本中最受欢迎且广泛使用的启动管理器相比,已经是一个期待已久且非常重要的升级。 支持新的文件系统,主题,改进的飞溅功能,更好的国际化,电源引导,动态模块加载和脚本支持。 所有这一切都是伟大的,但事情仍然会出错,意外突破。 这基本上意味着可启动分区(操作系统)可能无法访问,这就是为什么Grub v2提供了强大的营救模式。 现在使用这种模式,对于大多数没有经验的用户而言,可能不会在公园里散步,所以这里有一个关于如何使用Boot Repair工具轻松修复Grub的指南。
嵌入式系统变得越来越复杂, 它们的软件也反映了这种复杂性的增加。 为了支持新的特性和修复,很有必要让嵌入式系统上的软件 能够以绝对可靠的方式更新。 在基于linux的系统上,我们可以在大多数情况下找到以下元素:
起源:windowstogo或win2go,便携式windows操作系统。邮件、私信、留言等经常收到此类消息,统一回复制作流程。
You now know the physical and logical structure of a Linux system, what the kernel is, and how to work with processes. This chapter will teach you how the kernel starts— or boots. In other words, you’ll learn how the kernel moves into memory up to the point where the first user process starts.
内核是任何基于 Linux 的操作系统的核心部分,它充当计算机系统软件和硬件之间的桥梁,还提供用户和应用程序与计算机交互所需的接口。内核提供了许多功能,包括进程调度、资源分配、设备管理、中断处理、内存管理和进程。
大家好,又见面了,我是你们的朋友全栈君。 注意事项: 安装Windows&Linux双系统,最好先安装windows系统,否则可能会出现grub引导覆盖的问题。 Window10系统安装
由于 Thinkbook16+ 原装的无线网卡是瑞昱的 RTL8852,装上 ubuntu 22.04 之后会因为没有驱动而无法使用 wifi 功能,这个问题一度困扰了我好长时间,由于没有网线,在此期间只能用手机的 USB 热点共享功能把手机当成 ubuntu 的无线网卡来用。
grub2的rpm package含有很多的img, mod, lst 文件(默认路径是/usr/lib/grub/i386-pc/,可以通过对应的rpm -ql PACKAGENAME来查看), 在执行grub2-install之后,img文件分布如下:
#---------- ADDED BY BOOTADM - DO NOT EDIT ---------- title Oracle Solaris 10 8/11 s10x_u10wos_17b X86 findroot (rootfs0,2,a) kernel /platform/i86pc/multiboot module /platform/i86pc/boot_archive #---------------------END BOOTADM-------------------- #---------- ADDED BY BOOTADM - DO NOT EDIT ---------- title Solaris failsafe findroot (rootfs0,2,a) kernel /boot/multiboot kernel/unix -s module /boot/x86.miniroot-safe #---------------------END BOOTADM--------------------
GNU计划(又称革奴计划),是由Richard Stallman(理查德·斯托曼)在1983年9月27日公开发起的自由软件集体协作计划。它的目标是创建一套完全自由的操作系统。GNU也称为自由软件工程项目。
因为出错的时候事实上,我的 windows7 有一个独立的 100mb boot 引导分区,这个分区正常来说应该可以引导我的 windows7 进入系统的。 但是,不知道为什么,就是不行,后来我修改启动文件,把 windows7 的引导指向 c 盘的那个分区,还是不行。再后来,我直接把那 100mb 的引导分区,update grub 还是不行。 没辙,google 之,搜到 boot-repair[https://help.ubuntu.com/community/Boot-Repair]。下载下来,修复一次,然后用 windows cd 修复一次引导,ok,完好如初。
原文链接:http://7424593.blog.51cto.com/7414593/1744358
系统单用户模式启动后,系统只会以最低权限运行,通常只有一个root用户,通常用于故障排查,修复系统文件,修改root密码等。
一、Linux内核概览 Linux是一个一体化内核(monolithic kernel)系统。 设备驱动程序可以完全访问硬件。 Linux内的设备驱动程序可以方便地以模块化(modularize)的形式设置,并在系统运行期间可直接装载或卸载。 1. linux内核 linux操作系统是一个用来和硬件打交道并为用户程序提供一个有限服务集的低级支撑软件。 一个计算机系统是一个硬件和软件的共生体,它们互相依赖,不可分割。 计算机的硬件,含有外围设备、处理器、内存、硬盘和其他的电子设备组成计算机的发动机。 但是没有软件来操作和控制它,自身是不能工作的。 完成这个控制工作的软件就称为操作系统,在Linux的术语中被称为“内核”,也可以称为“核心”。 Linux内核的主要模块(或组件)分以下几个部分: . 进程管理(process management) . 定时器(timer) . 中断管理(interrupt management) . 内存管理(memory management) . 模块管理(module management) . 虚拟文件系统接口(VFS layer) . 文件系统(file system) . 设备驱动程序(device driver) . 进程间通信(inter-process communication) . 网络管理(network management . 系统启动(system init)等操作系统功能的实现。 2. linux内核版本号 Linux内核使用三种不同的版本编号方式。 . 第一种方式用于1.0版本之前(包括1.0)。 第一个版本是0.01,紧接着是0.02、0.03、0.10、0.11、0.12、0.95、0.96、0.97、0.98、0.99和之后的1.0。 . 第二种方式用于1.0之后到2.6,数字由三部分“A.B.C”,A代表主版本号,B代表次主版本号,C代表较小的末版本号。 只有在内核发生很大变化时(历史上只发生过两次,1994年的1.0,1996年的2.0),A才变化。 可以通过数字B来判断Linux是否稳定,偶数的B代表稳定版,奇数的B代表开发版。C代表一些bug修复,安全更新,新特性和驱动的次数。 以版本2.4.0为例,2代表主版本号,4代表次版本号,0代表改动较小的末版本号。 在版本号中,序号的第二位为偶数的版本表明这是一个可以使用的稳定版本,如2.2.5; 而序号的第二位为奇数的版本一般有一些新的东西加入,是个不一定很稳定的测试版本,如2.3.1。 这样稳定版本来源于上一个测试版升级版本号,而一个稳定版本发展到完全成熟后就不再发展。 . 第三种方式从2004年2.6.0版本开始,使用一种“time-based”的方式。 3.0版本之前,是一种“A.B.C.D”的格式。 七年里,前两个数字A.B即“2.6”保持不变,C随着新版本的发布而增加,D代表一些bug修复,安全更新,添加新特性和驱动的次数。 3.0版本之后是“A.B.C”格式,B随着新版本的发布而增加,C代表一些bug修复,安全更新,新特性和驱动的次数。 第三种方式中不使用偶数代表稳定版,奇数代表开发版这样的命名方式。 举个例子:3.7.0代表的不是开发版,而是稳定版! linux内核升级时间图谱如下:
写一篇迟到的折腾笔记:NUC8 8i5beh 。原本计划折腾 Hackintosh ,最后折腾了一台 Linux Homelab 设备。
领取专属 10元无门槛券
手把手带您无忧上云