UBUNTU 学习笔记Word文档下载推荐.docx
《UBUNTU 学习笔记Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《UBUNTU 学习笔记Word文档下载推荐.docx(16页珍藏版)》请在冰豆网上搜索。
2013/3/21
wifi在休眠后无法使用
editconnections>
aviliableforallusers
2013/3/27
传统UNIX使用systemv5
ubuntu使用upstart
Thiscanbesummarisedas:
*Upstartstartsaservicewhenitsrequiredconditionsaremet.
Theservice(jobconfigurationfile)onlyneedstospecifytheconditionsthatallowtheservicetorun,andtheexecutabletoruntheserviceitself.
*Dependency-basedinitsystemsmeetaservice'
sdependenciesbeforestartingthem.
Eachservicegenerallydoesthisusingabrute-forceapproachofforcingallthedependenciestostart.
Notethattheinitsystemitselfisnotdoingtheheavy-lifting:
thatisleftuptoeachserviceitself(!
)
upstart是一种基于事件驱动的服务启动机制,可以使多个系统任务在保持依赖关系的前提下并发启动
initctllist|less查看运行的脚本
2013/3/28
RUNLEVEL(commonly)
0.halt
1.Single-Usermode
2.Multi-Usermode
3.Multi-UsermodewithNetworking
4.Optional=Userdefinableforspecialpurposes
5.FullMulti-UserMode(X11)=LoadsGUIgnome/kdeandallthedaemons
6.Reboot
ButinUbuntu
2.FullMulti-UserMode(UbuntuDEFAULT)
3.FullMulti-UserMode
4.FullMulti-UserMode
5.FullMulti-UserMode
filesin:
/etc/rc0.d/=RunLevel0
/etc/rc1.d/=RunLevel1
/etc/rc2.d/=RunLevel2
/etc/rc3.d/=RunLevel3
/etc/rc4.d/=RunLevel4
/etc/rc5.d/=RunLevel5
/etc/rc6.d/=RunLevel6
目录里都为符号链接(symboliclinks)到/etc/init.d/内的被其运行级别所调用的daemons,shellscripts,programs
当运行级别被调用时
前缀为S的链接:
启动(Start)
前缀为K的链接:
停止(Stop)
在传统的LInux发行版中,GRUB2启动以后,init进程就被调用,并作为其他所有进程的“父进程”。
而Ubuntu使用“Upstart”来取代传统的“init”daemon
以下几种工具用来管理Ubuntu下的运行级别
1.runlevel=显示先前与当前的运行级别,
若显示N2
N代表没有先前运行级别(与当前一样),同时当前值为默认值2
2.telinit=设置运行级别参数
telinitS启动单用户模式
telinit3启动第三个运行级别
/etc/init.d/中为配置的脚本文件
/etc/init/中为*.conf配置文件
两种工具:
BUM(Boot-Up-Manger)利用工具来设置启动级别
sysv-rc-confUNIXsystemVrunlevelconfig
2013/3/29
Ubuntu12.04日志文件位置
传统的Linux位于?
/etc/var/messages
Ubuntu12.04位于/var/log/syslog
-rw-r-----.1syslogadm228262Mar2921:
17syslog
-rw-r-----.1syslogadm537867Mar2909:
16syslog.1
-rw-r-----.1syslogadm23908Mar2809:
49
-rw-r-----.1syslogadm90013Mar2708:
43
-rw-r-----.1syslogadm65684Mar2412:
01
-rw-r-----.1syslogadm33917Mar2307:
50
-rw-r-----.1syslogadm171373Mar2207:
02
-rw-r-----.1syslogadm57900Mar2107:
56
列表所示:
旧日志文件被压缩后保存,数字越小代表日志文件越新。
更改此配置文件即可回复/etc/var/messages
sudonano/etc/rsyslog.d/50-default.conf
找到如下字段,取消“#”号
#*.=info;
*.=notice;
*.=warn;
\
#auth,authpriv.none;
#cron,daemon.none;
#mail,news.none-/var/log/messages
2013/3/31
sudodebugfs-R'
logdump'
/dev/sda2|grep"
transaction"
查看硬盘寿命
Upstat
1.以超级用户的权限运行
2.负责掌管重要的系统服务
3如果init进程崩溃,内核即崩溃
由于SystemVinitsystem和Dependency-basedinitsystems存在限制,所以开发了Upstart
2013/4/1
在/etc/init/lightdm.conf中可以更改开机是否启动lightdm进程,必须把starton#掉
对于传统的UNIX系统(SysV)来说,同时登录着数以百记的用户,也不会经常发生重启。
更换硬件和关闭系统同样也是有计划的进行。
从Ubuntu的角度来讲,大多数用户将其视为桌面操作系统,对于他们来说可能会一天重启数次。
现代的Linux操作系统可以支持硬件的热插拔,而传统的SysV无法支持动态地更改系统。
1.Upstart的服务启动基于事件的发生
2.多个任务同时具有“starton”状态是,Upstart会并行启动任务
Upstart作业的10种状态:
waiting:
初始状态。
starting:
作业开始启动。
pre-start:
运行pre-start配置节。
spawned:
运行script或exec节。
post-start:
运行post-start节。
running:
运行完post-start节之后的临时状态,表示作业正在运行(但可能没有关联的PID)。
pre-stop:
运行pre-stop节。
stopping:
运行完pre-stop节之后的临时状态。
killed:
作业要被终止。
post-stop:
运行post-stop节。
作业的状态可通过inictlstatus命令输出的中status域来显示给用户。
initctl是一个具有root权限的管理员可以使用init进程管理控制工具,可以通过这个工具和Upstartinitdaemon进行通信。
initctl可以用来启动或终止作业、列表作业、以及获取作业的状态、发出事件、重启init进程等等。
比如initctllist让您可以通过标识作业状态来深入了解系统操作,它告诉您目前正在等待哪些服务以及哪些服务目前是活动的。
initctl工具还可以显示用于调试而接收的事件。
$initctllog-priority
initctl使用示例
通过initctl手动启动、停止、重启FTP服务
#启动MySQL服务
initctlstartmysql
#停止MySQL服务
initctlstopmysql
#重启MySQL服务
initctlrestartmysql
start、stop和restart工具都是initctl的软链接,会直接运行initctl工具中的对应命令。
采用Upstart做启动管理的系统,服务的启动均依赖于/etc/init/下的每个服务对应的配置文件,通过修改这配置文件,可以更改服务的运行级别。
所以即使你将rcX.d下的文件删除,也都不会影响系统的启动。
系统启动
我们以Ubuntu为例子,并从Upstart的视角来阐述。
在系统引导时,当initramfs文件系统运行起来时(用于设置RAID、解锁加密的文件系统卷等),将会运行/sbin/init并分配PID为1,这样Upstart接过控制权。
在默认运行级别2上的启动流程如下:
1)Upstart执行内部的初始化。
2)Upstart触发一个单一的称为startup的事件,这个事件触发其余的系统初始化过程。
3)init运行一些指定了startonstartup的作业。
这其中最著名的就是mountall作业,用来挂载硬盘和文件系统。
4)mountall作业依次触发一系列的事件,包括local-filesystems,virtual-filesystems,all-swaps等。
当系统设备和挂载点可用时,它运行mountall守护程序来完成挂载硬盘和文件系统的工作。
5)virtual-filesystems事件引发udev作业启动。
它运行uded守护程序来管理系统的设备,并监控设备的改变。
6)udev作业引发upstart-udev-bridge作业启动。
7)upstart-udev-bridge作业将会在某个点处触发”net-device-upIFACE=lo”事件,以表示本地网络(例如IPv4的
8)在最终的文件系统挂载之后,mountall将会触发filesystem事件。
9)由于rc-sysinit作业中有startonfilesystemandnet-device-upI