Ubuntu添加开机自动启动程序的方法 / 修改 Ubuntu 启动顺序
1. 开机启动时自动运行程序
Linux加载后, 它将初始化硬件和设备驱动, 然后运行第一个进程init。init根据配置文件继续引导过程,启动其它进程。通常情况下,修改放置在
/etc/rc或
/etc/rc.d 或
/etc/rc?.d
目录下的脚本文件,可以使init自动启动其它程序。例如:编辑/etc/rc.d/rc.local 文件(该文件通常是系统最后启动的脚本),在文件最末加上一行“xinit”或“startx”,可以在开机启动后直接进入X-Window。
2. 登录时自动运行程序
用户登录时,bash先自动执行系统管理员建立的全局登录script :
/ect/profile
然后bash在用户起始目录下按顺序查找三个特殊文件中的一个:
/.bash_profile、
/.bash_login、
/.profile,
但只执行最先找到的一个。因此,只需根据实际需要在上述文件中加入命令就可以实现用户登录时自动运行某些程序(类似于DOS下的Autoexec.bat)。
3. 退出登录时自动运行程序
退出登录时,bash自动执行个人的退出登录脚本
/.bash_logout。
例如,在/.bash_logout中加入命令“tar -cvzf c.source.tgz *.c”,则在每次退出登录时自动执行 “tar” 命令备份 *.c 文件。
4. 定期自动运行程序
Linux有一个称为crond的守护程序,主要功能是周期性地检查 /var/spool/cron目录下的一组命令文件的内容,并在设定的时间执行这些文件中的命令。用户可以通过crontab 命令来建立、修改、删除这些命令文件。
例如,建立文件crondFile,内容为“00 9 23 Jan * HappyBirthday”,运行“crontabcronFile”命令后,每当元月23日上午9:00系统自动执行“HappyBirthday”的程序(“*”表示不管当天是星期几)。
5. 定时自动运行程序一次
定时执行命令at 与crond 类似(但它只执行一次):命令在给定的时间执行,但不自动重复。at命令的一般格式为:at [ -f file ] time ,在指定的时间执行file文件中所给出的所有命令。也可直接从键盘输入命令:
$ at 12:00
at>mailto Roger -s ″Have a lunch″ < plan.txt
at>Ctr-D
Job 1 at 2000-11-09 12:00
2000-11-09 12:00时候自动发一标题为“Have a lunch”,内容为plan.txt文件内容的邮件给Roger.
Ubuntu下添加开机启动脚本
Ubuntu开机之后会执行/etc/rc.local文件中的脚本,所以我们可以直接在/etc/rc.local中添加启动脚本。
当然要添加到语句:exit 0 前面才行。
如:
sudo vi /etc/rc.local
然后在 exit 0 前面添加好脚本代码。
后续有空再研究下添加一个Ubuntu的开机启动服务看看。
如果要添加为开机启动执行的脚本文件,可先将脚本复制或者软连接到/etc/init.d/目录下,然后用:update-rc.d xxx defaults NN命令(NN为启动顺序),将脚本添加到初始化执行的队列中去。
注意如果脚本需要用到网络,则NN需设置一个比较大的数字,如98 。
修改 Ubuntu 启动顺序
方法一 利用启动管理器
1、安装启动管理器
sudo apt-get install startupmanager
Screenshot-启动管理器.png [ 42.82 KiB | 被浏览 14223 次 ]
方法二 修改 /boot/grub/grub.cfg
1、备份原文件为 grub.cfg.bak
sudo cp /boot/grub/grub.cfg /boot/grub/grub.cfg.bak
2、修改启动顺序
sudo gedit /boot/grub/grub.cfg
menuentry 'Ubuntu,Linux 2.6.32-22-generic'
menuentry 'Ubuntu,Linux 2.6.32-22-generic (恢复模式)'
menuentry 'Ubuntu,Linux 2.6.32-21-generic'
menuentry 'Ubuntu,Linux 2.6.32-21-generic (恢复模式)'
menuentry "Memory test (memtest86+)"
menuentry "Memory test (memtest86+, serial console 115200)"
menuentry "Microsoft Windows XP Professional (on /dev/sda1)"
注:以下为针对 ubuntu 8.04 版本
启动ubuntu后,输入:
sudo gedit /boot/grub/menu.lst
输入正确密码后,打开menu.lst。从第一行往下看,找到第一个开头没有#的行
default 0
然后往下看,在文件的尾部找到以title开头的行(注意,以#开头的都不要理),我的文件以title开头的行(开头没有#)有7行,依次为:
title Ubuntu 8.04.1, kernel 2.6.24-21-generic
title Ubuntu 8.04.1, kernel 2.6.24-21-generic (recovery mode)
title Ubuntu 8.04.1, kernel 2.6.24-16-generic
title Ubuntu 8.04.1, kernel 2.6.24-16-generic (recovery mode)
title Ubuntu 8.04.1, memtest86+
title Other operating systems:
title Windows NT/2000/XP
这些行当然不是像这样连在一起的,它们分散在文件中。我把这7行写一起,就是让我们看得清楚些。事实上,除去每行前面的title,这7行就是我开机时出现的启动菜单项,系统在启动时读的就是该文件。
default 0
表示默认情况下启动以上菜单上第1行(0+1)的系统
我们看到windows处于第7(6+1)行,所以现在把default的值改为6,保存文件,重启系统,默认启动的系统就改为Windows系统了。
Ubuntu添加开机自动启动程序的方法 / 修改 Ubuntu 启动顺序相关推荐
- UBUNTU添加开机自动启动程序方法
UBUNTU添加开机自动启动程序方法 1. 开机启动时自动运行程序 Linux加载后, 它将初始化硬件和设备驱动, 然后运行第一个进程init.init根据配置 文件继续引导过程,启动其它进程.通常情 ...
- Ubuntu添加和设置开机自动启动程序的方法
Ubuntu添加和设置开机自动启动程序的方法 1.Ubuntu添加开机自动启动程序的方法ubuntu 1. 开机启动时自动运行程序 Linux加载后, 它将初始化硬件和设备驱动, 而后运行第一个进程i ...
- Linux打开rtf文档,在linux下设置开机自动启动程序的方法_精品.rtf
您所在位置:网站首页 > 海量文档  > 计算机 > linux/Unix相关 在linux下设置开机自动启动程序的方 ...
- [Windows][VC]开机自动启动程序的几种方法
原文:[Windows][VC]开机自动启动程序的几种方法 很多监控软件要求软件能够在系统重新启动后不用用户去点击图标启动项目,而是直接能够启动运行,方法是写注册表Software\\Microsof ...
- VC 开机自动启动程序 方法
2019独角兽企业重金招聘Python工程师标准>>> 正文 字体大小:大 中 小 VC 开机自动启动程序代码 转载▼ 很多监控软件要求软件能够在系统重新启动后不用用户去点击图标启动 ...
- Ubuntu开机自启动程序的方法
文章目录 Ubuntu开机自启动程序的方法 目标效果 方案1:修改rc.local 测试结果 方案2:单独增加一个开机启动的脚本 错误1 错误2 实测结果 refs 方案3:利用官方快捷方式启动 Ub ...
- linux运行mate,在Ubuntu MATE系统上自动启动程序的方法
Mate桌面环境有很多设置,用户可以利用这些设置进行自定义,本文要讲的是自动启动功能,因为它允许用户自动启动Ubuntu MATE上的程序,可以决定Ubuntu MATE系统如何加载程序,脚本甚至服务 ...
- VC 开机自动启动程序代码
本文转载于 http://www.diybl.com/course/3_program/vc/vc_js/200875/130202.html VC 开机自动启动程序代码 很多监控软件要求软件能够在系 ...
- uefi下的开机顺序_动态修改UEFI启动顺序的方法与流程
本发明涉及计算机领域,其主要 技术实现要素: 是动态修改UEFI启动顺序的方法. 背景技术: 固件是固化在Flash芯片中的软件程序.BIOS是计算机中最重要的固件之一,用于初始化硬件.管理硬件资源. ...
最新文章
- 儿智展---国内首个少儿智能产品专业展11月登陆上海
- 使用antd UI组件有感
- mysql monday event_MySQL获取日期周、月、天,生成序号
- 隐藏滚动条,保留鼠标滚动效果
- 定义派生类和继承类(从汇编分析)
- java swing刷新_Swing界面刷新问题(转)
- C# Console类学习笔记
- python __init__ __new___Python中的__init__和__new__介绍
- 离线手动部署docker镜像仓库——harbor仓库(二)
- echart的进阶使用(option)
- linux x86 关机 过程,linux在x86上的中断处理过程(详细)
- 【quickhybrid】API的分类:短期API、长期API
- python数值积分_python实现数值积分的Simpson方法实例分析
- 《Storm技术内幕与大数据实践》一第1章 绪论
- radio默认选中第一个_Mybatis学习之路【1】-- 第一个程序
- PHP审核接口基本判断
- python reduce函数怎么用_python内置函数reduce
- [VCS] coverage hierachy exclude
- 如何彻底杀死/关闭烦人的弹窗广告
- 大学计算机应用教程实验步骤,大学计算机基础实验教程--详细介绍
热门文章
- 4.5.3 循环控制语句
- ae saber插件_【AE插件】 用于做动画制作/设计的五个免费插件 非常好用
- GAN + Video Inpainting的一些思考和相关论文
- Transformer好文章阅读链接
- PhpStorm调用浏览器运行php文件
- 阿里云centos云服务器 - 网站搭建教程
- 推荐的上海python培训班_燃烧的蔬菜推推推
- 自动挂机区块AI机器人源码开源支持二次开发
- OREO免费授权系统源码
- boot spring 没有父子容器_理解 MyBatis 是如何在 Spring 容器中初始化的