Ubuntu中利用 sysv |
您所在的位置:网站首页 › 设置脚本开机自启 › Ubuntu中利用 sysv |
在《在Linux中利用Service命令添加系统服务及开机自启动》中提到,可以使用 chkconfig 把服务加到开机自动启动列表里,开机就能自启动了,但是chkconfig 是Redhat下的程序,而在Ubuntu下有一个更好的程序可以完美“替代”chkconfig,那就是sysv-rc-conf。 这里在 Ubuntu16.04上进行演示。 第1步:安装 sudo apt-get install sysv-rc-conf第2步:放置服务 把需要自启动的脚本放置的 /etc/init.d 目录下 第3步:使用 方法一:命令行设置 sudo sysv-rc-conf xxxx on方法二:图像界面设置 sudo sysv-rc-conf小建议:在使用 sysv-rc-conf 前,将终端窗口最大化,否则选项显示不全。 操作界面十分简洁,可以用鼠标点击,也可以用键盘方向键定位,用空格键选择,用Ctrl+N翻下一页,用Ctrl+P翻上一页,用Q退出。当方括号中打X的即表示运行在对应runlevel时开机启动的服务。 Linux 使用 ln -s 建立软连接启动 即: 在 /etc/rc.d/rc*.d 目录中建立 /etc/init.d/ 服务的软链接 示例: 1) 首先编写demo程序:hello.c #include main() { FILE *fp; char a[] = "Hello world!"; fp=fopen("hhh.txt","a+"); fputs(a,fp); return 0; }2) 编译hello.c gcc -g hello.c -o hello3) 在/etc/init.d目录下添加脚本test #!/bin/bash start() { echo "------------------test----------------" cd /home/xxx/test/ ./hello } case $1 in start): start ;; stop): echo "-----------------stop------------------" ;; esac exit 04) 设置权限 chmod 755 /etc/init.d/test5)建立软连接 在相关运行级别创建启动软连接,例如,开机自启的话,在/etc/rc2.d/中创建启动服务脚本的软连接(命名S开头) ln -s /etc/init.d/test /etc/rc2.d/S20test在/etc/rc0.d/创建停止服务软连接: ln -s /etc/init.d/test /etc/rc0.d/K20test6)重启 reboot效果: 重启后将在HOME路径下创建 hhh.txt 文件。
Linux 系统主要启动步骤: 1. 读取 MBR 的信息,启动 Boot Manager Windows 使用 NTLDR 作为 Boot Manager,如果您的系统中安装多个版本的 Windows,您就需要在 NTLDR 中选择您要进入的系统。 Linux 通常使用功能强大,配置灵活的 GRUB 作为 Boot Manager。 2. 加载系统内核,启动 init 进程 init 进程是 Linux 的根进程,所有的系统进程都是它的子进程。 3. init 进程读取 /etc/inittab 文件中的信息,并进入预设的运行级别,按顺序运行该运行级别对应文件夹下的脚本。脚本通常以 start 参数启动,并指向一个系统中的程序。 通常情况下, /etc/rcS.d/ 目录下的启动脚本首先被执行,然后是/etc/rcN.d/ 目录。例如您设定的运行级别为 3,那么它对应的启动目录为 /etc/rc3.d/ 。 4. 根据 /etc/rcS.d/ 文件夹中对应的脚本启动 Xwindow 服务器 xorg Xwindow 为 Linux 下的图形用户界面系统。(/etc/rcS.d/S02x11-common) 5. 启动登录管理器,等待用户登录 Ubuntu 系统默认使用 GDM 作为登录管理器,您在登录管理器界面中输入用户名和密码后,便可以登录系统。(可以在 /etc/rc3.d/文件夹中找到一个名为 S03lightdm 的链接) |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |