solaris 基本管理命令

本文档提供了SOLARIS系统的基本命令介绍,包括文件查找、编辑器使用、文件系统管理等内容。涵盖用户管理、文件系统管理、进程管理、软件包管理等方面的知识。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

(一)基本命令
 
12. find 查找文件
命令格式: find dir -name filename command
例子:
find . -name hello -print 寻找目前目录及所有的子目录内叫
hello的文档.
find . -ctime +7 -print 找出七天内未被更动的文档
find . -size +2000m -print 找出大小超过2000 bytes的文档
find /tmp -user b1234567 -print 在/tmp下属於b1234567的文档
find . -name '*.c' -exec rm {} 删除所有的.c档
find . -name test\* -print 显示当前目录及其子目录文件名前4
位为test的文件名
★13. vi 编辑器
命令状态:
j,k,h,l:上下左右
0: 行首
$: 行尾
i,I :插入命令,i 在当前光标处插入 I 行首插入
a,A:追加命令,a 在当前光标后追加,A 在行末追加
o,O:打开命令,o 在当前行下打开一行,O在当前行上插入一行
r,R :替换命令,r 替换当前光标处字符,R从光标处开始替换
数字s: 替换指定数量字符
x: 删除光标处字符
dd: 删除当前行
d0: 删除光标前半行
d$: 删除光标后半行
ctrl+f :后翻页
ctrl+b:前翻页
G : 文件尾
数字G: 数字所指定行
/string 查找字符串
n 继续查找
N 反向继续查找
% 查找对应括号
u 取消上次操作
ex命令状态
:set number 显示行号
:set smd 显示显示状态
:0 文件首
:1,5 copy 7 块拷贝
:1,5 del  删除
:1,5 move 7 块移动
:%s/string1/string2/g 全文件查找string1并替换为string2
:wq! 存盘退出
22. script记录一个solaris会话
(二) 增强命令
1. ln 文档连结
命令格式:ln -s oldname newname ( Hard link )
同一文档,可拥有一个以上之名称,可将文档做数个连结.例子 :
ln -s file1 file2   将名称 file2,连结至文档 file1.
2.grep 查找一个字符串
命令格式:
grep string filename
寻找字串的方法很多,比如说我想找所有以M开头的行.此时必须引进pattern的观
念.以下是一些简单的□例,以及说明: 
^M 以M开头的行,^表示开始的意思
M$ 以M结尾的行,$表示结束的意思
^[0-9] 以数字开始的行,[]内可列举字母
^[124ab] 以1,2,4,a,或b开头的行
^b.503 句点表示任一字母
* 星号表示0个以上的字母(可以没有)
+ 加号表示1个以上的字母
\. 斜线可以去掉特殊意义
 
cat passwd | grep ^b 列出大学部有申请帐号者名单
cat passwd | grep ^s 列出交换学生申请帐号者名单
cat passwd | grep '^b.503' 列出电机系各年级...
grep '^\.' myfile.txt 列出所有以句点开头的行
 
5.diff 比较文档或目录之不同内容
命令格式:diff [-r] name1 name2 ( name1 name2 可同时为档名,或目录名称.)
例子 :
%diff file1 file2
比较文档 file1 与 file2 内,各行之不同处.
%diff -r dir1 dir2
比较目录 dir1 与 dir2 内,各文档之不同处
6.cmp 比较文档相同部分
命令格式:cmp file1 file2
★7.ftp 远程文件传输
命令格式: ftp [hostname|IP address]
在进入 ftp 之後,如果与 remote host 连接上了,它将会询问你 username 与密码,如果输入对了就可以开始进行文档传输.
注意:如用户无密码,无法注册
(1) ftp 命令
ascii 将传输模式设为 ascii 模式.通常用於传送文字档.
binary 将传输模式设为 binary 模式,通常用於传送执行档,压缩档与影像档等.
cd remote-directory 将远程主机上的工作目录改变.
lcd [ directory ] 更改本地主机的工作目录.
ls [ remote-directory ] [ local-file ] 列出远程主机上的文档.
get remote-file [ local-file ] 取得远方的文档.
mget remote-files 可使用通用字元一次取得多个文档.
put local-file [ remote-file] 将本地主机的文档送到远程主机.
mput local-files 可使用通用字元一次将多个文档放到远程主机上.
help [ command ] 线上辅助指令.
mkdir directory-name 在远程主机创建一个目录.
prompt 关闭提示开关
输时均会询问.
quit/bye 离开ftp .
(2) 后台执行ftp
1.首先,将过程所用到的指令依顺序放入文档中,如下:
%cat ftp_command
!mkdir test
lcd test
cd test
prompt
binary
mget *.*
bye
2.其次,建一个.netrc档,属性为400,让ftp 自动到此读取Username
与Password,方可顺利login 到的主机,如下:
%cat .netrc
machine remote login anonymous password guest
3.最後再执行下面指令即可.
%nohup ftp remote < ftp_command > message &
8.telnet 远程终端访问
命令格式:
telnet [hostname|IP address]
 
五、用户管理(重点)
(本节为重点,所有的Unix初学者要精读)
(一) 用户基本知识
1.文件信息
ls -l
drwxrwxrwx filename
(1)访问权限
mode : rwx rwx rwx r:read w:write x:execute
user group other
缩写 : (u) (g) (o)
(2) 文件类型
: 普通文件
b : 块特殊文件,如硬盘和CDROM设备
c : 字符文件设备
l : 符号连接
p : 管道或流,用于进程通讯
d : 目录
2.缺省权限
创建文件和目录时,系统自动设置一定的权限.缺省权限由用户mask码控制
$umask  显示用户umask码
umask 设置 文件 目录
022 新文件属主有读权和修改权 用户组和其他用户有读权和修改权用户组和其他用户只有读权可用umask maskvalue 改变缺省权限
3.系统安全文件
(1) /etc/passwd
(2) /etc/shadow
(3)/etc/group
(4)/etc/default/login
 
5.who 查看当前系统上的用户名单
★who am i 显示当前用户
finger 列出所有用户名单
W:
6. id 查看当前用户用户号和组号
 
六、文件系统管理
(一)硬盘和文件资源
硬盘和CD-ROM设备使用块设备接口.硬盘设备文件存储在/dev目录下.
字符设备文件存于rdsk子目录下,块设备文件存在dsk子目录下.
1. 逻辑硬盘设备命名的约定
/dev/[r]dsk/cwtxdysz
例子:
/dev/dsk/c0t3d0s0
Cn:controller number 控制器号,标识被硬盘控制的加到系统上的逻辑顺序.
c0代表第一个硬盘控制器,c1代表第二个硬盘控制器,类推.
tn:target number 目标号,是位于控制器内的地址,通常在外围设备的背面能找到目标号.
Dn:disk number 硬盘号,代表连在目标上的设备的逻辑单位号.d0代表第一个硬盘,d1代表第二个硬盘,依次类推.对嵌入式SCSI控制器,硬盘驱动号总是0.
Sn:slice or portition number 片或分区号,标识硬盘的分区.
2. dmesg命令
查看日志
 
(二)硬盘分区
利用在设备目录下的字符设备文件和块设备文件对硬盘进行访问.然而,硬盘不是由用户直接访问的,是通过分区对它进行访问的,分区由设备目录下的设备文件来表示.“片”是“分区”的另一种说法 .
分区是管理数据的一个方便的方法.重要的系统文件和程序可以存在一个分区,而用户产生的文件放在另一个分区.它保持不同类型的数据在不同的分区.这使系统管理员能灵活地利用数据或使用不同的备份机制.因为用户的数据每天都发生变化,系统管理员应每天作备份.而重要的系统数据不是经常变化,也就不需经常做备份.由Sun提供的硬盘分区可多达8个,用1-7标识.
分区2表示整个硬盘.分区5表示/opt文件系统,此文件系统用来存贮那些未随操作系统一起提供的软件.分区6 是/usr分区,此文件系统包含那些只能在某些类型的系统上运行的文件(如SPARC executables)和一些能在所有系统类型上运行的文件(如联机手册放在/usr/share目录下).分区7的文件系统称为/export/home.这是挂接用户主目录的挂接点.硬盘分区通过在/dev目录下的逻辑设备文件加以访问.如/dev/dsk/c0t0d0s0表示在第一个硬盘上的第一分区.
1.format实用程序
format程序是一个硬盘维护工具,由系统管理员使用,完成以下任务:
重新格式化硬盘.
改变分区大小.
修理和分析硬盘扇区.

Part 标识分区号0-7.
Tag 显示分区标签,分区标签用于标识该分区所用的目的(root,usr,home,交换区).
Flag 显示分区标志,用以标识访问权限.
Cylinders 显示起始和终止的柱面号.
Size 按一定方式,以Mbytes或Gbytes为单位显示分区大小.,小写哦!
Blocks 按柱面数、磁头数和扇区数来标识分区的大小.
 
2.newfs 创建文件系统
命令格式:newfs raw-device
例子:newfs /dev/rdsk/c0t1d0s0
3.fsck 修复文件系统
命令格式:fsck raw-device
例子:fsck /dev/rdsk/c0t1d0s0
 
(四) 自动挂接文件资源
/etc/vfstab文件
系统引导时读/etc/vfstab文件以自动挂接文件资源.该文件包含本地和远程文件资源的登记项.各域的含义:

Device-to-mount 标识NFS服务器和文件系统,或被挂接的本地文件系统.
Device-to-fsck 标识用于执行fsck的本地原始设备.
Mount point 挂接点路径.
FS-type 文件系统类型,通常是ufs用于本地文件系统,nfs用于远程文件系统.
Fsck-pass 此域中的数字是fsck经过文件系统检查的顺序,相重的数字表示检查并行进行.
Mount-at-boot 决定文件系统是否在系统引导时被自动挂接.
Mount-options 定义挂接选项,如读/写访问.

 
七、进程管理
1.ps 显示进程号 命令格式:ps -ef
2.kill 清除进程 命令格式: kill -9 pid
3.nohup 非挂起运行
 
八、软件包管理
1.pkginfo 显示软件包信息
命令格式: pkginfo -d[ device|pathname] -l pkg_name
例子:
这三个域为:
pkg_category 软件包种类,可为application,graphics 或system.
pkg_name 软件包名字,如为SUN产品则机SUNW 起 头.
Description 软件产品的简单说明.

例子:
# pkginfo -d /cdrom/solaris_2_2/s0/Solaris_2.2 |more
利用pkginfo -l 命令显示关于软件包的详细信息,包括软件包的大小(按硬盘块大小计算).
# pkginfo -d /cdrom/solaris_2_2/s0/Solaris_2.2 -l SUNWaudio
上面输出的最后一行指示软件包的大小. 利用此信息和df -k命令来确定你是否拥有足 够硬盘空间来安装此软件包.
2. pkgadd 增加软件包
利用pkgadd 命令增加软件包,当软件包被成功地安装以后,向root发送一个邮件.
命令格式:
pkgadd -d [device | pathname] pkg_name
例子:
# pkgadd -d /cdrom/solaris_2_2/s0/Solaris_2.2 SUNWaudio
3.pkgchk 校验软件包的安装
pkgchk命令通过将软件包的属性及路径名内容与系统记录文件中的值进行对比来校验.命令格式:
pkgchk [-p path1 [path2...]]
此命令可以检查整个软件包或通过指定-p选项对一特殊路径名进行检查,无输出则意味 着没有问题被检查出.由于/etc/group 文件大小已被改变,所以文件内容的checksum就不对.考察软件包信息pkgadd命令更新文件/var/sadm/install/contents、 此文件为系统中所有已安装软件包的记录文件.没有简单的方法来确定某软件包具有某一特殊文件(或命令).对于已安装的软件包,从/var/sadm/install/contents 记录文件中查找此软件包的路径 名.
4.pkgrm 删除软件包
命令格式: pkgrm pkgname1 pkgname2 …
在调用pkgrm 命令后,将向你警告有依赖关系的软件包信息,并提供放弃此操作的提示.当软件包被成功地删除后,向root发送一个邮件.pkgrm命令通过文件/var/sadm/install/contents 来确定软件包的地址,并且当软件包被删除以后,更新此文件.假如此软件包被两个或更多的包共享,则一定得将这些依赖于此包的所有软件包删除以后才删除此软件包.
5.spooling 软 件 包
一个软件包可以由安装CD-ROM中拷贝过来存放在系统中,但并没有安装此软件包。例如,一个服务器可以拷贝存储一个软件包,一个没有CD-ROM设备的系统可以从服务器上挂接此软件包,用以安装。软件包也可以利用Software Manager远程安装,暂 略.
服务器下面两个pkgadd命令用以说明如何spool一个软件包到/var/spool/pkg目录下或到一个你指定的目录下.pkgadd命令的-s spool选项会缺省地将软件包拷贝到/var/spool/pkg目录下.
你可以指定一个目录作为-s选项的参数.
客户假如服务器共享了/export/pkgs目录,则客户系统可以挂接目录/export/pkgs并安装软件包.
# mkdir /export/pkgs
# mount venus:/export/pkgs /export/pkgs
# pkgadd -d /export/pkgs SUNWaudio
删除Spooled软件包
在服务器上可以利用-s选项从spooling目录中删除一个软件包.
# pkgrm -s /export/pkgs SUNWaudio
与软件包管理有关的文件和目录

/var/sadm 包含系统记录文件和管理文件的目录
/opt/pkgname 安装未随操作系统一起提供的、名为pkgname的软件包的推荐目录.
/opt/pkgname/bin
/opt/bin 未随操作系统一起提供的、名为pkgname的执行文件的推荐目录.
var/opt/pkgname
/etc/opt/pkgname 未随操作系统一起提供的、名为pkgname的记录文件的推荐目录.
/var/sadm/install/contents 整个系统的软件包映象.
 
3.tar命令
tar命令是用户级的备份命令,用于备份和恢复文件或目录.
命令格式: tar options tape_device_name [filename]
option c-建立新文档 v-显示路径
t-显示文件列表 f-指定设备
x-抽取文件 i-交互式
例子:
(1)备份过程:
$ tar cvf /dev/rmt/0 *
(2)恢复过程:
$ tar xvf /dev/rmt/0
(3)目录复制
$ tar cvf - mydir|(cd newdir;tar xvf -)
(4) 异地拷贝(必须为可信任用户)
$ tar cvf - mydir|rsh remote tar xvf -
4.cpio命令
cpio(copy in/out)命令是能产生多卷备份的用户级命令.
命令格式:
cpio -ov >tape_device_name
cpio -i [vt] <tape_device_name
一旦它识别出介质的尾部,它就提示你插入另一磁带.
cpio命令利用ls或find命令的输出进行文件列表,将这些文件输出到一个文件,
如磁带设备.它在文件之间插入标题以便于恢复,所以比tar命令慢.
cpio命令可用通配符作为参数,然而,cpio反着用通配符,即除满足匹配条件的
文件以外,它将备份所有文件.
备份过程
$ find . -depth -print | cpio -ov > /dev/rmt/0
find命令给cpio命令提供文件和目录名的列表.
-o选项表示从标准输出读.
/dev/rmt/0参数确定磁带设备.
例子:
用find和cpio命令将主目录备份到磁带上:
恢复过程
用cpio命令按以下步骤从磁带上检索文件和目录.
1.将磁带插入磁带设备.
2.改变目录至/tmp目录.
3.用以下cpio目录确定要恢复的文件的路径名.
$ cpio -iv < /dev/rmt/0
-i选项抽取文件,v(verbose)选项与t选项合用则按ls -l格式列出文件,
使用此复合选项只显示文件信息,不抽取文件.
4.用以下cpio命令恢复文件至/tmp目录.
$ cpio -iv < dev/rmt/0 test.file
选项i抽取文件,v表示恢复时显示文件名.
5.从目录/tmp拷贝文件至所需目录.
6.取出磁带.
下面的例子说明如何用cpio命令恢复一个文件.
(一) 网络基本配置文件
1./etc/hosts 主机名解析
2./etc/defaultrouter网关
3./etc/nsswitch.conf 指定查询服务顺序
4./etc/resolv.conf 指定域和域名服务器
5./etc/hostname.hme0 网络接口名
6./etc/netmasks 网络掩码
7./etc/inetd .conf 服务项目定义
(二) 远程访问命令
1. rlogin 在远程机上注册
命令格式 : rlogin hostname -l username
2. rsh 在远程机上执行一个程序
命令格式 : rsh hostname -l username order
3. rcp 在远程系统之间拷贝文件
命令格式 : rsh host:filename filename
(三)访问鉴别相关文件
当rlogin,rsh,rcp命令时,有几个文件对网络安全是很重要的.
/etc/passwd
如远程系统的口令文件有本拥护的登记项,否则必须使用 [-l] 选项以指明不同用户
$home/.rhosts
rlogin,rsh,rcp首先检查用户主目录下的.rhosts文件,如主机及用户被列在文件中,则此用户为可信任主机,不需口令即可登录,如远程鉴别失败,则正常询问口令
/etc/.hosts.equiv
作用与.rhosts 文件类似,文件中列出用户对于本机为可信任用户,
不需口令即可登录(除超级用户)
(四)网络监控
1.rusers 标识网络上注册用户
命令格式:rusers -la
2.rup 标识网络上主机
命令格式:rup
3.ping 检测主机连接状况
命令格式:ping -s [hostname|IP address]
4.spray ping命令格式为低层协议,spray使用高层协议
命令格式:spray hostname
5.netstat 显示与网络有关的各种数据结构
命令格式:netstat -[r| i]n
-r :显示路由信息
-i :显示接口信息
6.ifconfig 显示网络接口
命令格式:ifconfig -a
其中 lo0: 本机自回馈接口
le0: 10M接口
hme0:100M接口
hme1:第二100M接口
7.netstat 显示与网络有关的各种数据结构
命令格式:netstat -[r| i]n
-r :显示路由信息
-i :显示接口信息
8.route 路由设置
命令格式:route [add|delete] 设置网络路由
defaultrouter <-缺省静态路由
9.arp 反响解析
命令格式:arp -[a|s]
 
 
 

主机CPU状态  命令/usr/sbin/psrinfo 

磁盘等待  命令iostat -x|grep -v st|grep -v mt

磁盘大小  命令iostat -E|grep -v st

命令isainfo –kv  结果
32-bit i386 kernel modules  说明包括操作系统位数、cpu类型
查看内存中的进程
#/usr/ucb/ps -aux
#prstat -a

写大文件系统
newfs -f 8192 -i 16384 /dev/rdsk/c0t0d0s0

fuser  -u  /mount-point.看到谁在使用,然后杀之!!!!
-u 显示使用该设备的用户
-k 杀掉使用该设备的进程

如何关掉sendmail
etc/rc2.d/S88sendmail stop
mv /etc/rc2.d/S88sendmail /etc/rc2.d/s88sendmail
重新启动机器
#ps -ef|grep sendmail  (查找系统中已经无sendmail进程)


boot cdrom -s
进入单用户后可直接把/dev/c*t*d*s*  mount /mnt下

增加新硬盘,或移动槽位时
运行drvconfig;disks;devlinks
可以重新更新设备文件联结等

solaris 下的ping 默认是不显示网络状况的
# ping 172.16.130.102
172.16.130.102 is alive
# ping -s 172.16.130.102


安装软件的时候如何指定安装目录呀?
修改文件
/var/sadm/install/admin/default
里面的basedir

ps -ef |grep defunct   查看所有的僵尸进程


 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值