1. 系统启动后,在BIOS引导界面按“ESC”键进入选择菜单,选择第一个“Ubuntu”,按“e”键进入编辑模式。

    ubuntu16.04桌面版开机进入命令行模式

  2. 在出现的编辑项里,可以看到GRUB解析给内核的参数。我们在该行末尾给出引导运行级别,3(多用户模式,纯文本)。

    ubuntu16.04桌面版开机进入命令行模式

根据提示 Ctr+x或者F10进行引导。

这种方式只生效与本次启动

如果要每次开机都进入到命令行模式的话,需要在/etc/default/grub里面配置。

GRUB_CMDLINE_LINUX_DEFAULT一行中改为"quiet splash 3"。

这里的3时Linux的启动等级

  • 0:停机 系统停止。注意不要把该级别设置为默认模式,否则系统每次启动以后就会自动停止,无法进入。这个运行级别主要用于关闭任务。
  • 1:在此模式下,只能由管理员进入而其他用户无法登录。因为在启动时,文件系统被加载但是网络却没有被加载,无法通过网络登录。
  • 2:多用户,多用户模式,用户可以通过网络进行登录, 不能使用nfs服务 。在不支持网络的情况下该模式和级别1是相同的
  • 3:完全多用户, 完全多用户模式。这是缺省的运行模式,在此模式下所有网络服务程序一起运行。
  • 4:安全模式, 未使用模式,这一级别是用户自定义的运行级别,如果想运行此级别的话,必须在 rc3.d 目录下放入连接文件,就像其他 rc*.d目录下的文件,并指明是启动还是终止进程。
  • 5:图形模式, 在 Linux 下运行 X Window 就是使用这一级别。在此级别下除了因特网的域名服务器的name与级别3不同,其余的都相同。
  • 6:重启, 这是个重新启动系统的运行级别。此目录下的连接与级别为 0 的在 rc0.d(etc中) 下的连接基本相同。不同之处在于,虽然它们都执行 halt(关闭)命令,但是给 halt 传递的参数不一样,因而级别 6 能够重新启动系统。(rebootf也可以重启)

startx 启动图形化界面

sudo killall Xorg 关闭xwindows

对于5启动的Linux , 

ctr+alt + F1~F7

Centos和ubuntu-16.10以前是使用initd 初始化管理系统,ubuntu-16.10之后改用systemd。

查看ubuntu版本号

root@zheng-virtual-machine:/home/zheng# lsb_release -a
No LSB modules are available.
Distributor ID:	Ubuntu
Description:	Ubuntu 16.04.7 LTS
Release:	16.04
Codename:	xenial
我们的ubuntu是使用的initd, 在/etc/下面有很多个rc*.d。
在每个rc*.d下面有很多启动脚本
 
每个下main都有个S*rc.local实际都是链接到/etc/init.d/rc.local 
 
root@zheng-virtual-machine:/home/zheng# cat /etc/init.d/rc.local 
#! /bin/sh
### BEGIN INIT INFO
# Provides:          rc.local
# Required-Start:    $all
# Required-Stop:
# Default-Start:     2 3 4 5
# Default-Stop:
# Short-Description: Run /etc/rc.local if it exist
### END INIT INFO


PATH=/sbin:/usr/sbin:/bin:/usr/bin

. /lib/init/vars.sh
. /lib/lsb/init-functions

do_start() {
	if [ -x /etc/rc.local ]; then
	        [ "$VERBOSE" != no ] && log_begin_msg "Running local boot scripts (/etc/rc.local)"
		/etc/rc.local
		ES=$?
		[ "$VERBOSE" != no ] && log_end_msg $ES
		return $ES
	fi
}

case "$1" in
    start)
	do_start

在这里执行了用户自定义脚本 /etc/rc.local

把你需要启动脚本写入 /etc/rc.local ,写一个测试的脚本放在里面,以便验证脚本是否生效.

echo "this just a test" > /usr/local/text.log

ubuntu启动流程

1.BIOS自检
     识别主机上可以启动的设备,一次只能从一个设备上启动,通常是硬盘启动,启动驻留在MBR(硬盘主引导记录)中的grub或lilo。
2.grub/lilo引导启动
    此时操作系统没有装入内存,引导程序将控制权转移给内核。
3.装载linux内核
    引导程序加载linux内核,ubuntu将linux内核至于/boot目录下。
4.系统初始化
   启动init进程,init进程读取初始化脚本,完成系统相关的管理任务,执行步骤如下

执行功能
/etc/inittab确定运行级别
/etc/rc.d/rc.sysinitPATH、网络、SWAP、proc的设定
/etc/modules.conf加载模块
/etc/rc*.d/执行不同运行级别的脚本程序
/etc/rc.local用户执行的操作
/bin/login执行该程序,进入登录界面


 

 

 

 

 

 

 

Linux 常用目录

目录名简要说明
/bin二进制可执行命令
/dev设备特殊文件
/etc系统管理和配置文件
/etc/rc.d启动的配置文件和脚本
/home用户主目录的基点,比如用户abc的主目录就是/home/user,可以用~abc表示
/lib标准程序设计库
/sbin系统管理命令,这里存放的是系统管理员使用的管理程序
/tmp公用的临时文件存储点
/root系统管理员的主目录
/mnt系统提供这个目录是让用户临时挂载其他的文件系统。
/lost+found这个目录平时是空的,系统非正常关机而留下“无家可归”的文件
/proc虚拟的目录,是系统内存的映射。可直接访问这个目录来获取系统信息。
/var某些大文件的溢出区,比方说各种服务的日志文件
/usr最庞大的目录,要用到的应用程序和文件几乎都在这个目录。其中包含:
/usr/X11R6 存放X window的目录
/usr/bin 众多的应用程序
/usr/sbin 超级用户的一些管理程序
/usr/doc linux文档
/usr/include linux下开发和编译应用程序所需要的头文件
/usr/lib 常用的动态链接库和软件包的配置文件
/usr/man 帮助文档
/usr/src 源代码,linux内核的源代码就放在/usr/src/linux里
/usr/local/bin 本地增加的命令
/usr/local/lib 本地增加的库

 

 

Logo

更多推荐