当前位置:文档之家› solaris常见命令包含注释

solaris常见命令包含注释

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

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命令)

相关主题
文本预览
相关文档 最新文档