1.banner 显示当前机器配置状况,CPU,内存,hostid,EtherNet
2.probe-scsi 显示内部SCSI通道所挂接设备
3.probe-scsi-all 显示所有SCSI通道及所挂接设备
4.probe-ide 显示所有IDE通道及所挂接设备(针对U10,U5) probe-fcal-all
5.devalias 显示设备别名,如 cdrom,disk,disk0,disk1等
6.printenv 无参数,显示环境变量或参数为环境变量名 如: printenv auto-boot?
7.setenv 设置环境变量,如: setenv auto-boot? false
8.set-default 恢复环境变量预定值 如:set-default auto-boot?
9.set-defaults 恢复所有环境变量预定值
10.boot device [option] 启动主机
device :设备别名,如:cdrom,disk,net 或直接设备名。如:Solaris-test60 外置CDROM/pci@1f,4000/scsi@3,1/disk@6,0:f
option : -r 系统重新配置 -s 启动单用户环境
如,捷迅的Unix系统都是从网络来安装的,我们在运行进用如下命令即可:
12.reset 复位
网络连接(y/n) y
IP地址 172.16.12.121
命名服务 agile.agilesoft.com
子网(y/n) y
地理,时区 PRC
时间
软件安装 完全
硬盘分区 手动,用户化
swap 300
backup 4300
e.g.
ftp://sunsolve.sun.com/pub/patches/
8_Recommended.zip
J2SE_Solaris_8_Recommended.zip
安装补丁前,kill dtlogin 和inetd进程,以确保没有人登录进系统。安装后重启系统。
2. 设置路由: vi /etc/defaultrouter, add the default gateway to the file.
10.6.2.1
nameserver 10.6.2.15
nameserver 10.0.13.11
search sz.mydomain.com abcd.mydomain.com mydomain.com abcd.com
4. vi /etc/nsswitch.conf 在hosts:file 后,加上dns, e.g.
hosts: files dns
......
5. 把管理域的域名加到 /etc/defaultdomain中。 e.g.
abcd.sz
#
# Internet host table
#
127.0.0.1 localhost
10.6.3.191 admin
#
10.6.3.192 db1
10.6.3.193 app1
10.0.13.5 loghost
7. 为man建立index,这样就可用man -k搜索。
# passwd admin
请参考:
http://www.chinaunix.net/bbsjh/3/10466.html
实际工作中,这是很有用的:不必告诉有特殊需要的普通用户关的Root的帐号,但给他权限。Sudo的操作是有记录可查的,可将log放到远程的log服务器中。[
# cat /etc/dfs/dfstab
share -F nfs -o ro=db1:app1:app2:app3:app4,anon=0 /usr/js
share -F nfs -o rw=db1:app1:app2:app3:app4,nosuid /home
查看服务器的已共享资源 dfshares
查看共享资源被利用的状况 dfmounts
vi /etc/vfstab, 加入新的一行启动mount配置:
e.g
#device device mount FS fsck mount mount
admin:/home - /home nfs - yes -
.....
关于Linux的NFS与Solaris不同点:
1. Solaris的目录共享设置文件是/etc/dfs/dfstab, 而RadHat Linux共享目录设置文件是/etc/exports
2. Solaris开机自动mount设置文件是/etc/vfstab, 而RadHat Linux开机自动mount设置文件是/etc/fstab
e.g.
passwd: files nis
group: files nis
netgroup: files nis
...
2. vi /etc/defaultdomain
e.g.
agile.sz
3. /var/yp/Makefile
4. ypinit -m
5. 启动 /usr/lib/netsvc/yp/ypstart
6. 诊断
ypcat hosts
ypcat passwd
yp which -m
e.g.
passwd: files nis
group: files nis
netgroup: files nis
...
10.6.3.197 app4.sz
10.6.3.191 admin
agile.sz
5./usr/lib/netSvc/yp.ypstart
根据所示,输入NIS Server的hostame:admin
6. 诊断
ypcat hosts
ypcat passwd
7.增加NIS用户:
login to nis server:admin
run
/var/yp/etc/adduser to add NIS users,
run /var/yp/etc/rsetpass to change Nis users password.
/etc/hosts
/etc/hostname.interfacename
depends on your network configuration, you might also need to change:
/etc/defaultrouter
/etc/netmasks
uname -S newname
reboot
option:
-l 显示详细列表
文件类型和权限 | 文件连接数 |所有者| 用户组脉| 文件长度 | 修改日期 | 文件名
-a 显示所有文件,包含隐藏文件(以. 起头的文件名)
-R 显示文件及所有子目录
-F 显示文件(后跟*)和目录(后跟/)
-d 与l选项合用,显示目录名而非其内容
-p
命令格式:cd dirname
例子 :
rm file1 删除档名为 file1 之文档.
rm file? 删除档名中有五个字元,前四个字元为file 之所有文档.
rm f* 删除档名中,以 f 为字首之所有文档.
rm -r dir1 删除目录 dir1,及其下所有文档及子目录.
命令格式: rmdir directory
Exmaple:
Exmaple:
mv file1 file2 将file1重命名为 file2.
mv file1 dir1 将文档 file1,移到目录 dir1 下,档名仍为 file1.
mv dir1 dir2 若目录 dir2 不存在,则将目录 dir1,及其所有档
案和子目录,移到目录 dir2 下,新目录名称为 dir1.
若目录 dir2 不存在,则将dir1,及其所有文档和子
目录,更改为目录 dir2.
例子 :
du dir1 显示目录 dir1 的总容量及其次目录的容量
du -sk dir1 显示目录 dir1 的总容量,以k bytes为计量
例子:
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的文件名
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 块移动
:1,$s/string1/string2/g 全文件查找string1并替换为string2
:wq! 存盘退出
同一文档,可拥有一个以上之名称,可将文档做数个连结.例子 :
ln -s file1 file2 将名称 file2,连结至文档 file1.
grep string filename
寻找字串的方法很多,比如说我想找所有以M开头的行.此时必须引进pattern的观
念.以下是一些简单的□例,以及说明:
^M 以M开头的行,^表示开始的意思
M$ 以M结尾的行,$表示结束的意思
^[0-9] 以数字开始的行,[]内可列举字母
^[124ab] 以1,2,4,a,或b开头的行
^b.503 句点表示任一字母
* 星号表示0个以上的字母(可以没有)
+ 加号表示1个以上的字母
/. 斜线可以去掉特殊意义
<eg> cat passwd | grep ^b 列出大学部有申请帐号者名单
cat passwd | grep ^s 列出交换学生申请帐号者名单
cat passwd | grep '^b.503' 列出电机系各年级...
grep '^/.' myfile.txt 列出所有以句点开头的行
文件类型为shell script,ELF 32bit,ASCII text,data or tar file
例子 :
%diff file1 file2
比较文档 file1 与 file2 内,各行之不同处.
%diff -r dir1 dir2
比较目录 dir1 与 dir2 内,各文档之不同处
在进入 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 更改交谈模式,若为 on 则在 mput 与 mget 时每作一个文档之传
输时均会询问.
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 &
telnet [hostname|IP address]
A. 更改标准输入 —— 在命令後方加"< <filename>" ,即可从<filename>这个文档输入资料.
B. 更改标准输出 —— 在命令後方加"> <filename>" ,即可将萤幕输出的资料导向到<filename>这个文档上.
C. 更改标准输出 —— 在命令後方加">> <filename>",功能与B.相似,只不过这会将资料加在文档後方.
D. 管道 —— 在两个命令中间加上'|',即可将前方指令的输出当成後方指令
D. 管道 —— 在两个命令中间加上'|',即可将前方指令的输出当成後方指令的输入.
例:
cd /tmp
ls -l > /tmp/ls.out
cat /tmp/ls.out
more /tmp/ls.out
rm /tmp/ls.out
ls | more
ls | wc -l (word count, count line number,算出文档数目)/
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 : 目录
$umask 显示用户umask码
umask 设置 文件 目录
022 新文件属主有读权和修改权 用户组和其他用户有读权和修改权用户组和其他用户只有读权可用umask maskvalue 改变缺省权限
(2) /etc/shadow
/etc/group
/etc/default/login
( name 可为档名或目录名;mode可为 3 个 8 位元之数字,或利用ls -l命令,列出文档或目录之读、写、执行允许权之文字缩写.)
例子 :
chmod 755 dir1 将目录dir1,设定成任何使用者,皆有读取及执行之权利,但只有拥有者可做修改.
chmod 700 file1
将文档file1,设定只有拥有者可以读、写和执行.
chmod o+x file2 (u:user g:group o:other a:all) (r:read w:write x: execute)
将文档file2,增加拥有者可以执行之权利.
chmod g+x file3
将文档file3,增加群组使用者可执行之权利.
chmod o-r file4
将文档file4,除去其它使用者可读取之权利.
例子 :
chown Karen file1 将文档 file1 之拥有权,改为使用者 Karen 所有.
chown -R luhua dir1 将目录dir1及其下所有文档和子目录之拥有权,改为luhua 所有.
例子 :
chgrp PSI file1 将文档 file1 之群组拥有权,改为 PSI 群组.
chgrp -R Oracle dir1 将目录dir1,及其下所有文档和子目录,改为 Oracle 群组.
finger 列出所有用户名单
W:
无用户参数修改本用户口令
无用户参数为转换到超级用户
- :执行新用户环境设置
字符设备文件存于rdsk子目录下,块设备文件存在dsk子目录下.
c0代表第一个硬盘控制器,c1代表第二个硬盘控制器,类推.
tn:target number 目标号,是位于控制器内的地址,通常在外围设备的背面能找到目标号.
Dn:disk number 硬盘号,代表连在目标上的设备的逻辑单位号.d0代表第一个硬盘,d1代表第二个硬盘,依次类推.对嵌入式SCSI控制器,硬盘驱动号总是0.
Sn:slice or portition number 片或分区号,标识硬盘的分区.
例子:
下面的输出信息是从前面的dmesg例子的输出信息中提取出来的,标识着连到系统上的硬盘设备。对每个硬盘设备,输出三行信息,分别表示:
硬盘的实例名。
硬盘的物理设备名.
硬盘的市场名和硬盘的外形信息特征.
硬盘的逻辑设备名是对硬盘的物理设备名的符号连接.
硬盘的实例名是对物理设备命的内核的缩写.
Solaris命令不用此来表示硬盘.
分区是管理数据的一个方便的方法.重要的系统文件和程序可以存在一个分区,而用户产生的文件放在另一个分区.它保持不同类型的数据在不同的分区.这使系统管理员能灵活地利用数据或使用不同的备份机制.因为用户的数据每天都发生变化,系统管理员应每天作备份.而重要的系统数据不是经常变化,也就不需经常做备份.由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
本地或远程文件资源被接到根文件层次,看起来就象是一个单一的文件系统.这个
连接操作称为“挂接”,利用mount命令完成 文件资源挂接到根文件层次的目录被
称为挂接点.在调用挂接命令前,挂接点必须存在.
命令格式:
mount file_name mount_point
没有选项的mount命令显示当前已挂接的文件资源.
例子:
2. df 显示文件系统所占用的硬盘空间
df -k命令按Kbytes显示可用硬盘空间的总量和已用的硬盘空间.
各域的含义为:
Filesystem 被挂接的文件系统.
Kbytes 按Kbyte计算的文件系统大小.
Used 已用的数量(Kbytes).
Avail 可用的数量(Kbytes).
Capacity 已用的百分比.
Mounted on 挂接点.
注意:大约10%的硬盘空间为文件系统保留,在df -k命令的输出中没有反映这一点.
3.umount 摘下文件资源
从本地系统上摘下文件资源,超级用户可使用umount命令.
命令格式:
# umount mount_point
如果在被挂接的文件资源目录里有活动,则文件资源不可摘下.在摘下前cd至/ 目录是一个很好的习惯,不要不加区别地将系统正常运转所需要的文件系统摘下.
系统引导时读/etc/vfstab文件以自动挂接文件资源.该文件包含本地和远程文件资源的登记项.各域的含义:
Device-to-mount 标识NFS服务器和文件系统,或被挂接的本地文件系统.
Device-to-fsck 标识用于执行fsck的本地原始设备.
Mount point 挂接点路径.
FS-type 文件系统类型,通常是ufs用于本地文件系统,nfs用于远程文件系统.
Fsck-pass 此域中的数字是fsck经过文件系统检查的顺序,相重的数字表示检查并行进行.
Mount-at-boot 决定文件系统是否在系统引导时被自动挂接.
Mount-options 定义挂接选项,如读/写访问.
域中的-表示无选项.
/dev/[r]dsk/cwtxdysz用于本地ufs文件系统.w,s,y,z分别表示控制器、目标、设备、片.一旦系统建立,手工在单机系统的/etc/vfstab文件中加入远程文件资源登记项.
1.share,shareall 共享文件资源
share –o ro user directory
/etc/init.d/nfs.server start
2.dfshares 显示远程机共享资源
dfshares remote
3.mount 挂接远程文件资源
mount remote:directory localdir
2.volcheck 检查软盘,如有挂接在floppy目录下
3.eject [cdrom|floppy] 弹出设备
2.kill 清除进程 命令格式: kill -9 pid
3.nohup 非挂起运行
例子:
这三个域为:
pkg_category 软件包种类,可为application,graphics 或system.
pkg_name 软件包名字,如为SUN产品则机SUNW 起 头.
Description 软件产品的简单说明.
例子:
例子:
pkgchk [-p path1 [path2...]]
此命令可以检查整个软件包或通过指定-p选项对一特殊路径名进行检查,无输出则意味 着没有问题被检查出.由于/etc/group 文件大小已被改变,所以文件内容的checksum就不对.考察软件包信息pkgadd命令更新文件/var/sadm/install/contents、 此文件为系统中所有已安装软件包的记录文件.没有简单的方法来确定某软件包具有某一特殊文件(或命令).对于已安装的软件包,从/var/sadm/install/contents 记录文件中查找此软件包的路径 名.
在调用pkgrm 命令后,将向你警告有依赖关系的软件包信息,并提供放弃此操作的提示.当软件包被成功地删除后,向root发送一个邮件.pkgrm命令通过文件/var/sadm/install/contents 来确定软件包的地址,并且当软件包被删除以后,更新此文件.假如此软件包被两个或更多的包共享,则一定得将这些依赖于此包的所有软件包删除以后才删除此软件包.
服务器下面两个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 整个系统的软件包映象.
类型 设备名 容量 机器类型
8mm D8112 5G 8205
8mm D8160 7G 8505-8705
8mm D8170 20G 8900
4mm DDS1(60m) 1.3G
4mm DDS2(120m) 7G
4mm DDS3(125m) 12G
设备名: /dev/rmt/0,/dev/rmt/0n(不倒带)
2.软盘
设备名:/dev/fd0
3.文件
多卷备份 连接 系统跨接
ufsdump
ufsrestore Yes No No
tar No Yes Yes
cpio Yes Yes Yes
完全转储是对整个文件系统做备份.在较长的间隔做一次,如一星期或一月.
增量转储是对新创建或修改的文件进行备份.增量转储更频繁一些,可能一天一次.
ufsdump命令提供了不同等级的转储,从0至9.转储等级用来确定对哪些文件备份.0级指定完全转储,1至9指定不同等级的增量转储.例如,增量转储(1等级)将对在上一次低等级(0级)转储后修改或创建的文件进行备份.对文件系统作备份时,应将系统转至运行等级S.如系统在运行等级3时,文件可能正在使用,于是可能造成无效备份.
例子:
# ufsdump 0uf /dev/rmt/0 /export/home
选项及参数:
0 指定0级(完全)转储.
u 更新文件/etc/dumpdates,以记录成功的转储.
f 与下面的/dev/rmt/0参数一起确定转储的磁带设备.
/dev/rmt/0 转储的磁带设备.
/export/home 指定要转储的文件系统.
ufsrestore命令可用于重载转储好的整个文件系统或备份带上的单个或多个文件.
ufsrestore命令的选项用来指定磁带设备名和被恢复文件的路径名.
恢复过程
用ufsrestore命令按以下步骤恢复一个文件:
# cd /newdir
# ufsrestore tuf /dev/rmt/0
命令格式: 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 -
命令格式:
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命令恢复一个文件.