Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2350959
  • 博文数量: 609
  • 博客积分: 10061
  • 博客等级: 上将
  • 技术积分: 5920
  • 用 户 组: 普通用户
  • 注册时间: 2008-06-25 08:30
文章分类

全部博文(609)

文章存档

2010年(13)

2009年(39)

2008年(558)

我的朋友

分类:

2008-08-27 22:02:13

Solaris 的引导与初始化  


  任何时候,系统处于以下8种可用的运行级别中:0~6、S=s。/sbin/init 或/etc/telinit(link)的主要功能是根据/etc/inittab文件中的定义创建其子进程。
  操作系统引导期间,init进程被激活并从/etc/default/init读取有关时区和语言等的环境变量,随后检查/etc/inittab(如不存在,则提示用户输入)中的缺省level,并spawn("孵化")该级别定义的所有进程。
  初始化结束后,init进程进入等待状态,等候以下事件发生:定义为respawn类型的子进程终止;电源失败信号;其它init进程改变系统的运行级别。
  /etc/inittab文件中可以加入新的条目,可以用init -q来强制init进程立即重新查看该文件中的信息。
  收到改变运行level请求后,init进程向每个未被目标level定义的进程发出警告信号SIGTERM,并再5秒后发出SIGKILL信号强行终止这些进程
  进程被创建时在/var/adm/wtmp中有记录,终止时在/var/adm/utmp有记录。
  收到SIGPWR信号后,init进程检查/etc/inittab中有关powerfail 和powerwait类型的条目,并立即执行。
sync命令可以同步硬盘缓冲。

运行等级包括(常用到的有3、S、0、6):
  0:firmware,可以安全关机。
  1:系统管理员状态,mount所有文件系统,保留一小部分基本的内核进程,无用户登录。
  2:多用户状态
  3:扩展多用户状态,所有资源在网络上可用
  4:可被定义为可选的多用户状态,
  5:为关闭电源而将系统shut down
  6:停止OS并reboot到缺省的level.
  S=s,单用户状态,仅有root自己登录。

  命令init的参数还有:
  a,b,c:执行inittab中的特定命令但不改变当前运行等级。
  Q=q,重新检查/etc/inittab
  shutdown命令可以进入S等级

关机:
  通常情况下,系统是被设计连续运行的,但是当发生以下情况时可能需要关闭系统:在S等级下进行系统维护;改变系统的硬件配置;发生系统崩溃等严重故障;进行环境调整需要停电等。
  shutdown 命令发出后,系统以约定的格式发出7200、3600、1800、1200、600、300、120、60、30秒警告。
  缺省为在60秒后进入状态S,可以使用的参数有:
  -y 跳过提示确认
  -i 进入制定的等级状态
  -g 关机等待时间
  在系统停止响应后,应首先尝试以下控制键序列:^Q、^C、^D、^X;然后可试图用kill方法杀死挂起的进程,不得已时才使用紧急关机。
  紧急关机时,首先尝试STOP-A,进行硬盘同步并重新启动;最后尝试直接关闭电源。

无用户帐号可登录:
  #boot -s
  修改 /etc/default/login文件

忘记root口令:
  #boot cdrom -sw
  cd /
  mount /dev/dsk/c0t0d0s0 /mnt
  cd /mnt/etc
  修改shadow
  umount /mnt
  reboot

阅读(510) | 评论(0) | 转发(0) |
0

上一篇:水仙花数问题

下一篇: SELinux 入门

给主人留下些什么吧!~~