Solaris10啟動不能進入圖形介面的一個bug

xiaoli發表於2009-06-28

這是Solaris10的一個Bug,已經修正但目前沒有反映到Solaris10當前版本中(06/06版本)。 我安裝的sol-10-u6-ga1-x86-dvd.iso版本,沒查是否包含在內。

只能啟動到如下命令列

Root password for system maintenance (control-d to bypass):

輸入root密碼後進入#命令列

a. #svcadm clear system/boot-archive 然後執行#/lib/svc/method/boot-archive 啟動了圖形介面模式。

Root passord for system maintenance(control-d bypass):

see /lib/svc/share/README for information

console login service(s) cannot run

#svcadm clear system/boot-archive

#The / file system (/dev/rdsk/c0d0s0) is being checked.

/dev/rdsk/c0d0s7 is clean

Reading ZFS config:done.

到此圖形介面起來了!

b.每次重起機器後都發生,追加cronjob 定期執行 /usr/sbin/bootadm update-archive

對這個問題還是一知半解,等弄明白了再來補充!

[@more@]

# pwd

/lib/svc/share

# cat README

Copyright 2008 Sun Microsystems, Inc. All rights reserved.

Use is subject to license terms.

ident "@(#)README.share 1.3 08/06/06 SMI"

/lib/svc/share/README

smf(5): Notes on maintenance mode and recovery

Failures that bring the system to maintenance mode may include hardware

or critical software failures. The procedures below are given so that

some software repairs can be made; the recommended exit approach once a

repair has been made is to reboot the system. The system can be brought

to maintenance mode deliberately via the '-s' option to boot(1M), or via

the 's' option to init(1M).

In failure scenarios, smf(5) may or may not be running, depending on

which component has failed. If smf(5) is running, and the /usr

filesystem is reachable, then the usual svcadm(1M) invocations to clear

maintenance state and restart services instances can be used.

Otherwise, the following instructions describe the direct execution of

service methods, so that capabilities that svc.startd(1M) would normally

start automatically can be started manually. In the case that the

document recommends an invocation like

# /lib/svc/method/example-method start

you may also consider running these scripts with the shell displaying

the commands from the service method as they are executed. For sh(1)

based scripts, this would mean running the method as

# /sbin/sh -x /lib/svc/method/example-method start

Some methods may be written to instead use ksh(1), with invocation

# /usr/bin/ksh -x /lib/svc/method/example-method start

The first line of the service method script will generally specify its

required interpreter using the standard #! notation. Method scripts may

potentially require interpreters other than sh(1) or ksh(1).

1. Boot archive failure

The boot archive may become out of sync with the root filesystem in a

reboot following an abnormal system shutdown. The recommended action is

to reboot immediately to rebuild the archive and correct the inconsistency.

To accomplish this, on a GRUB-based platform, choose "Solaris failsafe"

when the boot menu is displayed. Type 'i' to get an interactive recovery

shell and follow instructions to update the boot archive. On an OBP-

based platform, type 'boot -F failsafe' and follow the instructions.

If the list of stale files are not yet loaded by the kernel

or are compatible, you may continue booting by clearing the

boot-archive service state

# svcadm clear system/boot-archive

2. Failure to mount filesystems.

In cases where the system was unable to bring a combination of the

system/filesystem/{root,usr,minimal} services online, it may be possible

to directly execute the corresponding service methods

# /lib/svc/method/fs-root

# /lib/svc/method/fs-usr

# /lib/svc/method/fs-minimal

to mount the various filesystems. In the case that these methods fail,

a direct invocation of mount(1M), and potentially fsck(1M), should be

attempted for file systems required for recovery purposes.

/lib/svc/method/fs-usr attempts to remount the root file system

read-write, such that persistent changes can be made to the system's

configuration. If this method is failing, one can directly remount

using the mount(1M) command via

# /sbin/mount -o rw,remount /

/etc/svc/volatile is a temporary filesystem generally reserved for Sun

private use. It may prove a useful location to create mount points if

the root file system cannot be remounted read-write.

3. Failure to run svc.configd(1M).

svc.configd(1M) will give detailed instructions for recovery if the

corruption is detected in the repository. If svc.configd(1M) cannot be

run because of missing or corrupt library components, then the affected

components will need to be replaced. Components could be copied from a

CD-ROM or DVD-ROM, or from another system.

4. Failure to run svc.startd(1M).

If the inittab(4) line to invoke svc.startd(1M) is missing or incorrect,

it will need to be restored. A valid entry is

smf::sysinit:/lib/svc/bin/svc.startd >/dev/msglog 2<>/dev/msglog

If svc.startd(1M) cannot be run because of missing or corrupt library

components, then the affected components will need to be replaced, as

for svc.configd(1M) above.

5. Activating basic networking configuration.

If svc.startd(1M) did not execute successfully, it may also be necessary

to activate network interfaces manually, such that other hosts can be

contacted. The service methods can be invoked directly as

# /lib/svc/method/net-loopback

# /lib/svc/method/net-physical

If these methods fail, a direct invocation of ifconfig(1M) can be

attempted.

In some scenarios, one may be able to use routeadm(1M) to activate more

dynamic route management functionality; restoring the default dynamic

routing behaviour can be done using the '-u' option. (Invoking routeadm

with no arguments will display which commands must be accessible for the

current routing configuration to be invoked.) Otherwise, once

interfaces are up, a default route can be manually added using the

route(1M) command. On typical IPv4 networks, this invocation would be

# /sbin/route add net default _gateway_IP_

--

(An extended version of this document is available at

That version includes additional

document references.)

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/60144/viewspace-1023569/,如需轉載,請註明出處,否則將追究法律責任。

相關文章