免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 5368 | 回复: 4
打印 上一主题 下一主题

如何构建一个solaris10的jumpstart WAN服务器 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2007-06-27 13:57 |只看该作者 |倒序浏览
近期我整理了一篇安装jumpstart server的文档,想与大家分享,本文档尽量用简单明了的语言来描述jumpstart服务器配置过程。

首先先声明本文如果是一个傻瓜式安装文档,倒不如说是一个参考性的文章,里面难免会有很多错误之处,大家一定指正出来阿,我文笔不好,劳各位费神了。

###########################################################################
配置目的

客户端可以通过boot net - install 一条命令来实现OS安装和基本配置。
(注意:本文档采用的安装方式是WAN,不是LAN,安装介质是flash image安装),考虑到篇幅和个人精力的问题,相关安全方面的配置都忽略掉。如果以后有时间的话,我会考虑给大家补上来。

当然本贴的重要目的是分享整个配置过程中遇到的许多问题,以及该如何判断处理,让大家少走弯路。这可能是我的原动力。



安装流程
把solaris 10u2的操作系统作为jumpstart server系统,flash image文件是在solaris 10u3上制作的,同样miniroot文件也是在solaris 10u3上制作)

我为什么要这么折腾呢?其目的很简单,尽量做到整个安装过程相对苛刻,让所有可能出现的问题都暴露出来。


硬件环境准备
sparc 服务器或者工作站(唯一特殊的要求OBP为4.x版本,支持network-boot-arguments参数,在OS中运行eeprom network-boot-arguments,确认是否有该参数。UltraSPARCIII或者更新的主机应该都支持城域网的安装,如果偏低,考虑先升级OBP。

软件环境准备:
solaris 10第三版06/06
solaris 10第二版06/11
apache 2.2.4或者最新版本以及相关软件(expat, libiconv, zlib, openssl-0.9.8e, libgcc-3.4.6, gdbm, zlib, db-4.2.52.NC, apr-1.2.2-sol10-sparc-local, aprutil-1.2.2-sol10-sparc-local)一个都不能少,否则启动apache时系统会报错,导致Httpd启动失败



###########################################################################
jumpstart软件简单介绍
服务器端:
当然在WAN方式安装的从头到尾,起到主导作用的是webserver,所有的介质安装、引导和安全策略都离不开它。因此首先我们需要选择一个合适的webserver
说到这里,我再提一下。我们可以选择的webserver品种不多,常见的有apache 1.x或者2.0(OS自带),apache官方网站的2.2.4,SUNONE webserver(又称Java Enterprise System) 6.1sp7和7.0当然版本稍微低的也可以。具体会有什么样的问题,随后我会简单阐述。

客户端:
    客户端比较的简单,boot net  - install运行之后,OBP马上会根据network-boot-arguments中指定的参数来配置IP,掩码,网关3个重要的网络参数,然后在根据network-boot-arguments中指定的files去访问CGI程序wanboot-cgi,CGI程序会根据clientID来决定该client使用哪套配置文件安装。

如果这时候出现connecttion time out类似字样,那么需要检查网络配置是否互通;

如果出现connection refused, 那么需要检查webserver是否正常启动,80端口是否可以正常访问;

如果出现类似500类似的错误,那么需要检查/etc/netboot目录下面的clientID目录已经下面的文件是否正确或者遗漏,clientID目录是否为大写,wanboot.conf文件定义的boot-file是否无法从web browser访问;

如果出现403类似字样,那么需要检查cgi程序的文件执行权限。

wanboot的CGI(通用网关接口程序)和asp, pell,php等动态网页程序类似,可以实现http动态交互的功能,有别于简单的html。

那么CGI开始引导的下一步的动作会是什么呢?是根据client端提供过来的MAC地址,和IP/掩码,算出一个14位16进制的clientID,然后在/etc/netboot下面找匹配的clientID目录,并把该目录的配置文件调用出来给该client使用,从而实现了配置文件和client端的对应关系。

那么clientID是怎么算出来的呢?是01加上12位MAC地址的大写。假设mac为00:22:44:88:aa:dd,那么clientID就为0100224488AADD(注意是大写字母!!),既然和MAC扯上钩了,那么local-mac-address?这个参数就会敏感起来。这个参数同样要预先设置为true,当然对于单网口主机就无所谓啦,否则可能导致网络引导到一定程度后失败。

如果在多网口中的非默认网口上安装jumpstart客户端,那么我要特别提醒需要在OBP的OK提示符下额外设置几个参数:


CODE:[Copy to clipboard]show-nets 确认哪个网口是你要用来安装OS的网口 (单网口主机忽略此步)
nvalias rootdisk /pci/???????????????????????
nvalias mirrdisk /pic@9/60000000?????????????
nvalias net /pci?????????/network@2,0
nvstore   保存nvram
setenv use-nvramrc? true
setenv network-boot-arguments
到此client端的配置就讲完了。





###########################################################################
本文的重点是服务器端的安装配置,我们开始吧。
jumpstart server的OS安装模式是end-user,然后仅仅补装一个软件SUNWmkcd,该软件在solaris 10的安装光盘上有。

webserver经过我长时间的折腾,我们发现真正适合我们用的webserver就是apache 2.2.4(官方声明中可以支持2GB的文件下载,这对于超过2GB的flash文件安装非常重要!)

solaris 10自带的apache是1.x还有一个是2.0(如果是2.2以上,那么就无须安装第三方的了)?这两个版本都可以使用,问题就在于如果采用http方式安装flash文件,那么问题就来了,当下载flash文件到2GB的时候出现问题,或者分析flash文件时jumpstart就异常退出,无法继续安装,所以不推荐使用。

JES webserver 6.1sp7和7.0(64位运行模式)同样存在不支持2GB文件下载的问题。如果采用nfs,或者ftp方式安装flash文件,那么上述提到的几个webserver就无所谓使用谁啦,反正都可以提供CGI程序支持,miniroot,wanboot等文件下载,安全策略。

紧接着到sunfreeware.com上面下载那一堆第三方软件吧。expat, libiconv, zlib, openssl-0.9.8e, libgcc-3.4.6, gdbm, zlib, db-4.2.52.NC, apr-1.2.2-sol10-sparc-local, aprutil-1.2.2-sol10-sparc-local,具体网址见附录。

安装方法当然也是相当的简单,我可就具一个例子咯。

我从网上下载了一个apache-2.2.4-sol10-sparc-local.gz,然后放到了/tmp下
# cd /tmp; gunzip apache-2.2.4-sol10-sparc-local.gz
# pkgadd -d apache-2.2.4-sol10-sparc-local 然后一路y下去。注意-d后面没有标点符号哦。

剩下的那些包子都是同样的安装方法。

默认安装完成之后apache的home目录是/usr/local/apache2
copy一个默认的配置文件吧。
# cd /usr/local/apache2/conf;
# cp httpd-std.conf httpd.conf

或者直接到www.apache.org上面下载源码自己编译一个。如果主机性能不太好就直接用二进制安装吧。编译的过程得几十分钟。

可以尝试启动一下apache看看是否可以正常启动?
# cd /usr/local/apache2/bin; ./apachectl start
# telnet 0 80 看看80端口是否已经打开,或者直接用web browser测试一把。

需要指明的几点:apache默认的documentroot为/usr/local/apache2/htdocs,我们没有必要作更改,把我们需要的几个目录连接到htdocs下面即可。
apache很简单,无需要任何额外的配置。到此安装完成。更为详尽的测试随后和jumpstart配置文件一块描述吧。


###########################################################################
jumpstart 目录的创建和相关配置文件的生成。
目录结构主要分为2个
1, /etc/netboot   (提供基本的配置文件指向,知道webserver返回哪个配置文件给客户端使用)
结构如下:
/etc/netboot/网络号/clientID/<system.conf, wanboot.conf>
假设client ip为192.168.1.22,掩码为255.255.0.0,那么这里提到的网络号即为192.168.0.0,clientID在本文前部分提到。您大可不必担心,如果jumpstart的client足够多,那么如何jumpstart server才能找到属于他们自己的system.conf和wanboot.conf文件。我这里把wanboot.conf文件的内容列出来,并简单解释一下吧。


CODE:[Copy to clipboard]boot_file=/wanboot/wanboot
root_server=http://192.168.1.1/cgi-bin/wanboot-cgi
root_file=/wanboot/miniroot
signature_type=
encryption_type=
server_authentication=no
client_authentication=no
resolve_hosts=
boot_logger=http://192.168.1.1/cgi-bin/bootlog-cgi
system_conf=system.conf
boot_file的作用安装我的理解是创建一个引导环境,为miniroot程序的加载作铺垫。测试wanboot文件是否可以正常访问的方法是用web browser下载http://192.168.1.1/wanboot/wanroot是否成功。

root_file变量就是指定minroot文件的地方。测试miniroot文件是否可以正常访问的方法是用web browser下载http://192.168.1.1/wanboot/miniroot是否成功。

boot_logger的注意目的是记录实时的安装进度,记录文件为文件文件在/tmp/bootlog.$hostname,使用tail -f /tmp/bootlog.$hostname即可查看。

root_server是指定client引导用的cgi程序。

还有system.conf文件


CODE:[Copy to clipboard]SsysidCF=http://192.168.1.1/config/lab-x1
SjumpsCF=http://192.168.1.1/config/lab-x1
上述两行的主要目的让webserver返回目录config/lab-x1的2个文件sysidcfg和profile给client端,这个两个传统的配置文件主要目的是为了定义主机名,ip,域名解析,系统硬盘分区划分,镜像,flash文件的下载地址等信息,尤为重要。手册中有较为详尽的叙述。

2     /jumpstart目录。
我们可以把每个client的configuration放在/jumpstart/config下面
把wanboot相关文件wanboot,miniroot放在/jumpstart/wanboot下面
把flash文件放在/jumpstart/flash下面

这里我举例说明如何创建一个这样的client端,信息如下:


CODE:[Copy to clipboard]client name: lab-x1
client ip: 192.168.1.22
client netmas: 255.255.255.224
client gateway: 192.168.1.1
nam_server none
password: root
disk VTOC: 交换分区10g,metadb 8兆,剩下的给root分区
MAC地址:00:22:44:88:aa:dd
安装方式:http方式的flash

论坛徽章:
0
2 [报告]
发表于 2007-06-27 13:57 |只看该作者
步骤如下:首先创建3个关键的目录
# mkdir /jumpstart/config
# mkdir /jumpstart/flash
# mkdir /jumpstart/wanboot
#  cp /usr/lib/inet/wanboot  /jumpstart/wanboot

# miniroot文件需要手工制作,方法稍显复杂,主要原因是大部分工作是在解决miniroot的bug问题,当然miniroot文件最后也要放到/jumpstart/flash下面。

Flash文件的制作方式比较简单
# flarcreate -n solaris10u3 -L pax solaris10.flar
我这里的flash文件是在另一个os上创建的,注意归档器可以用cpio,也可以用pax,为什么我要用pax呢,因为当flash文件大于4gb,那么cpio方式压缩可能会有点问题!!因此pax压缩方式是推荐的。整个压缩过程额外的时间开销还好,不是太多。

Copy cgi程序
# cd /usr/lib/inet/wanboot/
# cp bootlog-cgi wanboot-cgi  /usr/local/apache2/cgi-bin/
# chmod +x /usr/local/apache2/cgi-bin/*
由于/usr/local/apache2/cgi-bin 下面的用ln连接到其他地方是不被允许的,因此bootlog-cgi、wanboot-cgi必须copy到/usr/local/apache2/cgi-bin下面,而不能作连接。不过可以作虚目录,这样是没有问题的。


注意如果是sunone webserver,那么cgi-bin目录, /jumpstart下面的config目录都必须改变属主、权限和webserver的安装用户组完全一致,否则可能产生权限问题。尤其是CGI程序。


下面我们转到/jumpstart/config目录下面
# cd /jumpstart/config
# mkdir lab-x1; cd lab-x1

复制check脚本
# cp  /cdrom/cdrom0/s0/Solaris_10/Misc/jumpstart_sample/check .

# vi sysidcfg


CODE:[Copy to clipboard]network_interface=hme0 { primary hostname=lab-x1
                ip_address=192.168.1.22
                netmask=255.255.255.224
                protocol_ipv6=no
                default_route=192.168.1.1 }
timezone=PRC
system_locale=C
terminal=vt100
timeserver=localhost
name_service=none
security_policy=none
root_password=i./CJA3PfKjNk
写到哪儿就说到哪儿吧,timeserver是指定ntp server,现在按照官方文档指定的方法是有问题的,所以就不要在这里费心了,如果有兴趣的话,可以把它加到postinstall.sh当中去。system_locale这里也只能选择比较基本的C,其他的比如en_US,系统识别不了,按照我的个人感觉来判断这一切都是由于miniroot太小,仅仅是一个迷你的内核和一些常用的命令,此时很多东东都没有加载的原因,miniroot这个小内核就200多兆,我们可以理解。赫赫。


编辑规则文件
# vi rules
hostname lab-x1 – profile postinstall.sh


# touch postinstall.sh
# chmod +x postinstall.sh
其实postinstall.sh这个文件是在系统所有package安装完成之后,可以运行的一个脚本,这个脚本里面可以加很多东西,比如自己额外安装个包子,下载个其他软件,配置个ipmp,生成一些配置文件,创建mpxio的配置文件,清理系统日志。有精力的网友,我建议在这里可以多作文章!!这里做好了之后,那么你的OS重启以后就可以正式上线使用了!!!我也把很多精力放在这上面了。



编辑profile文件
# vi profile


CODE:[Copy to clipboard]install_type flash_install
archive_location http://192.168.1.1/flash/sol10.flar
partitioning explicit
metadb c1t0d0s7 size 8192 count 3
metadb c1t1d0s7 size 8192 count 3
filesys mirror:d10 c0t0d0s0 c0t1d0s0 free /
filesys mirror:d20 c0t0d0s1 c0t1d0s1 2048 swap
在安装的过程中metadevice ID 不能超过127,即使是solaris 10u3,我尝试改过system,以及定义metadevice数量的2个文件都失败,不过一般情况下我们都是不会超过127的。


然后转到/etc/netboot下面创建目录
# mkdir /etc/netboot/192.168.1.0
# mkdir /etc/netboot/192.168.1.0/0100224488AADD
# vi system.conf


CODE:[Copy to clipboard]SsysidCF=http://192.168.1.1/config/lab-x1
SjumpsCF=http://192.168.1.1/config/lab-x1
# vi wanboot.conf
[code]
boot_file=/wanboot/wanboot
encryption_type=
signature_type=
server_authentication=no
client_authentication=no
resolve_hosts=
root_server=http://192.168.1.1/cgi-bin/wanboot-cgi
root_file=/wanboot/miniroot
boot_logger=http://192.168.1.1/cgi-bin/bootlog-cgi
system_conf=system.conf
# cd /usr/local/apache2/htdocs
# ln -s /jumpstart/config
# ln -s /jumpstart/flash
# ln -s /jumpstart/wanboot

好了,在当前目录下运行./check,生成rules.ok文件吧,如果一切正常,那么配置到此就结束了。



然后就在客户端运行boot net – install开始安装吧。
注意- install之间是有空格的!否则系统会认为你安装时使用-i参数,后面带有nstall文件,那么这个nstall的未知文件是不会被系统找到的,所以jumpstart运行到一半就停下来了。

关于jumpstart的整个client安装过程中,我建议检查2个apache的log   access.log, error.log,这2个文件对掌控整个安装过程和排错是相当有用的。/usr/local/apache2/logs下面

有时间的话,可以测试几个url看是否都非空链接


CODE:[Copy to clipboard]http://192.168.1.1
http://192.168.1.1/cgi-bin/bootlog-cgi
http://192.168.1.1/cgi-bin/wanboot-cgi
http://192.168.1.1/config/lab-x1
http://192.168.1.1/config/lab-x1/rules
http://192.168.1.1/config/lab-x1/rules.ok
http://192.168.1.1/config/lab-x1/profiles
http://192.168.1.1/wanboot/miniroot
http://192.168.1.1/wanboot/wanboot
http://192.168.1.1/flash/sol10.flar
哦,差点忘了个重要的事情:如何制作miniroot文件?
1,推荐用最新版OS光盘solaris 10u3介质制作。
光盘中运行./setup_install_server /jumpstart/shadow
然后从网上下载2个patch 124630-06, 119081-25,把这两个patch打到/jumpstart/shadow/Solaris_10/Tools/Boot目录下,
安装方法如下:
# patchadd -C /jumpstart/shadow/Solaris_10/Tools/Boot /tmp/119081-25
# patchadd -C /jumpstart/shadow/Solaris_10/Tools/Boot /tmp/124630-06

好咧,如果没有什么报错,可以继续进行
# cd jumpstart/shadow/Solaris_10/Tools/;    ./setup_install_server -b -w /jumpstart/wanboot/ /jumpstart/s10.tmp
# rm -r /jumpstart/s10.tmp  /jumpstart/shadow
我仔细校验了一下solaris 10u3安装119081-25提示该补丁已经安装,但是通过sum校验出来libspmisvc.so.1和libspmiapp.so,  pfinstall文件的校验码对不上,所以我只能手工把补丁里面的这几个文件手工copy到miniroot文件中。Solaris 10u2或者u3的必须打补丁,否则默认装出来的miniroot不支持>2GB的http flash安装方法!!!如果flash文件解压到2gb出现问题的时候,各位就不要为这个事情费心了,就是miniroot的问题(尤其是error中有416这样的错误值的时候)。为这事,我搞了2个周末。主要原因是官方补丁提到的方法也有的问题。我的这个miniroot已经制作出来了。为了少费各位心,有ftp的哥们们,我可以把它传给你们。(270兆)

论坛徽章:
0
3 [报告]
发表于 2007-06-27 13:58 |只看该作者
最后各位如果有精力的话,我推荐2个相关的软件:
1, Jumpstart Enterprise ToolKits(在sun.com/download可以找到)个人用着不太爽,有学它的时间,我基本也把jumpstart 的配置脚本也写出来了。


2, 还有美国人在bigadmin上面的一个创建jumpstart server的一个小shell,写的挺实在的,。
http://www.sun.com/bigadmin/jsp/ ... solaris_wanboot_set

###########################################################################
参考网址:


CODE:[Copy to clipboard]http://sunsolve.sun.com
http://docs.sun.com
http://www.sunfreeware.com/programlistsparc10.html#apache22
在整个安装测试过程中,我建议多多留意apache的2个日志文件access.log,  error.log。


对于要在jumpstart安装过程中使用脚本的朋友,我帮你们列了一下当时可以使用的所有命令如下:注意这些命令比正常系统启动的命令要少,所以你的脚本中使用的命令不能超过这个范围。

论坛徽章:
0
4 [报告]
发表于 2007-06-27 13:59 |只看该作者
如果各位需要编辑postinstall.sh脚本的话,我把所有的当时可用的命令整理出来了,如下。
此外在运行postinstall.sh这个脚本的时候,所有的OS软件军安装好了。mount点的对应关系:
/对应于/a
/opt对应于/a/opt ( 如果存在该分区的话)
/opt对应于/a/opt ( 如果存在该分区的话)
/opt对应于/a/var( 如果存在该分区的话)
/data对应于/a/data ( 如果存在该分区的话)

可用的脚本语言只有bournce shell,其他bournce again shell, korn shell, c shell, perl好像都没有。


CODE:[Copy to clipboard]# cd /usr/bin; ls
alias         du            ln            pflags        strings
aliasadm      dumpcs        loadkeys      pfsh          stty
amt           dumpkeys      locale        pg            su
arch          echo          localedef     pgrep         sum
asa           ed            logger        pkgadm        sun
at            edit          login         pkgcond       sun2
atq           egrep         logins        pkginfo       sun3
atrm          eject         logname       pkgmk         sun3x
auths         elfsign       look          pkgparam      sun4
awk           encrypt       ls            pkgproto      sun4c
banner        enhance       m68k          pkgtrans      sun4d
basename      env           mac           pkill         sun4e
batch         ex            mach          pktool        sun4m
bc            expand        mail          pldd          svcprop
bdiff         expr          mailx         plimit        svcs
bfs           exstr         makedev       pmap          sync
bg            false         mc68000       poolstat      tabs
bunzip2       fdetach       mc68010       ppgsz         tail
busstat       fdformat      mc68020       ppriv         tar
bzcat         fg            mc68030       pr            tcopy
bzcmp         fgrep         mc68040       prctl         tee
bzdiff        file          mesg          preap         telnet
bzegrep       filesync      mkdir         printf        test
bzfgrep       find          mkfifo        priocntl      tftp
bzgrep        finger        mkmsgs        profiles      tic
bzip2         fmli          mkpwdict      projects      time
bzip2recover  fmt           mktemp        prstat        tip
bzless        fmtmsg        moe           prun          touch
bzmore        fold          montbl        ps            tplot
cachefspack   ftp           more          psig          tput
cachefsstat   gcore         mpstat        pstack        tr
captoinfo     gencat        msgfmt        pstop         true
cat           geniconvtbl   mt            ptime         truss
cd            genmsg        mv            ptree         tty
chgrp         getconf       nawk          putdev        type
chkey         getdev        netstat       putdgrp       tzselect
chmod         getdgrp       newform       pvs           u370
chown         getent        newgrp        pwait         u3b
chrtbl        getfacl       news          pwconv        u3b15
ckdate        getopt        newtask       pwd           u3b2
ckgid         getopts       nfsstat       pwdx          u3b5
ckint         gettext       nice          rcp           ulimit
ckitem        gettxt        nisaddcred    rdate         umask
ckkeywd       getvol        niscat        rdist         unalias
ckpath        grep          nischgrp      read          uname
ckrange       groups        nischmod      red           uncompress
ckstr         hash          nischown      remsh         unexpand
cksum         head          nischttl      renice        uniq
cktime        hostid        nisdefaults   rksh          units
ckuid         hostname      niserror      rlogin        unix2dos
ckyorn        i286          nisgrep       rm            unpack
clear         i386          nisgrpadm     rmail         unzip
cmp           i486          nisln         rmdir         uptime
col           i860          nisls         roles         uudecode
colltbl       i86pc         nismatch      rpcinfo       uuencode
comm          iAPX286       nismkdir      rsh           vax
command       iconv         nispasswd     runat         vedit
compress      id            nispath       rup           vi
coreadm       infocmp       nisprefadm    ruptime       view
cp            iostat        nisrm         rusers        vmstat
cpio          ipcrm         nisrmdir      rwho          vsig
crle          ipcs          nistbladm     savecore      w
crypt         isainfo       nistest       script        wait
csh           isalist       nl            sdiff         wc
csplit        java          nohup         sed           wchrtbl
ctags         jobs          oawk          setfacl       which
ctrun         join          od            setpgrp       who
ctstat        jsh           on            settime       whocalls
ctwatch       kbd           optisa        setuname      whois
cut           kbdcomp       pack          sh            wracct
date          kdestroy      page          showrev       write
dd            keylogin      pagesize      sleep         xargs
decrypt       keylogout     pargs         smartcard     xgettext
devattr       kill          passmgmt      sort          xml2-config
devfree       kinit         passwd        sotruss       xmlcatalog
devreserv     klist         paste         sparc         xmllint
df            kpasswd       patch         sparcv7       xstr
diff          ksh           pathchk       sparcv9       yes
diff3         kstat         pax           spell         ypcat
digest        ktutil        pcat          spline        ypmatch
dircmp        last          pcred         split         yppasswd
dirname       lastcomm      pdp11         srchtxt       ypwhich
dispgid       ldaplist      perl          strace        zcat
dispuid       ldd           pfcsh         strchg        zipinfo
dmesg         line          pfexec        strclean      zonename
domainname    listdgrp      pfiles        strconf
dos2unix      listusers     pfksh         strerr


# cd /usr/sbin
# ls
6to4relay        ifconfig         mountall         share
acctadm          ikeadm           msgid            shareall
add_drv          ikecert          mvdir            showmount
allocate         in.comsat        ncheck           shutdown
arp              in.fingerd       ndd              smbios
audit            in.rarpd         newfs            snoop
auditconfig      in.rdisc         newkey           sparcv9
auditd           in.rexecd        nis_cachemgr     spray
auditreduce      in.rlogind       nisbackup        stmsboot
auditstat        in.routed        nisinit          strace
audlinks         in.rshd          nisldapmaptest   strclean
autopush         in.rwhod         nislog           strerr
bootadm          in.talkd         nisrestore       sttydefs
bootconfchk      in.telnetd       nlsadmin         svcadm
bpgetfile        in.tftpd         nscd             svccfg
bsmrecord        in.tnamed        ocfserv          swap
cachefslog       inetadm          passmgmt         sync
cachefswssize    inetconv         patchadd         syncinit
cfgadm           inetd            patchrm          syncloop
cfsadmin         init             pbind            syncstat
chroot           install          ping             sys-unconfig
clear_locks      install.d        pkgadd           sysdef
clinfo           installboot      pkgask           syseventadm
clri             installf         pkgchk           sysidconfig
computehash      ipaddrsel        pkgrm            sysidkrb5
consadm          ipsecalgs        pmadm            sysidlib
consadmd         ipsecconf        pooladm          sysidnet
cryptoadm        ipseckey         poolbind         sysidnfs4
dcopy            jfbdaemon        poolcfg          sysidns
deallocate       keyserv          ports            sysidroot
devfsadm         kfbdaemon        poweroff         sysidsys
devinfo          killall          praudit          sysidtty
devlinks         ksslcfg          prtconf          sysiduilib
devnm            labelit          prtdiag          syslogd
df               ldapaddent       prtvtoc          tapes
dfmounts         ldapclient       psradm           tar
dfshares         link             psrinfo          traceroute
disks            list_devices     psrset           trapstat
dispadmin        locator          pwck             ttinstall
dladm            lockfs           pwconv           ttyadm
dmesg            lofiadm          quot             tunefs
dminfo           logadm           quota            uadmin
drvconfig        luxadm           quotacheck       ufsdump
dumpadm          makedbm          quotaoff         ufsrestore
edquota          mdmonitord       quotaon          umount
eeprom           medstat          raidctl          umountall
exportfs         metaclear        ramdiskadm       unlink
fdisk            metadb           rctladm          unshare
ff               metadetach       reboot           unshareall
flar             metadevadm       rem_drv          update_drv
flarcreate       metahs           removef          useradd
fmthard          metaimport       repquota         userdel
format           metainit         rmt              usermod
fsck             metaoffline      roleadd          volcopy
fsdb             metaonline       roledel          wall
fsirand          metaparam        rolemod          wanbootutil
fssnap           metarecover      route            whodo
fstyp            metarename       routeadm         ypalias
fuser            metareplace      rpc.bootparamd   ypinit
getdevpolicy     metaroot         rpc.mdcommd      yppoll
getmajor         metaset          rpc.metad        ypset
gettable         metastat         rpc.metamedd     zdb
gfbdaemon        metasync         rpc.metamhd      zdump
groupadd         metattach        rpc.nisd         zfs
groupdel         mkdevalloc       rpc.nisd_resolv  zic
groupmod         mkdevmaps        rpc.nispasswdd   zlogin
growfs           mkfile           rpc.rexd         zoneadm
grpck            mkfs             rpcbind          zonecfg
gsscred          mknod            rpld             zpool
halt             modinfo          rtquery          zuludaemon
hostconfig       modload          rwall
htable           modunload        sacadm
if_mpadm         mount            setmnt


# cd /sbin; ls
autopush                  install-recovery          route
bootadm                   install-setup             routeadm
bpgetfile                 install-solaris           selection
dhcpagent                 install-ui-start          setup-launcher
dhcpinfo                  install.d                 setup-window-config
dial                      jsh                       sh
dladm                     mem                       soconfig
exitwrapper               metadb                    su
fdisk                     metadevadm                su.static
get_netmask               metainit                  sulogin
get_root                  metarecover               suninstall
getbootargs               metastat                  swapadd
getconsole                mkmenu                    sync
hostconfig                mount                     sysid-finish
ifconfig                  mountall                  sysid-locale
ifparse                   netstrategy               sysid-setup
in.mpathd                 pfsh                      sysidfind
init                      rc0                       uadmin
install-additional-prods  rc1                       umount
install-begin             rc2                       umountall
install-common            rc3                       uname
install-discovery         rc5                       zfs
install-du                rc6                       zonename
install-finish            rcS                       zpool
#


# cd /usr/sbin/install.d
# ls
Xinitrc                   install-discovery.stub    profind
chkprobe                  install_config            re-preinstall
dynamic_test              mergescripts              set_mntpnt
findcd                    parse_dynamic_clustertoc  stripcpioerr
get_mntpnt                patchUpdate               stubboot
hardware_checks           pfinstall
ide.physdevmap.nawk       profetch

论坛徽章:
0
5 [报告]
发表于 2007-08-21 19:26 |只看该作者
此帖已收集到主题列表:lovely:
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP