- 论坛徽章:
- 0
|
第三章 syslog进程
应用程序通过syslog()函数,发消息给syslogd进程,默认系统将信息写到/var/adm/messages文件中,并且发给console,发给本机的其他用户,发给其他主机的syslogd进程(syslog的消息四个去处)
如果系统不关机,每隔一个星期系统将messages文件-->messages0文件-->messages1文件-->messages2文件-->messages3文件
产生消息:kernel;Daemons(系统中自动启动的与系统相关的进程);User processes;logger命令
syslogd进程配置文件:/etc/syslog.conf 此文件不同列中要用tab键分隔,左边是消息的来源(selector field 由多个facility.leverl构成),右边是消息的去处(action field)
facility包括:kern,user,mail,daemon,syslog,lpr,news,uucp,cron,local0-7,mark,*
level包括:emerg(0),alert(1),crit(2),err(3),warning(4),notice(5),info(6),debug(7),none(8) warning以上一定要处理,none表示不发送消息
action field中:/filename发送到文件或者设备,/dev/sysmsg和/dev/console都是发送到console;@host 发送到指定主机的syslog进程;user名,user名 发给指定用户;* 发给所有的用户
如果有ifdef('LOGHOST',目的1,目的2),则看LOGHOST变量的值,为"T"发给目的1,为"F"发给目的2;
用#/etc/init.d/syslog start 启动syslogd进程;用#/etc/init.d/syslog stop 停止syslogd进程;修改syslog.conf进程生效可以先停后启,也可以用#pkill -HUP syslogd 重新启动进程;
*** 在/etc/hosts 文件中的列中为"ip地址 主机名 别名"(别名如loghost)
*** 如果在hosts文件中的loghost对应的ip和hostname对应的ip一致则LOGHOST变量的值为"true",不一致则LOGHOST变量的值为"false"
*** 用#inetd -s -t & 启动inetd进程则系统会记录通过TCP服务连接本主机的进程
*** 系统是在启动/etc/init.d/inetsvc脚本时启动inetd进程
用logger命令可以传消息:#logger [-i] [-f 文件] [-p 消息发送类型](缺省为user.notice) [-t tag] [消息]
例如:#logger -p local0.notice "This is test." (在syslog.conf文件中要有对应local0.notice的输出位置)
第四章 磁盘管理
安装DiskSuite:在/cdrom/cdrom0/Solaris_8/EA/products/DiskSuite_4.2.1/下运行./install脚本;安装结束重新启动后用#metatool命令查看安装是否成功;
DiskSuite:可以对硬盘/分区做raid0/1/5(廉价磁盘冗余阵列),目的:a.为了提供单个文件系统的容量;b.提高可靠性;c.提高i/o
***** 系统中第一次安装完DiskSuite后启动,有个报错,提示要做mateDB,用于存放系统中做raid的信息(选中要在mateDB分区的分区拖入metaDB模板中并提交)
raid0分类:stripe(条带化,数据分块写到多个磁盘/分区上),例如原/dev/dsk/c0t0d0s3和/dev/rdsk/c0t0d0s4操作后为/dev/md/dsk/d# (在mount时候用)和/dev/md/rdsk/d# (在newfs和fsck时候使用)
coneat(串接,数据上一块盘写完后写下一个盘)
raid1(镜像):至少两个盘,一个工作盘,一个镜像盘,写的时候同时写,读的时候有控制,提高可靠性
***** 在DiskSuite做raid1时默认是做raid0+1(要分别先做raid0)
raid5:至少三个盘,数据分块写到多个盘上,例如:块1写在1,块2写在2,则在3上写块1和块2的校验信息,校验信息和数据块都分散在不同的盘上(raid3是将校验信息写到固定的一块盘上)
***** 如写操作小于25%适合于用raid3或者raid5
用DiskSuite做好的分区还要用#newfs /dev/md/rdsk/d# 和#mount /dev/md/dsk/d# /mnt 建立文件系统并mount到文件系统
*****用DiskSuite做好的分区可以用#metainit d10(新) -p d0(旧) 100mb() 拆成新的小分区(和版本有关,有些版本没有-p参数)
对应Volume Manager软件,对应每一个盘只认s3和s4分区,其中s3用于建立raid和卷等,s4分区用于保存vm的信息
第五章 虚拟文件系统和swap
文件系统分类:1.基于盘的文件系统:硬盘 ufs;软盘 pcfs;光盘 hsfs;
2.网络文件系统: nfs 等;
3.虚拟文件系统:又称为基于内存的文件系统 如procfs ;tmpfs ;fdfs ;swapfs ;等
procfs:(/proc)描述系统中正在运行的进程的信息;
fdfs:文件描述器文件系统,描述系统当前打开的文件的信息;
swapfs和tmpfs:都和交换区有关,交换区大小应该至少是一倍的内存并且满足操作系统和应用程序的要求(一般内存1-3倍内存)
swap命令:#swap [选项] [文件] 选项: -s 和 -l 都是查看swap; -a 添加文件为交换区; -d 从交换区中删文件;
*** 增加交换区:#mkfile 50m /export/data/swapfile ;#swap -a /export/data/swapfile 添加;如果要永久使用再在/etc/vfstab中加 "文件名 - - swap - no - "
*** 删除添加到交换区的文件:#swap -d /目录/文件名 ;如果文件不用可以用rm删除
dumpadm命令:缺省:系统有问题时系统将内存中的信息写到交互区;系统启动时查看是否有savecore,如果有就将信息写到/var/crash/'uname -n'/vmcore.X文件和unix.X中;
用#dumpadm 可以看系统如果当前产生panic时系统要dump的信息和系统如果再启动的savecore的配置;配置文件为/etc/dumpadm.conf;
全命令#dumpadm [-nuy] [-c content-type] [-d dump-device] [-m min k | min m |min%] [-r root-dir] [-s savecore-dir]
coreadm:管理系统进程异常结束时候(默认会在当前目录产生core文件)的命令,配置文件为/etc/coreadm.conf
*** %%:当前有效shell的进程号;%p pid;%f 文件名;%n 系统uname -n结果;%m 系统uname -m结果;%u uid;%g group id;%t 时间;
*** 常用#find / -name core -exec rm {} \; 删除系统中的所有core文件
第六章 nfs
nfs server:提供nfs服务; nfs client:使用nfs服务; (nfs服务只能限制主机的连接,不能限制用户的连接)
nfs server启动mountd(必须,响应c的mount),nfsd(必须,响应c的数据访问),statd(client端进程),lockd(client端进程,与statd一起提供锁服务)和nfslogd(8才有,记录log)进程
例: server client
#share [-F 文件系统类型] [-o 选项] [-d 描述] /export/home(目录) #mount server:/export/home /mnt
选项: ro 只读;rw 读写;root=client 访问资源还是以root用户身份(缺省root用户是用nobody用户身份访问资源);ro=客户端1:客户端2 客户端1,2只读;
rw=客户端1:客户端2 客户端1,2读写;anon=0 所有访问的用户都是以root用户身份访问资源;
log=标签 将日志记录到/etc/nfs/nfslog.conf定义的标签对应的目录,文件等定义的目的地;
*** 单独用#share 看当前share的目录
*** 修改/etc/dfs/dfstab文件,在其中加入对应share命令,则系统重新启动后自动执行share命令,或者用#/etc/init.d/nfs.server start 启动使之生效
*** share时用#ps -ef|grep ufs看系统是否有mountd和nfsd进程,如果没有用/usr/lib/nfs/mountd和/usr/lib/nfs/nfsd启动进程
*** 在client端:用#dfshares 主机名[或者ip] 查看主机上共享了哪些目录 ;不带主机名看的是本地共享的目录
*** 在server端:用#dfmounts 可以查看本主机共享出去哪些目录被mount;#dfmounts 主机名[ip] 看主机重共享目录被mount的情况
*** 在server端:用#unshare [-F nfs] 目录名 可以取消共享目录,#unshareall 全部取消共享
*** 在server端:用#shareall [-F nfs] 可以将配置文件/etc/dfs/dfstab中的share命令执行一遍;用#unshareall [-F nfs] 可以取消所有的share
*** 在client端:用#mount [-F nfs] [-o 选项] 主机:共享目录 mount点 可以mount起来主机共享的目录
例如:#mount -o ro host1,host2,host3:/usr/share/man /usr/share/man 其中 -o ro 表示只读;并且从host1->host2->host3的顺序查找主机上共享的目录
*** 在client端:用#mountall -r mount所有vfstab中的远程share;对应#umountall -r 拆卸所有远程share;
*** 在/etc/vfstab中如果有nfs的挂接在mount options中应该写"soft,bg",soft表示尝试一段时间未成功则跳过(hard一直尝试),bg表示后台挂接(fg前台);time=n,retry=m,retrans=i n*m*i是soft尝试的时间
*** 用share命令共享的目录在共享的时候是带着uid和gid到客户端,客户端如果passwd文件中有此uid和gid则mount后显示客户端的用户名和组名(客户端的用户和组具有对应权限),如果没有就显示uid和gid
*** NFS方式在vfstab文件中一些目录的推荐选项:(intr:可以用Ctrl_c停止,nointr不可以;suid:允许suid,nosuid不允许)
/usr ro fg hard nointr suid
/export/home rw bg hard intr nosuid
/opt/frame ro bg soft - nosuid
nfs的日志:要配置/etc/nfs/nfslog.conf文件,进程为nfslogd进程(手动启动为#/usr/lib/nfs/nfslogd)
第七章 AutoFS
进程automountd在发现用户访问autofs文件系统mount的nfs的目录时自动mount,一段时间不用自动umount(缺省10分钟);
配置文件为/etc/auto_master文件和/etc/auto_home文件(在auto_master文件中也可以定义自己的配置文件"/- 文件名"(用绝对路径,用相对路径将"/-"改为"/目录名");再编写自己定义的文件加入"mount点 -ro,soft(挂接选项) 主机:/share目录");
修改配置后生效要用#automount 命令启动automountd进程(如果已经启动则最好也执行使进程重新启动)
*** #automount [-t 时间] [-v] -t表示定义超时时间;-v表示详细查看automount的情况;
*** 用#/etc/init.d/autofs stop(或者start) 停止或者开始automountd进程
*** 任何局域网中主机共享的数据都可以在/net目录中访问到(可以用#rup 和#dfshares 主机 命令先看看;或者修改/etc/auto_master文件中的/net 中的nobrowse为browse)
第八章 CacheFS
访问nfs和hsfs时为了解决访问慢速设备时用到CacheFS,用户访问过的数据系统放到CacheFS中,下次系统再次访问时系统从CacheFS中读出.
创建CacheFS:a.#mkdir /cache ;
b.#cfsadmin -c /cache/cache0 ;
c.#mkdir /data
d.#mount -F cachefs -o backfstype=nfs(光驱写hsfs),cachedir=/cache/cache0,cacheid=data_cache(cacheid) 主机:/共享目录 /data
e.用#df -k 或者#mount 查看
用#cfsadmin -d data_cache(cache id) /cache/cache0 删除此cache id的cache
用#cfsadmin创建cachefs;用#cachefsstat /目录 查看命中率;用#cachefsstat -z 将所有统计清零;用#cfsadmin -l /cache/cache0 查看chache的一些情况;
用#cachefslog -f /目录/文件.log /目录 给cachefs建立日志文件;用#cachefslog /目录 查看对此目录的cachefs日志文件信息 (加-h参数是强制拆除此日志文件)
第十章 基于角色的访问控制(Role-Based Access Control)
两种分组:autherization(又称Right每个是一个分组,用户不能去改);profile(用户可以修改)
特殊用户:role,特殊方法创建,也会出现在passwd和shadow等文件中,要和autherization或者profile帮定.
特点:不能直接登陆,用户要执行命令时用su role切换到role用户;
有自己的三种shell: pfcsh/pfksh/pfsh (普通shell不能用)
四个相关配置文件:/etc/user_attr 用户管理的补充文件,存放与RBAC相关的用户的信息(role用户和已经有特权或者和role用户帮定的用户)
/etc/security/auth_attr 用来定义autherization,不能修改
/etc/security/prof_attr(包含的auth在auths=后定义)和/etc/security/exec_attr(补充定义profile,定义一些命令) 用来定义profile,不能修改
*** 在配置文件auth_attr中如权限为solaris.* 表示赋予所有solaris特权;solaris.grant 表示可以向其他用户授本用户具有的特权
*** 帮助文在/usr/lib/help/auths/locale/C目录下
auth --> profile --> user_attr
相关命令:#roleadd [-u uid] [-g gid] -d 目录 [-m] [-s shell] [-c "注释"] [-A authorization名] [-P profile名] role用户名 添加role用户
#rolemod [-u uid] [-g gid] [-d 目录] [-m] [-s shell] [-c "注释"] [-A authorization名] [-P profile名] role用户名 修改role用户
*** profile:来自于exec和auth,服务于role;
*** role:来自于profile和auth,服务于user;
第十一章 名字服务
四种: DNS(分层,用于INTERNET/LAN) ; NIS(平面结构,只用于LAN) ; NIS+ (分层结构,扩展NIS,基本不再用) ; LDAP(Solaris8后) ;
对应配置文件:/etc下的nsswitch.files/nsswitch.dns/nsswitch.nis/nsswitch.nisplus/nsswitch.ldap
DNS:server存放名称和ip的对应关系;client配置/etc/nsswitch.conf
*** 最初是用/etc/hosts文件进行本主机的解析
*** /etc/nsswitch.conf中配置名字服务的访问方式等配置,是dns/nis/ldap/nis+的开关文件(缺省各项服务都是files,从本地的/etc下的对应files中找)
可能取值: files/nisplus/nis/user(只在printers中可用)/dns(只在hosts中可用)/ldap/compat
第十二章 nis
正常情况下一台master,一台slave;配置时先将/etc下的ASCII文件(nis能够管理的文件)make为Maps(在/var/yp/域名 的目录下)供server使用,slave server中的Maps是从master server中push来的
各个机器上的进程:master server :ypserv(响应客户端ypbind和响应数据查询请求);ypbind(发帮定请求和发数据查询请求,主server找不到自动到slave);
rpc.yppasswdd响应nis中修改passwd的请求的;ypxfrd 为了响应maps的传递请求(slave server上运行#/usr/lib/netsvc/yp/ypxfr maps名 启动ypxfr进程更新maps时);
rpc.ypupdated响应用户修改publickey的请求;
slave server: ypserv ; ypbind;
client: ypbind;
用#ypcat [-k] maps名字 查看某个名字maps的内容
用#ypmatch [-k] 值 maps名 从某个maps中的某个值
在slave server中可以用#ypinit -s 主nis服务器名 全部更新maps
在/usr/lib/netsvc/yp目录中有ypxfr_1perday,ypxfr_1perhour,ypxfr_2perday三个推荐脚本,建议在slave server中的crontab中加入
用#sys-unconfig命令可以取消所有nis
配置网络安装:(只能在lan中)
1.把光盘放入,光驱共享
2.修改/etc/ethers文件,加入"8:0:20:b0:ae:d0 client1"(mac地址和主机名,中间用tab键),修改hosts文件中ip和主机名
3.到/cdrom/sol_8_hw1202_sparc/s0/Solaris_8/Tools中运行#./add_install_client -s 本机主机名:/cdrom/cdrom0 client1 sun4u (将客户端加入,sun4u是主机核心结构)
4.对于client1主机到OK状态下,用boot net即可找到此主机进行安装
第十三章 JumpStart安装
见JumpStart安装文档
[ 本帖最后由 race 于 2007-1-13 15:18 编辑 ] |
|