Solaris 系统操作命令
Solaris 操作系统命令介绍
一. 基本命令
1 .cd change directory $cd [回车] ;进入用户的家目录 cd 绝对路径 cd 相对路径 2 .pwd 显示当前路径 $pwd /export/home/ora816 有时候,运行此命令,会出现一条信息, can't determin current directory.利用cd,给一个确定路径即可。 3.ls 列出文件 $ls /usr/lib/fs autofs cachefs fcl hsfslofs nfs 列出隐藏文件,文件名以 . 开始的文件叫隐藏文件,通常用于存储用户定义的环境变量 ,命令格式:ls -a $ $ls -a . bin etc .. dev .Xauthority 列文件类型,命令格式:ls -F $ls -F acct/ message sa/ $ls -F /etc/default cron* fs init* login 长列表显示,命令格式:ls -l $ls -l total 1064 drwxr-xr-x 2 root sys 2048 oct 24 11:10 drv (1)文件类型 - 文件 d 目录 b 块文件 c 字符文件 l 连接 (2),(3),(4),文件读取权限信息,r 读,w 写,x 执行,- 无此权限 (2)文件主人权限 (6)规定文件主人是谁 (3)文件组的权限 (7)规定文件组 (4)其他人的权限 (5)连接数或指针数 每个目录至少有2个指针,指向上一个目录,下一个目录。 文件的指针数至少为1 (8)文件所占空间的大小 如建一个空的目录,则占空间为512字节 (9)文件创建时间 (10)文件名字 4.mkdir 建目录,令格式:mkdir directory_name directory_name mdir y1 y2 /y3 (可以是相对路径,也可以是绝对路径) 5.rmdir 删除目录 命令格式:rmdir directory_name 只能删除空目录 rm -r directory_name 可删除子目录及子目录中的文件 例如:$rmdir /export/home/ora816/report $rm -r /export/home/ora816 rm -ir 可以进行交互式删除 6.cat显示文件内容,命令格式:cat filename(s) $cat /etc/passwd root:x:0:1:000-admin:/:/sbin/sh 如果一屏显示不下,自动滚屏 连接文件,命令格式:cat file1 file2>file3 cat file1 file2>>file3 cat >newfile ;创建新文件,行输入 cat >>filename ;在文件的末尾增加一些文本 7.cp 拷贝文件,命令格式:cp [-options] source destination 例如:$cp /opt/y1 /export/home/y1 如果目标文件存在,不会改变文件的主人,组,存取控制 如果目标文件不存在,同源文件的主人,组相同,但存取控制同目标文件系 统相同 考贝目录,命令格式:cp -r source destination 拷贝一个目录及所包含的所有文件到当前目录下的相同目录名下 $cp -r /export/home/y1 /opt/y2 8.ln 连接命令,格式:ln exit-file new-file ln -s exit-file new-file 9.Mv,移动或修改文件名,命令格式:mv [-options] source destination mv y1 y2 10.rm ,删除文件或者目录 $rm filename $rm -r dirname $rm -I(小写) filename 交互式方式 11.More,逐屏显示文件内容,命令格式:more filename(s) 如果一屏显示不下,系统会自动停止,在屏幕底部显示,"--more--",等待使用 下列控制键控制显示。空格 显示下一屏 回车 显示下一行 b 返回上一屏 f 显示下一屏 h 显示帮助 q 退出,返回 shell 提示符 %= 显示这一屏最后一行的行号 !command 执行命令,如:!pwd 12.grep,搜索字符串,命令格式:grep [option] string file-list -v 显示不含有该字符串的行 -n 显示string所在的行,以及行号 -i 忽略大小写 13.Head, 显示文件的前 n 行,命令格式:head [-n] filename(s) $head -100 yy 默认为10行 14.Tail, 显示文件的后 n 行,命令格式:tail [-n] filename(s) $tail -100 yy 15. wc统计文件的行数,单词数,字符数。命令格式:wc [option] filename -l 行数 -w 单词数 -c 字符数 16.Find查找文件。命令格式:find 范围 执行动作(expression) expression: -name filename -user username (查找属于某一个用户的文件) -print (显示查找的结果) -exec command \; (执行命令) 例如:find / -name passwd -print find / -name core -print -exec rm { } \; 发现core文件,将其删掉 find / -name netscape -print -exec chmod 744 { } \; 17. chmod 修改文件权限,命令格式:chmod who [operation] permission filnname who:u(user),g(group),o(other),a(all) operation : +,- permission:r,w,x $chmod a+w filename 权限 值 rwx 7 rw- 6 r-x 5 r-- 4 -wx 3 -w- 2 --x 1 --- 0 权限 值 rw-r--r-- 644 rwxr-x--x 751 rwxrwxr-x 775 rwxrwxrwx 777 $chmod o-r .profile $chmod u+x go+r .profile $chmod 755 .profile 18.chown, 修改文件属组,命令格式:chown [-R] user_name file_name $chown -R ora816 ora816 $chown ora816 .profile 19.ps ,显示进程 ps 先是当前窗口启动的进程 ps -ef 列出系统的所有进程 uid:用户id号 pid:进程号 ppid:父进程号 c:进程进度 stime:进程开始时间 tty:启动的终端 time:累计运行时间 cmd:启动进程所需时间 20.Kill关闭进程 kill pid kill -HUP pid 重起进程 21 df 显示磁盘空间使用情况 $df -k Filesystem kbytes used avail capacity Mounted on /dev/dsk/c0t3d0s0 865678 607176 197905 76% / /dev/dsk/c0t1d0s3 20191 5022 13150 28% /export/home /dev/dsk/c0t1d0s0 865678 534524 270557 67% /opt /dev/dsk/c0t1d0s1 76767 17 69074 1% /var/mail swap 145020 204 144816 1% /tmp 22 man $man ls 23 vi,编辑命令 vi 的操作方式有两种,命令方式,输入方式,用Esc来切换 (1) 启动与退出 $vi filename $vi + filename 停在空行第一个位置 $vi +/string filename 停在字符串所在行的位置 $vi +n filename 光标直接停在第n行 q! 强制退出 wq! 强制存盘退出 (2) 移动光标 h j k l 分别向上向下向左向右移动一个字符 (3) 文本编辑命令 插入命令: I(小写) 在当前光标前输入 I (大写) 在当前行首插入 a 在当前光标后输入 A 在当前行末插入 o 在当前行的下一行插入新一行 O 在当前行的上一行插入新一行 删除命令: x 删除光标所在字符 dd 删除一行 ndd 删除n行(从当前行及向下的n行) dn 删除n个字符 (4)底行命令 搜索字符串: /string 从前向后搜索 ?string 从后向前搜索 字符串替换: [address]s/search-string/replace-string/ address: n 行号 n1,n2 两行之间 % 全文查找替换 例如: %s/net/com/ (5) 设置vi工作情况 :set nu 设置行号 :set nonu 取消行号 :set list 显示可见字符 :set nolist 不显示可见字符 :set all 显示所有可以设置的变量 :!command 简单的操作系统命令 二Solaris的安装 1 分两种安装:本地安装 本地有CD-ROM,安装软件,将机器加电后,同时按下stop+a,到OK状态下,ok boot cdr om,J进行安装。 网络安装 本地无CD-ROM;对多台机器同时进行安装,但是只有一张安装盘 2网络安装 举例:有两台机器进行安装,一台Server。 在Server上:(1)修改文件 #vi /etc/hosts 10.1.1.1 host1 10.1.1.2 host2 #vi /etc/ethers Ethernet.address hostname 8:0:20:1e:2c:5f host1 #vi /etc/dfs/dfstab share -F nfs -o ro,anon=0 /cdrom/cdrom0/s0 (2)运行命令 #/usr/lib/nfs/mountd #/usr/lib/nfs/nfsd #/cdrom/cdrom0/s0/add_install_client host1 sun4u host2 sun4m Sun的核心结构,Sun4c,Sun4u,Sun4m等。 Client: 加电后,到OK状态下, Ok boot net 3 安装过程中出现的问题 (1)Name service NIS+ NIS Other None (2)System part of a subnet yes or no (3)Preserve date / /usr 不能保留数据的 /opt /export/home 能保留数据,但是安装时,要保持分区大小的不变 (4)软件选择 Core Enduser Developer Entire distribution Entire distribution plus OEM support (5)分区的大小 分区多,空间分散严重,硬盘利用率低 分区少,数据存储不安全 分区最多可以分为八个分区 /(根分区) 存有系统最重要的核心文件,支持硬件。如/dev /devic es /usr 存有二进制可执行文件,库文件,支持软件。 Swap 内存交换,虚拟内存区 /var 存有系统的日志文件 /opt 存放第三方软件,当OS损坏,此文件系统的文件可以保存 /proc 专门作进程管理的目录,有很多以进城号命名的文件 /export/home 存放用户家目录纪用户文件 /etc 存放系统的配置文件,系统的启动文件,不划为分区。 (6)安装数据 三 系统的安全性 ⒈Solaris功能强大,提供多种服务,但是大多数服务用户并不需要,并且有一定的安全 漏洞,要把不需要的服务关闭,因此修改/etc/inetd.conf文件。 例如:ftp.telnet,rlogin,rexec 等 2. /etc/rc2.d,/etc/rc3.d目录下有多个系统启动时要执行的脚本,有些用户并不需要 ,因此要修改这两个目录下的文件。 3. 为了防止不受欢迎的用户利用ftp协议登录服务器,在/etc/目录下增加文件ftpuser s,将不允许的用户添加到此文件里。 4.安装TCP_wrappers,可以限制tcp,telnet登陆的机器 四 用户的管理 1. 添加用户 (1) #admintool 图形化界面,选择edit----add user 输入用户名:用户名不能全是数字,不能用大写,不能超过八个,用户名是唯一的,不 能重名 User ID: 一般取系统默认值,UID相同的用户,系统认为是一个用户。 Primary goup:一个用户必须属于一个组,默认得为10组,即staff组。 Secondry group:一个用户可以属于多个组,具有多个组的权限。 Login shell: Solaris 系统有三种shell,其作用,解释翻译命令;设置用户登陆环境;编成语言。 B shell: 语法类似汇编语言 /bin/sh;/sbin/sh C shell: 语法类似C语言 /bin/csh Korn shell 介于两者之间 /bin/ksh 它们之间可以互相转换:B shell ____csh____C shell other: 例如邮件用户,我不让他执行命令,只是提供空间,那么我就不给他sh ell。随便写一个不存在的命令或者 文件。/noshell Password : Cleared until first login 用户第一次登陆的时候,输入新的密码 Account is locked No passwd ---setuid only Normal Passwd Min exchange days Max exchange days Max Inactive days Expiration Date year mounth day Warn days 创建家目录 /export/home/xxx 或者不给他创建家目录 (2) 利用useradd 命令 #useradd yyyy 用此命令产生的用户格式:/etc/passwd yyyy:x:1011:1::/home/yyyy:/bin/sh 1: other group passwd yyyy # useradd -u uid -g group -d dir -s shell -c comment loginname #passwd loginname 2.用户管理文件 /etc/passwd 用户基本信息 root:x:0:1:Super-User:/:/sbin/sh daemon:x:1:1::/: bin:x:2:2::/usr/bin: sys:x:3:3::/: adm:x:4:4:Admin:/var/adm: lp:x:71:8:Line Printer Admin:/usr/spool/lp: smtp:x:0:0:Mail Daemon User:/: uucp:x:5:5:uucp Admin:/usr/lib/uucp: listen:x:37:4:Network Admin:/usr/net/nls: nobody:x:60001:60001:Nobody:/: yxh:x:1004:14::/home/yuxinhua:/bin/sh 用户名:口令域(替是口令有信息,信息在/etc/shadow文件里):用户号:首要组号: 注释:家目录:登陆shell 用户有两种:普通用户 超级用户 uid=0 /etc/shadow 加密的用户口令,以及相关的控制信息,只有超户才可以访问 root:OvrYzBZ79MOao:11214:::::: daemon:NP:6445:::::: bin:NP:6445:::::: sys:NP:6445:::::: adm:NP:6445:::::: listen:*LK*::::::: yxh:R.9iBuRiARPU2:11394:::::: username:passwd:lastchg:min:max:warn:inactive:expire username The user's login name (UID). passwd A 13-character encrypted password for the user, *LK* string to indicate that the login is not accessible *NP* which shows that there is no password for the login. lastchg The number of days between January 1, 1970, and the date that the password was last modified. min The minimum number of days required between password changes. max The maximum number of days the password is valid. warn The number of days before password expires that the user is warned. inactive The number of days of inactivity allowed for that user. expire An absolute date specifying when the login may no longer be used. flag Reserved for future use, set to zero. Currently not used. /etc/group root::0:root other::1: bin::2:root,bin,daemon sys::3:root,bin,sys,adm adm::4:root,adm,daemon tty::7:root,tty,adm staff::10: sysadmin::14: username:passwd:gid:userlist 四 系统的运行级别 init 0 : 监控状态,即OK状态,可以做硬件参数设置,可以关机 init 1,s,S: 单用户状态,系统的管理状态,只允许root登陆, ok boot -s init 2 : 多用户状态(受限的),不支持远程挂接 init 3 : 多用户状态(开放的),完全共享系统资源。 Init 4 : 预留的,替换多用户状态 Init 5 : 掉电状态,自动关闭电源 Init 6 : 重起状态 五 文件系统 1.当对某一个设备如光驱,硬盘进行操作的时候,首先要对它们进行挂接,即mo unt,挂接到某一个挂接点上,/etc/vfstab是一个缺省的文件系统表。 #device device mount FS fsck mount mount #to mount to fsck point type pass at boot options # /dev/dsk/c0t3d0s1 - - swap - no - /dev/dsk/c0t3d0s0 /dev/rdsk/c0t3d0s0 / ufs 1 no - /dev/dsk/c0t1d0s3 /dev/rdsk/c0t1d0s3 /export/home ufs 2 yes - /dev/dsk/c0t1d0s0 /dev/rdsk/c0t1d0s0 /opt ufs 2 yes - /dev/dsk/c0t1d0s1 /dev/rdsk/c0t1d0s1 /var/mail ufs 2 yes rq swap - /tmp tmpfs - yes - /dev/dsk/CxTyDzSw 逻辑设备名,做了文件系统的设备,可以随机读取 /dev/dsk/CxTyDzSw 逻辑设备名,裸设备,只能顺序读取 Cx:SCSI controller Num,第一个为C0,第二个为C1 Ty:每个设备都有一个设备号,0~~3 硬盘 4~~5 磁带机 6 光驱 Dz:逻辑单元号 Sw: 分区号 device to mount the device (or resource) to mount, e.g. /dev/dsk/c0t0d0s6 device to fsck the raw device to fsck, e.g. /dev/rdsk/c0t0d0s6 mount point the mount directory, e.g. /usr FS type the name of the file system type, e.g. ufs, hsfs(光驱), pcfs(软盘), nfs, swap fsck pass the number used by fsck to decide the disk ordering when checking the file s ystem automatically ,如为1,按顺序监测所有文件系统;如大于1,自动按照设备最 高效的方式监测,如为0,监测非unix系统。 mount at boot whether the file system should be mounted automatically by the mountall comm and. e.g. yes, no ,是否在启动是进行挂接。 mount options the options passed to the mount program, e.g. ro, rw,rq.默认为rw 2. 文件系统的挂接与拆卸 (1) 挂接 mount(关机后无效) #mount -F fstype -o option mount-device mount-point 对光驱进行挂接 #mount -F hsfs -o ro /dev/dsk/c0t6d0s0 /cdrom 对另一机器的主机进行挂接 #mount -F nfs -o ro host:/cdrom/cdrom0 /cdrom 注意:挂接本地资源,默认为ufs 挂接远程资源,默认为nfs -o 默认为可读可写 例:对硬盘挂接,(默认选项) #mount /dev/dsk/c0t2d0s0 /data (2) mountall 执行/etc/vfstab,对应经挂接的设备,不再进行第二次挂接 (3) umount umountall 命令:umount mount-point umount mount-device 例: #umount /cdrom #umount /dev/dsk/c0t2d0s0 umountall 除/,/usr, swap,都能卸载 六 文件系统的备份与恢复 1.备份计划: 备份介质 磁带,软盘 备份哪个文件系统 备份周期 2. 备份种类: 全盘备份 级别为0 增量备份 级别1~~9 增量备份:如级别5:备份5级别前比其低的n级别的备份,即备份n~~5级之间 的增量。 例:周一 周二 周三 周四 周五 周六 周日 1 2 3 4 5 6 7 0 5 5 5 5 5 5 8 9 10 11 12 13 14 3 5 5 5 5 5 5 0级:月备份 3级:周备份 5级:日备份 3. 以磁带机为例备份文件系统 磁带机的逻辑设备名:/dev/rmt/0 /dev/rmt/0n 不倒带,它们是字符文件 备份/export/home 命令:ufsdump 0cuf /dev/rmt/0 /export/home 0:备份级别,此指的是全盘备份 c:盒式磁带 u:更新备份纪录 f:要操作的设备名 /export/home:要备份的文件系统 注意:备份时,应选择在单用户下。 4. 文件系统的恢复 例:/export/home 遭到了破坏,它对应的的设备名:/dev/dsk/c0t3dos7 #init s #umount /export/home #newfs /dev/rdsk/c0t3d0s7 #mount /dev/dsk/c0t3d0s7 /export/home #cd /export/home #ufstestore rvf /dev/rmt/0 (r:restore;v:列出文件名字;f:要操作的设备名字) 此过程对/ /usr 分区不适用 例:根分区遭到破坏,恢复过程 /---------〉/dev/dsk/c0t3d0s0 ok boot cdrom -s #newfs /dev/rdsk/c0t3d0s0 #mount /dev/dsk/c0t3d0s0 /a (此光驱的一个空目录) #cd /a #ufsrestore rvf /dev/rmt/0 #cd /usr/platform/'uname -I'/lib/fs/ufs (uname -I :核心结构名字) #installboot bootblk /dev/rdisk/c0t3d0s0 #init 6 5.时钟进程 定时启动服务和进程,在系统启动的时候,只初始化一次。 文件:/var/spool/cron/crontabs/username 例: /var/spool/cron/crontabs/root 文件格式: 分 时 日 月 周 command 0~59 0~23 1~31 1~12 0~6 例: 00 1 * * * ufsdump 0cuf /dev/rmt/0 /export/home 相关文件:/etc/cron.d /cron.allow /etc/cron.d/cron.deny /etc/default/cron CRONLOG=Yes No 决定是否有log文件,此文件放在 /var/cron目录 |