Solarisx86 Sparc Boot Troubleshoot

Embed Size (px)

Citation preview

  • 7/24/2019 Solarisx86 Sparc Boot Troubleshoot

    1/33

    SPARC: The Boot PROM

    Each SPARC based system has a PROM (programmable read-only memory) chip with a program

    called the monitor. he monitor controls the operation o! the system be!ore the Solaris "ernel isa#ailable. $hen a system is t%rned on& the monitor r%ns a '%ic" sel!-test proced%re to chec"s the

    hardware and memory on the system. ! no errors are !o%nd& the system begins the a%tomatic

    boot process.

    Note

    Some older systems might re'%ire PROM %pgrades be!ore they will wor" with the Solarissystem so!tware. Contact yo%r local ser#ice pro#ider !or more in!ormation.

    SPARC: The Boot Process

    he !ollowing table describes the boot process on SPARC based systems.

    able *+ SPARC, escription o! the oot Process

    Boot Phase Description

    oot PROM . he PROM displays system identi!ication in!ormation and then r%ns

    sel!-test diagnostics to #eri!y the system/s hardware and memory.

    0. hen& the PROM loads the primary boot program& bootblk& whose

    p%rpose is to load the secondary boot program (that is located in the ufs

    !ile system) !rom the de!a%lt boot de#ice.

    ootPrograms

    1. he bootblkprogram !inds and e2ec%tes the secondary boot program&

    ufsboot& and loads it into memory.

  • 7/24/2019 Solarisx86 Sparc Boot Troubleshoot

    2/33

    Boot Phase Description

    3. A!ter the ufsbootprogram is loaded& the ufsbootprogram loads the

    "ernel.

    4ernelnitiali5ation

    *. he "ernel initiali5es itsel! and begins loading mod%les by %sing

    ufsbootto read the !iles. $hen the "ernel has loaded eno%gh mod%les to

    mo%nt the root (/) !ile system& the "ernel %nmaps the ufsbootprogram and

    contin%es& %sing its own reso%rces.

    6. he "ernel creates a %ser process and starts the /sbin/initprocess&

    which starts other processes by reading the /etc/inittab!ile.

    init 7. he /sbin/initprocess starts the r%n control (rc) scripts& which

    e2ec%te a series o! other scripts. hese scripts (8sbin/rc*) chec" and

    mo%nt !ile systems& start #ario%s processes& and per!orm system

    maintenance tas"s.

    IA: The Boot Processhe !ollowing table describes the boot process on A based systems.

    able *+1 A, escription o! the oot Process

  • 7/24/2019 Solarisx86 Sparc Boot Troubleshoot

    3/33

    Boot Phase Description

    OS . $hen the system is t%rned on& the OS r%ns sel!-test diagnostics to

    #eri!y the system/s hardware and memory. he system begins to boot

    a%tomatically i! no errors are !o%nd. ! errors are !o%nd& error messages are

    displayed that describe reco#ery options.

    he OS o! additional hardware de#ices are r%n at this time.

    0. he OS boot program tries to read the !irst physical sector !rom the

    boot de#ice. his !irst dis" sector on the boot de#ice contains the masterboot record mboot& which is loaded and e2ec%ted. ! no mboot!ile is !o%nd&

    an error message is displayed.

    oot

    Programs

    1. he master boot record& mboot& which contains dis" in!ormation needed

    to !ind the acti#e partition and the location o! the Solaris boot program&

    pboot& loads and e2ec%tes pboot.

    3. he Solaris boot program& pbootloads bootblk& the primary boot

    program& whose p%rpose is to load the secondary boot program that is

    located in the ufs!ile system.

    *. ! there is more than one bootable partition& bootblkreads the fdisk

    table to locate the de!a%lt boot partition& and b%ilds and displays a men% o!

    a#ailable partitions. 9o% ha#e a 1:-second inter#al to select an alternate

    partition !rom which to boot. his step only occ%rs i! there is more than onebootable partition present on the system.

    6. bootblk!inds and e2ec%tes the secondary boot program& boot.binor

    ufsboot& in the root (/) !ile system. 9o% ha#e a *+second inter#al to

  • 7/24/2019 Solarisx86 Sparc Boot Troubleshoot

    4/33

    Boot Phase Description

    interr%pt the a%toboot to start the Solaris e#ice Con!ig%ration Assistant.

    7. he secondary boot program& boot.binor ufsboot& starts a command

    interpreter that e2ec%tes the /etc/bootrcscript& which pro#ides a men% o!

    choices !or booting the system. he de!a%lt action is to load and e2ec%te the

    "ernel. 9o% ha#e a *+second inter#al to speci!y a boot option or to start the

    boot interpreter.

    4ernel

    initiali5ation

    ;. he "ernel initiali5es itsel! and begins loading mod%les by %sing the

    secondary boot program (boot.binor ufsboot) to read the !iles. $hen the

    "ernel has loaded eno%gh mod%les to mo%nt the root (/) !ile system& the

    "ernel %nmaps the secondary boot program and contin%es& %sing its own

    reso%rces.

  • 7/24/2019 Solarisx86 Sparc Boot Troubleshoot

    5/33

    auto-boot?, ! the auto-boot?PROM parameter is set& the boot process will begin. Otherwise&

    the system will drop to the ok>PROM monitor prompt& or (i! sunmon-compat?and security-

    modeare set) the >sec%rity prompt.

    he boot process will %se the boot-device and boot-filePROM parameters %nless diag-

    switch?is set. n this case& the boot process will %se the diag-deviceand diag-file.

    oot!", he OP (Open oot PROM) program loads the bootblkprimary boot program !rom

    the boot-device(or diag-device& i! diag-switch?is set). ! the bootblkis not present or

    needs to be regenerated& it can be installed by r%nning the installbootcommand a!ter booting

    !rom a CROM or the networ". A copy o! the bootblkis a#ailable at /usr/platform/`arch-k`/lib/fs/ufs/bootblk

    #$soot, he secondary boot program& /platform/`arch -k`/ufsbootis r%n. his program

    loads the "ernel core image !iles. ! this !ile is corr%pted or missing& a bootblk: cant find

    the boot programor similar error message will be ret%rned.

    "erne!, he "ernel is loaded and r%n. =or 10-bit Solaris systems& the rele#ant !iles are,

    /platform/`arch -k`/kernel/uni!

    /kernel/genuni!

    =or 63-bit Solaris systems& the !iles are,

    /platform/`arch -k`/kernel/sparc"#/uni!

    /kernel/genuni!

    As part o! the "ernel loading process& the "ernel banner is displayed to the screen. his incl%des

    the "ernel #ersion n%mber (incl%ding patch le#el& i! appropriate) and the copyright notice.

    he "ernel initiali5es itsel! and begins loading mod%les& reading the !iles with the ufsboot

    program %ntil it has loaded eno%gh mod%les to mo%nt the root !ilesystem itsel!. At that point&

    ufsbootis %nmapped and the "ernel %ses its own dri#ers. ! the system complains abo%t not

    being able to write to the root !ilesystem& it is st%c" in this part o! the boot process.

    he boot -acommand singlesteps thro%gh this portion o! the boot process. his can be a %se!%l

    diagnostic proced%re i! the "ernel is not loading properly.

    /etc/system, he /etc/system!ile is read by the "ernel& and the system parameters are set.

    he !ollowing types o! c%stomi5ation are a#ailable in the /etc/system!ile,

    moddir, Changes path o! "ernel mod%les.

    http://www.princeton.edu/~unix/Solaris/troubleshoot/boota.htmlhttp://www.princeton.edu/~unix/Solaris/troubleshoot/boota.html
  • 7/24/2019 Solarisx86 Sparc Boot Troubleshoot

    6/33

    $orce!oad, =orces loading o! a "ernel mod%le.

    exc!#de, E2cl%des a partic%lar "ernel mod%le.

    root$s, Speci!y the system type !or the root !ile system. (%!s is the de!a%lt.)

    rootde%, Speci!y the physical de#ice path !or root.

    set, Set the #al%e o! a t%neable system parameter.

    ! the /etc/system!ile is edited& it is strongly recommended that a copy o! the wor"ing !ile be

    made to a well-"nown location. n the e#ent that the new /etc/system!ile renders the system

    %nbootable& it might be possible to bring the system %p with a boot -acommand that speci!ies

    the old !ile. ! this has not been done& the system may need to be booted !rom C or networ" so

    that the !ile can be mo%nted and edited.

    "erne! initia!i&ed, he "ernel creates P : ( sched). he schedprocess is sometimes called the

    >swapper.>

    init, he "ernel starts P (init).

    init, he initprocess reads the /etc/inittaband /etc/default/initand !ollows the

    instr%ctions in those !iles.

    Some o! the entries in the /etc/inittabare,

    $s, sysinit (%s%ally /etc/rc$)

    is, de!a%lt init le#el (%s%ally 1& sometimes 0)

    s', script associated with a r%n le#el (%s%ally /sbin/rc%)

    rc scripts, he rc scripts e2ec%te the !iles in the /etc/rc%.ddirectories. hey are r%n by the

    /sbin/rc%scripts& each o! which corresponds to a r%n le#el.

    eb%gging can o!ten be done on these scripts by adding echolines to a script to print either a >

    got this !ar> message or to print o%t the #al%e o! a problematic #ariable.

    x86: Boot Process

    he !ollowing table describes the boot process on 2;6 based systems.

    Ta!e ()*+ x,): Description o$ the Boot Process

    Boot Description

    http://www.princeton.edu/~unix/Solaris/troubleshoot/inittab.htmlhttp://www.princeton.edu/~unix/Solaris/troubleshoot/initstate.htmlhttp://www.princeton.edu/~unix/Solaris/troubleshoot/inittab.htmlhttp://www.princeton.edu/~unix/Solaris/troubleshoot/initstate.html
  • 7/24/2019 Solarisx86 Sparc Boot Troubleshoot

    7/33

    Phase

    BIOS 1. When the system is turned on, the BIOS runs self-test diagnostics to

    verify the system's hardware and memory. The system egins to oot

    automatically if no errors are found. If errors are found, error messages

    are dis!layed that descrie recovery o!tions.

    he OS o! additional hardware de#ices are r%n at this time.

    ". The BIOS oot !rogram tries to read the #rst dis$ sector from the oot

    device. This #rst dis$ sector on the oot device contains the master oot

    record mboot, which is loaded and e%ecuted. If no mboot#le is found, an

    error message is dis!layed.

    Boot

    &rograms

    . The master oot record, mboot, contains dis$ information needed to

    #nd the active !artition and the location of the Solaris oot !rogram,

    pboot, loads and e%ecutes pboot, mboot.

    (. The Solaris oot !rogram, pboot, loads bootblk, the !rimary oot

    !rogram. The !ur!ose of bootblkis to load the secondary oot !rogram,

    which is located in the )*S #le system.

    +. If there is more than one ootale !artition, bootblkreads the fdisk

    tale to locate the default oot !artition, and uilds and dis!lays a menu

    of availale !artitions. ou have a seconds to select an alternate

    !artition from which to oot. This ste! occurs only if there is more than

    one ootale !artition !resent on the system.

    . bootblk#nds and e%ecutes the secondary oot !rogram, boot.binorufsboot, in the root //0 #le system. ou have #ve seconds to interru!t the

    autooot to start the Solaris evice 2on#guration 3ssistant.

    4. The secondary oot !rogram, boot.binor ufsboot, starts a command

    inter!reter that e%ecutes the /etc/bootrcscri!t. This scri!t !rovides a

    menu of choices for ooting the system. The default action is to load and

    e%ecute the $ernel. ou have a +5second interval to s!ecify a oot o!tion

    or to start the oot inter!reter.

    6ernel

    initiali7atio

    n

    8. The $ernel initiali7es itself and egins loading modules y using the

    secondary oot !rogram /boot.binor ufsboot0 to read the #les. When

    the $ernel has loaded enough modules to mount the root //0 #le system,

    the $ernel unma!s the secondary oot !rogram and continues, using its

    own resources.

    9. The $ernel creates a user !rocess and starts the /sbin/init!rocess,

    which starts other !rocesses y reading the /etc/inittab#le.

    init 1. In this Oracle Solaris release, the /sbin/init!rocess starts

  • 7/24/2019 Solarisx86 Sparc Boot Troubleshoot

    8/33

    /lib/svc/bin/svc.startd, which starts system services that do the

    following:

    Chec" and mo%nt !ile systems

    Con!ig%re networ" and de#ices

    Start #ario%s processes and per!orm system maintenance tas"s

    n addition& svc.startde2ec%tes the r%n control (rc) scripts !or compatibility.

    x86: Boot Files

    n addition to the r%n control scripts and boot !iles& there are additional boot !iles that are

    associated with booting 2;6 based systems.

    Ta!e ()*- x,): Boot .i!es

    File Description

    /etc/bootrc 2ontains menus and o!tions for ooting the Oracle

    Solaris release.

    /boot 2ontains #les and directories needed to oot the

    system.

    /boot/mdboot OS e%ecutale that loads the #rst-level ootstra!

    !rogram /strap.com0 into memory from dis$.

    /boot/mdbootbp OS e%ecutale that loads the #rst-level ootstra!

    !rogram /strap.com0 into memory from dis$ette.

    /boot/rc.d irectory that contains install scri!ts. o not modify the

    contents of this directory.

    /boot/solaris irectory that contains items for the oot susystem.

    /boot/solaris/boot.bin ;oads the Solaris $ernel or stand-alone kmdb. In

    addition, this e%ecutale !rovides some oot #rmware

    services.

    /boot/solaris/boot.rc &rints the Oracle Solaris O!erating OS on an %8

    system and runs the evice 2on#guration 3ssistant in

    OS-emulation mode.

    /boot/solaris/bootconf.e!eOS e%ecutale for the evice 2on#guration 3ssistant.

    /boot/solaris/bootconf.t!tTe%t #le that contains internationali7ed messages for

  • 7/24/2019 Solarisx86 Sparc Boot Troubleshoot

    9/33

    evice 2on#guration 3ssistant /bootconf.e!e0.

    /boot/solaris/bootenv.rc Stores eepromvariales that are used to set u! the oot

    environment.

    /boot/solaris/devicedb irectory that contains the master#le, a dataase of all

    !ossile devices su!!orted with realmode drivers.

    /boot/solaris/drivers irectory that contains realmode drivers.

    /boot/solaris/itup&.e!e OS e%ecutale run during install time u!date /IT)0

    !rocess.

    /boot/solaris/machines Osolete directory.

    /boot/solaris/nbp *ile associated with networ$ ooting.

    /boot/solaris/strap.rc *ile that contains instructions on what load module to

    load and where in memory it should e loaded.

    /boot/strap.com OS e%ecutale that loads the second-level ootstra!

    !rogram into memory.

    Note

    rpc.bootparamd& which is %s%ally a re'%irement on the ser#er side !or per!orming a networ"

    boot& is not re'%ired !or a ?R@ based networ" boot.

    The

  • 7/24/2019 Solarisx86 Sparc Boot Troubleshoot

    10/33

    he boot process !or SPARC plat!orm in#ol#es * phases as shown in the diagram below. here is

    a slight di!!erence in booting process o! a SPARC based and 2;68263 based solaris operating

    system.

    Boot PROM phase

    . he boot PROM r%ns the power on sel! test (POS) to test the hardware.

    0. he boot PROM displays the banner with below in!ormation

    + Model type

    + processor type

    + Memory

    + Ethernet address and host 1. oot PROM reads the PROM #ariable boot-de#ice to determine the boot de#ice.

    3. oot PROM reads the primary boot program (bootblk) sector to *B and e2ec%tes it.

    Boot program phase

    . bootblkloads the secondary boot program ufsbootinto memory.

    0. %!sboot reads and loads the "ernel. he "ernel is composed o! 0 parts ,

  • 7/24/2019 Solarisx86 Sparc Boot Troubleshoot

    11/33

    uni% /!latform s!eci#c $ernel0

    genuni% /!latform inde!endent $ernel0

    1. %!sboot combines these 0 "ernel into one complete "ernel and loads into memory.

    Kernel initialization phase

    . he "ernel reads the con!ig%ration !ile 8etc8system.

    0. 4ernel initiali5es itsel! and loads the "ernel mod%les. he mod%les %s%ally reside in 8"ernel

    and 8%sr8"ernel directories. (Plat!orm speci!ic dri#ers in 8plat!orm8%name -i8"ernel and

    8plat!orm8%name -m8"ernel directories)

    Init phase

    . 4ernel starts the 8etc8init daemon (with P ).

    0. he 8etc8init daemon starts the s#c.startd process which is responsible !or starting and stopping

    the ser#ices.1. he 8etc8init daemon %ses a !ile called 8etc8inittab to boot %p the system to the appropriate r%n

    le#el mentioned in this !ile.

    /egac0 R#n /e%e!s

    R%n le#el speci!ies the state in which speci!ic ser#ices and reso%rces are a#ailable to %sers.

    ' - system running PROM monitor(ok> prompt)s or $ - single usermode with critical file-systems mounted.(single usercan access the $)+ - single user administrative modewith access to all file-systems.

    (single user can access the $)& -multi-user mode. ,ultiple users can access the system. $ andsome other network related daemons does notrun -multi-user-server mode. ,ulti user mode with $ and all othernetwork resources available.0 - not implemented.1 - transitional run level. s is shutdown and system is powered off.2 - transitional run level. s is shutdown and system is rebooted tothe default run level.

    svc.startd phase

    . A!ter "ernel starts the s#c.startd daemon. s#c.startd daemon e2ec%tes the rc scripts in the 8sbin

    directory based %pon the r%n le#el.

    rc scripts

    Dow with each r%n le#el has an associated script in the 8sbin directory.

    % ls -l /sbin/rc?-rw!r--r-- root sys +234 $ep &' &'+& /sbin/rc'-rw!r--r-- + root sys &'+ $ep &' &'+& /sbin/rc+-rw!r--r-- + root sys &'02 $ep &' &'+& /sbin/rc&

  • 7/24/2019 Solarisx86 Sparc Boot Troubleshoot

    12/33

    -rw!r--r-- + root sys +#2# $ep &' &'+& /sbin/rc-rw!r--r-- root sys +234 $ep &' &'+& /sbin/rc1-rw!r--r-- root sys +234 $ep &' &'+& /sbin/rc2-rw!r--r-- + root sys 0'2# $ep &' &'+& /sbin/rc$

    Each rc script r%ns the corresponding 8etc8rc.d84F and 8etc8rc.d8SF scripts. =or e2ample !or a

    r%n le#el 1& below scripts will be e2ec%ted by 8sbin8rc1 ,

    /etc/rc.d/5*/etc/rc.d/$*

    he synta2 o! start and stop r%n scripts is

    $%%name6of6script - $tart run control scripts5%%name6of6scrips - $top run control scripts

    Dote the S and 4 in caps. Scripts starting with small s and " will be ignored. his can be %sed to

    disable a script !or that partic%lar r%n le#el.

    Solaris 1 oot !rocess : S&3=2

    Solaris 1 oot !rocess : %8>%(

    Solaris 1 oot !rocess : %8>%(

    1 Share

    1 Share

    1 Tweet

    1 Share

    Solaris 1 oot !rocess : S&3=2Solaris 1 oot !rocess : %8>%(

    n the last post we saw the boot process in solaris : on SPARC plat!orm. he boot process on

    2;68263 hardware is bit di!!erent than the SPARC hardware. he 2;68263 hardware also in#ol#es

    the * step boot process& same as the SPARC hardware. Re!er the !low diagram below.

    http://thegeekdiary.com/solaris-10-boot-process-sparc/http://thegeekdiary.com/solaris-10-boot-process-x86x64/http://thegeekdiary.com/solaris-10-boot-process-x86x64/http://thegeekdiary.com/solaris-10-boot-process-x86x64/http://thegeekdiary.com/solaris-10-boot-process-x86x64/http://thegeekdiary.com/solaris-10-boot-process-x86x64/http://thegeekdiary.com/solaris-10-boot-process-sparc/http://thegeekdiary.com/solaris-10-boot-process-x86x64/http://thegeekdiary.com/solaris-10-boot-process-sparc/http://thegeekdiary.com/solaris-10-boot-process-x86x64/http://thegeekdiary.com/solaris-10-boot-process-x86x64/http://thegeekdiary.com/solaris-10-boot-process-x86x64/http://thegeekdiary.com/solaris-10-boot-process-x86x64/http://thegeekdiary.com/solaris-10-boot-process-x86x64/http://thegeekdiary.com/solaris-10-boot-process-x86x64/http://thegeekdiary.com/solaris-10-boot-process-x86x64/http://thegeekdiary.com/solaris-10-boot-process-x86x64/http://thegeekdiary.com/solaris-10-boot-process-x86x64/http://thegeekdiary.com/solaris-10-boot-process-sparc/http://thegeekdiary.com/solaris-10-boot-process-x86x64/
  • 7/24/2019 Solarisx86 Sparc Boot Troubleshoot

    13/33

    Boot PROM phase

    . he OS (asic np%t O%tp%t System) ROM r%ns the power on sel! test (POS) to test the

    hardware.

    0. OS tries to boot !rom the de#ice mentioned in the boot se'%ence. ($e can change this by

    pressing =0 or =0).

    1. $hen booting !rom the boot dis"& OS reads the master boot program (moot) on the !irst

    sector and the =S4 table.

    Boot program phase

    . mboot !inds the acti#e partition in =S4 table and loads the !irst sector containing ?R@stage.

    0. ?R@ stage in-t%rn loads ?R@ stage0.

    1. ?R@ stage0 locates the ?R@ men% !ile 8boot8gr%b8men%.lst and displays ?R@ main

    men%.

    3. Gere %ser can select to boot the OS !rom partition or dis" or networ".

    *. ?R@ commands in 8boot8gr%b8men%.lst are e2ec%ted to load a pre-constr%cted primary boot

  • 7/24/2019 Solarisx86 Sparc Boot Troubleshoot

    14/33

    archi#e (%s%ally 8plat!orm8i;6pc8bootHarchi#e in solaris :).

    6. ?R@ loads a program called m%ltiboot& which assembles core "ernel mod%les !rom

    bootHarchi#e and starts the OS by mo%nting the root !ilesystem.

    Kernel initialization phase

    . he "ernel reads the con!ig%ration !ile 8etc8system.

    0. 4ernel initiali5es itsel! and loads the "ernel mod%les. he mod%les %s%ally reside in 8"ernel

    and 8%sr8"ernel directories. (Plat!orm speci!ic dri#ers in 8plat!orm8%name -i8"ernel and

    8plat!orm8%name -m8"ernel directories)

    Init phase

    . 4ernel starts the 8etc8init daemon (with P ).

    0. he 8etc8init daemon starts the s#c.startd process which is responsible !or starting and stopping

    the ser#ices.

    1. he 8etc8init daemon %ses a !ile 8etc8inittab. A sample inittab !ile loo"s li"e below ,

    ap::sysinit:/sbin/autopush -f /etc/iu.apsp::sysinit:/sbin/soconfig -f /etc/sock&pathsmf::sysinit:/lib/svc/bin/svc.startd>/dev/msglog &7>/dev/msglog /dev/msglog&7>/dev/msglog

    he init tab !ile as shown abo#e contains !o%r !ields ,

    id:rstate:action:process

    he process "eyword speci!ies the process to e2ec%te !or the action "eyword. =or e2ample

    I8%sr8sbin8sh%tdown -y -i* -g:J is the process to e2ec%te !or the action Ipower!ailK

    /egac0 R#n /e%e!sR%n le#el speci!ies the state in which speci!ic ser#ices and reso%rces are a#ailable to %sers.

    elow are the r%n le#els a#ailable in solaris ,

    ' - system running PROM monitor(ok> prompt)s or $ - single usermode with critical file-systems mounted.(single usercan access the $)+ - single user administrative modewith access to all file-systems.(single user can access the $)& -multi-user mode. ,ultiple users can access the system. $ andsome other network related daemons does notrun -multi-user-server mode. ,ulti user mode with $ and all other

    network resources available.0 - not implemented.1 - transitional run level. s is shutdown and system is powered off.2 - transitional run level. s is shutdown and system is rebooted tothe default run level.

    svc.startd phase

    . A!ter "ernel starts the s#c.startd daemon. s#c.startd daemon e2ec%tes the rc scripts in the 8sbin

    directory according to the r%n le#el.

  • 7/24/2019 Solarisx86 Sparc Boot Troubleshoot

    15/33

    rc scripts

    Dow with each r%n le#el has an associated script in the 8sbin directory.

    % ls -l /sbin/rc?-rw!r--r-- root sys +234 $ep &' &'+& /sbin/rc'-rw!r--r-- + root sys &'+ $ep &' &'+& /sbin/rc+-rw!r--r-- + root sys &'02 $ep &' &'+& /sbin/rc&-rw!r--r-- + root sys +#2# $ep &' &'+& /sbin/rc-rw!r--r-- root sys +234 $ep &' &'+& /sbin/rc1-rw!r--r-- root sys +234 $ep &' &'+& /sbin/rc2-rw!r--r-- + root sys 0'2# $ep &' &'+& /sbin/rc$

    Each rc script r%ns the corresponding 8etc8rc.d84F and 8etc8rc.d8SF scripts. =or e2ample !or a

    r%n le#el 1& below scripts will be e2ec%ted by 8sbin8rc1 ,

    /etc/rc.d/5*/etc/rc.d/$*

    he synta2 o! start and stop r%n scripts is

    $%%name6of6script - $tart run control scripts5%%name6of6scrips - $top run control scripts

    Dote the S and 4 in caps. Scripts starting with small s and " will be ignored. his can be %sed to

    disable a script !or that partic%lar r%n le#el.

    GRUB booting on Solaris x86;et's tal$ it more aout ooting the Solaris on %8 architecture /?OT on S&3=20

    ?ow, on Solaris 1, the default oot loader is /root0

    #le system is mounted. 3nd these critical #les are $ernel modules and con#guration

    #les.

    Sun says, ABoot archive is interface that is used to oot Solaris OSA. =ememer,

    there is not oot archive on S&3=2, only on %8 architecture.

    The

  • 7/24/2019 Solarisx86 Sparc Boot Troubleshoot

    16/33

    Install the

  • 7/24/2019 Solarisx86 Sparc Boot Troubleshoot

    17/33

  • 7/24/2019 Solarisx86 Sparc Boot Troubleshoot

    18/33

    etc>rtcGcon#g

    etc>system

    $ernel

    !latform>i8!c>iosint

    !latform>i8!c>$ernel

    $nstalling GRUB

    This is also something you may need to do, say you are mirroring two dis$s using

    SHC and want to install gru>stage1 >oot>gru>stage" >dev>rds$>c1tds3ctually, eside !rimary oot archive, there is one more - *ailsafe oot archive. It

    can oot on its own, reuire no maintenance and is created during OS installation.

    SP%R&' $nstalling a Boot Block on a S(stem Disk

    he !ollowing e2ample shows how to install the boot bloc" on a @=S root !ile system.

    % installboot /usr/platform/sun4u/lib/fs/ufs/bootblk/dev/rdsk/c0t0d0s0

    he !ollowing e2ample shows how to install the boot bloc" on a L=S root !ile system.

    % installboot -F zfs /usr/platform/`uname -i`/lib/fs/zfs/bootblk/dev/rdsk/c0td0s0

    S&3=2 J3C&;S The ufs ootloc$ is in >usr>li>fs>ufs>ootl$. To install the ootloc$ on slice of target on controller 1, use:

    e%am!leK >usr>sin>installoot >usr>li>fs>ufs>ootl$ L >dev>rds$>c1tds

  • 7/24/2019 Solarisx86 Sparc Boot Troubleshoot

    19/33

    %8 J3C&;S The ufs ootloc$ is in >usr>li>fs>ufs>!oot. To install the ootloc$ on slice " of target on controller 1, use:

    e%am!leK >usr>sin>installoot >usr>li>fs>ufs>!oot L >usr>li>fs>ufs>ootl$ >dev>rds$>c1tds"

    KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK

    KKKKKKKKKKKKKKKKKKKKKKKKKKK

    Searchale 6eywords: ootloc$ ootsector oot ootl$

    installoot - install ootloc$s in a dis$ !artition

    *I;S

    >usr>!latform>!latform-name>li>fs>ufs

    irectory where ufs

    oot oFects reside.

    S&3=2 S?O&SIS

    installoot ootl$ raw-dis$-device

    To install a ufs ootloc$ on slice of target on con-

    troller 1 of the !latform where the command is eing run,

    use:

    Solaris ".%

    e%am!leK >usr>sin>installoot >usr>!latform>Muname -iM>li>fs>ufs>ootl$ L

    >dev>rds$>c1tds

  • 7/24/2019 Solarisx86 Sparc Boot Troubleshoot

    20/33

    Solaris ".8

    K installoot >usr>!latform>sun(u>li>fs>ufs>ootl$ >dev>rds$>cJtJdJsJ

    Nere is the doc from sun:

    AThe #le Fust loaded does not a!!ear to e e%ecutale.A

    This error occurs when the default ootloc$ has een corru!ted. To overcome

    this !rolem do the following:

    1. dev>rds$>cKtKdKsK

    (. Count to your root #le system:

    Kmount >dev>ds$>cKtKdKsK >a

    +. Ca$e sure that your the restoresymtale #le does not e%ist. If so,

    remove it.

  • 7/24/2019 Solarisx86 Sparc Boot Troubleshoot

    21/33

    . ?e%t install the ootloc$ on your dis$:

    Kinstalloot >usr>!latform>sun(u>li>fs>ufs>ootl$ >dev>rds$>cKtKdKsK

    4. )nmount your root #le system

    Kunmount >a

    8. =un another fsc$ on your dis$:

    Kfsc$ >dev>rds$>cKtKdKsK

    9. =eoot your machine:

    Kinit

    ?ote:

    Q ;oaction of ootl$ #le may diRer de!ending on the ty!e of hardware

    !latforme%am!le: >usr>!latform>sun(u vs >usr>!latform>sun(m

    Q ?ot sure you really need to mount the !artition @ I guess to verify you have

    the right one.

    ----------------- Other 2&) ty!e e%am!les -------------------

    %8 J3C&;S

    To install the ufs ootloc$ and !artition oot !rogram on

    slice " of target on controller 1 of the !latform where

    the command is eing run, use:

    e%am!leK installoot >usr>!latform>Muname -iM>li>fs>ufs>!oot L

  • 7/24/2019 Solarisx86 Sparc Boot Troubleshoot

    22/33

    >usr>!latform>Muname -iM>li>fs>ufs>ootl$ >dev>rds$>c1tds"

    &ower&2 dition J3C&;S

    To install the ufs ootloc$ and o!en#rmware !rogram on

    target on controller 1 of the !latform where the command

    is eing run, use:

    e%am!leK installoot -f >!latform>Muname -iM>o!en#rmware.%(1 L

    >usr>!latform>Muname -iM>li>fs>ufs>ootl$ >dev>rds$>c1tds"

    installoot >usr>!latform>Muname -iM>li>fs>ufs>ootl$ L

    >usr>!latform>!latform-name>li>fs>ufs

    irectory where ufs

    oot oFects reside.

    SunOs-------SunOs---------SunOs-------------SunOs

    O&TIO?S

    -h ;eave the a.out header on the ootloc$ when installed

    on dis$.

    -l &rint out the list of loc$ numers of the oot !ro-

  • 7/24/2019 Solarisx86 Sparc Boot Troubleshoot

    23/33

    gram.

    -t Test. is!lay various internal test messages.

    -v Herose. is!lay detailed information aout the si7e

    of the oot !rogram, etc.

    J3C&;

    To install the ootloc$s onto the root !artition on a Jylo-

    gics dis$:

    e%am!le cd >usr>$vm>mdec

    e%am!le installoot -vlt >oot oot%y >dev>r%ya

    *or an S dis$, you would use ootsd and >dev>rsda, res!ec-

    tively, in !lace of oot%y and >dev>r%ya.

    e%am!le: >usr>$vm>mdec>installoot >oot ootsd >dev>rsda

    or

    cd >usr>$vm>mdec

    .>installoot >oot ootsd >dev>rsda

    ?OT:The A>ootA is the oot #le that resides in the root directory

    K redo oot loc$

    echo 'doing oot loc$ install'

    cd >usr>$vm>mdec

  • 7/24/2019 Solarisx86 Sparc Boot Troubleshoot

    24/33

  • 7/24/2019 Solarisx86 Sparc Boot Troubleshoot

    25/33

    Boot si7e: %1af1

    Boot chec$sum: %a+a81

    Boot loc$ installed

    The four lines at the ottom are the real tellers E E E E E E E

    e%am!le detail:

    >usr>$vm>mdec>installoot -vlt >mnt">oot ootsd >dev>rsd1a

    U U U

    U U v

    U v /raw device - mounted on >mnt"0

    v /scsi oot device #le0

    /where sd1a is mounted and oot resides00

    O!tions:

    -l &rint out the list of loc$ numers of the oot !rogram.

    -t Test. is!lay various internal test messages.

    -v Herose. is!lay detailed information aout the si7e

    of the oot !rogram, etc.

  • 7/24/2019 Solarisx86 Sparc Boot Troubleshoot

    26/33

    ---- Core Sunos ------- Core Sunos ------- Core Sunos ------- Core Sunos ---

    So you have some older Sunos (.J.% dum! images you want to !ut on

    another machine.

    K mount

    >dev>sda on > ty!e (." /rw0

    >dev>sdg on >usr ty!e (." /rw0

    diastolic:>systems>cs41"aGdum!images on >mnt ty!e nfs /rw0 --- image

    >dev>sd1a on >mnt" ty!e (." /rw,nouota0 --- new dis$

    K cat >mnt>cs41"a.sda.1-(-".D Uuncom!ress Urestore %f 5

    Now to recover>reset root !assword in Sun solaris /S&3=20

  • 7/24/2019 Solarisx86 Sparc Boot Troubleshoot

    27/33

    O!co%rse& it is recommeded that the sec%rity !or the physical access to the ser#er is restricted so

    as to ens%re that there is no %na%thori5ed access and anyone who !ollows this ro%tine is an

    a%thori5ed personnel.

    oot the ser#er with a S%n Solaris Operating System C (m %sing a Solaris : C b%t doesnt

    matter really) or a networ" boot with a N%mpStart ser#er !rom the OP O4 prompt.

    O1 oot cdrom *s

    or

    O1 oot net *s

    his will boot the ser#er !rom the C or N%mpstart ser#er and la%nch a single %ser mode (Do

    Password).

    Mo%nt the root !ile system (ass%me 8de#8ds"8c:t:d:s: here) onto 8a

    so!aris' mo#nt 2de%2ds"2c3t3d3s3 2a

    DOE, 8a is a temporary mo%nt point that is a#ailable when yo% boot !rom C or a N%mpStart

    ser#er

    Dow& with the root !ile system mo%nted on 8a. All yo% need to do is to edit the shadow !ile and

    remo#e the encrypted password !or root.

    so!aris' %i 2a2etc2shado4

    Dow& e2it the mo%nted !ilesystem& %nmo%nt the root !ilesystem and reboot the system to single-

    %ser mode booting o! the dis".

    so!aris' cd 2

    so!aris' #mo#nt 2a

    so!aris' init s

    his sho%ld boot o! the dis" and ta"e yo% to the single-%ser mode. Press enter at the prompt to

    enter a password !or root.

    his sho%ld allow yo% to login to the system. Once in& set the password and change to m%lti-%ser

    mode.

  • 7/24/2019 Solarisx86 Sparc Boot Troubleshoot

    28/33

    DOE, Single-@ser mode is only to ens%re that the root %ser witho%t password is not e2posed to

    others i! started in m%lti-%ser mode be!ore being set with a new password.

    so!aris' pass4d root

    so!aris' reoot

    his sho%ld do. 9o% sho%ld now be able to logon with the new password set !or root

    &osted y adminat 1:(" am Tagged with: !assword, recovery, root, solaris, sun

    6 Responses to )*o+ to recoer/reset root pass+or# in Sn solaris

    ,SP%R&-.

    Solaris &lster 01' &lster no#e panice# +ith

    rgm#2 rpc0fe#2 pmf# #aemon #ie# some 3 or

    4 secon#s ago message0 Resoltion Path

    ,Doc $D 53345705-

    To

    Bottom

    http://www.sunsolarisadmin.com/author/admin/http://www.sunsolarisadmin.com/tag/password/http://www.sunsolarisadmin.com/tag/recovery/http://www.sunsolarisadmin.com/tag/root/http://www.sunsolarisadmin.com/tag/solaris/http://www.sunsolarisadmin.com/tag/sun/https://support.oracle.com/epmos/faces/DocumentDisplay?_afrLoop=448610681808726&id=1020514.1&_adf.ctrl-state=gkv87esyr_45https://support.oracle.com/epmos/faces/DocumentDisplay?_afrLoop=448610681808726&id=1020514.1&_adf.ctrl-state=gkv87esyr_45http://www.sunsolarisadmin.com/author/admin/http://www.sunsolarisadmin.com/tag/password/http://www.sunsolarisadmin.com/tag/recovery/http://www.sunsolarisadmin.com/tag/root/http://www.sunsolarisadmin.com/tag/solaris/http://www.sunsolarisadmin.com/tag/sun/https://support.oracle.com/epmos/faces/DocumentDisplay?_afrLoop=448610681808726&id=1020514.1&_adf.ctrl-state=gkv87esyr_45https://support.oracle.com/epmos/faces/DocumentDisplay?_afrLoop=448610681808726&id=1020514.1&_adf.ctrl-state=gkv87esyr_45
  • 7/24/2019 Solarisx86 Sparc Boot Troubleshoot

    29/33

    %pplies to'Solaris 2luster - Hersion . to . =elease . to .X

    3ll &latforms

    S(mptomshis doc%ment pro#ides the basic steps to resol#e the !ollowing !ail!ast panics.

    Failfast: Aborting zone "global" zone ! #$ because "pmfd" died %& seconds ago'

    Failfast: Aborting because "rgmd" died %# seconds ago'

    Failfast: Aborting because "rpc'fed" died %# seconds ago'

    Failfast: Aborting because "rpc'pmfd" died %# seconds ago'

    Failfast: Aborting because "cle(ecd" died %# seconds ago'

    Failfast: Aborting because "globalrgmd" died %# seconds ago

    &ase

    Solaris Cl%ster node panics d%e to a cl%ster daemon e2iting.

    Soltion

    5h0 does it happen6

    he panic message indicates that a cl%ster-speci!ic daemon shown in the message dies. t is a

    reco#ery action ta"en by !ail!ast mechanism o! the cl%ster monitoring a critical problem. As

    those processes are critical processes and cannot be restarted& the cl%ster sh%ts down the node

    %sing the !ail!ast dri#er. Critical daemons are registered with !ail!ast !!() dri#er with some time

    inter#al. ! a daemon does not report bac" to !ail!ast dri#er within the registered time inter#al (eg&

    1:sec) the dri#er will trigger a Solaris "ernel panic.

    robleshooting steps

    o !ind the root ca%se o! the problem& yo% need to !ind o%t why a cl%ster-speci!ic daemon shown

    in the messages dies. he !ollowings are steps how to identi!y the root ca%se.

    . Chec" o#t the 2%ar2adm2messages s0stem !og $i!e $or messages $or s0stem or

    operation s0stem errors

    indicating that memory reso%rces may ha#e been limited& s%ch as in the !ollowing

    e2ample. ! those messages appears be!ore the panic messages& the root ca%se wo%ld be

  • 7/24/2019 Solarisx86 Sparc Boot Troubleshoot

    30/33

    memory e2ha%stion since a process may get application core d%mping and dies when a

    system has lac" o! memory reso%rce. ! yo% !ind messages indicating lac" o! memory

    reso%rce& yo% will need to !ind o%t why the system had lac" o! or was low in memory and

    or swap and address it to a#oid this panic. ! cl%ster daemon can not !or" a new process

    or can not allocate memory (malloc() ) it will li"ely to e2it and trigger a panic.

    Apr 2 18:05:13 sun-server1 cl_runtime: [ID 661778 kern.wrnin!"#A$%I%&: clc'mm: mem'r( l'w: )reemem 0*)+8nother indication is to check for messages reporting that swap spacewas limited9 such as in the following e!ample.Apr 2 18:05:12 sun-server1 !enuni*: [ID ,70503 kern.wrnin!" #A$%I%&:'rr( n' swp spce t' !r'w stck )'r pi/ 25825 in.)tp/Apr 2 18:05:03 sun-server1 tmp)s: [ID 518,58 kern.wrnin!" #A$%I%&:tmp: ile s(stem )ull swp spce limit e*cee/e/

    !ample when a daemon or process can not fork processes:

    Apr 2 18:05:10 sun-server1 4luster..pm)/: [ID 837760 /em'n.err'r"m'nit're/ pr'cesses )'rke/ )ile/errn'12

    =or additional in!ormation& !rom a "ernel core !ile& yo% can see messages gi#en be!ore the

    panic %sing the mdb. Chec" o%t those messages as well as the 8#ar8adm8messages !ile.

    K cd >var>crash>Muname -nM

    K echo A::msguf -vA U md -$ uni%. vmcore.

    0. There are some #gs ca#sing c!#ster daemons to exit(th%s this panic) were !i2ed in

    the Core Patch or Core8Sys admin those patches& chec" o%t i! yo%r system still has old

    patch installed. Chec" o%t a the REAME o! patch installed on yo%r machine i! there are

    any rele#ant b%gs !i2ed between a patch installed and the latest one.

    Solaris Cl%ster 1.2 %pdate releases and matching 8 incl%ding Solaris Cl%ster 1.2 core

    patches (oc 16;3

  • 7/24/2019 Solarisx86 Sparc Boot Troubleshoot

    31/33

    Bug 1++"9(11: S)?BT48(4-OS2 =)??I?< S2ST3T/1C0 23)SS CCO=

    TO B ;36 I? =S21)( 2;)ST

    Bug 1+"4+8: S)?BT"9"(8-.1)( =

  • 7/24/2019 Solarisx86 Sparc Boot Troubleshoot

    32/33

    node.

    m"dir -p 8#ar8cores

    coreadm -g 8#ar8cores8!.n.p.t.core

    -e global

    -e global-setid

    -e log

    -d process

    -d proc-setid

    Gow to @se P"gapp to ?ather Qibraries to eb%g Core8?core8Crash =iles in

    Solaris and Qin%2 (oc 073*;3.)

    Gow to %se coreadm to name core !iles in Solaris (oc ::673.) (>-e

    process> option enables per process cored%mp !or coreadm)

    ! yo% mad modi!ication to d%mpadm test to ma"e s%re that yo%r settings are

    wor"ing and yo% can collect a core,

    ps -e!grep rgmd

    root ;0< : ec 03 :,:: 8%sr8cl%ster8lib8sc8rgmd

    root ;11 733 : ec 03 1

  • 7/24/2019 Solarisx86 Sparc Boot Troubleshoot

    33/33

    root ;11 733 : ec 03 1