首页
学习
活动
专区
圈层
工具
发布

linux内核启动流程分析 - efi_main

上一篇文章 linux内核启动流程分析 - efi_stub_entry 中,为了叙述方便,我们只是粗略的讲了下efi_main函数,这里我们再具体看下。 ?...有关boot_params的创建及其hdr的初始化,我们在 linux内核启动流程分析 - efi_pe_entry 中有讲到,这里就不再赘述。 继续看该函数的其余部分。 ?...而710行中的image_offset是kernel在内存的起始地址到compressed部分起始地址(startup_32的地址)的偏移量,这个在 linux内核启动流程分析 - efi_pe_entry...它表示的是kernel在启动过程中需要的内存大小。...linux内核构建结束后,最终生成的文件是 arch/x86/boot/bzImage,这其实是个压缩过的内核,在kernel启动过程中,还要在内存中对内核进行解压,进而得到真正的内核。

4.7K31
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    EFI 引导问题:EFI 引导配置错误,导致无法启动

    挂载新创建的 EFI 分区:sudo mkdir /mnt/efi sudo mount /dev/sdXn /mnt/efi 安装 GRUB 到 EFI 分区:安装 GRUB 到新创建的 EFI 分区...错误的引导条目原因:UEFI 固件中的引导条目可能设置错误,导致系统无法正确启动。解决方法:进入 UEFI 设置:重启计算机,并在启动时按下 Del、F2 或其他键进入 UEFI 设置界面。...引导文件丢失或损坏原因:引导文件(如 grubx64.efi )可能丢失或损坏,导致系统无法启动。.../EFI/GRUB恢复引导文件:如果引导文件丢失,可以从安装介质或备份中恢复:sudo cp /path/to/grubx64.efi /mnt/efi/EFI/GRUB/重新安装 GRUB:重新安装...硬件问题原因:硬盘或启动介质可能存在硬件故障,导致无法正确读取引导信息。

    8.6K10

    nginx的安装与配置启动(linux)

    开发者伊戈尔·赛索耶夫 本文主要记录一下linux服务器配置nginx服务的一些主要的过程。 首先它是由c语言开发的,所以我们需要去安装一些它的编译环境。我们安装这个额服务是一定要经过编译的。...我们用这个命令去安装nginx wget,如果服务器上没有这个命令的话,我们需要去安装它。...很简单在我们linux的根目录下面etc/profile,我们用命令进去去编辑这个文件配置 用编辑器打开来看下,这里下面的path就是用来配置环境变量的地方。...修改为82 其实在配置文件修改东西后,你可以去用命令查看配置是否正确 nginx -t 启动的话直接输入这个命令就好 nginx 我们可以用这个命令去查看nginx进程相关 ps -ef...82/tcp --permanent firewall-cmd --reload 现在哦们可以去访问nginx默认界面 服务器的话,就是外网ip加上端口 这样大概就是我们初次的配置以及命令启动以及访问

    2.9K10

    linux环境下redis安装和启动

    redis安装 redis下载方式 进入到/usr/local目录后使用wget从网上下载redis安装包 wget http://download.redis.io/releases/redis-4.0.1...进入目录安装 cd /usr/local/redis-4.0.1 make test make install 执行完上诉命令安装后,redis所有的相关文件都会安装到当前目录下,其中,可执行文件redis-server...启动redis服务 . 在src目录下直接执行redis-server即可启动服务,这种方式启动的redis服务是在前台运行的,退出命令行工具后,redis服务就停止了。...通过nohub方式启动, nohub redis-server /etc/redis/sentinel.conf --sentinel >> /var/log/redis.log& 启动服务后,命令行会退出.../usr/local/redis-4.0.1/sentinel.conf --sentinel 后面的两种启动方式都会以后台的方式启动。

    2.7K10

    Linux下的Nginx安装(开机自启动)

    copy压缩包至linux的相应目录,例如:opt下的software,需要确认当前登录用户有权限进行解压和安装。...1)安装pcre库: tar zxvf pcre-8.12.tar.gz cd pcre-8.12 ./configure<或....大致意思是静态资源请求的处理方法中,如果发现请求方法为post提交则拒绝 接下来就是安装了 make && make install Nginx默认被安装在/usr/local/nginx 3)开机自启动...chmod a+x /etc/init.d/nginx   (a+x ==> all user can execute  所有用户可执行) 这样在控制台就很容易的操作nginx了:查看Nginx当前状态、启动...同样的修改了nginx的配置文件nginx.conf,也可以使用上面的命令重新加载新的配置文件并运行,可以将此命令加入到rc.local文件中,这样开机的时候nginx就默认启动了 vi /etc/rc.local

    4.8K20

    Linux学习笔记之Linux最小化安装启动后如何配置

    在VM虚拟机中安装CentOS 7 时 有时候顾虑到电脑硬件性能,我们需要最小化安装,而最小化安装后与centos6的版本是有一些差异的,接下来我们就对刚安装好的最小化centos7做一些操作,来世我们使用的更得心应手...安装net-tools 最小化安装CentOS7后,在配置网络后,想查看我的IP,发现ifconfig 命令是不好使得。...关闭自带防火墙并启动iptables 我们就要关闭CentOS7自带的防火墙 firewall 启用 IPtable 停止 Firewall systemctl stop firewalld 关闭firewall...自动启动 systemctl disable firewalld.service 安装IPtables防火墙 yum install -y iptables-services 修改iptables配置文件...安装wget CentOS7最小化安装后没有wget软件,但是以后我们会经常用到这个组件,所以我们安装一下 yum install -y wget 6.更换国内源 CentOS自带的国外源有时候会很慢,

    7.7K30

    windows10 双系统安装后,grub2 引导修复(亲自实验);grub2 命令行 手动加载内核;fedora 29 系统grub2引导修复;

    之前在本机有fedora 29的系统,但是由于错误安装,把windows10 启动安装到 linux 所在的硬盘中,导致原来的 efi中的grub启动被破坏,不能进入到linux中;我首先通过磁盘精灵,...把efi中启动文件拷贝到现有的windows安装盘中,重新启动后成功从新的efi分区进入windows; 然后开始进行恢复fedora系统;这时候,有两种办法,一种是重新安装 linux; 另外一种方法就是重新修复...grub引导;因为对linux比较了解,我选择了后者;首先参考了几篇已经实践的博客; Fedora 29 引导修复: 创建修复环境: 制作live cd 或者 启动盘; 启动进入live os  sudo...一直阻塞)  自动生成grub.cfg,用于启动,默认生成的文件肯能启动不成功,建议手动装载linux内核: mount /dev/sda2 /boot (启动分区 sda2)  mkdir /mnt...此教程总结自实际修复过程中,如果您有问题,欢迎留言咨询;我最后是在自动生成的项目的基础上,结合手动修改引导成功的; 如果你对linux的启动机制,以及mbr,efi 等不是很了解;建议还是重新安装系统为好

    5.7K20
    领券