Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1316573
  • 博文数量: 161
  • 博客积分: 10192
  • 博客等级: 上将
  • 技术积分: 2165
  • 用 户 组: 普通用户
  • 注册时间: 2006-07-27 17:09
文章分类

全部博文(161)

文章存档

2012年(2)

2011年(13)

2010年(137)

2009年(5)

2008年(4)

我的朋友

分类:

2009-11-17 11:01:17

1.
#route add -net 192.168.0.0 192.168.0.1

执行之后,路由表立即生效,可以使用命令
#netstat -r来查看
但是,通过route的命令,系统重起以后,就会失效。
也就是说,在重起系统之后,我需要重新运行 route add 这条命令。
为了省去这个麻烦,我们可以编制脚本,令系统已启动就自动运行这个命令,这也算是下面solution的思想所在。
solution A:
在/etc/init.d下面编辑文件 solutionA
内容就是 route add -net destination next-hop metric
然后再chmod 0777 /etc/init.d/solutionA 使这个文件为可执行文件。
然后在/etc/init.d/下 ln solutionA /etc/rc2.d/S100solutionA 令系统启动以后也启动solutionA
solutionB:
在/etc/rc2.d下面vi S100solutionB
内容就是 route add -net destination next-hop metric
比较而言,solutionA较好些
solutionC:
编辑/etc/gateways文件即可
文件格式
net dest.net gateway router metric cnt [passive][active]
例如:
net 128.50.0.0 gateway sword-r metric 1 passive
如果只是主机则用
host 128.50.0.0 gateway sword-r metric 1 passive
 
默认静态路由的添加办法
编辑/etc/defaultrouter 内容默认网关的ip地址即可。

2.ping -s wan_ip
3./home下无法建立用户家目录
停掉autofs服务,或者将/etc/auto_master的home注释掉,重启后即可。

4。添加用户时必须指定-m参数方可自动建立家目录。
useradd -d home-dir -m username

-------------
修改opensolaris让root可以直接登录():
1)#vi /etc/ssh/sshd_conf
PermitRootLogin yes
2)#vi /etc/user_attr  --->该文件为扩展用户属性数据库文件
把root::::type=role;auths=solaris.*,...里的type=role删除。
3)#svcadm restart network/ssh
4)test
-------------

如果要显示完整的命令行,可以用Solaris 10提供的另一个版本的ps命令,在/usr/ucb目录下面。使用的时候加-axww选项:
/usr/ucb/ps -auxww
5.
查看cup的状态?                  
# psrinfo -v
# kstat -m cpu

# mpstat     可以列出多cpu负载的状态
6.
查看内存?                     
# prtconf | grep 'Memory' 可以查看内存的多少.
# vmstat 2 5    solaris通常使用vmstat命令来查看系统的虚拟内存子系统的状态信息。vmstat可显示swap,物理内存,分页错误,磁盘信息统计和错误等信息.

# echo ::memstat | mdb -k  查看内存分页的汇总情况

7.
动态添加swap分区? # $su - root                                  -----  成为超级用户
# mkfile 100m /home/swapfile         -----  创建100m的Swap文件
# /usr/sbin/swap -a /path/filename  -----  激活Swap文件
# /usr/sbin/swap -l                 -----  验证swap文件
# /usr/sbin/swap -d /path/filename  -----  取消swap文件
# rm -rf /home/swapfile              -----  删除swap文件
8.
使用光、软驱?
一般情况下用:
# /etc/init.d/volmgt start
# volcheck
以上方法不行,用:
# /etc/init.d/volmgt stop
# mount -F hsfs -o ro /dev/dsk/c0t6d0s0 /cdrom --挂接光驱
# mount -F pcfs /dev/diskette0 /floppy         --挂接软驱
solaris定义系统磁盘文件系统说明:
ufs – UNIX文件系统。是Solaris缺省的文件系统。
hsfs – 高密度CD-ROM文件系统,是只读文件系统。
pcfs – PC文件系统,支持DOS格式化的软盘
9.
SCSI设备的命名规则是什么?
带有总线控制器的硬盘的使用,下面列出了总线控制器的硬盘命名习惯:
cWtXdYsZ
c Logical controller number
t Physical bus target number
d Drive number
s Slice (or partition) number (0 to 7)
例如:
/dev/rdsk/c0t0d0s0 该原始接口对应第一个控制器的第一个SCSI目标地址的第一个硬盘的第一片(/根)
/dev/rdsk/c0t0d0s2 该原始接口对应第一个控制器的第一个SCSI目标地址上的第一个硬盘的第三片(表示整个硬盘)
10.
如何查看硬盘物理信息?
# iostat -E  看硬盘的大小和型号
# prtvtoc /dev/rdsk/c0t0d0s0   显示某个磁盘的分区状况
11.
配置网卡ip?
  • netstat -rn   看路由
  • netstat -in   看流量统计
  • netstat -an  看连接信息
  • netstat -pn  看ARP解析表(MAC-IP映射表)

  • /network/physical:nwam   这个是Solaris11新版本的网络自动管理。
    /network/physical:default 这个是Solaris老版本用的网络配置管理。

    两者使用时只能使用一种方法.

    设置NWAM服务为IP指定静态IP:
    缺省情况下,您的网络设置是在安装期间由 NWAM 过程自动配置的。您可以通过使用 NWAM 管理器图标菜单中的选项来修改 NWAM 的工作方式,如修改自动网络配置(任务)中所述。或者,您可以通过编辑 NWAM 的配置文件 /etc/nwam/llp  来更改配置的各个方面。 
    # svcadm disable network/physical:nwam
    要使 NWAM 分配一个静态 IP 地址,请使用 static 选项和一个 IP 地址替换 dhcp 选项。例如:
    pcn0 static 192.168.10.3/24
    # svcadm enable network/physical:nwam

    启动物理网络
       svcadm enable svc:/network/physical:default


    查看网卡是否已经安装
    # ls /dev |grep “
    网卡名
    # ifconfig -a             --查看网卡,例如是hme0
    # ifconfig hme0  unplumb  --停止网卡
    # ifconfig hme0  plumb    --起用网卡
    # ifconfig hme0 inet 192.168.2.3 netmask 255.255.255.0 up  --添加ip、子网掩码
    # vi /etc/defaultrouter   添加默认路由的ip
    #vi /etc/defaultdomain
      添加本机域名
    # vi /etc/hosts  添加IP地址和对应的主机名
    # vi /etc/netmasks 添加网络地址和子网掩码
    # vi /etc/hostname.XXX0   添加主机名或者ip
    # vi /etc/nodename        添加主机名
    # vi /etc/resolv.conf     
       domain china.com          你的域名
       nameserver 202.106.0.20   你使用的nds ip
    # vi /etc/nsswitch.conf    检查有没有“hosts:file dns
       如果该文件没有包含dns,就备份下该文件,mv nsswitch.dns nsswitch.conf后再看。

    注意:/etc/inet/ipnodes 会在你安装的时候记录你配置的ip,但是你在系统起来后在配置的其他网卡的ip就不会记录到ipnodes里面
    所以有的时候 你在10上修改一个ip地址后 重启发现还是没有改变 这是因为ipnodes中还是保留原来ip 只有修改了一下才可以。

    注意:如何取消IPV6
    #ifconfig lo0 inet6 down
    #ifconfig lo0 inet6 unplumb

    自动获得IP命令:
    ifconfig gani0 auto-dhcp

    12.一块网卡帮定三个ip,并且子网掩码不同?
    虚拟网卡的添加:
    #ifconfig -a
    #ifconfig pcn0:2  plumb up
    #ifconfig pcn0:2 inet  192.168.39.0  up
    #ifconfig pcn0:2 inet  netmask 255.255.255.0
    #ifconfig -a
    如果出错提示如下ifconfig: SIOCSIFADDR Cannot assign requested address,则检查IP和子掩的正确性。


    举例说明,网卡名hme0:
    # vi /etc/hosts
    127.0.0.1 localhost
    192.168.2.1 dbs loghost
    192.168.9.15 dd
    192.168.9.65 aa
    # vi /etc/netmasks
    192.168.2.0 255.255.255.0
    192.168.9.0 255.255.255.192
    192.168.9.64 255.255.255.252
    #vi /etc/hostname.hme0
    dbs
    #vi /etc/hostname.hme0:1
    dd
    #vi /etc/hostname.hme0:2
    aa
    # ipconfig hme0 inet 192.168.2..1 netmask 255.255.255.0 up  
    # ipconfig hme0:1inet 192.168.9.15 netmask 255.255.255.192 up
    # ipconfig hme0 inet 192.168.9.65 netmask 255.255.255.252 up
    # init 6
    #ipconfig -a
    13.
    Solaris下怎么发送即时消息?
    用wirte命令到单个用户的终端。
    $ wirte username
    输入消息正文,结束按ctrl-d,消息就会出现在用户终端。
    用户可以用mesg n[y]来决定是否启动接受消息。
    用wall,是发给所有系统用户。
    $ wall
    hello ,i love you ...... 结束用ctrl-D.
    rwall -n netgroup 给网络上所有用户。
    $ rwall -n workgroup --------发给组workgroup下的每一个用户
    hi ! no smoking ...... 结束用ctrl -d
    $ rwall sune450 ------或者主机名为sune450。用法如上。。。
    14.
    默认语言环境?   
    # more /etc/default/init
    15.solaris 10包安装
    1)Solaris的软件可以到 下载到。请按照自己机器的软硬件,在Pick Processor/OS:(右侧)中选择相应的栏目。比如,下载了gcc-3.4.6-sol10-sparc-local.gz。
    2)用FTP(binary模式)上传。
    3)解压 gunzip gcc-3.4.6-sol10-sparc-local.gz
    4)用命令pkginfo来检查包的信息     pkginfo -d gcc-3.4.6-sol10-sparc-local
       得到的信息     application SMCgcc gcc
      application 安装的种类
      SMCgcc      安装包的名称
      gcc         软件的名称
    5)安装 pkgadd -d gcc-3.4.6-sol10-sparc-local
    6)用pkgchk命令来检查是否安装成功 
       pkgchk SMCgcc
       如果没有信息输出,则说明安装正常。
    7)默认gcc命令安装在/usr/local/bin/下
    16.vncserver
      0)export PATH=$PATH:/usr/X11/bin/Xvnc  也可以添加到/etc/profile最后。
      1)#vi ~/.vnc/xstartup
    如果希望用gnome桌面作为远程终端,可以在$HOME/.vnc/xstartup中把"twm &"这行注释掉,用"gnome-session &"来替换。
    如果希望用CDE桌面作为远程终端,可以在$HOME/.vnc/xstartup中把"twm &"这行注释掉,用"dtsession &"来替换。
      2)#vncserver
      3)test
    17.ssh服务器配置:

    1. 默认 SSH 是开启的,查看 SSH 服务状态:

    # svcs -l network/ssh

    2. SSH 配置文件位于 /etc/ssh/sshd_config。

    3. 欲使用 root 权限,需要用普通用户账号登陆 SSH 客户端,再运行 su 命令切换到 root 权限下。

    4. 重启 SSH 服务命令:

    # svcadm restart network/ssh

    18.ftp服务器配置

    1. 打开“终端”,运行 # su 切换到 root 权限,启动 FTP 服务命令:

    # svcadm enable /network/ftp

    2. 查看 FTP 服务状态:

    # svcs -l network/ftp

    注:默认情况下,root 用户无法登录。

    3. 配置 FTP 用户,编辑文件 /etc/ftpd/ftpusers。(在该文件里的用户都不可用FTP登陆)

    19.启动时设置不启动 xwindow
    #svcadm disable gdm

    启动时设置启动 xwindow
    #svcadm enable gdm

    20.svcs/svcadm
    svcs -a 显示所有服务
    svcs -x 显示未正常启动的服务
    svcs -l 显示单个服务

    svcadm enable 服务:使该服务开机启动,且现在就运行
    svcadm disaple 服务:使该服务开机禁运行,且现在就停止
    svcadm refresh 服务:刷新该服务,重载。
    svcadm restart 服务:使该服务重启
    svcadm clear 服务:清除该服务

    • 如果不想启动哪项服务,就把在/etc/rc*.d/目录下对应的文件删除(当然建议你先备份)
    • 如果是受inetd控制的服务,可把相关配置从Inetd的配置中删除或注释
      • solaris 9的inetd配置文件为/etc/inetd.conf
      • solaris10可直接用inetadm -d service_name or svcadm disable service_name命令禁用相应的服务
    21.SOLARIS服务器运行状态

    0 进入OK状态 (需要SUNPROM芯片支持)

    1 管理状态 (单用户模式,禁止其他用户登陆)

    2 多用户模式 (没有网络文件共享服务)

    3 多用户模式 (有网络文件共享服务)

    4 保留,未使用

    5 退出操作系统并关机

    6 重启

    S,s 单用户模式


    LINUX服务器运行状态:

    #   0 - halt (Do NOT set initdefault to this)
    #   1 - Single user mode
    #   2 - Multiuser, without NFS (The same as 3, if you do not have networking)
    #   3 - Full multiuser mode
    #   4 - unused
    #   5 - X11
    #   6 - reboot (Do NOT set initdefault to this)


    注意哦,两者是不同的。

    如果solaris内核死机,将会在/var/crash/hostname目录下生成一个崩溃转储文件。技术人员将通过这个文件分析系统崩溃的原因。

    22.
    逻辑设备:在/dev/目录下的设备名

    物理设备:在/device/目录下的设备名

    说明:逻辑设备通常容易被我们区分,而物理设备由KERNEL直接去识别,所以比较难理解。一般我们去记某一设备的逻辑设备名就可以了。

    /dsk 是块设备,/rdsk是裸设备。
    用newfs在/rdsk上创建了文件系统,便有了块设备。
    应用程序可以绕过操作系统,直接访问裸设备,不经过文件系统的缓冲。
    而块设备本身是操作系统文件系统的一部分。
    是/dsk是磁盘设备在操作系统中映射。
    所以newfs肯定用裸设备,mount肯定用块设备,以此类推

    Sun使用下列命名方式定义逻辑设备名

    /dev/[r]dsk/cXtXdXsX

             c:逻辑控制器号   

             t:物理总线目标号

             d:磁盘式逻辑单元号(LUN SCSI设备为0

             s:分区号


    查看文件系统类型
    # fstyp /dev/rdsk/c1t0d0s1
    ufs

    prtvtoc,可列出指定磁盘的分区信息:
    # prtvtoc /dev/rdsk/c1t0d0s2


    solaris通过卷管理器vold管理可移除设备,比如CD,DVD,软盘等。可用/etc/init.d/volmgt启动或停止vold守护进程
    • 当软盘插入软驱时,vold会自动把软盘挂接到/floppy目录,并创建两个设备:块设备/vol/dev/diskette0和裸设备/vol/dev/rdiskette0
    • CD和DVD的处理与之类似,被自动挂接到/cdrom目录,并创建两个设备节点/vol/dev/dsk和/vol/dev/rdsk,分别用于提供块设备访问和字符设备访问
    23.文字模式与WINDOWS模式的开关命令

    # /usr/dt/bin/dtconfig –[de]

    -d disable

    -e enable


    24.显示完全程序名的ps命令

    /usr/ucb/ps –auxwww

    相当于linuxps –ef –cols

    25.如何调整x-window的分辨率和刷新频率?
      字符界面登陆,运行:#/kdmconfig
    26.# isainfo        看内核的bit,
      # isainfo -kv      调整内核
    # modinfo          显示可载入的模组
    # prtconf          显示系统硬件配置(周边设备)
    #sysdef           显示可载入的模组,硬件配置与一些可以调整的核心参考值
    #ulimit -a
    27.在linux下面很直接: mount -o loop xxx.iso /tmp/cdrom

    在solairs下面这样是不行的。需要用命令lofiadm。

    lofiadm的作用是在当前文件系统下创建另外的文件系统。做法如下:
    1)

    #lofiadm -a /xx/xxx.iso
    #lofiadm      可以看到该ISO在
    /dev/lofi/1
    #mount -F hsfs /dev/lofi/1 /tmp/cdrom
    2)使用完毕
    umount /mnt
    lofiadm -d /xx/xx.iso  取消
    lofiadm 查看

    28.solaris10+sammba304
    1.创建共享目录
      mkdir -m777 -p  /export/home/smbshare 

    2.创建samba配置文件
      cp  /etc/sfw/smb.conf-example  /etc/sfw/smb.conf

    3. 匿名访问SMB服务器配置
    a.  编辑/etc/sfw/smb.conf文件      将 security = user 改为 security = share
         连接模式,share为共享模式,不需要用户验证。user和server方式需要用户验证
         .log file = /var/samba/log/log.%m 定义了log的默认路径,可自行定义log路径
         maxlog size = 50 定义了log文件默认大小,单位Kb

    修改共享文件路径信息

    将原有信息

    #======== Share Definitions ==========

    [homes]

      comment = Home Directories

      browseable = no

      writable = yes

      

    修改为

    #===== Share Definitions ============

    [homes]

      comment = Home Directories

      browseable = yes

      writable = yes

       path= /expore/home/smbshare           #共享目录路径

      guest ok = yes

    e.启动samba服务
    #svcadm restart samba:default

    f.查看samba服务
    ps -ef | grep mbd

    g.在windows上可用IP访问solaris        

    4.配置用户名登录的SAMBA服务器

    a.smb.conf
    文件中的security=share变成security=user,如:

        security = user
            [homes]
            comment = Home Directories for %S
            valid users = %S            # 只有所有者能访问该共享
            browseable = no             # 该共享对其它用户不可见
            writable = yes
            create mask = 0640          # 创建文件时的权限掩码,权限为rw-r-----
            directory mask = 0750       # 创建目录时的权限掩码,权限为 rwx-r-x---

    unix charset = GBK      #解决共享文件夹在windows下新建文件名不能为中文的问题
    dos charset = GBK
    display charset = GBK 

        b.添加samba用户。用户可以是已有用户,也可以是即将新建用户
          /usr/sfw/bin/smbpasswd -a testuser      输入密码两次
          /usr/sfw/bin/smbpasswd -e testuser   激活该用户

        c./etc/init.d/samba stop

          /etc/init.d/samba start

          
                            

    5。Solaris 访问Windows共享资源

    1.      查询网络上的Samba服务器

            # /usr/sfw/bin/findsmb

    每个找到的服务器都会显示其 IP 地址、NetBIOS 名称、工作组名称、操作系统、以及 SMB 服务器版本。

    2.      列出Samba服务器上的可用资源

            # /usr/sfw/bin/smbclient -L

            如果是 user共享方式,就要加“-U ”选项如下。
            # /usr/sfw/bin/smbclient -L -U
            Password:

            如果是 share共享方式,可以不必理会用户和密码,要求输入密码时直接回车即可。

    3.      连接Samba共享

            # /usr/sfw/bin/smbclient/// [-U ]

            例如要访问上文中的share共享时,可用
            # /usr/sfw/bin/smbclient//hostname/homes

           连接后,就能象FTP用户一样上传和下载文件。用put表示上传,用get表示下载。键入help获得可用的命令列表。

    30. opensolaris200906+NFS
    Network File System(NFS)是可以用来在网络**问文件的系统。它大部分用在UNIX系统上,但是你也可以在Linux和Windows上使用它。在 OpenSolaris的NFS默认版本是4,这个服务通过SMF管理,这意味着你需要使用svcs和svcadm命令去检查、启用、禁用或者重起它。

      开始让我们检查一下NFS服务是否在我的系统上启动了: 

    root# svcs network/nfs/server
    STATE          STIME    FMRI
    disabled      9:30:35 svc:/network/nfs/server:default
    root#

      啊哈,它是禁用的。Solaris 9上NFS是随系统启动的,这里不是。让我首先尝试启动它:

    root# svcadm enable network/nfs/server
    root# svcs network/nfs/server
    STATE          STIME    FMRI
    offline      10:11:56 svc:/network/nfs/server:default
    root#

      Offline-这意味着服务实例被启用,但是服务仍然没有运行。这个服务需要其它服务,大概他们根本没有运行,

    那就是它没有启动的原因:

    root# svcs -d svc:/network/nfs/server:default
    STATE          STIME    FMRI
    disabled      9:30:35 svc:/network/rpc/keyserv:default
    disabled      9:30:35 svc:/network/nfs/mapid:default
    disabled      10:26:56 svc:/network/nfs/nlockmgr:default
    online          9:30:52 svc:/milestone/network:default
    online          9:31:08 svc:/system/filesystem/local:default
    online          9:31:10 svc:/network/shares/group:zfs
    online          9:31:10 svc:/network/shares/group:default
    online          9:31:26 svc:/network/rpc/gss:default
    online         10:26:56 svc:/network/rpc/bind:default

      需要的keyserv、mapid和nlockmgr没有运行,我将要启动它们。

    root# svcadm enable svc:/network/nfs/mapid:default
    root# svcadm enable svc:/network/rpc/keyserv:default
    root# svcadm enable svc:/network/nfs/nlockmgr:default

    root# svcs -d svc:/network/nfs/server:default
    STATE          STIME    FMRI
    online          9:30:52 svc:/milestone/network:default
    online          9:31:08 svc:/system/filesystem/local:default
    online          9:31:10 svc:/network/shares/group:zfs
    online          9:31:10 svc:/network/shares/group:default
    online          9:31:26 svc:/network/rpc/gss:default
    online         10:26:56 svc:/network/nfs/nlockmgr:default
    online         10:26:56 svc:/network/rpc/bind:default
    online         10:33:11 svc:/network/nfs/mapid:default
    maintenance  10:33:20 svc:/network/rpc/keyserv:default
    root#

      Keyserv在maintenance模式:这意味着服务实例遇到了错误,管理员必须要解决。让我们看看日志文件:

    root# cd /var/svc/log
    root# tail network-rpc-keyserv:default.log
    [ Jul 11 13:59:05 Stopping because service disabled. ]
    [ Jul 11 13:59:05 Executing stop method (:kill) ]
    [ Jul 11 13:59:15 Executing start method (“/usr/sbin/keyserv”) ]
    [ Jul 11 13:59:15 Method “start” exited with status 96 ]

      我在网络搜索了一下,问题好像是服务 network/nis/client被禁用了:

    root# svcadm enable network/nis/client
    root# svcs network/nis/client
    STATE          STIME    FMRI
    maintenance  11:04:44 svc:/network/nis/client:default
    root# cat network-nis-client:default.log
    [ Jul 11 13:59:05 Disabled. ]
    [ Jul 11 13:59:05 Rereading configuration. ]
    [ Jul 17 11:04:44 Enabled. ]
    [ Jul 17 11:04:44 Executing start method (”/lib/svc/method/yp”) ]
    /lib/svc/method/yp: domainname not set
    [ Jul 17 11:04:44 Method “start” exited with status 96 ]
    root#
    root#
    root#
    root# ls -l /etc/defaultdomain
    /etc/defaultdomain: No such file or directory
    root#
    root# cat > /etc/defaultdomain
    ww300.siemens.net
    ^D
    root#
    root#
    root# domainname `cat /etc/defaultdomain`
    root#
    root#
    root# # add your NIS server in /etc/hosts
    root# echo “163.242.239.20  PrimaryDNS PrimaryWINSserver” >> /etc/hosts
    root#
    root#
    root# ypinit -c

    In order for NIS to operate sucessfully, we have to construct a list of the
    NIS servers.  Please continue to add the names for YP servers in order of
    preference, one per line.  When you are done with the list, type a
    or a return on a line by itself.
            next host to add:  163.242.239.20
            next host to add:

    The current list of yp servers looks like this:

    163.242.239.20

    Is this correct?  [y/n: y]  y
    root#
    root# svcadm enable nis/client
    root# svcs  nis/client
    STATE          STIME    FMRI
    online        11:34:32 svc:/network/nis/client:default
    root#

       现在需要做的就是启动keyserv然后启动nfs服务器:

    root# svcadm clear svc:/network/rpc/keyserv:default
    root# svcs svc:/network/rpc/keyserv:default
    STATE          STIME    FMRI
    online        11:37:44 svc:/network/rpc/keyserv:default
    root#
    root#
    root# svcadm enable nfs/server
    root# svcs nfs/server
    STATE          STIME    FMRI
    online*      11:38:05 svc:/network/nfs/server:default
    root#
    root# svcs nfs/server
    STATE          STIME    FMRI
    disabled      11:38:11 svc:/network/nfs/server:default
    root#
    root# tail network-nfs-server:default.log
    [ Jul 17 11:38:05 Stopping because service disabled. ]
    [ Jul 17 11:38:05 Executing stop method (”/lib/svc/method/nfs-server stop 117?) ]
    [ Jul 17 11:38:10 Method “stop” exited with status 0 ]
    [ Jul 17 11:40:01 Enabled. ]
    [ Jul 17 11:40:01 Executing start method (”/lib/svc/method/nfs-server start”) ]
    No NFS filesystems are shared

      噢,没有共享文件系统,好,让我修正它:

    root# share /export/home/
    root# svcadm enable nfs/server
    root# svcs nfs/server
    STATE          STIME    FMRI
    online       11:45:07 svc:/network/nfs/server:default
    root#

      确保文件系统被正确地输出,通过运行dfshares或者showmount -e

    root# showmount -e localhost
    export list for localhost:
    /export/home (everyone)
    root#

      为了系统重起后共享命令有效,你必须把它们添加到/etc/dfs/dsftab文件中。现在NFS服务器设置好了。

    如果一个客户想使用它,就必须把它挂载上,在UNIX系统类似如下:

     root# mount server_name:/shared/filesystem /local_directory

      如果客户端是Windows,你就必须下载并安装 。更好的选择是使用一些

    第三方软件例如。

    -----------------------------------------------------------------------------------

    注意:先用下面的,不行再参考上面的。

    1)服务器上共享的目录必须是个分区

    2)将 /etc/dfs/dfstab 文件改成下面的模式
            share  -F nfs  -o rw=client-ip  -d "data"  /data

    或者

            share  -F nfs  -o root=client-ip  -d "data"  /data

    3)#/etc/init.d/nfs.server start

    4)#share

    5)test

    -----------

    意外umount或者掉电后的排错:
    #vi /var/adm/messages
    ...
    opensolaris ufs: [ID 699159 kern.warning] WARNING: Error accessing ufs log for /data; Please run fsck(1M)
    ...
    #fsck -y /dev/dsk/c7d1s2

    #mount test

    31.opensolaris 加硬盘
    1)连接硬盘后启动
    2)#format可以找到新硬盘,如下所示,可知1为新硬盘。
           0. c7d0
              /pci@0,0/pci-ide@7,1/ide@0/cmdk@0,0
           1. c7d1
              /pci@0,0/pci-ide@7,1/ide@0/cmdk@1,0
    3)在format里用fdisk分区即可,然后保存退出format.
    4)#newfs -Nv /dev/c7d1s2   预览建立UFS文件系统
       #newfs /dev/c7d1s2   建立UFS文件系统
    5)手工mount测试
    6)设置成开机自动mount
    #vi /etc/vfstab
    #device         device          mount           FS      fsck    mount   mount
    #to mount       to fsck         point           type    pass    at boot options
    ...
    /dev/dsk/c7d1s2    -            /data           ufs      -        yes      -
    ...
    7)reboot and test
    8)umount:
    如果当前文件系统正在被使用,可以查看并杀掉,或者用umount -f来强行卸载,但是会导致数据丢失。
    #fuser -c -k /export/home 使用fuser杀掉仍然互动于该文件系统的所有进程

    ------------------
    mkfs是根源
    newfs 就是 mkfs -t ufs
    ------------------

    意外umount或者掉电后的排错:
    #vi /var/adm/messages
    ...
    opensolaris ufs: [ID 699159 kern.warning] WARNING: Error accessing ufs log for /data; Please run fsck(1M)
    ...
    #fsck -y /dev/dsk/c7d1s2

    #mount test

    -----------------
    因为Solaris默认的是在系统重起的时候自动挂載所有的zfs文件系统的。有些人由于某些特别的需求,系统在系统重起的时候不自动挂载zfs文件系统。
    那么,你只需要把zpool.cache文件删除掉或者是改为别的名字,系统在重起的时候不会自动挂载zfs文件系统了。

    bash-3.00# cd /etc/zfs
    bash-3.00# mv zpool.cache zpool.cache-default        

    -----------------
    solaris系统配置文件
    /etc/bootparams                从网络客户机的配置文件
    /etc/cron.d/cron.allow
    /etc/cron.d/cron.deny        用于对crontab进行访问控制.        
    /etc/defaultdomain                NIS域名设置文件
    /etc/default/cron                对cron的log进行控制.
    /etc/default/login                对root用户远程登陆许可进行设置。
    /etc./default/su                SULOG及SYSLOG值可以控制su的日志,还有可以对其su后环境变量进行设置。

    /etc/dfs/dfstab                NFS共享的配置文件
    /etc/vfstab                关于本地及远程文件系统自动mount列表。
    /etc/inittab                init启动进程所需要的脚本文件,用于控制不同的启动级别。
    /etc/mnttab                当前系统中已mount的所有资源
    /etc/rmtab                当前已mount的远程文件系统文件列表。

    /etc/group                用户组配置文件。
    /etc/hostname.interface        网络接口名称文件,其IP在/etc/inet/hosts文件中设置。
    /etc/hosts.allow
    /etc/hosts.deny                主机远程访问控制文件。
    /etc/hosts.equiv                r系列命令访问控制文件。
    /etc/logindevperm                ttymon的配置文件主要用来控制设备的访问权限。
    /etc/magic                file命令所显示的文件类型数据库
    /etc/mail/aliases
    /etc/aliases                sendmail的邮件别名文件

    /etc/mail/sendmail.cf
    /etc/sendmail.cf                sendmail的控制文件
    /etc/minor_perm                使用drvconfig命令所许可的设备。
    /etc/name_to_major        当前配置的主设备号,被用于drvconfig命令
    /etc/netconfig                网络配置数据库,用于网络初始化。
    /etc/netgroup                定义主机和用户组。
    /etc/netmasks                定义默认子网掩码。
    /etc/nsswitch.conf                域名查找顺序配置文件。
    /etc/path_to_inst                用于配置物理设备树、物理设备名和实例名文件。
    /etc/protocols                协议配置文件
    /etc/remote                tip命令的属性文件。
    /etc/services                网络端口号列表文件。
    /etc/syslog.conf                syslogd 配置文件。
    /etc/system                内核配置文件。
    /var/adm/messages                主日志记录文件。
    /var/adm/sulog                默认的su命令记录文件。
    /var/adm/utmpx                用户和账号信息文件。
    /var/adm/wtmpx                用户登陆的账号信息文件。
    /var/local/etc/ftpaccess
    /var/local/etc/ftpconversions
    /var/local/etc/ftpusers        wu-ftpd 的配置文件。
    /var/lp/log                打印服务日志文件。
    /var/sadm/install/contents        软件包安装数据库文件
    /var/saf/_log                SAF的日志文件。
    ---------------------
    修复重要文件
    如果系统级别的重要文件被破坏,可能导致系统无法启动。此刻需要从光盘引导,然后查找原因并修复。
    1.放入光盘
    2.OK boot cdrom -s:从光盘启动
    3.#fsck /dev/rdsk/c0t0d0s2 :假设c0t0d0s2是根分区,检查它
    4.#mount /dev/rdsk/c0t0d0s2 /tmp/a:把c0t0d0s2挂接到/tmp/a目录上
    5.#TERM=sun;export TERM:设置终端设备。
    6.#vi /a/etc/vfstab:编辑文件系统挂接表
    7.#umount /tmp/a
    8.#init 6
    32.Solaris文件系统入门(一)---基本知识
    Solaris支持三种类型的文件系统:
        1.基于磁盘的文件系统,如硬盘,CD-ROM,DVD等。
          *usf:基于BSD快速文件系统的传统UNIX文件系统,是Solaris的默认文件系统。
          *hsfs:用于CD-ROM的只读文件系统。
          *pcfs:Windows/DOS中的FAT32文件系统。
          *udfs:DVD介质文件系统。

        2.分布式文件系统,基于网络的文件系统。
          *NFS:允许在多个用户之间通过网络中各种类型系统间共享文件。   
       
        3.虚拟文件系统,即伪文件系统。
          *Tmpfs:临时文件系统,使用本地内存进行读写的文件系统。
          *Swapfs:交换文件系统。
          *Fdfs:文件描述符文件系统。
          *Procfs:进程文件系统,驻留在内存中,表现为/proc目录。
          *Mntfs:已挂接文件系统。
          *Objfs:内核对象文件系统。
          *Devfs:设备文件系统,使用/devices目录。

    Solaris文件系统类型一般为UFS(UNIX文件系统),其他文件系统类型也可以定义在/etc/default/fs中。一个UFS文件系统的组成包括如下几个部分:
        1.引导块,如果文件系统可引导,则引导块中包含引导数据。
        2.超级块,其中包含inode的位置,文件系统的大小,块的数量以及状态。
        3.inode,其中保存了文件系统中的文件的细节。
        4.数据块,其中保存文件内容。

    创建UFS文件系统 

        创建一个新的UFS文件系统,我们要先将磁盘划分为不同的分区,然后再使用newfs命令在这些分区上创建新的文件系统,最后将这些文件系统安装到根目录中。

    #newfs[-N][-b size][-i bytes]/dev/rdsk/device-name
    -N:显示newfs命令的参数信息
    -b:逻辑块的大小,4096或8192,默认8192
    -i:一个文件系统每多少空间分配一个inode,决定了inode的数量。
    device-name:新的文件系统的磁盘设备名。

    例子:在分区c1t1d1s1上创建新的文件系统。
    #newfs /dev/rdsk/c1t1d1s1
    这个命令等价于:
    (#mkfs -F ufs /dev/rdsk/c1t1d1s1)
    #df -k   -----查看创建后的信息。

    另外,在用newfs命令时候会保留1%-10%的文件系统空间作为文件系统维护使用
    我们可以调整保留空间的比例,例如增加3个百分点

    #tunefs -m 4 /dev/rdsk/c1t1d1s1
    #df -k |grep c1t1d1s1   ---验证是否生效

    备注:df这个命令用来监视磁盘使用情况,后面可以带很多参数

    ------------------------
    ZFS文件系统是一个划时代的文件系统,OpenSolaris的默认文件系统就是ZFS。
    基于ZFS,利用OpenSolaris的beadm命令可以产生和管理多个zfs boot environments
    33./etc/inetd.conf文件
    # cat /etc/inet/inetd.conf
    ftp stream tcp nowait root /usr/sbin/in.ftpd in.ftpd
    telnet stream tcp nowait root /usr/sbin/in.telnetd in.telnetd
    login stream tcp nowait root /usr/sbin/in.rlogind in.rlogind
    talk dgram udp wait root /usr/sbin/in.talkd in.talkd
    ...
    UNIX并不是让每种服务的守护进程都在自己的端口上等待请求,而是将代表各个服务守护进程等待请求的任务交给一个叫inetd的服务进程。这样就可以大
    大减少对系统资源的占用。只有当超级服务进程发现一个服务请求时,它才调用该服务的守护进程。/etc/inetd.conf配置文件允许inetd在启
    动时决定自己将代表哪些服务等待服务请求。如果一种服务的守护进程没有包含在inetd.conf文件中,那么当inetd接收到该服务的请求时,会把该
    请求丢弃。
    文件的字段:
    service_name 这是文件/etc/services中列出的服务的标志符。
    socket_type 用来标志使用的数据传输服务的类型。
    proto 标识传输协议的名字。是UPD和TCP
    flags 可以被设为"等待"和"非等待"。如果被设为"等待" 状态,inetd在恢复监听端口上的其他请求时,必须等待服
    务协议释放将其连接到网络的连接。"非等待"可以使 inetd立即监听其他的请求。大多数TCP协议的采用"非等
    待"方式,而UDP采用"等待"方式。
    user 表示调用服务的用户名。
    server_pathname 表示inetd在响应相关服务请求时必须调用的 服务程序的完整路径名。
    Args 该域包括服务的程序所使用的命令行参数。即以程序名开 始,然后跟随用户设置的参数
    34.忘记solarsi的root口令怎么办?               
    方法一:
    1.别怕 ,跟我来.
    2.把你的solaris光盘放进cdrom
    3.键入stop+a
    4.当出现'ok'字样时,键入boot cdrom -s
    5.cd /tmp
    6.mkdir /tmp/xxx (xxx是什么鬼东西就无关紧要了)
    7.mount /dev/dsk/c0t0d0s0 /tmp/xxx (在这里c0t0d0s0是你的root盘)
    8.运行csh
    9.TERM=sun;export TERM或者
    setenv TERM vt220
    10.cp /tmp/root/xxx/shadow /tmp/root/xxx/shadow/shadow.backup
    11.vi /tmp/root/xxx/shadow并且将password里root项删除。
    12.重启动,你就可以以无密码的root登陆了,这时更改你的密码。
    要是没有shadow,就把/etc/passwd里root用户名后面的X删掉,就可以了
    方法二:
    找一台有系统的solaris机器,把忘记密码的系统放进去mount上来,重复方法一10以后的步骤.
    solaris for x86的机器:
    用光盘启动到要你安装的时候退出去就成单用户,剩下的操作如上。
    35.
    rc2.d: 多用户模式,启动网络工作站服务。 (最后会启动dtlogin允许图形界面工作站)

    rc2.d目录下:
    S20sysetup  设置系统初始参数 设置hostname等
    S47pppd - 启动拨号访问服务器进程 串行线拨号访问服务器
    S72autoinstall = 启动自动安装守护进程 当放入sun兼容的媒体介质时,会自动启动安装脚本
    S73cachefs.daemon - 启动cachefsd NFS缓存服务,可以提高NFS吞吐率

    ---------->>http://blog.chinaunix.net/u2/83758/showart_2001935.html
    ------------>>
    36.opensolaris200906+ipfilter防火墙
    1)注意:opensolaris200906安装后只显示ipfilter,不显示pfil.如下:
    # svcs -a|grep network|egrep "ipf|pfil"
    online         16:12:22 svc:/network/ipfilter:default
    2)要过滤的网络通信流量的设备名称,指定自己的网卡
    #vi /etc/ipf/pfil.ap
    pcn -1 0 pfil
    3)编辑防火墙规则:即允许本服务器所有外出,允许固定IP10.0.0.22访问22口,对外开放80口,关闭其他进入。
    #vi /etc/ipf/ipf.conf
    pass out log on pcn0 proto tcp/udp from any to any keep state
    pass out log on pcn0 proto icmp all keep state
    pass in log quick on pcn0 proto icmp from any to 10.0.0.233/32 keep state
    pass in log quick on pcn0 proto tcp from 10.0.0.29 to 10.0.0.233 port=22
    pass in log quick on pcn0 proto tcp from any to 10.0.0.233 port=80
    block in all
    4)
    #ipf -Fa -f /etc/ipf/ipf.conf
       #ipfstat -io
       #ipfstat
       #ipmon

      启动 #svcadm enable svc:/network/ipfilter:default
      重启 #svcadm restart svc:/network/ipfilter:default
    5)查看规则 #ipfstat -io
      查看汇总 #ipfstat
    6)规则语法:
    禁止就是block
    通过就是pass
    进来就是in
    出去就是out
    在哪个网卡上on pcn0
    匹配所有all
    匹配协议proto (icmp、tcp、udp、tcp/udp) 共4种
       icmp-type关键字来指定ICMP协议的类型,类型的值有4种:
       ICMP                     Type               Value Keyword
       Echo reply                 0                  echorep
       Echo request               8                  echo
       Router advertisement       9                 routerad
       Router solicitation       10                 routersol
    quick关键字
       quick的作用是当包符合这条规则以后,就不再向下进行遍历了。如果没有quick的情况下,每一个包都要遍历整个规则表,这样的开销是十分大的。

    7)接上文solaris10+ipfilter-NAT
      前提:双网卡 pcn0 10.0.0.233
                    pcn1 192.168.200.200
       #vi /etc/ipf/nat.conf
          rdr pcn0 172.18.127.233/32 port 80 -> 192.168.200.200 port 80  --->内网端口转发到外网
          map pcn0 192.168.200.0/24 -> 172.18.127.233/32         ---〉内网上网
       #ipnat -f /etc/ipf/nat.conf  --->加载规则
       #ipnat -l  --->查看
       #ipnat -F  --->|
       #ipnat -C  --->|-->清空
     




    补充:
    1)批量替换规则
    # ipf -Fa -f /etc/ipf/ipf.conf2
    ipf.conf活动规则集将从内核中删除,ipf.conf2文件中的规则将成为活动规则集.
    2)动态替换规则
    以下示例显示如何从命令行将规则添加到活动的包过滤规则集。
        # ipfstat -io
         pass in log quick on pcn0 proto tcp from 10.0.0.29 to 0.0.0.233 port=22
         pass in log quick on pcn0 proto tcp from any to 10.0.0.233 port=80
         block in all
        # echo "pass out log on pcn0 proto tcp/udp from any to any keep state" | ipf -f -
        # echo "pass out log on pcn0 proto icmp all keep state" | ipf -f -
        # ipfstat -io
        pass out log on pcn0 proto tcp/udp from any to any keep state
        pass out log on pcn0 proto icmp all keep state
        pass in log quick on pcn0 proto tcp from 10.0.0.29 to 0.0.0.233 port=22
        pass in log quick on pcn0 proto tcp from any to 10.0.0.233 port=80
        block in all
    当然,重启就没了。
    --------------------
    37 pkg-get的安装和使用
        opensolaris系统内,很多软件工具都没有被安装,pkg-get工具是在solaris系统下下载及安装免费软件的非常方便的工具,很多软件我们都可以通过pkg-get这个工具直接在本地安装。下面的内容就是介绍如何下载安装pkg-get工具,以及如何使用它。

    1, 下载pkg_get.pkg安装包

           下载地址:

    2,在文件所在目录下打开终端,切换到root用户,输入安装命令。

    Tonsen@opensolaris:~$ su
    Password:

    Tonsen@opensolaris:~#pkgadd -d pkg_get.pkg

    The following packages are available:
      1  CSWpkgget     pkg_get - CSW version of automated package download tool
                       (all) 3.8.4
    ----------------------------显示这个软件包里包含的软件
    Select package(s) you wish to process (or 'all' to process
    all packages). (default: all) [?,??,q]: all

    ----------------------------后面还会出现一些选择信息,全部选择默认值即可。

    3,安装完成后,进入/opt/csw/etc文件夹

    Tonsen@opensolaris:~#ls /opt/csw/etc
    pkg-get.conf  pkg-get.conf.csw

    --------------------打开pkg-get.conf文件,将里面的URL镜像根据自己的网络情况更改。
    # default site, in USA:
    url=  
    --------------------这是默认值,(unstable)代表最新版本,可能不稳定。可以改为(stable)代表已经试运行一段时间,相对稳定。

    --------------------进入网站,选择自己合适的镜像进行更改。

    4,更改下载目录,打开/opt/csw/etc/pkg-get.conf文件。
    # pkg-get now defaults to downloading to /var/pkg-get/downloads
    # If you'd like it somewhere else, change it here
    # PKGGET_DOWNLOAD_DIR=/some/large/dir/pkg-get        --------将这一行的注释去掉,并写入自己希望的下载目录。

    5,查看可下载的软件。

    Tonsen@opensolaris:/opt/csw/bin# /opt/csw/bin/pkg-get -c
                ant             [Not installed]        1.7.0,REV=2007.09.17
             antdoc             [Not installed]                       1.7.0
           antiword             [Not installed]                        0.33
         ap2_mod_jk             [Not installed]       1.2.25,REV=2007.10.25
      ap2_modapreq2             [Not installed]         2.08,REV=2007.10.25
     ap2_modevasive             [Not installed]       1.10.1,REV=2007.10.25
     ap2_modfastcgi             [Not installed]        2.4.2,REV=2007.10.25
        ap2_modperl             [Not installed]        2.0.3,REV=2007.10.25
        ap2_modphp5             [Not installed]        5.2.4,REV=2007.10.29
      ap2_modpython             [Not installed]        3.3.1,REV=2007.10.25
        ap2_prefork             [Not installed]        2.2.6,REV=2007.10.25
     ap2_subversion             [Not installed]        1.4.5,REV=2007.11.18
         ap2_suexec             [Not installed]        2.2.6,REV=2007.10.25
         ap2_worker             [Not installed]        2.2.6,REV=2007.12.05
             apache             [Not installed]       1.3.37,REV=2007.09.02
            apache2             [Not installed]        2.2.6,REV=2007.10.25
      apache2_devel             [Not installed]        2.2.6,REV=2007.10.25
     apache2_manual             [Not installed]        2.2.6,REV=2007.10.25
           apache2c             [Not installed]        2.2.6,REV=2007.11.02
          apache2rt             [Not installed]        2.2.6,REV=2007.10.25
                apg             [Not installed]                       2.2.3
                arc             [Not installed]                        5.21
        archivemail             [Not installed]        0.6.1,REV=2004.06.27


    6,其他功能介绍:
    pkg-get

      '-i|install'   installs a package                                -----安装一个软件包
      '-u|upgrade'   upgrades already installed packages if possible   -----升级已安装的软件包
      '-a|available' lists the available packages in the catalog       -----查看所有列表中的软件包信息
      '-c|compare'   shows installed package versions vs available     -----查看可下载的软件信息,及其本地的安装状态
      '-l|list'      shows installed packages by software name only    -----只显示已安装软件的名字

    Optional modifiers:
      '-d|download'  just download the package, not install            -----只下载软件,不进行安装
      '-D|describe'  describe available packages, or search for one    -----查看软件描述信息,或者搜索某一软件
      '-U|updatecatalog'   updates download site inventory             -----更新下载目录
      '-S|sync'      Makes update mode sync to version on mirror site  -----在镜像网站上,使升级模式与新版本同步
      '-f'           dont ask any questions: force default pkgadd behaviour    -----强制执行默认选项
                     Normally used with an override admin file
                     See /var/pkg-get/admin-fullauto

      '-s ftp://site/dir'  temporarily override site to get from        -----暂时使用其他网站进行下载

    7,我们试试吧,先装个gftp体验一下。

    Tonsen@opensolaris:/# /opt/csw/bin/pkg-get -i gftp



    参考:
    ---------------------------

    realtek 8168+solaris10:

    google get gani-2.6.4.tar.gz
    # gunzip -cd gani-x.x.x.tar.gz | tar xf -
    #chown -R root:root gani-2.6.4
    # cd /.../gani-x.x.x
    #/usr/ccs/bin/make install
    # ./adddrv.sh
    # modload obj/gani
    # devfsadm -i gani
    #ifconfig gani0 plumb
    #ifconfig gani0 up

    # ifconfig hme0 inet 192.168.2.3 netmask 255.255.255.0 up  --添加ip、子网掩码

    # vi /etc/defaultrouter   添加默认路由的ip

    # vi /etc/hosts  添加主机名

    # vi /etc/netmasks 添加子网掩码

    # vi /etc/hostname.hme0   添加主机名

    # vi /etc/nodename        添加主机名

    # vi /etc/resolv.conf     

       domain china.com          你的域名

       nameserver 202.106.0.20   你使用的nds ip

    # vi /etc/nsswitch.conf     

    更改 hosts:file dns

    #svcadm restart svc:/network/physical:default

    38.solaris10u8+dhcp server:
      1).简单直观地图形配置
        /usr/sadm/admin/bin/dhcpmgr
      2).命令行
        #dhcpconfig
    39: solaris10u8+mail:
    基本发信:echo "test" | mailx -s "subject" mail_list
    发附件:uuencode aaa.txt abc.txt | mailx -s "subject" mail_list
    阅读(5232) | 评论(0) | 转发(0) |
    0

    上一篇:debian-01

    下一篇:(szx)ubuntu9.04

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