1.Ubuntu升级内核
2.å¦ä½å®è£
gentoo linux
3.GRUB2基本命令
4.Gentoo 安装基本系统全过程记录
5.云主机装黑果实践(4):阿里轻量机上变色龙bootloader启动问题
6.grub2 怎么安装和使用?
Ubuntu升级内核
要对Ubuntu系统进行内核升级,源码首先确保基础依赖环境已安装。源码使用以下命令行安装:
sudo apt install -y wget build-essential gcc make bison pkg-config libncurses5-dev openssl libssl-dev libc6-dev libelf-dev zlibc minizip libidn-dev libidn flex
接下来,源码从cdn.kernel.org下载最新的源码内核源码到指定目录:
wget cdn.kernel.org/pub/linu...
解压下载的源码包:
tar -xvf linux-5.9.1.tar.xz
进入新解压的源码目录,复制当前内核配置到新内核源码中:
cp /boot/config-`uname -r` .config
进入配置阶段,源码使用`make menuconfig`命令,源码火焰源码根据需要修改内核选项,源码配置完成后记得保存并退出。源码
接着,源码开始编译内核,源码使用多线程加速:
make -j8
编译成功后,源码安装内核模块:
make modules_install
然后将新内核安装到系统:
make install
为了确保系统引导正确,源码更新引导程序GRUB:
Update-grub2
最后,源码通过以下命令验证新内核已安装:
Uname -a 和 Uname -r
å¦ä½å®è£ gentoo linux
ä¸è½½åºæ¬ç³»ç»åæºç å
为äºå å¿«å®è£ é度ï¼ææ¯å å°éè¦ç¨å°çå 个éè±¡å ¨é¨ä¸è½½å°æ¬å°ãæé¡»ä¸è½½çæ件å æ¬ï¼
1ãæå°å®è£ é象å ï¼install-x-minimal-.iso
2ãStage Tarballå¿«ç §å ï¼stage3-i-.tar.bz2
3ãç³»ç»Portageå¿«ç §å ï¼portage-latest.tar.bz2
ç½ç»ç¯å¢æUçåå¤
ä¸è½½å®æä¹åï¼æçåæ³æ¯å°ä¸è¿°2ä¸3两个å æ¾ç½®å°å±åç½çwebä¸ï¼webå°å为ï¼..1.ï¼ï¼å个ç®åç页é¢ï¼ä¾¿äºä¸è½½ä¸è®¿é®ã页é¢ä¸ºï¼index.htmlï¼
页é¢ä¸åªæ两è¡ç®åç代ç ï¼
< a href="stage3-i-.tar.bz2" > stage3< / a >
< br >< a href="portage-latest.tar.bz2" >portage < / a >< br >
å¦æ¤ï¼åå¤å·¥ä½å®æã以ä¸å¼å§å®è£ ï¼
æ使ç¨Linuxæ件系ç»çEXT4æ ¼å¼çUçåæ¾ä»¥ä¸ä¸¤ä¸ªæ件
ååº
ç¨æå°å®è£ é象å install-x-minimal-.isoå¯å¨ç³»ç»ï¼
1ãååç£ç为äºç®åæ¹ä¾¿ï¼è¿æ¯æwikiçæ¹æ³ï¼åªå为ä¸ä¸ªåºï¼
å¦ä¸ï¼
/dev/sda1 å¯å¨ååº
/dev/sda2 交æ¢ååº
/dev/sda3 æ ¹ååº
以ä¸æ¯å ·ä½ååç£çä¸æ¥éª¤ï¼
fdisk /dev/sdaé¦å 建ç«bootååºï¼Command (m for help):
nCommand action e extended p primary partition
(1-4)pPartition number (1-4): 1First cylinder (1-,源码 default 1): ï¼æå车ï¼
Using
default value 1Last cylinder or +size or +sizeM or +sizeK (1-,
default ):
+Mï¼è¿é设å®æ¯wikiä¸ç¨å¤§ä¸äºï¼ä¾¿äºä»å使ç¨å¤ä¸ªå æ ¸ï¼ç±äºè¿ä¸ªååºæ¯å°æ¥çbootï¼æ以éè¦æè¿ä¸ªååºè®¾ç½®æå¯å¯å¨çã
é®å ¥aæ¥ç»ååºæ·»å å¯å¨æ å¿ï¼
ç¶åé®å ¥1ãå¦æä½ å次æpé®ï¼ä½ å°±ä¼æ³¨æå°ï¼
å¨âBootâé£ä¸åæ个*ãä¸é¢å»ºç«swapååºï¼åä¸ï¼
é®å ¥nå建ä¸ä¸ªæ°ååºï¼ç¶åé®å ¥pæ¥åè¯fdiskä½ å建çæ¯ä¸»ååºãæ¥çè¾å ¥2æ¥å建第2个主ååºï¼å¨æ¬ä¾ä¸æ¯/dev/sda2ãå½æ示è¾å ¥ç¬¬ä¸ä¸ªæ±é¢çæ¶åï¼ç´æ¥æ²å车ãå½æ示è¾å ¥æåä¸ä¸ªæ±é¢çæ¶åï¼è¾å ¥+Mæ¥å建ä¸ä¸ªMB大å°çååºãå¨è¿ä¹åï¼é®å ¥tæ¥è®¾ç½®ååºç±»åï¼é®å ¥2éæ©ä½ ååå建çé£ä¸ªååºï¼ç¶ååè¾å ¥ï¼å³æååºè®¾ç½®æäºâLinux
Swapâãä¸é¢ï¼å»ºç«æ ¹ååºï¼åä¸ï¼é®å ¥nå建ä¸ä¸ªæ°ååºï¼ç¶åé®å ¥pæ¥åè¯fdiskä½ å建çæ¯ä¸»ååºãæ¥çè¾å ¥3æ¥å建第3个主ååºï¼å¨æ¬ä¾ä¸æ¯/dev/sda3ãå½æ示è¾å ¥ç¬¬ä¸ä¸ªæ±é¢çæ¶åï¼ç´æ¥æ²å车ãå½æ示è¾å ¥æåä¸ä¸ªæ±é¢çæ¶åï¼ä»ç¶ç´æ¥å车ï¼æç£çä¸çå©ä½ç©ºé´å建ä¸ä¸ªååºãå®æ以ä¸è¿äºæ¥éª¤ä¹åï¼é®å ¥pï¼åºè¯¥æ¾ç¤ºä¸ä¸ªä¸ä¸é¢ç±»ä¼¼çååºè¡¨ï¼
Device Boot Start End Blocks Id
System/dev/sda1 * 1 +
Linux/dev/sda2
Linux swap/dev/sda3
Linux2ã æ ¼å¼åååºå¹¶æè½½ååºæ ¼å¼åååº
mkfs.ext3 /dev/sda1
mkfs.ext4 /dev/sda3
mkswap /dev/sda2
æè½½ååº
swapon /dev/sda2
mount /dev/sda3 /mnt/gentoo
mkdir /mnt/gentoo/boot
mount /dev/sda1 /mnt/gentoo/boot
å¼å§å®è£ åºæ¬ç³»ç»
é¦å å®è£ Stage Tarballè¿å ¥Gentooçæè½½ç¹#
cd /mnt/gentooææ¯é¢å å°Stageå æ¾å°äºå±åç½å çwebä¸çï¼æ以ç´æ¥ä½¿ç¨links访é®é¡µé¢å¹¶ä¸è½½ï¼
# links mand]会提供详细的使用指导。
对于目录操作,源码ls [options] [dir]功能强大。默认情况下,它会列出所有硬盘设备,如果提供参数,java数字转英文源码就会显示指定目录的内容。完整的命令列表可以在/boot/grub/command.lst文件中查阅,包括但不限于boot、halt、reboot等。 值得注意的是,很多命令在模块中,如果命令未找到,只需通过insmod加载对应的模块即可。你可以通过定制内核,将所需的命令包包含其中,以满足特定需求。获取源代码通常使用CVS,但存在一个已知bug,影响启动时的菜单显示,可以通过下载并应用补丁解决,补丁文件为grub2-menu.diff。 编译步骤如下:首先,主图macd源码指标使用CVS获取源代码,然后对代码进行补丁处理。接着,执行./configure和./make编译。定制内核时,可以使用./grub-mkimage命令,如fat和pc模块用于支持不同的文件系统。最后,将生成的内核文件(如core.img)、启动文件、模块、配置文件等复制到特定的/boot/grub目录下,并编写配置文件grub.cfg来完成启动管理器的设置。扩展资料
Grub 2 是新一代的Grub,它实现了一些Grub中所没有的功能:Gentoo 安装基本系统全过程记录
下载iso 从Gentoo官网下载最新版的minimal镜像,并通过rufus或dd命令刻录为iso文件。在Windows系统中推荐使用rufus,它是程序员源码网站开源免费且操作简单的工具。在Linux系统中,利用dd命令进行iso文件刻录。 配置无线网 确认U盘已正确安装,并通过输入lsblk查看对应设备。使用dd命令将Minimal镜像写入U盘,完成时间约为几分钟。重新启动计算机,从U盘启动,过程中选择键盘模式并确认,之后会进入红色提示符界面。 联网配置 如果使用有线网络,网络已默认连接。通过ping命令确认网络连接状态。若使用无线网络,需手动配置。使用lspci -k检查设备驱动是否加载,使用dmesg | grep firmware查看内核中固件信息。使用iwconfig查看无线网卡名称,登录注册用户管理源码通常为wlp3s0,根据实际设备名称进行后续配置。 编辑配置文件 在/etc/conf.d/net中添加以下内容,确保与实际设备名称相符:modules_wlp3s0="wpa_supplicant"
wpa_supplicant_wlp3s0="-Dwext"
config_wlp3s0="dhcp"
生成wpa_supplicant.conf文件,输入无线SSID和密码,确保文件路径正确。 编辑启动脚本 在/etc/init.d目录下创建或修改脚本文件,确保其正确链接到对应的网络设备文件,如ln -s net.lo net.wlp3s0,然后使用/etc/init.d/net.wlp3s0 start启动网络。 测试网络连接 执行ping命令测试网络连接状态。 磁盘分区与挂载 确认网络连接正常后,使用cfdisk对硬盘进行分区。根据设备的启动模式选择分区方案。对于UEFI模式,分区方案可能如下:分区 大小 挂载点
/dev/sda1 M 引导分区 /boot/efi
/dev/sda2 8G 交换分区 swap
/dev/sda3 G 根分区 /
/dev/sda4 G 用户主目录 /home
完成分区后,使用write命令确认分区信息,然后格式化和挂载分区,确保正确挂载根分区、引导分区、交换分区和用户主目录分区。 下载stage3 使用cd命令进入根分区,下载stage3文件。通过links命令选择合适的Gentoo镜像,并输入下载命令开始下载stage3文件。下载完成后,检查文件是否存在并解压。 配置系统 配置make.conf文件,根据CPU核心数设置MAKEOPTS参数,通常为-j5。选择合适的配置文件并更新系统。 安装内核源码 使用emerge命令安装sys-kernel/gentoo-sources包,以获取内核源码。根据提示完成安装。 编译内核 使用genkernel一键编译内核,检查内核版本,并安装所需的固件。配置主机名并设置自动启动网络。 安装工具 安装系统日志记录、Cron守护程序、文件索引、DHCP客户端和无线网络工具等,确保系统功能完整。 配置引导 配置GRUB引导加载程序,确保与系统模式相匹配。安装GRUB2,使用grub-install命令将GRUB2文件安装到适当位置,并运行grub-mkconfig生成引导配置文件。 基本系统安装完成 重启系统后,gentoo基本系统已成功安装。此时,从chroot环境中退出并卸载分区,重新启动系统进入Gentoo环境。创建普通用户以支持桌面登录,后续将安装显卡驱动、触摸板驱动和桌面环境,敬请关注下篇文章。云主机装黑果实践(4):阿里轻量机上变色龙bootloader启动问题
在《云主机黑果实践系列》的第四部分,我们面临了在阿里轻量机上安装变色龙bootloader时的挑战。云主机环境下的大镜像安装问题尤其棘手,因为需要根据千差万别的机型和特定云特性进行调试,这是一项技术密集且充满变数的工作。首先,我们需要将镜像上传到阿里云主机,过程中遇到了installnet.sh脚本的gzip版本问题,通过修改脚本解决了镜像上传的卡顿问题。
然而,更大的挑战是cdboot在云主机上无法正常运行,无论是grub2引导还是直接使用mbr。问题可能源于ignore_msrs和boot本身,通过排除法,我们发现v5.0.的enoch r版本的cdboot能够启动主机,而从r开始就存在问题。仔细查看源码,关键在于某些commit的改动,特别是与DMA Remapping table和AppleACPIplatform.kext有关的更新。
为了找到问题所在,我们需要在特定的编译环境(Xcode 8.2.1 for EL CAPTAN .)下编译不同版本的cdboot。编译过程中,我们发现从版本开始,只需在特定源文件中修改两行代码,就能让cdboot在云主机上正常启动。这个发现意味着调试工作进入了一个针对云主机环境的特定配置阶段。
总的来说,尽管云主机的特殊性增加了调试难度,但通过一步步的修改和打包,我们已经成功地将变色龙配置调整到了可以启动云主机的状态。尽管还有上传iso到云主机后无法启动的问题,但我们找到了一个workaround,即先用版本启动,再尝试版本,这可能是由于loader的参数变化影响了启动。接下来,我们将继续深入细节,为云主机的变色龙安装找到最优化的配置。
grub2 怎么安装和使用?
grub-install 是gurb1 的命令
grub2应该使用grub2-install。
在/boot/grub 建立一个配置文件名为: grub.cfg
也有可能是/boot/grub2/grub.cfg 这跟你的设置有关。
root 权限执行
grub2-mkconfig>/boot/grub/grub.cfg
或者:
grub2-mkconfig>/boot/grub2/grub.cfg
重启电脑应该就能看到菜单了。