免费注册 查看新帖 |

Chinaunix

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

solaris常见命令包含注释 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-04-16 08:21 |只看该作者 |倒序浏览

solaris常见命令包含注释(收集)
差别概览(click)
命令区别(click)
安装区别(本贴)
软件管理(本贴)
系统管理(click)
设备管理(click)
安全和加固(click)
监视和性能(click)
备份恢复
故障诊断

1.默认shell
solaris的默认shell是Bourne shell,名为/bin/sh
2.文件系统
标准的solaris文件系统格式是UFS,还可以使用VxFS,QFS,从Solaris 10 u2版开始,还可以使用ZFS。
3.文件系统目录布局
而Solaris的/proc目录仅包含进程信息,不能从/proc目录获取系统信息或调整内核变量,但Solaris使用/platform目录,这个目录包含平台特定的信息和应用,Linux没有与Solaris的/platform对应的目录。
3.命令
为了保持对System V,BSD,GNU软件的兼容性,除了常规的/bin(/usr/bin)和/sbin(/usr/sbin)目录外,Solaris还使用了一些扩展的命令目录,这些目录如下所示:
/usr/openwin
/bin/usr/dt/bin
/usr/sfw/bin
/opt/sfw/bin
usr/xpg4/bin
usr/ccs/bin
/usr/ucb
其中:
/usr/bin 标准的System V命令
/usr/ucb 传统的BSD命令
有些命令在这两个目录中都有,但用法可能不同,比如
          basename      df             du        echo         expr        fastboot
          fasthalt      file            from      groups       install     ld
          lint          ln             lpc       lpq          lpr         lprm
          lptest        ls             mkstr     printenv     ps          rusage
          sed           shutdown       stty      sum          test        touch
          tr            tset           users     vipw         whereis     whoami
免费软件的部署Linux和Solaris相同,这些GNU的命令在Solaris中通常都以g字母开头,比如gtar
System V和BSD中有两个目录包含免费软件:/usr/sfw/bin和/opt/sfw/bin。前者包含从安装介质中安装的免费软件,后者则是从配套CD中安装的软件。
随着Solaris版本的更新,有可能会把配套CD上的软件放入Solaris安装介质中,因此需要注意在旧版本上的/opt/sfw/bin目录中的命令可能会被移植到/usr/sfw/bin中。凡是在/usr/sfw/bin中的软件,表示能够通过Sun的标准支持通道获得完全技术支持,而/opt/sfw/bin中的软件则通常是由开源软件组织获得技术支持。
4.网络配置文件
/etc/inet/ntp.conf
/etc/inet/inetd.conf
/etc/hostname.
/etc/nodename and /etc/defaultrouter
/etc/networks -> /etc//inet/networks
5.文件系统配置文件
/etc/vfstab
/etc/dfs/dfstab (format is different)
/etc/auto_master
/etc/auto_home
6.mail
/etc/mail/aliases
/etc/mail/Mail.rc
/etc/mail/mailx.rc
7.日志文件
/var/log目录存放syslog和authlog的日志文件,而/var/adm目录则存放消息日志文件,
缺省配置时,solaris的/var/adm/messages文件(redhat对应的文件为/var/log/messages)包含所有的日志记录(可通过修改syslog.conf文件为不同的日志指定不同的消息记录文件)。
8.脚本移植
首先确定脚本中所使用的所有文件和路径在Solaris中均有效
确定所有的选项和参数是否有变化
命令的执行输出是否有区别
9查看帮助信息
10.Solaris的命令,除非是GNU版本的以外,通常都没有长格式。
Linux命令可使用"--help"查看简要帮助,Solaris部分新命令可使用"-?"达到同样的效果,比如pkginfo -?
11.
awk
/usr/bin/awk 标准的System V版本的awk
/usr/bin/nawk 新版的System V awk,比前者多了许多扩展特性
/usr/xpg4/bin/awk XPG4的awk.当从Linux移植脚本到Solaris时,可使用XPG4 awk。
/opt/sfw/bin/gawk GNU awk.配套CD上的awk.和其他版本相比,gawk和Linux的awk的兼容性最高。Solaris 10配套CD中的GNU awk版本为3.0.6
basename
Solaris提供两个basename命令:
/usr/ucb/bin/basename和Linux版本的basename命令相同
/usr/bin/basename的功能更强,可以通过表达式模型匹配后缀
cat
chown
Solaris提供了两个版本的chown命令,/usr/bin/chown和/usr/ucb/chown
/usr/ucb/chown只支持两个选项:-f和-R
/usr/bin/chown除了-f和-R外,还支持-h,-H,-L,-P这些扩展选项(要和基本选项-f,-R一起使用).
除非使用-h,-P选项,否则符号链接自身的拥有者不会改变
chown -R solaris lncht     仅改变目标目录cht的所有者,符号链接自身不会改变,不会遍历符号链接的目标目录
# chown -Rh solaris lncht   与仅使用-R相比,-Rh把符号链接lncht自身的所有者也改了,其他相同
df
Solaris支持df命令的多种实现方式,比如
/usr/ucb/df  可使用-v选项,-v选项除了大小以(每个文件系统所支持的最小的)块的为单位显示外其他都和df -k相同。
/usr/xpg4/bin/df  可使用附加的-P标记,大小以512字节为单位,其他与-k选项相同。
du
Solaris的-H选项这是表示处理符号链接所指向的实际目标文件,类似于Linux du的-L
ps
Solaris的/usr/ucb/ps是BSD风格的命令
setfacl
/usr/bin/setfacl用来管理文件的访问控制列表。两个系统上的这个命令的语法和选项不同。
getfacl
/usr/bin/getfacl用来查看文件的访问控制列表。虽然Linux和Solaris的getfacl命令的功能相同且输出格式也很类似,但它们的可用选项有区别。solaris的getfacl命令不支持长格式选项。
tar
Linux的tar命令是GNU tar,Solaris的tar是System V版本.
solaris的tar不支持使用外部压缩程序,因此没有-Z,-z,-j这些压缩选项
Solaris的GNU tar命令为/usr/sfw/bin/gtar,安装包为SUNWgtar
如果脚本中有使用tar命令,在移植时有两种方法
重新编辑tar命令的用法,采用等价的tar选项,或者使用管道符把结果传递给压缩或解压程序。
如果solaris安装了SUNWgtar,则可以在脚本中使用gtar来代替tar.
useradd
Solaris版的useradd有额外的选项以支持RBAC。外一个明显的区别是-p选项。
Solaris中-p选项用来指定账号所属的项目(project),指定账号所开启的所有进程将都属于这个项目.
groupadd
使用介质安装
solaris的典型安装步骤包括
从介质启动
输入系统配置参数
选择软件包
硬盘分区
网络安装
Solaris的网络安装程序叫做JumpStart,需要搭建JumpStart服务器,在JumpStart服务器上配置客户机的MAC地址,以及指定与之对应的IP地址,提供客户机的启动引导服务,并通过NFS共享提供安装介质,然后实现网络安装。Solaris支持跨网段进行网络安装,但需要提供一台dhcp服务器,并做适当配置
Flash Archive
Solaris还提供了一种克隆安装机制,把现有模版系统制作成归档文件(叫做 Flash Archive),然后可在JumpStart或标准安装程序中使用归档文件,达到克隆安装的目的,但源系统和目标系统的硬件架构必须一致,比如你不能用一台sun4u架构的solaris系统制作好Flash Archive,然后在sun4m架构的机器上安装solaris时使用这个来自sum4u的flash归档文件。
Live upgrade
Live upgrade可以创建一个现有工作环境的备用版,然后在备用版中进行更新、升级等操作,而不会影响现有的工作环境。等升级操作完成后,再重新启动,使用备用版作为新的工作环境。
使用Live upgrade可减少由于升级而导致的应用停止或宕机时间,而且一旦发现升级导致故障也可以很容易就回退到升级前的工作环境。
查看系统版本(new~)
查看内核64位还是32位
solaris#isvinfo -b        ----------- or isainfo -kv   显示的信息更多些
查看操作系统发布号
通用:uname -a
solaris#cat /etc/release
软件包管理
solaris使用System V软件包,添加为pkgadd命令,删除为pkgrm命令,查看用pkginfo。但solaris也可以支持rpm命令。
补丁包管理
Solaris使用patchadd添加补丁,patchrm卸除补丁。补丁可从
http://sunsolve.sun.colm
获得,有些补丁需要有sun的技术支持服务才能下载,关键性的补丁通常都是免费提供。每个补丁包中都包含有应用此补丁以及回退的时需要做的变动的内容,因此可以回退。
更新
solaris有两个独立的命令管理升级操作
GUI工具updatemanager
命令行工具smpatch
两个命令都可以实现对升级的管理
启动关闭和运行级别
直到Solaris 9为止,solaris的启动步骤和Linux几乎没什么区别。二者都提供了运行级别(run level)的概念,每个运行级别都定义了哪些服务被启动和停止。都使用init命令在不同的运行级别间进行切换。
Solaris 10之前的版本   
0 halt
1,s,S 单用户 single-user(Solaris 10)
2 多用户(无网络服务) multi-user(Solaris 10)
3 多用户(带网络服务,默认级别) multi-user-server(Solaris 10)
4 保留,未使用
5 关闭系统
6 重启
Solaris 10引入了SMF功能,运行级别被里程碑(milestone)所代替
sysconfig
devices
single-user
network
name-services
multi-user
multi-user-server
solaris还提供了另外两个命令,可改变系统的当前运行状态:
reboot重启系统
halt停止系统的运行
但需注意的是,这些命令执行时,系统不会执行正常的关闭操作,不会停止服务,仅对进程进行简单的杀掉操作,卸除文件系统然后重启或停机。建议使用init命令或shutdown命令(两个系统的shutdown命令用法略有区别),而不是reboot or halt。
Solaris的shutdown命令:shutdown  [-y]   [-i init_level]   [-g minutes]  [messages]
shutdown -y -g 10 -i 5              10分钟后执行关机操作(init 5)
solaris的shutdown命令可以切换到任一运行级别
shutdown会在执行shutdown前 7200, 3600, 1800, 1200, 600, 300, 120, 60,30秒时重复发送消息给所有登进系统的用户
服务的起停
solaris 10中,由于SMF的存在,那些由SMF自动启动的系统服务,简单的kill操作对其无效。必须使用svcadm命令来禁用或启用这些服务。
如果要修改那些受inetd管理的服务,需要编辑/etc/inet/inetd.conf,
然后执行inetconv命令在SMF中创建相应的服务条目,从而把这些服务转换成接受SMF管理。
在solaris 10中,这类服务可以通过svcadm or inetadm命令进行管理
几种起停方式
GUI的"系统设置"-->"服务器设置" ,CLI的# ntsysv
# service service-name stop|restart
# /sbin/chkconfig--level 345 service-name on|off
常见的服务名:network,iptables,httpd,vsftpd...
/etc/inittab 由init控制,但solaris 10不推荐使用
/etc/rc?.d,/etc/init.d
/etc/inetd.conf 由inetd控制,Solaris 10中使用inetadm or SMF进行管理
SMF 仅Solaris 10使用
用户/组管理
Solaris没有默认的账号属性配置文件(但一些默认属性还是存在的),可以使用useradd -D命令生成
当第一次运行useradd -D时,会生成一个,/usr/sadm/defadduser文件。所有的缺省参数均保存在这个文件中。以后修改useradd命令的缺省参数只要修改这个文件即可。
# useradd -D
group=other,1   project=default,3  basedir=/home
skel=/etc/skel  shell=/bin/sh      inactive=0
expire=   auths=   profiles=   roles=   limitpriv=
defaultpriv=  lock_after_retries=
solaris不会自动创建用户家目录,必须在命令行中指定家目录并使用-m选项才会自动创建
useradd -d home_directory -m username
Solaris扩展了useradd,groupadd命令,可配置和RBAC有关的属性,可参见《差异概述(click)》
Solaris还提供了smuser,smgroup命令,可对名称服务器(比如NIS)上的账号和组进行管理。这两个命令是SMC(Solaris管理控制台)的一部分。SMC是solaris提供的图形化管理控制台,用来处理各种系统管理操作。运行smc命令将提供一个图形化的控制台界面,能够管理用户账号和组。
打印和打印机管理
Solaris 10之前的版本采用的是System V的打印服务。
system V的打印系统使用以下相关命令进行打印作业的管理
lpadmin   修改打印系统参数
lpsched   启动打印服务器(/usr/lib/lp/lpsched)
lpshut      停止打印服务器
cancel     取消打印作业
lpmove   把打印作业转移到另外一个打印机
lp           提交一个打印作业
lpstart    查看打印机或打印作业的状态
打印系统的配置保存在以下几个位置
/etc/printers.conf文件
NIS配置数据库库中的打印机地图文件
$HOME/.printers
$PRINTER and $LPDEST 环境变量
Solaris 10中可运行printmgr命令进入图形化的打印机配置界面
printmgr命令位于/usr/sadm/admin/bin/printmgr,/usr/sbin/printmgr仅是一个符号链接
这个GUI界面类似于GNOME的打印机管理命令gnome-cups-manager(绝大部分Linux系统中都有这个命令).
1.创建文件系统
Solaris使用newfs or mkfs -F fs_type创建文件系统,默认为ufs.
newfs /dev/rdsk/c0t2d0s3           在0号控制器的第三个SCSI硬盘的第3个分片创建ufs文件系统
mkfs -F ufs /dev/rdsk/c0t2d0s3   含义同上
2.挂接文件系统(mount)
solaris的Mount位于/usr/sbin目录,使用-F FSType来指定文件系统类型.eg. mount -F type ...
# mount -o ro /dev/rdsk/c0t1d0s0 /mnt/data
# mount -o remount,rw /mnt/data
3.查看挂接列表
Linux和solaris都可以运行不带选项的mount命令查看.还可以通过以下方式查看
Linux# cat  /etc/mtab     or    cat /proc/mounts
4.Linux支持的文件系统
.Solaris能够支持许多种的文件系统类型。
能支持绝大多数存储介质比如CD,DVD,硬盘,软盘,U盘以及基于网络的文件系统协议。
Solairs还为不同的文件系统提供接口功能,把一些内核信息输出成文件以便用户查看,比如/etc/mnttab.
除了自身提供的文件系统支持外,还支持第三方软件厂商的文件系统,比如Veritas的vxfs文件系统。
autofs
cachefs
ctfs
devfs
fd
hsfs
lofs
mntfs
nfs
objfs
pcfs
proc
qfs
sam-fs
tmpfs
udfs
ufs
volfs
xmemfs
环回设备
Solaris不能直接把映像文件直接挂接,需要使用lofiadm创建一个回环设备,然后再进行挂接。
比如以下命令将创建一个回环设备/dev/lofi/X:
lofiadm -a /path/to/disk/image
然后把新创建的回环设备挂接
mount -F FSType /dev/lofi/X /mountpoint
文件系统的类型必须根据映像文件的类型指定,比如如果映像文件是CD的ISO映像,则文件系统类型为hsfs
文件系统配额
Solaris独有的命令quot命令,查看solaris系统中每个用户的配额使用情况.
其他命令如edquota,quota,quotaon,quotaoff,quotacheck,repquota则是两个系统共有,但选项和行为稍有不同。
Solaris在/etc/vfstab(关键是红字的rq表示开启配额)
/dev/dsk/c1t0d0s3    /dev/rdsk/c1t0d0s3   /mnt/udata     ufs     2     yes      rq
# mount /mnt/udata
创建配额控制文件
# touch /mnt/udata/quotas
# chmod 600 /mnt/udata/quotas
开启配额功能(都使用quotaon命令,关闭都使用quotaoff命令)
Solaris# quotaon /mnt/udata
设置用户的配额
Redhat 9 Linux和Solaris都使用edquota命令
[root@redhat root]# edquota -u usertest
    Disk quotas for user usertest(uid 500):
      Filesystem                   blocks       soft       hard     inodes     soft     hard
      /dev/sdb1                         0      10000      12000          0    10000    12000
设置文件系统配额的期限控制
Redhat 9 Linux和Solaris都使用edquota -t命令
                [root@redhat root]# edquota -t
                   Filesystem             Block grace period     Inode grace period
                      /dev/hdc1                     7days                  7days
查看用户的配额使用情况
Redhat 9 Linux和Solaris都使用quota和repquota命令
磁盘和卷管理
当新硬盘插入机器时
如果可以识别,Linux会自动识别并使用新硬盘。
而solaris即使可识别新硬盘,也必须运行devfsadm命令才可以使用新硬盘
磁盘管理
solaris中与磁盘管理有关的命令主要有format和fdisk。fdisk(x86版的solaris才有)用来创建磁盘分区。
format>fdisk  or fdisk /dev/rdsk/c0t0d0s2
solaris x86 fdisk的指令使用和windows or dos的fdisk完全一样
Solaris 仅使用单个分区(solaris 10 6/06之前的版本分区类型仅能为0x82),然后在分区内通过Sun磁盘标签(disk label)把分区进一步划分成分片,分片操作由format命令的partition指令完成。
自Solaris 10 6/06发布版开始,不再仅仅支持类型0x82,而是使用了一种新的类型0xbf(Solaris2 type),但依然可以识别旧的0x82(Solaris type),但默认采用solaris2类型(x86版本可通过fdisk工具把solaris2改成solaris分区)。一些旧的非Solaris的分区软件可能还无法识别这种新的分区0xbf.
format命令用来把solaris的fdisk分区(x86系统)或者整个磁盘(sparc系统)划分成片(slice)。执行format命令时,solaris系统能认到的硬盘都会被列出,然后选定一个,使用partition指令进行划片操作
Solaris使用元设备(metadevice)的概念进行卷管理,管理软件叫做SVM(solaris volume manager),所有的相关管理命令为meta*
网络配置
ifconfig命令的区别
Redhat 9 Linux新增网卡不用运行ifconfig plumb命令可直接配置
solaris新增的顽抗需先ifconfig interface plumb
通用网络配置命令
ifconfig  配置网络接口(配置ip地址,掩码等,Solaris需装配/卸除(plumb/unplumb)网卡才能执行其他操作)
route     配置路由条目
netstat   查看网络配置和网络连接状态信息
ndd       查看或设置核心驱动的配置参数
Solaris的网络相关配置文件
/etc/hostname.[interface_name]  比如hostname.hme0,hostname.e1000g0,每个网卡一个配置文件,仅用于配置网卡的IP地址
/etc/nodename                      系统的主机名
/etc/defaultrouter                   默认路由器(缺省网关)的地址
/etc/hosts                              IP地址和主机名的对应表
/etc/netmasks                        配置各种网络使用的默认掩码
/etc/networks                        为网络配置易记忆的名字(可视为网络和网络名的对应表)
/etc/dhcp.[interface_name]    网卡使用DHCP时,存放所获得的DHCP参数的配置文件
/etc/resolv.conf                     DNS客户端的配置文件,配置DNS服务的IP地址,本机所属域,搜索域等
/etc/nsswitch.conf                 名称服务选择文件,指定系统对各种不同的网络信息进行查询时分别使用哪些名称服务以及优先顺序。
当修改完网卡配置文件和网关配置后,可用以下命令让其立即生效:
solaris# svcadm restart network/physical
redhat# service network restart
远程管理
Solaris 10使用SMF
内置telnet和ssh,默认处于启用状态。
它保持了和传统的inetd运行机制的兼容性,但推荐采用以下操作:
可通过SMF的svcadm or inetadm命令禁用telnet,ssh等服务
自带tcp_wrapper功能,用inetadm or svccfg开启tcp_wrapper
此外还可以使用GUI界面的smc来管理远程Solaris主机
关于tcp_wrapper
所有的支持tcp_wrapper的系统都可以支持/etc/hosts.allow和hosts.deny文件
语法:daemon_list : client_list [ : shell_command ]
hosts.deny的配置示例:in.telnetd: ALL EXCEPT LOCAL
Solaris的相关日志/var/adm/messages
Redhat的相关日志/var/log/secure
内核管理
Solaris系统中,
可能需要修改/etc/system文件,加载内核模块,运行各种实用工具诸如ndd,DTrace or adb之类
/etc/system是核心参数配置文件,在系统启动时由内核加载,这个文件中的设置会影响内核的行为,包括:
分页(paging)
交换(swapping)
进程大小(process sizing)
文件系统刷新(file system flushing)
核心内存分配
作业调度
TCP/IP参数
等等....
也可以强制系统在启动时加载指定的模块或设备驱动程序,传递给设备驱动程序模块的参数也可以在/etc/system文件中设定。由于/etc/system文件仅在启动时读取一次,因此对这个文件所作的任何修改都必须重启后才能生效。
加载核心模块
内核模块(kernel module)是包含核心代码的二进制文件。内容通常包括:设备驱动程序、文件系统、系统调用,一些核心层的其他功能。
些模块有可能在OS运行期间进行加载和卸除操作。通过加载模块可修改核心功能。比如可通过加载一个(实现新文件系统)的核心模块来支持一种新的文件系统。
Solaris中与核心模块操作有关的命令
modload 加载核心模块的命令。
modunload从当前正在运行的内核移除一个核心模块
modinfo 查看系统当前加载了哪些模块
内核调整命令
有些参数可通过命令进行调整,比如ndd,可修改网络接口的行为。使用ndd可以改变网络接口的配置,比如全双工或半双工;还可以改变Solaris实现TCP/IP协议栈的方式。
adb和dtrace工具可以在系统运行时直接修改内核参数(不像/etc/system需要重启才能生效),这些修改将立即生效。因此使用时要非常小心,一旦出错会使内核产生致命的错误,导致系统崩溃。
.SWAP管理
Solaris的SWAP空间管理
使用分片作为SWAP空间
用format创建SWAP分片,然后编辑/etc/vfstab文件,加入以下条目
# vi /etc/vfstab
/dev/dsk/c1t0d0s1  -    -    swap    -    no    -
除了编辑/etc/vfstab文件外,也可用swap命令临时在线添加一个分片作为交换空间使用。
# swap –a /dev/dsk/c1t0d0s3
使用swap files               
1.制造一个100m的文件
# mkfile 100m/export/home/swapfile100m
2.把上面新建的文件作为交换空间的一部分
# swap -a/export/home/swap*
3.验证新的交换空间情况
# swap -s
总数:分配了 226672k 字节 + 保留 32512k = 已使用 259184k,590284k 可用
# swap -l
4.保存结果
编辑/etc/vfstab文件,加入以下条目,每次重启系统都会自动把交换文件作为交换空间使用
/export/home/swapfile100m   -  -  swap  -  no  -
删除swap空间
# swap -d/dev/dsk/c1t1d0s1
# swap -d/export/home/swap*
# rm/export/home/swapfile100m
注:必须注意swap -s和-l这两个选项的区别。-s列出所有的虚拟交换空间(包括物理内存部分),-l仅列出物理交换设备(交换分片或交换文件)
网络共享NFS
Solaris采用较新的分布式文件系统机制
输出目录配置在/etc/dfs/dfstab文件中,或者直接运行share命令,配置内容格式如下:
share -F nfs -o rw -d "home dirs" /export/home
share -o ro/usr/share/man
输出共享目录:share,shareall
启动NFS服务:solaris9:/etc/init.d/nfs.server start        solaris10:svcadm enable svc:/network/nfs/server
查看共享目录:showmount -e        or     dfshares
查看共享属性:cat /etc/dfs/sharetab
其他命令:dfmounts
在不同系统间使用NFS时需要注意版本问题,比如Solaris10默认使用NFS v4协议。
Solaris 10的NFS客户端在尝试挂接NFS资源时,会先使用客户端能支持的最高版本,然后依次降低版本直至和服务器取得一致。比如Solaris 10的NFS客户机会先使用NFSv4,不成功就v3,然后v2
从solaris挂接来自redhat的共享资源命令示例:
Solaris 10# mount nfs://redhat/home /mnt/redhat

第六章:设备管理
随着USB设备、外置硬盘、数码相机以及其他移动设备的使用,对机器执行添加和删除设备的操作变得越来越频繁。本章主要讨论Linux和Solaris关于设备管理的区别点
设备命名和访问
添加/删除设备
可移除设备
磁带
终端/modem和串行端口
1、设备命名和访问Solaris的/dev目录并不存放实际设备文件,它的/dev/目录中的设备文件仅是到/devices目录的符号链接
solaris的/dev目录是分层的,按照设备的类型分成许多子目录,比如dsk,rdsk,pts,cua,rmt等
solaris的TTY设备文件的名字为/dev/pts/*的格式,比如/dev/pts/0,/dev/pts/1
solaris采用controller,target,device,slice来定位磁盘上的分区,比如/dev/dsk/cAtBdCsD,A是控制器编号,B是SCSI目标ID,C是LUN,D是分片号
如果是IDE硬盘,表示为cxdxsx的形式.
solaris通过分片来使用磁盘,最多可使用0-7个分片(0-7)。0表示第一个分片,1表示第2个分片,slice 2分片表示磁盘中所有的空间,3表示第3个分片,依次类推
solaris不象Linux有一个相对独立的名字(比如hda,sda等)来专门表示整个磁盘。solaris中所有的磁盘设备都是指向磁盘的一个分片。分片2是一个特殊的例子,它与其他所有的分区重叠,它的空间从0号磁柱开始覆盖了整个磁盘,代表着整个磁盘的容量。
2.添加/删除设备
Solaris 8以及之前的版本用adddrv命令添加和删除设备。
solaris 9开始,使用devfsadm命令。devfsadm -C可/dev中已经无效的条目。
/devices目录树能够展示机器启动时在OBP状态所看到的设备树。
可移动设备
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,分别用于提供块设备访问和字符设备访问
磁带设备
Solaris中,SCSI磁带以设备文件的形式存放在/dev/rmt目录中。
设备文件的名字为/dev/rmt/N[lmhuc][bn]
N表示设备编号,0表示第一个磁带
lmhuc为磁带密度,分别是低/中/高/超高/压缩
b表示支持BSD风格的行为。比如
fsb:若在mt命令中指定fsb,表示将把磁带定位到前一个文件的结束点或当前文件的开始点
fsf:表示定位到当前文件的结束点或下一个文件的开始点
n表示不倒带
终端/modem和串行端口
Solaris对串口的管理
主要使用tip来管理串口连接,配置文件为/etc/remote和$HOME/.tiprc。
串口的速度,奇偶校验(parity)和握手则通过eeprom命令设置
安全与加固
安全啊安全,兄弟们,任何一台挂在网络上的系统都需要进行安全加固滴,否则后果自负!
系统的安全性涉及许多方面,从初步加固到对补丁和漏洞进行审查等等,但根本目的都是为了保证数据的三性:完整性(一致性)、保密性、可用性。关于安全方面的内容你可能需要到专门的安全论坛获取专业资料,本文仅讨论一些管理员所必须知道的概念性的常识。
内容包括:
加固工具
最低权限
审计工具
加固和删除服务
内核安全性优化
1、加固工具
TCP Wrappers
著名的安全访问控制工具,可通过/etc/hosts.allow,hosts.deny对允许受访的服务以及来访的源进行控制,并记录源IP,账号名等登录成功/失败信息。Solaris 9 &10和Linux均已内置这个功能,Solaris中对应的软件包名为SUNWtcpd
Solaris常用ipfilter,Solaris 10已内置这个软件包
Solaris常见的一些加固工具
Solaris Security Toolkit
SST(Solaris安全性工具箱)的前身为JASS(Jumpstart Architecture and Security Scripts)。SST能够以一种自动的,可扩展的,可伸缩的机制维护一个安全的Solaris系统。JASS脚本可以审计并加固solaris.
详见:
http://www.sun.com/software/security/jass/
RBAC实用工具可让管理员通过分配角色和特权给系统中的普通用户达到管理任务分散的目地,同时这些管理任务不再需要使用root账号从而降低了安全风险。
BART(基本审计和报告工具)的设计目的是为了监视文件系统并查看文件的内容变换情况。BART能够查看系统中的文件并记录它们的信息从而得知文件是否有变化。
BART的功能类似于商业版本的Tripwire软件(著名的文件完整性检查监控软件)的简化版
详见bart的manpage.
2.最低权限
Unix系统中通常有大量进程需要以完全root权限运行,这些进程需要访问设备,修改进行,处理受限的文件,以及访问其他受限的资源等等
如果所有的这些进程均以完全root权限运行会导致潜在的安全威胁。这些进程的任一个进程如果被攻击者控制,攻击者将获得对系统的完全root权限。
Solaris 10设计了最低权限运行的策略。最低权限特性能够让管理员以满足一个应用程序正常运作的最低权限运行该应用,并把其他无需的特权全部删除。一个进程可设置的特权大约有50种。
关于Solaris 10的最低权限功能及可用的特权说明,详见:
审计工具
以在Linux上使用的审计工具大部分也都有for Solaris的版本。比如
tripwire 主要用于监视重要文件的变化
crack and John the Ripper 主要用于检查弱密码问题(复杂性不够,长度不够等等)
加固和删除服务
加固Linux或Solaris机器的步骤基本相同
如果不想启动哪项服务,就把在/etc/rc*.d/目录下对应的文件删除(当然建议你先备份)
如果是受inetd控制的服务,可把相关配置从Inetd的配置中删除或注释
solaris 9的inetd配置文件为/etc/inetd.conf
solaris10可直接用inetadm -d service_name or svcadm disable service_name命令禁用相应的服务
内核安全性调整
solaris有两种方法可防止堆栈缓冲溢出
全局性设置:在/etc/system中设置noexec_user_stack.所有的应用将均采用这个选项的设置运行
个别性设置:对单独某个应用,可将其和/usr/lib/ld/map.noexstk映射文件建立关联。
第八章:性能监控
性能监控对服务器管理员来讲至关重要,通常我们需要监控机器的CPU,内存,磁盘,以及网络流量等。主要包括:
处理器
内存
网络
磁盘,卷和文件系统
系统和用户进程
输入输出(I/O,input/output)
第一节:处理器监控
查看处理器状态,psrinfo显示处理器每个核(core)的状态信息
-bash-3.00$ /usr/sbin/psrinfo
0       on-line   since 10/13/2007 02:30:32
1       on-line   since 10/13/2007 02:30:33
2       on-line   since 10/13/2007 02:30:33
查看处理器的详细信息
-bash-3.00$ /usr/sbin/psrinfo -v
Status of virtual processor 0 as of: 12/27/2007 09:39:37
  on-line since 10/13/2007 02:30:32.
  The sparcv9 processor operates at 1000 MHz,
        and has a sparcv9 floating point processor.
Status of virtual processor 1 as of: 12/27/2007 09:39:37
  on-line since 10/13/2007 02:30:33.
  The sparcv9 processor operates at 1000 MHz,
        and has a sparcv9 floating point processor.
查看每个处理器(同样以核为单位)的统计信息,用mpstat命令
此外,kstat命令也可以用来收集处理器的信息:
bash-3.00$ kstat -m cpu
module: cpu                             instance: 0     
name:   intrstat                        class:    misc
        crtime                          29.699815013
        level-1-count                   65517
        level-1-time                    991179530
        level-10-count                  163269
        level-10-time                   97182752330
        level-11-count                  0
        level-11-time                   0
        level-12-count                  2
        level-12-time                   238486
第二节:内存
、solaris
solaris通常使用vmstat命令来查看系统的虚拟内存子系统的状态信息。vmstat可显示swap,物理内存,分页错误,磁盘信息统计和错误等信息.
bash-3.00$ vmstat 2 3
kthr      memory            page            disk          faults      cpu
r b w   swap  free  re  mf pi po fr de sr f0 s0 s1 s2   in   sy   cs us sy id
0 0 0 730888 228436 43 196 62  1  1  0 38  0  6  0  0  313  557  343  3 10 87
0 0 0 731096 221556  3  25  0  0  0  0  0  0  0  0  0  341  111  208  0  3 97
0 0 0 731092 221548  0   0  0  0  0  0  0  0  0  0  0  334   90  205  8  3 89
【注意】
swap为空余的swap空间(此处的swap为总的swap空间而不仅仅指swap分片的空间),free为空余的可用物理内存
列出用于交换空间的硬盘分片或文件的使用情况:
bash-3.00# swap -l
交换文件             dev  swaplo blocks   free
/dev/dsk/c1t0d0s3   54,3       8 1048568 1048568
列出交换空间的总体使用情况:
bash-3.00# swap -s
总数:分配了 113024k 字节 + 保留 15340k = 已使用 128364k,730172k 可用
查看内存分页的汇总情况
bash-3.00# echo ::memstat | mdb -k
Page Summary                Pages                MB  %Tot
------------     ----------------  ----------------  ----
Kernel                      27734               108   22%
Anon                        29908               116   23%
Exec and libs                5862                22    5%
Page cache                  12306                48   10%
Free (cachelist)            18780                73   15%
Free (freelist)             34320               134   27%
Total                      128910               503
此外还可以使用kstat查看内存的详细信息(以每个内存模块为单位)
$ kstat -m vmem | more
module: vmem                            instance: 1     
name:   heap                            class:    vmem
        alloc                           6254
        contains                        0
        contains_search                 0
        crtime                          0
        fail                            0
        free                            1200
        lookup                          113
        mem_import                      0
        mem_inuse                       86376448
        mem_total                       1646524366848
        populate_fail                   0
        populate_wait                   0
        search                          4381
        snaptime                        2441.858424006
        vmem_source                     0
        wait                            0
        ......
第三节:网络负荷监控
1、solaris
最常见的都是用netstat命令,且redhat和solaris的常见使用方法基本一致。netstat命令可用来查看路由表、当前活跃的网络连接、各种网络数据结构、流内存统计,接口状态、DHCP等信息。常见的使用方式有:

netstat -rn   看路由
netstat -in   看流量统计
netstat -an  看连接信息
netstat -pn  看ARP解析表(MAC-IP映射表)
外,solaris可以使用kstat命令查看网络信息
bash-3.00$ kstat -m e1000g | more                             模块(-m)可填网卡驱动类型,比如e1000g,e1000g0,bge,hme...
module: e1000g                          instance: 0     
name:   e1000g0                         class:    net
        brdcstrcv                       0
        brdcstxmt                       0
        collisions                      0
        crtime                          43.023212228
        ierrors                         0
        ifspeed                         1000000000
        ipackets                        3421
        ipackets64                      3421
第四节:磁盘,卷和文件系统监控
1、solaris
查看文件系统空间
#df -h
文件系统               大小   用了   可用 容量      挂接在
/dev/dsk/c1t0d0s0      480M   278M   154M    65%    /
/devices                 0K     0K     0K     0%    /devices
ctfs                     0K     0K     0K     0%    /system/contract
proc                     0K     0K     0K     0%    /proc
......
查看文件系统类型
# fstyp /dev/rdsk/c1t0d0s1
ufs
solaris中类似的命令为prtvtoc,可列出指定磁盘的分区信息:
# prtvtoc /dev/rdsk/c1t0d0s2
* /dev/rdsk/c1t0d0s2 partition map
*
* Dimensions:
*     512 bytes/sector
*      32 sectors/track
*     128 tracks/cylinder
*    4096 sectors/cylinder
*    4094 cylinders
*    4092 accessible cylinders
*
* Flags:
*   1: unmountable
*  10: read-only
*
*                          First     Sector    Last
* Partition  Tag  Flags    Sector     Count    Sector  Mount Directory
       0      2    00    1052672   1048576   2101247   /
       1      7    00    2101248   1273856   3375103   /var
       2      5    00          0  16760832  16760831
       3      3    01       4096   1048576   1052671
       5      0    00    3375104   1048576   4423679   /opt
       6      4    00    4423680  11288576  15712255   /usr
       7      8    00   15712256   1048576  16760831   /export/home
       8      1    01          0      4096      4095
第五节:系统和用户进程监控
1、solaris
# prstat
第六节:输入输出(I/O)监控
1、solaris
# iostat 30 5             隔30秒采集一次,共采集5次
输出的一行,照例还是汇总平均值
Solar# cat /etc/mnttab



本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u1/42672/showart_541975.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP