管理双系统中的默认系统启动顺序以及启动等待时间

2024-04-01 09:18

本文主要是介绍管理双系统中的默认系统启动顺序以及启动等待时间,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

转载来源:http://www.cnblogs.com/giraffe/archive/2012/02/25/2368235.html 


注意如果修改了/boot/grub/grub.cfg之后,则不要再更新update-grub,因为那样又会生成新的grub.cfg文件。


一、能上网情况下的最好方法:安装startupmanager——图形启动项管理器

  打开终端输入:sudo apt-get install startupmanager

  安装启动管理器

  系统——系统管理——启动管理器,选中默认开机操作系统即可。

  二、最方便的方法:调整Windows系统的默认启动顺序(不需要修改grub.cfg)

  /etc/grub.d 目录中的脚本文件的文件名都是以数字开头,这确定了在执行update-grub 时各文件内容被执行的顺序。

   1. 用 sudo nautilus 命令,以root权限打开文件浏览器。然后找到30_os-prober这个文件,把 30_os-prober这个文件名的数字30改为05到10之间的数字即可(没多少可选06、07、08、09),比如改为08_os-prober, 这样创建出来的grub.cfg内的菜单项,windows的排序就会自动在ubuntu之前;

  2. 运行 sudo update-grub 命令。就可以看到,windows7 已经排在了第一个的位置上。

  三、网上介绍最多的方法(修改grub.cfg)

  用 sudo gedit /boot/grub/grub.cfg 命令打开grub.cfg 这个文件,

  一种方法是并将文件中的 set default="0" 中的 0 改成对应欲默认启动的操作系统的序号(从0开始) 。然后保存;

  另一种方法是把Windows对应的启动说明那一段剪切到启动说明段最前面;

  用这2种方法都能默认启动Windows,但用修改grub.cfg 文件来实现修改默认启动项应注意:当使用update-grub 命令或者系统升级、grub升级等,grub.cfg文件将被复原。需要重新修改。

  如果懒于每次update-grub 之后都要修改grub.cfg 文件,则可以进行如下操作:

   用 sudo gedit /etc/grub.b/00_header 命令打开00_header 这个文件,找到 ser default ="${GRUB_DEFAULT}" 一行,将${GRUB_DEFAULT} 换成欲默认启动的操作系统的序号(从0开始),保存,再update-grub。这样每次update-grub之后生成的grub.cfg将自动改成我 们想要的样子。

     四、如果你在硬盘中同时安装了不同的系统,或者由于Ubuntu更新/安装软件而产生了多个启动项,为了免去每次开机都要选择的麻烦,可以把一些低版本的或是不需要的启动项注释掉,这样开机看起来就没那么乱了。

     具体做法:sudo gedit /boot/grub/grub.cfg

     然后找到 menuentry  ...,看准了要去掉的系统启动项,在menuentry这个单词前面加上"#"就然后保存就可以了。注意:至少要留一个,建议保留两个ubuntu的选 项,留下最高版本的两个不同类型的,其次再核对类型是不是各自一个:一个是正常的(没有注明“恢复模式”或:“recovery”),另一个是恢复模式的 (注明“恢复模式”或:“recovery”)。另外含有Window的项是不能加“#”进行注释的,否则你的就会找不到相关的系统入口了。还有内存测试 (menuentry "Memory test .....“ ),如果希望使用此功能留下一项,个人认为留下选项多的那个入口代表更多功能,但是内存测试的速度也会花更长的时间。



      Ubuntu默认是显示启动列表10秒以后自动进入第一个显示的启动项。要修改这个启动等待时间也是可以在/boot/grub/grub.cfg这个文件里面修改的,找到以下代码段:

---------------------------------------------------------------

search --no-floppy --fs-uuid --set c825786c-e42c-4fed-8cc2-fd2a610a183b
set locale_dir=($root)/boot/grub/locale
set lang=zh
insmod gettext
if [ "${recordfail}" = 1 ]; then
  set timeout=-1
else
  set timeout=3
fi

--------------------------------------------------------------

       修改else语句后面这个”timeout“的值,比如这里是3表示等待3秒后自动进入系统。改为其他值比如5就等待5秒。

如果你不熟悉代码的意思或者怕改错,那么建议你安装一个启动管理器在里面进行可视化设置。这样比较保险。


这篇关于管理双系统中的默认系统启动顺序以及启动等待时间的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/866783

相关文章

Linux创建服务使用systemctl管理详解

《Linux创建服务使用systemctl管理详解》文章指导在Linux中创建systemd服务,设置文件权限为所有者读写、其他只读,重新加载配置,启动服务并检查状态,确保服务正常运行,关键步骤包括权... 目录创建服务 /usr/lib/systemd/system/设置服务文件权限:所有者读写js,其他

在Node.js中使用.env文件管理环境变量的全过程

《在Node.js中使用.env文件管理环境变量的全过程》Node.js应用程序通常依赖于环境变量来管理敏感信息或配置设置,.env文件已经成为一种流行的本地管理这些变量的方法,本文将探讨.env文件... 目录引言为什么使php用 .env 文件 ?如何在 Node.js 中使用 .env 文件最佳实践引

python库pydantic数据验证和设置管理库的用途

《python库pydantic数据验证和设置管理库的用途》pydantic是一个用于数据验证和设置管理的Python库,它主要利用Python类型注解来定义数据模型的结构和验证规则,本文给大家介绍p... 目录主要特点和用途:Field数值验证参数总结pydantic 是一个让你能够 confidentl

JAVA实现亿级千万级数据顺序导出的示例代码

《JAVA实现亿级千万级数据顺序导出的示例代码》本文主要介绍了JAVA实现亿级千万级数据顺序导出的示例代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面... 前提:主要考虑控制内存占用空间,避免出现同时导出,导致主程序OOM问题。实现思路:A.启用线程池

SpringBoot 多环境开发实战(从配置、管理与控制)

《SpringBoot多环境开发实战(从配置、管理与控制)》本文详解SpringBoot多环境配置,涵盖单文件YAML、多文件模式、MavenProfile分组及激活策略,通过优先级控制灵活切换环境... 目录一、多环境开发基础(单文件 YAML 版)(一)配置原理与优势(二)实操示例二、多环境开发多文件版

Redis实现高效内存管理的示例代码

《Redis实现高效内存管理的示例代码》Redis内存管理是其核心功能之一,为了高效地利用内存,Redis采用了多种技术和策略,如优化的数据结构、内存分配策略、内存回收、数据压缩等,下面就来详细的介绍... 目录1. 内存分配策略jemalloc 的使用2. 数据压缩和编码ziplist示例代码3. 优化的

SpringBoot集成XXL-JOB实现任务管理全流程

《SpringBoot集成XXL-JOB实现任务管理全流程》XXL-JOB是一款轻量级分布式任务调度平台,功能丰富、界面简洁、易于扩展,本文介绍如何通过SpringBoot项目,使用RestTempl... 目录一、前言二、项目结构简述三、Maven 依赖四、Controller 代码详解五、Service

深入解析C++ 中std::map内存管理

《深入解析C++中std::map内存管理》文章详解C++std::map内存管理,指出clear()仅删除元素可能不释放底层内存,建议用swap()与空map交换以彻底释放,针对指针类型需手动de... 目录1️、基本清空std::map2️、使用 swap 彻底释放内存3️、map 中存储指针类型的对象

python 线程池顺序执行的方法实现

《python线程池顺序执行的方法实现》在Python中,线程池默认是并发执行任务的,但若需要实现任务的顺序执行,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋... 目录方案一:强制单线程(伪顺序执行)方案二:按提交顺序获取结果方案三:任务间依赖控制方案四:队列顺序消

SpringBoot通过main方法启动web项目实践

《SpringBoot通过main方法启动web项目实践》SpringBoot通过SpringApplication.run()启动Web项目,自动推断应用类型,加载初始化器与监听器,配置Spring... 目录1. 启动入口:SpringApplication.run()2. SpringApplicat