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状态 (需要SUN的PROM芯片支持)
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
相当于linux下ps –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:~$ suPassword: Tonsen@opensolaris:~#pkgadd -d pkg_get.pkgThe 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 processall packages). (default: all) [?,??,q]: all----------------------------后面还会出现一些选择信息,全部选择默认值即可。3,安装完成后,进入/opt/csw/etc文件夹Tonsen@opensolaris:~#ls /opt/csw/etcpkg-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.276,其他功能介绍: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