Chinaunix首页 | 论坛 | 博客
  • 博客访问: 135246
  • 博文数量: 34
  • 博客积分: 2010
  • 博客等级: 大尉
  • 技术积分: 331
  • 用 户 组: 普通用户
  • 注册时间: 2006-06-15 14:11
文章存档

2009年(1)

2007年(19)

2006年(14)

我的朋友

分类:

2007-08-28 23:51:49

个人积累--sun命令 希望对大家有用处 
SUN服务器可能遇到得问题总结(五)
转载地址:http://blog.chinaunix.net/u/16427/showart_124752.html
1)Q:装完solaris 9后,/usr 目录太小了,没有空间了,我又在机器上加了一块硬盘,
我想把这块硬盘作为以后的/usr目录来用,我该如何设置阿?
A:/USR目录是系统用的,不能再mount,可以mount到别的目录下面,做连接到/usr下使用。
例如:
新硬盘用c0t1d0s0做/usr的新空间。
# newfs c0t1d0s0
# mount /dev/dsk/c0t1d0s0 /mnt/new_usr
# mount /dev/dsk/c0t0d0s4 /mnt/old_usr
# cd /mnt/old_usr
# find . -depth -print | cpio -pdm /mnt/new_usr
-- 编辑 /etc/vfstab 加入下面一行
/dev/dsk/c0t1d0s0 /dev/rdsk/c0t1d0s0 /usr ufs 1 no -
(如果要把原来/usr的空间释放
# cd /mnt/old_usr; rm -r *)
# init 6
2) Q:假设有2台联网solaris 8主机,分别叫sun和earth,没有设置NIS或NIS+服务。
在sun上有用户root,a还有b;在earth上有用户root,a1还有c。
其中,a,a1属于同一个人--甲,b和c分属不同的另外2个人,乙和丙。
1、用户甲可以先以a的身份登陆sun,然后再以a1的身份telnet到earth。
2、甲可以在主机sun的GUI的登陆界面的options里选择remote login,以a1的身份直接登陆主机earth吗?(不登陆sun)
3、甲先以a的身份登陆sun,然后rlogin到earth,请问:他可以直接以sun用户a的身份rlogin到earth上吗?
a.如果可以的话,earth上需要设置的文件(/etc/hosts.equiv, /.rhosts)里,应该怎样设置,哪一个文件起决定作用?登陆以后,a在主机earth上是什么状态,例如:$HOME,$PATH等变量。
b.如果不可以的话,是不是因为a不是earth上的注册用户?换用a1这个身份呢,例如:sun$ rlogin -l a1 earth,应该可以了吧?不过,这样一来,和用telnet命令的结果不就一样了吗?
c.earth用户a1或者c的home directory里的.rhosts文件,是不是也可以设置成允许a登陆earth呢?如果可以的话,岂不是一般用户就可以向别人敞开系统的大门了?
d.乙只有主机sun上的注册用户b,只能登陆到sun上面;他在主机earth上没有账号,他有可能登陆到earth上吗?黑客办法除外!
e.以上允许登陆的几种情况下,什么情况下需要密码,什么情况下不需要密码?
A:什么都不用设置,直接登录2.可以的,因为sun和earth网络是连通的
3.不可以,earth上没有a这个用户
3.b 如果光从登陆效果来看,rlogin -l a1和telnet 没区别
3.c 不可以,因为earth上没有a这个用户
3.d不可以,理由如上
3.e如果没有写.rhosts的情况下,rlogin是需要密码的
3) Q : 为磁带机配置 Solaris Operating System
当添加一个外部 SCSI 磁带机时,必须修改 Solaris OS 配置文件 /kernel/drv/st.conf。
作为 root 来到 /kernel/drv/ 目录下,并建立 st.conf 文件的一个备份。
# cp st.conf st.conf.bak
使用编辑器(如 vi)打开该文件,定位到下面的行:
# tape-config-list=
如果它还没有取消注释,那么删除 # 来取消该行的注释。
该文件的以下部分包括对一些常用磁带机的配置设置。它们以三个用引号括起来、且以逗号分开的字段形式出现。如果碰巧正在安装列表中有的磁带机,那么可以滚动到相应行,并取消其注释。
例如,如果正在安装一个 WangDAT 3400,那么,这一行应该像这样:
# "WangDAT Model 3400", "WangDAT 4mm DAT", "WangDAT",
如果它还没有被取消注释,删除 #,取消对该行的注释。另外,如果这是要配置的最后一个或者唯一的磁带机,那么将该行末尾的逗号改为分号。
重要提示:所启用的最后一个磁带机的配置行(也就是最后一个非注释行)必须以一个分号结束。分号表示被启用的磁带机列表的结束。所有出现在最后一个被启用的磁带机前的启用磁带机都以逗号结束。否则,在执行重配置重新启动时将会出现错误。
滚动到该文件的下一部分,找到一行,其中位于等号“=”前的字段匹配前面提到的已启用磁带机配置行中的第三个引号中的字段。继续 WangDAT 磁带机的例子,寻找以 WangDAT 开头的行,像这样:
#WangDAT = 1,0x2b,0,0x659,1,0x00,0;
取消该行的注释。注意,如果存在超过一个匹配项,那么可能需要找到产生最佳结果的那项。
现在保存编辑过的文件。
请注意:如果 st.conf 文件不包含正在安装的磁带机类型的配置信息,那么就需要从制造商获取配置条目。
4) Q: 安装了php5,修改httpd.conf如下:
LoadModule php5_module modules/libphp5.so
但启动时,出错如下:
Syntax error on line 270 of /usr/local/apache2/conf/httpd.conf:
Cannot load /usr/local/apache2/modules/libphp5.so into server: ld.so.1: /usr/local/apache2/bin/httpd: \xd6\xc2\xc3\xfc\xb5\xc4: \xd6\xd8\xb6\xa8\xce\xbb\xb4\xed\xce\xf3: \xce\xc4\xbc\xfe/usr/local/apache2/modules/libphp5.so: \xb7\xfb\xba\xc5xmlRelaxNGCleanupTypes: \xb2\xce\xd5\xd5\xb5\xc4\xb7\xfb\xba\xc5\xc3\xbb\xd3\xd0\xd5\xd2\xb5\xbd  在浏览器的地址中输入后,出现下载对话框
我怎么办呀
A:   AddType application/x-httpd-php .php .php3 .phtml
AddType application/x-httpd-php-source .phps
有这个 /usr/local/lib/php.ini  ?
没有的话 cp (dir,path)/php.ini-dist /usr/local/lib/php.ini
httpd.conf DirectoryIndex index.php index.html
apachectl stop
apachectl start 有没有什么错误提示?
pkgadd -d libxml2-2.6.16-sol7-sparc-local
等会是不是还要装 MySQL? 我都是用 pkgadd -d 来装 Apache + Mysql + PHP 的,折腾了我整整一个星期,包括晚上。
我也是刚学这个,我是在下载的sol9-x86的.gz,直接pkgadd安装的,mysql和apache2都安装完了,apache2可以用了,mysql运行时也出了错,好像是少了包(这个等下解决,先解决php)
pkgadd -d libxml2-2.6.16-sol7-sparc-local
我先试一下pkgadd -d libxml2-2.6.16-sol9-intel-local 行否?可以了,感谢感谢,太感谢了,现在可以了
5) Q: 我是这个添加用户的:
#useradd -u 1010 -g root -d /export/home/user1 -s /bin/ksh user1
#passwd user1
修改好密码
但是我发先在/export没有home 的目录,那我创建的用户目录跑哪里去了??难道创建之前要先在export下面把home目录先建立好?
还有下面的问题
#id user1
uid=1010(user1) gid=0(root)
这里我的用户应该是root组的吧,可是
#su user1
$
$reboot
reboot: permission denied
我是ROOT用户组的怎么会没有权限??如果错了是错在什么地方,正确的做法是怎么做的,请大家帮帮我
A: #useradd -u 1010 -g root -d /export/home/user1 -s /bin/ksh user1 你忘了 -m 了吧?
〉但是我发先在/export没有home 的目录,那我创建的用户目录跑哪里去了??难道创建之前要先在export下面把home目录先建立好? /export下不可能没有home吧?
〉我是ROOT用户组的怎么会没有权限?应该是uid=o的人才有这个权限吧?root肯定可以啊!其他人么,就不好说了,你没ls -l一下reboot?
还有,为什么要用reboot呢?shutdown -y -g0 -i6 不好么?
或者,你再看看role based access contol里是怎么说的。
6) Q: solaris网络安装  
A: 网络安装你必须先用cdrom安装盘在本网络内
装一台启动服务器..
还必须先用cdrom安装盘在本网络或相邻网段
内装一台安装服务器..
(当然可在本网段内一台服务器上同时运行)
安装服务器:
#volcheck
#cd /cdrom/cdrom/s0
#./set_install_server /export/
配置客户机:
#/export/add_install_client .....(具体查man)
#share -F nfs -o ro /export
#/etc/init.d/nfs.server stop
#/etc/init.d/nfs.server start
(大概这些吧 !)
安装客户机:
stop+A
ok boot net
7) Q: 关于vfstab中的fsck pass,我这样理解对吗? 0或非数值表示不需fsck检查。
1表示需要检查,检查完成后才能继续处理vfstab中后面的条目。
>1表示将其加入待检查设备列表,等所有vfstab中的项目都处理完后一同检查,最多可以同时并行检查8个设备。
A: 0和- 表示boot时不执行fsck
除0以外的整数表示boot时执行fsck.
Q: 如何在sun下记录各个用户名telnet登陆信息的设置 例如:10。10。10。10是台sun主机,开了telnet服务,有用户名test1和test2和 test3共3个用户,我想对这三个用户telnet该sun主机后分别记录这三个用户所做的操作,并实时分别记录在 /export/home/test1和/export/home/test2和/export/home/test3这三个文件中,我该如何设置。劳烦 指教。谢谢。  
装个bash shell,看用户目录下的.bash_history文件
9) Q: 大家好,我是新手,我刚刚在ultra 10上装了一个solaris 9,不知道为什么,装好后,如果长时间不用(3个小时左右)它就自动关机,请高手赐教    
A:自动关机有2个原因:
1、部件过热的自动保护
2、powersave设定节能设置。搞定了,果然是/etc/power.conf的问题
10) Q:我是菜鸟接触solaris才几天。单位新购的Sun公司的V880,solaris9,70G×6,主要是用于科研计算,想把一块盘作为系统盘,另一块克隆系统盘以防万一,其他4块盘装计算软件和数据备份,局域网,没有专门的管理员。
用命令:
% dd if=/dev/dsk/c1t0d0s2 of=/dev/dsk/c1t1d0s2 bs=128
但要克隆约24小时! 最槽糕的是,为了检验克隆是否成功,用c1t1d0s2替换c1t0d0s2,无法启动,只有一串『OK』什么地。为何不能克隆?无论放在0号或1号设备 位都不行。另外128能否改为1024?应该怎样克隆才好。听说可以把其他4块盘合并用较好,以便Windows终端用户(大菜鸟级)登陆计算。请大家另 外帮规划一下,最好能有执行命令。
A:如果一定要做科隆,先把所有的应用关闭掉
dd if=/dev/dsk/c1t0d0s2 of=/dev/dsk/c1t1d0s2 bs=10240K
估计要1.5-2小时,这种科隆的系统由于硬盘的WWN号在物理地址中的问题,恢复比较麻烦,其实可以使用SOLARIS 9带的SVM,做个引导盘的镜像,剩下4个盘做个RAID5或者RAID 0+1来存储数据。这些操作论坛有很多精华和原创可以参考
需要将目的盘中的/etc/path_to_inst及/etc/path_to_inst.old两文件删除,然后关机、取走源盘,用boot -ar命令从目的盘启动系统,当提示是否"recreate path_to_inst"时输入y。
应该就可以了,精华里都有,希望下次先看一下FC-AL的盘需要这样做,SCSI的盘不需要。
11) Q:SOLARIS关于network services
(1) 管理internet service Daemon的后台进程 inetd
(2)在inetd启动网络的相关服务时的信息来自与/etc/inet/inetd.conf,它决定启动哪些服务,用什么命令启动这些服务,以及这些服务的相关信息,下面是我从此文件中截取的一段。
ftp stream tcp6 nowait root /usr/sbin/in.ftpd in.ftpd
telnet stream tcp6 nowait root /usr/local/bin/tcpd in.telnetd
rarpd stream tcp6 nowait root /usr/sbin/in.rarpd in.rarpd –a
(3)当对/etc/inet/inetd.conf进行修改时,要对此文件进行重读(即重新启动inetd后台进程),使用如下命令: #pkill –HUP inetd
(4)/etc/services文件记录一些常用的接口及其所提供的服务,在没有其它的用途,如果想查找某些服务极其所提供的端口,可以查看/etc/services文件。
(5)inetd是控制网络服务的后台进程,如果需要停止某些网络服务,只需修改/etc/inet/inetd.conf文件即可(即对其中的网络服务进行注释,封掉某些服务),然后执行
pkill –HUP inetd命令即可。
(6)每个网络服务在网络中必须有唯一一个被网络中所有hosts都公认的端口。Sun开发了扩展的client-server模式,它开发了一个叫 RPC,使用RPC时,客户机就会连接到其指定要求的服务,rpchind是一个有名的internet service注册程序。
(7)rpchind程序注册的端口及与此端口关连的网络服务都列在/etc/rpc文件中。
(8)使用rpcinfo 工具来管理端口注册
#rpcinfo –p hostname 查看rpc的注册情况
#rpcinfo –d sprayd 1 取消注册一个网络服务,取消后再用# rpcinfo –p|grep sprayd 命令来证实以下是否此网络服务已经被取消,然后执行#pkill –HUP inetd重启网络服务。
>在linux下面,可以用#service telnet restart或#/etc/rc.d/init.d/telnet >restart等这样的命令,在不重启系统的前提下,重启某项服务。
>在solaris下这样的功能该如何实现呢?
在solaris下面,也可以使用/etc/rc3.d/S15nfs.server stop ;
/etc/rc3.d/S15nfs.server start来重起服务。
>另外,在linux环境下,每个用户的目录里面都有一个.bashrc隐藏文件,在这
>里可以定义别名。在solaris下该如何操作呢?
这要取决于你用的是哪种shell,如果用的是bsh或者bash,那么在用户的目录里有一个.profile的隐藏文件,可以在这里定义。
如果用的是csh,那么这个隐藏文件应该是.cshrc.
12) Q:SHELL=/bin/sh,我在哪设置环境变量呢? 静态的啊!
/etc/profile and $HOME/.profile
在你用户的家目录中的.profile文件中加就可以了。
 
 
13) Q: 怎么解开bind-9.2.3-sol8-sparc-local.gz出错啦!
#gunzip -d bind-9.2.3.gz
gunzip: bind-9.2.3.gz: invalid compressed data--crc error
gunzip /home1/bind-9.2.3.gz
gunzip: /home1/bind-9.2.3.gz: invalid compressed data--crc error
gunzip: /home1/bind-9.2.3.gz: invalid compressed data--length error
请问大家这是什么问题呢?
A: 你是怎么下载的?又是怎么传到SUN机器上的?
跟GUNZIP的版本没关系。
正确的方法是先下载到PC上,在FTP到SUN上,FTP的时候需要bin方式。
gunzip /home1/bind-9.2.3.gz
gunzip: /home1/bind-9.2.3.gz: invalid compressed data--crc error
invalid compressed data--crc error这就是问题根源,找找哪步把压缩文件破坏了。
14) Q: 客户一台E450有个磁带机,现在有个磁带出不来了,有什么办法强行让磁带退出阿
A: 强按退出按钮,5秒.重启是个好办法。 在机器重启过程中看能不能取出磁带。如果不行,磁带机或者磁带有问题了。
15) Q: 使用ufsrestore恢复文件时i节点也恢复吗?
如果恢复单个文件的话,那个文件的i节点已经被占用了怎么办?
A: 覆盖文件,别管i 节点,如果非要钻这个话,可以对比一下前后的i节点到底有什么变化。
A level 0 dump must be done after a full restore. Because
ufsrestore runs in user mode, it has no control over inode
allocation. This means that ufsrestore repositions the
files, although it does not change their contents. Thus, a
full dump must be done to get a new set of directories
reflecting the new file positions, so that later incremental
dumps will be correct.
16) Q:SUN T3陈列硬盘坏了如何更换
A:1、准备好新硬盘,必需跟以前阵列的硬盘相同型号(尤其是容量、转速)
2、用串口线连接到阵列(通过超级终端),连接时可能会叫您输用户名密码
3、查看阵列状态
proc list  (查看当前进程状况)
fru stat  (查看各部件运行状况,您的2号盘的状况可能是substituted状态,如果proc list查看有进程运行除外)
4、取出坏盘,插入新盘,等约60秒,阵列自动会同步数据。proc list 可以看到同步已完成了多少,全部同步完成约几小时(146G大约4-5小时)
5、同步完后查看状态执行 fru stat   (fru list)命令
替换坏盘其实很容易。
17) Q:请问哪位高手知道 SOLARIS 1。X
上怎么建用户?它没有ADMINTOOL。
A:No such things like admintool in SunOS 4.x.x.
1. mkdir home_dir
2. vi  /etc/passwd and /etc/group
3. chown home_dir
Note: /etc/shadow doesn't  exist unless C2 or patch 100564 is installed ...
18) Q:请教crontab的一个问题:执行不了
以一个普通用户登陆
crontab -e回车
在dtpad中编辑以下信息,并存盘退出。
* * * * * /usr/sfw/bin/mozilla
预期每分钟起一次mozilla
一分钟后,没有反应,
但是可以收到邮件,邮件中显示:
Your "cron" job on ava
/usr/sfw/bin/mozilla
produced the following output:
(mozilla-bin:1863): Gtk-WARNING **: cannot open display:
请问这是什么原因亚??
说明一下:
有些命令就可以执行,例如
* * * * * /bin/ls > /dev/pts/4
A:在后面加上-display displayName参数,明确指定显示设备。
或者在前面设置DISPLAY环境变量
19) Q:solaris 9 上 sybase数据库的安装
A:solaris9下安装sybase的步骤
1 修改etc下system文件
set shmsys:shminfo_shmmax=67108864
set shmsys:shminfo_shmmin=1
set shmsys:shminfo_shmseg=256
然后运行touch ./reconfigure
最后重新启动reboot
2 创建sybase组,groupadd sybase
3 在opt目录下建立sybase文件夹
4 增加sybase组下的sybase用户并制定/opt/sybase目录
useradd -d /opt/sybase -g sybase sybase
5 编辑文件/etc/group,在sybase组下增加root和sybase
6 更改用户登陆 su - sybase
7 找到sybase的安装目录执行安装程序./setup -console
8 安装完成后,将文件SYBASH.sh更改名称为.profile,修改所有权,增加信息
执行命令:cp SYBASH.sh .profile
         chown sybase:sybase .profile
在.profile文件中增加一下信息
         DISPLAY=e3500:0:0
         export DISPLAY
         DSQUERY=testunix    (testunix 是 sybase数据库的名称)
         export DSQUERY
9 注销然后重新用sybase用户登陆
10 执行asecfg 开始配置sybase数据库
20) Q:sun新 挂上磁带机后 硬盘没了,去掉磁带机后,硬盘又显示了?
A:SCSI设备有各自的SCSI ID,缺省:
带机为 4 或5, 从带机后面看所选的ID,不满意可再跳成别的,
硬盘缺省为0, 1, 2, 3, 。。。。
光驱缺省为6, 也有为2的,
硬盘光驱也可跳线该SCSI ID,但Sun常常是自动设的。
磁带机和硬盘SCSI ID冲突,不要怕,先看拔下磁带,查一下原机硬盘所用的ID:
OK probe-scsi-all
记录下硬盘的SCSI ID,并决定磁带机准备选何SCSI ID,在磁带机跳下线,再连入机器,再查一下SCSI ID 真的不冲突:
OK probe-scsi-all
如不再冲突,boot -r 启动,即可用。
21) Q:我这的系统报告里总提示 omp- cpu alarm,有人说是一些进程占用了大量的进程,需要将那些死掉的进程重启,我想问一下,是否有方法可以查系统上哪些进程已经死掉。谢谢
A:所谓孤儿,就是父进程死掉后,由init进程收养的进程.孤儿进程能被杀掉.
所谓僵尸,就是子进程死掉后,父进程不收尸,导致进程表中仍被占用,僵尸不能被杀,因为它已经死了.
每个进程结束必然经过僵尸状态,因为要等待父进程来为它注销进程表,注销完进程表后,僵尸状态结束,子进程的生命周期也就结束了.
如果程序设计上有问题,父进程发生异常或陷入死循环,这样僵尸就无法被清除,会一直延续到父进程死亡或系统重新启动.
一般情况下,少量的僵尸进程不会影响到系统,因为它不会占用系统资源,但是如果僵尸进程太多,把进程表占满,系统无法生成新的进程,就会出问题了.
22) Q:有关vm、vxvm、sds、cluster的概念以及它们的关系
A:vm,Volume Manager,卷管理,常指用软件管理多硬盘的方式,一般在性能/可靠性/费用间平衡,如Raid0串接多硬盘,性能好但可靠性差,费用不变,Raid1镜像可靠性好,但需多一倍硬盘/费用,Raid5等折衷,及其它很多方法。
sds,Solaris Disk Suite,旧版本的Sun的卷管理软件,现叫SVM,Solaris Volume Manager,免费,支持Cluster, 无论Sun的,还是其它的。
vxvm, Veritas卷管理软件,Veritas Volume Manager, 支持Cluster, Veritas专门做软件,VxVM简单好用,在Sun平台常见,
pwerpath, EMC的卷管理软件,支持Cluster,EMC专门做存储,Sun平台连EMC时常见,
cluster,集群,以软硬件结合共同实现,即以通用服务器为节点,多个节点互相连接,组成一个连续可用的系统进行工作,或提供高可用性或提供高性能,用途不一。
但如注重高可用性,则必须避免单点故障,即出现单点故障时,服务可恢复或本来就不中断,服务器硬件通过采用冗余热插拔部件实现,存储也采用冗余的磁盘系 统,以使某个磁盘出现故障时操作不被中断,并且到服务器冗余的连接保证数据不被隔离,即存储硬件上往往采用磁盘阵列,软件上往往采用卷管理,个人体会是 VxVM不会把我仍在用户那回不来,企业常用,但SVM确实可用又免费,但本人的水平可不敢在线操作SVM。
23) Q:想问一下,目录服务Directory Server 如何启动啊,邮件服务器IMS安装完了,开始登陆界面可以登陆,重启服务器后就不行了,应该目录服务没启,
还有安装的WEBMAIL是英文界面,怎么改为中文啊,
A:找到目录服务器的实例的目录,
start-slapd
或找到admin server启动LDAP GUI:
startconsole
24) Q:我的问题是:
在Solaris里面, 如何查看"允许一个进程可以打开的文件数"
等核心参数.
ndd好象只能看到有关网络的参数.
A:#adb -k
然后输入
rlim_fd_max /E  
或者
rlim_fd_max /D
25) Q:我的8139的网卡问题,请帮忙,谢谢大家~
步骤是这样的:下载了8139的驱动,在solaris下unzip,
我的机器名是:solaris
执行./install
然后建立/etc/solaris.rtls0文件,内容:solaris
然后修改/etc/netmask文件,内容:192.168.0.0 255.255.255.0
然后修改/etc/hosts文件,内容:192.168.0.8 solaris
建立/etc/defaultrouter 文件,内容:192.168.0.1
最后reboot
问题出来了 :
1,reboot后使用ifconfig -a发现只有lo0起来了,请问为什么?谢谢
2,使用ifconfig rtls0 192.168.0.8 netmask 255.255.255.0 up来配置ip地址,结果发现仍然不能起来。
3,使用ifconfig rtls0 plumb,网卡起来了,可以正常ping通网络了。但是当下次启动的时候又看不见rtls0网卡,必须从新使用ifconfig添加。这个是为什么?
另外:还有个问题,就是我ping一个地址的时候,提示不是返回ttl值,而是提示(hostname)is alive.这个是为什么呢?
请大家帮忙,我刚接触solaris
A:请在安装之后,建一个/reconfigura文件,或使用devfsadm来创建新的设备树,你的原因在没有创建新的设备树,而是手工的启用网卡,故重启之后,设备即停用了我使用从新装了,先Install然后touch /reconfigure
系统自检的时候看见网卡了,但是进系统了以后还是一样,只看见lo0
如何解决?
很简单
你这里错了
创建的文件是/etc/hostname.rtls0不是你写的/etc/solaris.rtls0
我的hostname是solaris ,呵呵~
搞定了。
在/etc/rcS.d/下的S30network.sh里添加如下信息
ifconfig rtls0 plumb ip地址信息 up 就可以了
然后手动运行一遍./S30network.sh.搞定
26)Q:我用VxVM4.0来管理卷,我的一个磁盘以前在vxvm3.5时可以很好的用,
可是我重新安装了solaris9.0,然后安装了vxvm4.0,我要将磁盘初始化,在VEA中执行初始化时,出错,提示如下:
     Error V-40-49408-40
               Disk In Use
      Failed to execute the operation
我用vxdisksetup -i 命令,出以下提示:
# vxdisksetup -if c0t2d0
VxVM vxdisksetup ERROR V-5-2-3628 The dmpnode c0t2d0s2 is disabled.Can not
proceed with vxdisksetup.
A:我是这样做的,
1。我用启动的那个盘的 分区表复制到这个盘
     fmthard -s vtoc.txt > /dev/rdsk/c0t2d0s2
2。 用vxdiskadm将磁盘加初始化,初始化时我选默认的选项,其中有个什么
       Enter the desired format
         [cdsdisk,sliced,simple,q,?](default:cdsdisk)
我选择了默认的这个。
3。我用vxdisk list看状态,这时磁盘的状态是online invalid
4。在vea中我又来初始化磁盘,结果还是有问题,错误的意思是
     Invalid disk device for 'cdsdisk' format
5。我重新用vxdiskadm初始化,然后再第2步的选择中我选择了sliced
6。我再用vea界面来初始化,正常了。
SUN服务器可能遇到得问题总结(四)
1)Q:请教:两台电脑,一台用虚拟机做服务器,如何网络安装solaris
A:<网络安装的关键是设好install server,然后就和在本地安装一样了.
<直连应该可以,因为是通过网卡MAC地址来定位的>
通过网络安装SOL8 X86步骤
---------------------------
1.准备一张软盘,作好启动盘
2.将安装服务器和PC机连接到同一个子网中
3.在install server上用root拥护,按以下命令操作
3-1. mount cdrom(No.1 of 2 sol8 x86 CDs)
3-2. cd /cdrom/sol_8_ia/solaris_8/Tools
3-3. ./setup_install_server install_dir_path
3-4. umount并换另一张CD盘(No.2 of 2 sol8 x86 CDs)
3-5. mount cdrom
3-6. cd /cdrom/sol8_is/solaris_8/Tools
3-7. ./add_to_install_server install_dir_path
3-8. umount并换另一张CD盘(language CD)
3-9. cd /cdrom/sol_8_ia/solaris_8/Tools
3-10../add_to_install_server install_dir_path
4. 在 /etc/hosts中加入 172.28.1.44 kentsol8 (应该是PC机的地址和主机名)
5. 在install server上用root用户操作
5-1. cd $install_dir_path/solaris_8/Tools
5-2. ./add_install_client -i 172.28.1.44 -e 0:d0:59:0c:af:b8 -s hncmpp:/usr/sol8 kentsol8 i86pc
<注解:172.28.1.44 是PC机IP; 0:d0:59:0c:af:b8是PC机MAC地址>
6. 在pc机软驱中插入驱动盘,开始按照提示安装即可(安装时选择从network安装即可)
2 )Q:推荐一个很好的Solaris英文资源网站
A:
3)Q:/etc/rc2.d/S*为何用ps查不到?
A:Solaris 10 以前启动进程都在run script脚本里控制,既/etc/rc*.d文件,可以用进程命令ps查看,
Solaris 10 以后启动进程多数变为服务,由Service Management Framwork控制,用svcs命令查看,如svcs -a看当前激活的服务。
脚本的名称开头的S要大写。否则无法启动。
4)Q:公司有几台b2000的机器,装的是Solaris8的系统,原来还正常,春节关了机,放假回来后开机,发现启动不了。屏幕的最后两行是:
setting netmask of erio to 255.255.255.0
setting default IPv4 interface for multicast: add net 224.0/4: gateway name
显示了这两行就一直不动了。。。。为什么阿???
A:发现问题所在了,我在另一台机设置了nfs服务,这台机是客户端,为了自动挂载,把远程文件的挂载写到了vfstab里。结果在启动时nfs服务器没打开,客户机就起不来了。。注销那几行就好了。
5)Q: 请问如何配置SOLARIS的DNS,我是BIRD!
A: Solaris 10的DNS配置完成后,原始的/var/svc/manifest/network/dns/server.xml由于没有定义refresh方法,每 次重启后都需要手工运行svcadm enable dns/server。具体修改可以参考/var/svc/manifest/network下的文件
6) Q: 如何从800*600分辨率改到1024*768或更高?
A: 我的vmware中solaris9的x-windows分辨率是800x600,我觉得调试程序时很不方便.我知道在kdmconfig中修改,可是我被搞怕了.
在kdmconfig中更改x-window分辨率为1024*768后solaris不能正常显示,并且不能回到console或kdmconfig界面, 只能重新启动. 最糟糕的是每次重起后直接进入错误的显示设置,再次完蛋.
我已经这样被搞了几次了,每次都重新装了系统了事.
请问如何能中断这种错误的显示配置,重新回到console界面(这样我可以手工改回原来的显示设置)?
如果你是使用的Solaris10 for x86版本,可以试试用kdmconfig命令,输入kdmconfig命令后,出现kdmconfig对话框,选择Xsun对分辩率进行调整,而不要选 择Xron对分辨率进行调整,如果选Xron进行调整,可能就不能进入到窗口界面了.
7) Q: 我不想在telnet 时出现SunOS 5.7,以免得给人知道我的系统是什么操作系统,在哪里配置在telnet时不出现系统的相关资料呢?
A: 创文件/etc/default/telnetd
更多请man telnetd
Q: 操作系统是SunOS 5.8
想将sendmail从8.11.6升级到8.12.10
设想步骤如下,不知还缺什么,请指教
1. stop sendmail
#/etc/rc0.d/K36sendmail
2. 备份
/usr/sbin/sendmail
/etc/mail/sendmail.cf
不知道备份这两个文件是不是全了?!
3. 解开sendmail.8.12.10.tar.gz文件
4. 进入解开的目录,执行./build
5. 执行 sh build install
6. 重新启动sendmail
#/etc/rc2.d/S88sendmail
请做过的同志们指点一下.谢谢
还有就是我能直接升到8.12.10吗?
应该差不多吧,sendmail.cf文件也要重新生成。我是从8.6到8.11.6到8.12.10一路过来的,没有出现多大的问题。
怎么算直接升到8.12.10啊?
我的意思是不用升到8.12.8,再升到8.12.9,然后在到8.12.10吧!
sendmail.cf重新生成的话,用不用改什么东西?
还有我的步骤有漏的吗?我是个新手,从来没升过!请多多指教.谢谢
当然不用从8.12.8->8.12.9->8.12.10了,直接做就行了。
sendmail里cf/cf目录中有很详细的说明文件README,不可不看的,里面有很多功能的,如果你没有特殊也就无所谓了,我当初用8.12.10的sendmail和8.11.6的sendmail.cf也可运行,但这就失去了升级的意义了。
我当初升到8.11.6的时候还重新build了/usr/lib/mail.local,到8.12.10就只生成了sendmail和sendmail.cf,没什么问题。
 
9) Q: 我在Solaris 8下安装了Forte C++ Enterprise Edition 6 update 2,现在想咔嚓掉它,该如何办呢?
Solaris下还有什么好的c/c++编译器么?
Sun ONE Studio 8怎么样?可不可以用?
另外,这句“ps -ef | grep oracle”是什么意思呢?
A: 如装时没换目录:
# cd /var/sadm/prod/
目录下有一叫 xxxxforte_developer_6_2 类似的目录,有一叫uninstall_xxx的文件,并进去运行删除的GUI:
# /usr/bin/java uninstall_xxxx
在GUI中跟着走即可,提醒一下注意看自己有无保留license号。
* ps -ef | grep oracle 为查找oracle相关内存进程。
现在装Oracle真的需编译?最新的c/c++/fortran为Sun Studio 10。
43)Q:Feb 20 22:18:47 zhao hme: SUNW,hme0 : No response from Ethernet network : Link down -- cable problem?
就是如上的信息,我如何将这些信息关闭掉呢!
我记得可以在什么地方可以设置一下。
A: ... ide/solsysadmin.pdf
好好看看这本书,就知道答案了,本论坛也组织翻译过这本书,估计你下载了,但没好好看
eeprom tpe-link-test?=false
试试。
10)Q:请问在CDE环境中怎么禁用键盘上的那个电源按键?
A:将/usr/openwin/lib/speckeysd.map中的下面的行注释:
SunPowerSwitch - $OPENWINHOME/bin/sys-suspend
我已经找到答案了,daemon进程叫speckeysd,杀死该进程就好了
11)Q:run level 1 和 S 到底有什么本质区别?
A:运行等级说明
在Solaris 2.x环境中有8个系统运行等级,这里涉及到4个等级:
(1) 运行等级3
运行等级3也就是完全多用户模式.这是系统的缺省运行等级,也是系统的缺省状态所有系统处理均被执行,文件资源可用挂接,用户可用注册.
(2) 运行等级s,S
运行等级S是单用户模式,是一个特殊的运行等级.操作系统正在执行,但是所有用户均被注销,大多数系统处理如打印、邮件等都没有执行.只有一个用户,即超 级用户向系统注册.运行等级S对执行备份是很方便的,因为没有用户注册,所以所有数据都是稳定的. 系统由shutdown命令带入运行等级s,S.
(3) 运行等级0
该等级关闭(shutdown)系统至PROM等级,所以此等级对于关电源是安全的.
(4) 运行等级5
该等级关闭(shutdown)系统至关电源状态.
(4) 运行等级6
运行等级6用于关闭(halt)系统至等级0并重新引导至等级3.
12)Q:/home 目录没有写的权限吗
A:dr-xr-xr-x 1 root root 1 Feb 22 19:44 home
自己看一下权限嘛,/home这个目录是用来自动挂接远程计算机共享文件系统的。不要在它里面建目录。
个人主目录放/export/home下。
将/etc/auto_master中home一行注释掉
重新启动/etc/init.d/autofs
这个问题很常见。/etc/init.d/autofs stop           /etc/init.d/autofs start
 
13)Q:eject退光盘设备忙,怎样强制退出?
A:#/etc/init.d/volmgt stop
一般来说fuser -ck /cdrom/cdrom0即可
除非你当前这个用户还在cdrom目录当中
14)Q:fsck用法
A:对文件系统进行检查,并对损害的文件系统进行修复。
fsck的语法如下:
fsck (-F fstype) (-v) (-m) (-special…)
fsck (-F fstype) (-v) (-y|Y|n|N)
(-o fstype options) (special…)
其中:
-F fstype : 说明被检查的文件系统的类型
-v : 返回完成的命令行,但不运行
-y|Y: 对所有问题均回答Yes
-n|N: 对所有问题均回答No
-m: 对文件系统进行检查,不修复文件系统,
如果文件系统经检查后是可安装的,则显示
ufs fsck : sanity check : /dev/rdsk/c0t0d0s0 okay.
-o: 文件系统类型选项,选项由逗号分隔,
最常用的选项有两个:
P: 整理(preen)模式
F: 强制检查模式,此选项忽略文件系统状态标志。
1) 移去一个没有相关文件的目录入口 答Yes或Y来删除该目录入口
2) 重连接一个已分配但不能访问的文件
对fsck的"RECONNECT?"回答Yes,即把该I节点连接到lost+found目录下,文件名即是I节点号
3) 连接数调整 回答Yes或Y来改正连接数
4) 自由块表不一致 回答Yes或Y来修正超级块
  对于fsck询问的问题大多数情况下都可以用Yes来回答,所以在实际应用时,可以用" -y"选项来执行该命令
对硬盘进行检查和修复。
15)Q:如何增加 / 分区的大小
A:参考下文:
将根分区的大小改变
做这个操作最少需要两块硬盘,如果本机只有一块硬盘可以加一个阵列或外置硬盘,
至于磁带机,我没有做过,可是根据原理来看是可以的至于c*t*d0s0使用format命令就可以看到
ok boot cdrom -s (首先从光盘代入单用户)
#mount /dev/dsk/c1t1d0s0 /mnt (将另一块硬盘挂接到/mnt)
#ufsdump 0f - /dev/rdsk/c1t0d0s0 |(cd /mnt ; ufsrestore rf -)
(执行将主盘中根区下的所有数据拷贝到 /mnt,即附盘中)
#format (更改分区,注意:硬盘一定要有一些剩余空间,否则的话就要对其他分区的数据拷贝,
再截掉所拷贝分区的一些容量给根区这是增大根区,如果要缩小根区的话就不必这样了)
#newfs /dev/rdsk/c1t0d0s0 (重做主盘的根区文件系统)
#umount /mnt (将挂接摘掉)
#mount /dev/dsk/c1t0d0s0 /mnt (将主盘挂接到/mnt )
#ufsdump 0f - /dev/rdsk/c1t1d0s0 |(cd /mnt ; ufsrestore rf -)
(执行将附盘中根目录下的所有文件拷贝到 /mnt,即主盘根区中)
#installboot /usr/platform/sun4u/lib/fs/ufs/bootblk /dev/rdsk/c1t0d0s0 (安装超级引导模块)
重起后成功,本法在阵列上也通过,
16)Q:不好意思,怎么设置代理服务器啊?
A:偶也刚装了10 for x86,
在 /etc/defaultrouter 加入网关ip
/etc/resolv.conf 加入 nameserver dns的ip
/etc/nsswitch.conf ,hosts files 后添加‘dns‘三个字母
17)Q:solaris上如何将一个用户的权限加至与root相同的权限
A:改/etc/passwd,把该用户的UID改为0
18)Q:solaris 8中如何使用tar 释放备份文件中的一个文件?
A:tar xvf 备份文件.tar 需要释放的单个文件.xxx
注意的是:释放的文件一定要与tar文件的路径一致。
19)iPlanet的安装问题 提示如下:
Warning: Installation cannot determine the Domain Name
for this Host. Your Network Settings may not be correct,
or your host may be on a DHCP network. If you are using
TCP/IP your Domain Name must be filled in.
请问是哪里的设置问题?
A:iPlanet服务器,.Net出现后改叫Sun One,去年又改叫Sun Java System服务器,
用于部署Solaris/Windows/HP UX/Linux平台上的Web应用,包括web服务器等。
既然是Web应用,其所有服务器的安装基于使用DNS于Internet/Intranet。
Warning表明,你在安装时,没找到DNS和域名,如不愿真的配置DNS,也可加个假的骗过安装的检查。
实际上就是用domainname命令能否检查出域名,如没有则加域名:
domainname xx.xx.xx
再用domainname命令检查域名,如有即可,但此是临时的,如不想配dns,又要常有域名,建defaultdomain文件即可,
vi /etc/defaultdomain
xx.xx.xx
最好/etc/hosts也要加上带域名的主机名
x.x.x.x  xx    xx.xx.xx
20)Q:我安装solaris9的过程中配置了一块网卡的IP地址,现在可以用了,想将其他3块原装网卡装上来如何能做到,现在用ifconfig -a中能看到一块网卡
A:2个:
如hme0, 1, 2, ...
ifconfig hme0 plumb
ifconfig hme0 10.1.1.1 netmask 255.255.255.0 up
ifconfig hme1 plumb
ifconfig hme1 192.1.1.1 netmask 255.255.255.0 up
ifconfig hme2 plumb
ifconfig hme2 202.1.1.1 netmask 255.255.255.0 up
...
或改文件:
vi /etc/hostname.hme0, hostname.hme1, hostname.hme2, reboot.
21)Q:solaris8下安装oracle10g的问题
执行runInstaller 的时候
出现问题提示
Checking monitor: must be configured to display at least 256 colors    Failed <<<<
  >>> Could not execute auto check for display colors using command /usr/openwin/bin/xdpyinfo. Check if the DISPLAY variable is set.
Some requirement checks failed. You must fulfill these requirements before
continuing with the installation,at which time they will be rechecked.
Continue? (y/n) [n]
我是使用的xmanager远程登陆安装的
A:我把ip改了 改成我启动xmanager的  这个地方就过去了
22)Q:英文论坛
A:






这是我常去的一些。
23)Q:如何查找系统中某个进程所创建的线程信息(如数目等),例如,我运行某一个程序,系统给它分配了进程号,根据设定,程序运行后应创建几个线程,怎么才能确认这几个线程确实已经运行了呢
 
A:# ps -ecL
PID   LWP  CLS PRI TTY        LTIME CMD
   0     1  SYS  96 ?           0:06 sched
   1     1   TS  59 ?           0:00 init
   2     1  SYS  98 ?           0:00 pageout
   3     1  SYS  60 ?           0:54 fsflush
112     1   TS  59 ?           0:00 nscd
112     2   TS  59 ?           0:00 nscd
112     3   TS  59 ?           0:00 nscd
112     4   TS  59 ?           0:00 nscd
112     5   TS  59 ?           0:00 nscd
112     6   TS  59 ?           0:00 nscd
112     7   TS  59 ?           0:00 nscd
112     8   TS  59 ?           0:00 nscd
。。。
一个lightweight process(LWP)对应一个线程。
24)Q:Solaris系统不相信我能整她, Warning - Unable to  repair the /var filesystem. Run fsck manually(fsck -F ufs /dev/rdsk/c0d0s1).Exit the shell when done to continue the boot process.
在VMware中新装的系统,连显卡的SUNWxf86都装不上,显示为pkgadd:ERROR: unable to open admin file
A:我以前在u10上也碰到过个问题怎么做fsck都没用,后来先备份系统到磁带,然后再重新分区硬盘,把磁带上的东西倒过来还是没有,没办法只能重新装了。原因没有安装完整就重起Vpc,然后就象上面那样了.我已经重新安装了,真是受罪,安装太累人了.
26)Q:Sun V880重新启动后,网络不通,网卡不亮的故障!
我来叙述一下情况,还请大家帮忙!
1——〉880一台,初装时是SOLARIS 9,用的百兆口,后来改为了千兆光口,当时光口上的灯就不亮。后来,请来了SUN的工程师,来了后让把交换机啥的改为了自适应,后来就好了。
2——〉今天,我停了上面的数据库,用的shutdown immediate,然后reboot了,结果再起来时,发现光口的灯又不亮了。也恰好是我们的网络中心正在调试交换机,所以暂时找不到哪儿的问题。
3——〉我自己感觉是物理连接的问题,但总是觉得奇怪,怎么这么巧合,偏在我重新启动后发生故障了呢?还请大家多帮忙,谢谢!
A:1——〉首先用“grep ge /etc/path_to_inst ”,确定了可以查看到ge0这个口,也就是说网卡驱动不是问题。
2——〉查看了一下hostname.eri0,里面只有一个主机名,所以干脆“cp hostname.eri0 hostname.bak”“cp hostname.eri0 hostname.ge0”“rm hostname.eri0”。
3——〉因为以前配置过百兆卡,所以/etc/hosts啥的基本不用动,直接reboot -- -r。
4——〉启动后,千兆灯亮了,一切工作正常!
 
27)Q:各位大哥,小弟最近碰到一个问题,在sol9上,我把光盘放进光驱,
/cdrom/下看不到cdrom0,运行了volcheck也不行,请问这是怎么回事呀
A:/etc/init.d/volmgt stop
/etc/init.d/volmgt start
28)Q:DX们好,我是坛子的新手,也是UNIX的新手。近来自己学习的时候犯了个错误,不小心把/var/adm/wtmpx这个文件删除了。导致进不去相应的环境了。提示信息
No utmpx entry. You must exec "login" from the lowest level "shell".
Connection closed.
A: + A进入OK状态,boot -s起为单用户,
再进到/var/adm目录下,建空文件wtmpx:
cd /var/adm
touch wtmpx
chown adm:adm wtmpx
reboot
29)Q:#showmount
showmount: mail: RPC程序未注册
请问这个RPC是什么东东?
怎么注册?
能不能详细的讲解一下这个rpc,谢谢!
A:RPC remote procedure calls
NFS 需RPC,可能远端NFS服务器没share出来。
是没有 启动  nfsd  mountd  的缘故吧
/usr/lib/nfs/nfsd
/usr/lib/nfs/mountd
 
30)Q:各位大侠,/var分区过小,怎么样扩大?
A:找一空分区,如c0t1d0s3,先准备好文件系统:
newfs /dev/rdsk/c0t1d0s3
在将/var下所有的都拷过去,包括link,且保持一样:
mount /dev/dsk/c0t1d0s3 /mnt
cd /var
rdist -c -w * 主机名:/mnt
修改/etc/vfstab,下次启动时将c0t1d0s3 mount 成/var:
/dev/dsk/c0t1d0s3       /dev/rdsk/c0t1d0s3      /var ufs     5       yes     logging
...
重启动,或许需原/var得改名,省得重名。
31)Q:solaris中,内存利用率主要看哪个指示,要一个确切的数值?
A:Unix系统运行时, 不会有很多free的momory,即可查出类似60%利用率指标等,因为所有所谓的空闲内存,如60%等,你也不会看到空闲,全部被系统作为 buffer cache使用了,如内存中数据的和描述数据的cache用以加快文件系统的读写,不断变动,所以一般见不到空闲内存,60%等指标看内存意义不大,也未 必真实,所以实际操作中往往用命令间接看:
如系统中实际运行的内核是什么, 有多少,内存位置等:
% modinfo
Id Loadaddr   Size Info Rev Module Name
0  1000000  b9f58   -   0  unix ()
1  10704c8  1d20a   -   0  krtld ()
...
203 7bb54010   1d70  52   1  shmsys (32-bit System V shared memory)
204 7bfd0de8   1280   -   1  ipc (common ipc code)
具体内核是什么:
% kstat |more
module: bge                             instance: 0    
name:   bge0                            class:    net
      align_errors                    0
...
内存分配情况:
# sar -k 1
SunOS yanxihu 5.9 Generic_112233-05 sun4u    09/18/2003
16:30:49 sml_mem   alloc  fail   lg_mem    alloc  fail  ovsz_alloc  fail
16:30:50 6201600 5306868     0 70565888 65089424     0    15441920     0
各进程占内存情况:
% prstat
PID USERNAME  SIZE   RSS STATE  PRI NICE      TIME  CPU PROCESS/NLWP      
1898 zw125158  340M  219M sleep   50    0   0:27:30  21% soffice.bin/4
2569 zw125158  234M  123M sleep   49    0   0:38:09 8.1% firefox-bin/4
536 zw125158  131M  110M sleep   59    0   0:44:53 4.2% Xsun/1
...
每进程占内存,如代码,数据,堆栈等:
# pmap 814
814:    netscape
00010000     16K read/exec         /usr/dt/appconfig/netscape/netscape
00022000     16K read/write/exec   /usr/dt/appconfig/netscape/netscape
00026000    168K read/write/exec     [ heap ]
FEE30000     16K read/exec         /usr/lib/libmp.so.2
...
FF3E2000      8K read/write/exec   /usr/lib/ld.so.1
FFBE8000     32K read/write/exec     [ stack ]
total     4624K
系统取数据时读写cache的命中率等:
# sar -b 3 100
SunOS s17a 5.8 Generic_108528-09 sun4u    04/03/02
14:46:58 bread/s lread/s %rcache bwrit/s lwrit/s %wcache pread/s pwrit/s
14:47:01       0       0     100       0       0     100       0       0
14:47:04       0       0     100       0       0     100       0       0
14:47:07       0       0     100       1       1       0       0       0
系统内存的读入读出扫描速度等:
% vmstat 2
kthr      memory            page            disk          faults      cpu
r b w   swap  free  re  mf pi po fr de sr s0 s3 s8 s1   in   sy   cs us sy id
0 0 0 3134976 1100640 4 27  4  1  0  0  0  0  0  0  0  321 1251  535  1  1 98
0 0 0 3059392 876224 3  13 58  0  0  0  0  0  0  0  0  396 2313  832  9  1 89
1) Q:关于/tmp的问题
据说/tmp是一个pseudo的file system rather than a disk-based FS,可是看看/etc/vfstab里面,swap不就mount到了/tmp吗? swap可是disk-based的呀?
A:/tmp实际是映射在内存里的,提高临时文件系统速度。
/tmp里的文件,重启之后都不会保留的,可以试试
disk-based FS使用i-node,目录/文件/设备,均如此,
内存的文件系统使用v-node,swap 尽管mount在disk上,但由于Unix所对应的不是物理内存或硬盘,而是对应虚拟内存(64位),而虚拟内存所映射的是物理内存加硬盘上的swap 连续的空间,既swap 虚拟内存使用v-node,尽管是disk-based 。
当然,虚拟内存v-node,是在系统运行时,从disk上读来的,既是i-node的子集。
2) Q:请问.dtprofile文件和.profile文件有什么区别?在使用上有什么不同的要求吗?
A:.dtprofile只有在登录CDE时执行一次,.profile在每次用户登录时(包括在TERMINAL窗口中运行RSH时)都会执行。
3) Q:我们的系统都运行在solaris 8 x86上,但是由于是由多个人进行的编码,因此无法控制的在某些代码中存在内存泄漏。而且还有一些隐式的内存泄漏,就是某个线程大量的创建了内存,而处理线程无法处理的足够快,导致大量的内存堆积。
现在请教诸位,如何能够在solaris下查看内存使用总量,以及某个进程的内存使用量,查看某个进程的线程数等进程数据
A:在/usr/proc/bin下面有个pmap的命令,你man一下试试看;(sparc的机子有,不知道x86的又没有)                                 安装top包
4) Q:请问在solaris里如果让系统启动后就用bash和export LANG=zh要在那个文件里加进去?
是要在/etc/profile里加吗?
A:/etc/passwd里改该用户的初始shell为/bin/bash
$HOME/.profile里加入 LANG=zh; export LANG
5) Q:apache2在solaris8编译错误!请帮忙!
start: .[Tue Mar 01 21:15:30 2005] [crit] [Tue Mar 01 21:15:30 2005] file vhost.c, line 189, assertion "rv == APR_SUCCESS" failed
apache2在solaris8编译错误!请帮忙!
apache2 启动ssl时报错!
A:我也遇到过类似问题,
apachectl startssl error file vhost.c,line 189 assertion "rv==APR_SUCCESS" failed.
这个应该是DNS出了问题,
我把/etc/resolv.conf和/etc/nsswitch.conf做了相应的改动后,就ok了
6) Q:更改机器名以后ssh出现如下问题@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Someone could be eavesdropping on you right now(man-in-the-middle attack)
It is also possible that the RSA host key has been changed.
The fingerprint for the RSA key sent by the remote host is
md5 fa:b0:2e:80:da:76:57:5d:8e:0c:78:bb:f5:14:15:ce.
Please contact your system administrator.
Add correct host key in //.ssh/known_hosts
Offending key is entry 3 in //.ssh/known_hosts
RSA host key for 10.10.10.3 has changed and you have requested strict checking.:
A:Offending key is entry 3 in //.ssh/known_hosts
删掉第三行就行了  
7) Q:在Solaris7上安装apache2遇到的问题?
我的操作系统是SunOS 5.7 sparc,我在SUN的镜像网站上下载了apache2,安装很正常,配置了httpd.conf,然后在bin下./apachectl start启动apache2,出现如下错误:
ld.so.1: /usr/local/apache2/bin/httpd: 致命的: libssl.so.0.9.7: 打开失败: 无此文件或目录被杀掉
A:是没有安装openssl的原因,
去sunfreeware上down一个“openssl-0.9.7e-sol9-sparc-local”装上就行了
8) Q:奇怪,进不了图形界面?
solaris9,reboot后,变成了详细启动,出现很多日志什么的
4/5分钟才提示:login(命令行,无图形界面)
root进去后,用who -r 显示为3
怎么启动图形CDE啊,谢谢各位大哥先
rebot之前是因为在/etc/profile里加了个
TMOUT=3
export TMOUT
reboot后就那样了,我用光盘启动,cp /etc/profile
/a/etc/profile了,还是一样啊
A:在/etc/profile里加了几行字不需要重起的,你退出再重新登陆一下,设置就生效了。
 
9) Q: solaris一个硬盘不是只有8个slice吗??  
________________________________________
# prtvtoc
Usage: prtvtoc [ -fhs ] [ -t fstab ] [ -m mnttab ] rawdisk ...
# prtvtoc /dev/rdsk/c0d0s0
* /dev/rdsk/c0d0s0 partition map
*
* Dimensions:
* 512 bytes/sector
* 63 sectors/track
* 15 tracks/cylinder
* 945 sectors/cylinder
* 17752 cylinders
* 17750 accessible cylinders
*
* Flags:
* 1: unmountable
* 10: read-only
*
* First Sector Last
* Partition Tag Flags Sector Count Sector Mount Directory
0 2 00 2835 1024380 1027214 /
1 3 01 1027215 1638630 2665844
2 5 00 0 16773750 16773749
3 4 00 2665845 6291810 8957654 /usr
4 7 00 8957655 1024380 9982034 /var
5 8 00 9982035 6791715 16773749 /home
8 1 01 0 945 944
9 9 01 945 1890 2834
干吗我这个有到9阿??
而且硬盘为什么不是 C#T#D#S#的格式
少了个T阿??
我这个是vmware下的solaris 9,在douzhe那里下的,安装好的  
A: 你这是x86的啊!不是sparc的。
我记得好像x86的disk就是9个slices。
还有x86下,disk的logical device name和sparc下不一样。
具体你看看sun的文档  
10) Q: 用 telnet 登录服务器时出现的情况:
Login: oracle
Password: oracle
No utmpx entry. You must exec “login” from the lowest level “shell”
用Root登录如下:
login:root
password: root
Not on system console
A: 第一个
清空这两个文件:/var/adm/utmp 和/var/adm/utmpx试试
第二个,是因为默认的情况下root是不可以telnet登陆的。想要改为可以很简单。把/etc/default/login里的,#CONSOLE=/dev/console前面的#去掉
 
11) Q: solaris自带的ftp问题,限制用户ftp后能访问的目录,
A: 限制登录用户只能进入指定目录:
修改 /etc/ftpd/ftpaccess 文件.
加入 guestgroup ftp
意思是将系统中的ftp组加入到 guestgroup ftp 组中.
然后将想作控制的用户加入到 ftp 组中,在/etc/group 中修改:
ftp::501:ftp,vip 将vip 用户加入到ftp组中,这样用vip用户登录ftp 则被限制在自已的home目录.
自已的home目录可以在 /etc/passwd 中设置.
12) Q: 用于此动作的请求由于以下原因而失败:
TT_ERR_PTYPE_START 运行进程类型的实例的企图失败
A: 找到原因了!!TT_ERR_PTYPE_START
Error Message String:
TT_ERR_PTYPE_START
Attempt to launch a client specified in the start attribute of a ptype failed.
Description:
The ToolTalk service could not start the type of process specified.
Solution:
Verify that the application that the ptype represents is properly installed and
has execute permission.
13) Q: inetd 进程启不来
系统开机会inetd进行它不自动加载了。这个进行的加载是不是在那个文件里面可以配置的?
A: 看看/etc/rc2.d里面的S72inetsvc 文件出问题没有
14)Q: 在我的用户目录下,使用ls命令查看发现有一个work.gz文件,但是使用rm命令删除总是提示文件不存在。
我再copy一个work.gz文件过去,依然成功。使用ls,显示有两个work.gz文件。
A: 估计是文件名中有空格,试一下rm work.gz*或者rm *work.gz*
15)Q: solaris10怎么默认进入字符界面?
A:把/etc/rc2.d/目录下面,包含dtlogin的那个以大写的S开头的那个文件改成以小写的s开头,再把系统里面包含dtlogin的那个进程杀了就可以了(或重起server就可以了)。
16)Q: 看看这是什么硬件出问题了,不胜感激!!!!在线等待,谢谢
scsi: [ID 365881 kern.info] (glm4):
Cmd (0x9771c18) dump for Target 11 Lun 0:
scsi: [ID 365881 kern.info] (glm4):
cdb=[ 0x8 0xe 0x40 0x92 0x10 0x0 ]
scsi: [ID 365881 kern.info] (glm4):
pkt_flags=0x4000 pkt_statistics=0x61 pkt_state=0x7
scsi: [ID 365881 kern.info] (glm4):
pkt_scbp=0x0 cmd_flags=0x8e1
scsi: [ID 365881 kern.info] (glm4):
Cmd (0x9771470) dump for Target 11 Lun 0:
scsi: [ID 365881 kern.info] (glm4):
cdb=[ 0x0 0x0 0x0 0x0 0x0 0x0 ]
scsi: [ID 365881 kern.info] (glm4):
pkt_flags=0x4000 pkt_statistics=0x61 pkt_state=0x7
scsi: [ID 365881 kern.info] (glm4):
pkt_scbp=0x0 cmd_flags=0xe1
scsi: [ID 365881 kern.info] (glm4):
Cmd (0x97712e8) dump for Target 11 Lun 0:
scsi: [ID 365881 kern.info] (glm4):
cdb=[ 0xa 0x0 0x38 0xd1 0x39 0x0 ]
scsi: [ID 365881 kern.info] (glm4):
pkt_flags=0x4000 pkt_statistics=0x61 pkt_state=0x7
scsi: [ID 365881 kern.info] (glm4):
pkt_scbp=0x0 cmd_flags=0x18e1
scsi: [ID 365881 kern.info] (glm4):
Cmd (0x999c188) dump for Target 11 Lun 0:
scsi: [ID 365881 kern.info] (glm4):
cdb=[ 0xa 0x0 0x39 0xa 0x8 0x0 ]
scsi: [ID 365881 kern.info] (glm4):
pkt_flags=0x4000 pkt_statistics=0x61 pkt_state=0x7
scsi: [ID 365881 kern.info] (glm4):
pkt_scbp=0x0 cmd_flags=0x18e1
scsi: [ID 365881 kern.info] (glm4):
Cmd (0x97bfc28) dump for Target 11 Lun 0:
scsi: [ID 365881 kern.info] (glm4):
cdb=[ 0x2a 0x0 0x0 0xdb 0x3c 0x92 0x0 0x0 0x20 0x0 ]
scsi: [ID 365881 kern.info] (glm4):
pkt_flags=0x4000 pkt_statistics=0x61 pkt_state=0x7
scsi: [ID 365881 kern.info] (glm4):
pkt_scbp=0x0 cmd_flags=0x18e1
scsi: [ID 107833 kern.warning] WARNING: (glm4):
Disconnected tagged cmd(s) (5) timeout for Target 11.0
genunix: [ID 408822 kern.info] NOTICE: glm4: fault detected in device; service still available
genunix: [ID 611667 kern.info] NOTICE: glm4: Disconnected tagged cmd(s) (5) timeout for Target 11.0
glm: [ID 401478 kern.warning] WARNING: ID[SUNWpd.glm.cmd_timeout.6018]
scsi: [ID 107833 kern.warning] WARNING: (sd70):
SCSI transport failed: reason 'timeout': retrying command
A: 1、检查你的GLM版本,可能太旧。
2、检查接头和线缆,可能松了。将光驱/软驱的接头先拔下来,|%REBOOT。
3、检查FIRMWARE的软件版本,可能太旧。
提示:
1、检查/VAR/ADM/MESSAGES信息。
2、检查|%CD /USR/PLATFORM/SUN4U/SBIN
|%PRTDIAG -V
3、检查|%SHOWREV –P
17) Q: 我的Ultra5装的solaris8,可是网络参数设置不对,无法上网。我接的是网通光纤宽带网,在windows中的TCP/IP属性是自动获得IP和DNS地址,IP地址项为DHCP被启用。
    我的Ultra5用同一根网线,如果我也选择DHCP——这里问一下这个DHCP是指我的这台Ultra5为我的其他计算机提供的服务吗?还是指Ultra5从网通获得服务的方式呢?亟盼高手不吝赐教, 请问在Solaris8预安装时要填的几项:
(1)名字服务  (2)域名 (3)域列表 (4)主DNS服务器IP地址
该怎么填?如果填错了安装好以后还能改吗?怎么改呢?
A: 首先
#sys-unconfig
(系统重新启动,要求你重新输入设置)
不要选DHCP,NIS,NIS+,LDAP什么的也不要选
输入ISP给你的IP, Netmask,
主机名自己定
启动完成后,
#cat >/etc/defaulterrouter
***.***.***.***(网关)
#cat >/etc/resolv.conf
nameserver ***.***.***.*** (DNS服务器IP)
#cp /etc/nisswitch.dns /etc/nisswitch.conf
这个时候应该可以上网了
1 Q: 求助!!启动之后/home,下的文件没有了!!
A:solaris下的/home默认是不让写的.无论你原先在/home下做了些什么,一旦系统重起,那么/home就会被重置.(但是你写的东西还在.呵呵)
解决办法如下:
修改两个文件:
/etc/auto_master
/etc/auto_home
将有关与/home的都注释,重起你的机器./home下的东西就能找回来了.
 
19)Q:请问,用vmstat 2  20得到以下数值:
procs     memory            page            disk          faults      cpu
r b w   swap  free  re  mf pi po fr de sr s6 s9 s1 sd   in   sy   cs us sy id
0 0 0 8077920 2299640 598 168 150 342 335 0 0 0 6 6 0  681  708  138 84 12  4
0 0 0 7818240 1885672 5  4 52  8  8  0  0  0  0  0  0 1190 6821 2219 44  1 54
0 0 0 7818240 1885656 5  0 16  4  4  0  0  0  0  0  0 1447 9660 2775 57  3 39
0 0 0 7818240 1885616 72 274 8 0  0  0  0  0  0  0  0 1200 8229 2173 43  3 54
0 0 0 7818240 1885608 10 1 104 0  0  0  0  0  0  0  0 1399 11954 2258 58 5 37
0 0 0 7818240 1885504 14 0 104 56 56 0  0  0  0  0  0 1240 10799 1990 39 4 58
0 0 0 7818208 1885432 0  2  4  0  0  0  0  0 34 40  0 1405 12041 2200 41 2 57
0 0 0 7818208 1885320 21 2 72  4  4  0  0  0  0  0  0 1089 13195 2957 44 4 52
0 0 0 7818208 1885192 1  1 136 0  0  0  0  0  0  0  0 1134 8298 1991 32  3 65
0 0 0 7818208 1885104 1  2  8  0  0  0  0  0  4  4  0 1185 9042 1970 38  5 56
0 0 0 7816648 1884936 26 229 12 0 0  0  0  0 16 16  0 1524 10717 2752 44 5 50
0 0 0 7801184 1882808 117 474 4 0 0  0  0  0  0  0  0 1418 8522 2575 39  3 58
0 0 0 7802720 1882688 137 415 280 36 36 0 0 0 2  2  0 1280 13778 2413 50 5 45
0 0 0 7816664 1884736 14 9 840 36 36 0  0  0  0  0  0 1249 7105 2234 43  4 53
0 0 0 7818240 1885016 5  2 60 88 88  0  0  0  0  0  0 1452 8420 3443 50  6 44
0 0 0 7818240 1885072 23 1 112 112 112 0 0 0  0  0  0 1593 11468 5314 54 6 40
0 0 0 7818240 1884968 2  0 20  4  4  0  0  0  0  0  0 1346 6164 2853 43  5 51
0 0 0 7818240 1884928 0  0 12  0  0  0  0  0  0  0  0 1250 10272 2492 39 5 56
0 0 0 7818240 1884896 29 126 12 52 52 0 0  0  0  0  0 1328 8657 2405 46  3 51
procs     memory            page            disk          faults      cpu
r b w   swap  free  re  mf pi po fr de sr s6 s9 s1 sd   in   sy   cs us sy id
0 0 0 7818240 1884800 69 0 692 44 44 0  0  0  0  0  0 1269 5448 2284 34  4 62
1,请问,memory中的swap ,free单位是什么呢?比特?
2,memory+free=总的内存量吗?
3,free是不是指机器剩余的内存可用量?
4,用vmstat 查看系统性能,通常是看哪几个项目,它们各自己的数值范围在多少以内是正常的?多少以内说明系统繁忙呢?
A:1。swap和free的单位是KB.
2.总的内存量=系统kernel占用的内存量+用户程序使用的内存量+共享的lib库使用的内存量+这上面显示的free的值(会有偏差啦)。这个取决于solaris的内存使用的机制。
3。free指的是机器的内存的空闲列表的值,可以理解为机器的完全空闲的内存可用量。
4。用vmstat察看系统性能,比较重要的是sr表示的这一项,sr通常是0,如果这个值非0,说明内存缺少。还可以通过us sy id 分别察看cpu的使用情况,sy表示是kernel空间使用的cpu百分比,us表示的用户空间使用的cpu百分比,id表示的是idel的cpu的百分 比,其中idel的值包括IOwait的cpu状态。还可以通过free这一项来看系统的空闲内存,然后与总的内存量作比较,来查看系统的内存使用情况, 还有swap不能太小。
总之,系统的负载在70%,就不算差。
检查系统内存的占用还可用:
% sar -k 1
SunOS u10 5.10 Generic sun4u    03/11/2005
09:57:43 sml_mem   alloc  fail  lg_mem   alloc  fail  ovsz_alloc  fail
09:57:44 36651328 16173957     0 490291200 123939440     0    33587200   0
即内存占用:
16173957 + 123939440 + 33587200 = 173700597字节
一般sr为系统扫描空闲内存的速度,是变化的,如系统不忙,即内存空闲,内存扫描速度约100页/秒,每页8KB,系统越忙,内存排队的进程越多,系统越 加快扫描空闲内存,可达8k页每秒,即每秒64MB,sr数值越大,当然,pi/po数值也越大,即内存页读入/读出越多,此时也可见硬盘读写灯闪,内存 与硬盘上swap频繁交换数据。
20)Q:如何把.zip文件解压到指定目录下?
A:你先进入到解压后文件所放的目录里,比如目录/export:
cd /export
unzip /download/*.zip(假如*.zip文件在/download下)
这样*.zip解压后就自然在/export下了
21)Q:我想查看磁带上的空间还有多少,该用哪个命令?谢谢。
A:磁带不是磁盘,没办法看
养成习惯,备份后记下备份对目录和容量,这是最好等的办法。
22)Q:我安装了 gcc之后,怎么不能用啊,提示我 gcc: command not found???
A:安装好gcc后,一般gcc不在用户的默认路径里
要设环境变量。
1. 超级用户的PATH设置:
在/.profile文件中添加如下内容:
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/etc:/usr/local/bin:/usr/ccs/bin
export PATH
2. 普通用户的PATH设置:
对csh用户: 写在用户主目录下的.cshrc文件中
增加内容如下
setenv PATH /bin:/sbin:/usr/bin:/usr/sbin:/etc:/usr/local/bin:/usr/ccs/bin
23)Q:有2台NETRA 1120,一台刚新装SOLARIS9,设IP地址为10.0.0.120,子网掩码为255.255.255.0,另外一台是以前别人装得的SOLARIS8,IP地址为10.0.0.121,子网掩码为255.255.255.0。
但新装的不能和公司的局域网连通(PING不通),老的那台可以,请教除了IP地址和子网掩码外还需设置什么才能和公司的局域网连上?
A:先屏蔽是否是公司网络的问题,即先检查一下本机网络通否:
用交叉网线直连两Netra1120,在同一网段上互ping,并用snoop检查互ping的网络包,检查ping实际用的网段,
如ping同,问题出在公司网,
如ping不同,则snoop可见网络包的,其网卡/线/配置无问题,snoop看不到数据的,网卡和其配置有问题,则简单了,换网卡或改配置。
我碰到这情况都是改/hosts文件的,我一直都很纳闷改/hosts文件这做法.因为如果真碰到楼主这 情况局域网机器过多的话,写/hosts不是很麻烦,现在看到楼上几位都没有提到改/hosts文件,那么我顺便问一下,/hosts文件到底在局域网中 起了个什么样的作用,在什么情况下可以用,在什么情况下没有没有必要用
24)Q:mv /usr /usr.bak了,怎么弄回来?
A:如果系统没有启动
马上执行
#/usr.bck/sbin/static/mv /usr.bck /usr
如果系统重新启动,这时肯定不能正常启动,同样我们启动到单用户下:
ok boot cdrom -s (放入启动安装光盘)
mount /dev/dsk/c0t0d0s0 /mnt (这里指定原usr目录对应的原始设备名)
mv /mnt/usr.bck &/mnt/usr
 
25)Q: 我误删除了/etc/passwd文件,只有一台终端通过telnet登在机子上,而且这个用户没有权限重新建立passwd文件或者将passwd的备份opasswd改为passwd,而且因为没有了passwd这个用户也无法su了,怎么办?
A: 你挂接好之后,cp  /etc/passwd /mnt/dd/etc/passwd
你改的是光盘里面的passwd,这个是只读的啊!
26)Q:如何自动启动到字符界面,而不进入到CDE界面?呵呵,改了/etc/inittab里的is:后的3为5,结果起来就down,起来就down,呵呵。
A:把/etc/rc2.d下的S99dtlogin改成s99dtlogin选择就可以了
不过你还是在登陆界面那里选择吧,那里有选用字符界面登陆的
27)Q:请问如何修改 stack size 呢?
A:ulimit –s
28)Q:solairs缺省支持6-8位密码,超过8位截掉,怎么增加?
A:Change the system's passwords Algorithm from crypt_unix to
stronger one such as md5 by configuring /etc/security/policy.conf
Note: It can't be done before Solaris 9 12/02.
Refer to: System Administration Guide: Security Services
29)Q:已经有个旧系统solaris8,打了2000年7月的patch cluster,现在我想升个级,那么我想用
1。upgrade方式安装最新的solaris8,再打上最新的patch cluster
2。直接在旧系统上打上最新的patch cluster
那么2种方法得到的系统是一样的吗?如果不一样,那么不一样的最大地方是什么?那种方法更稳妥可靠一点?
A:1、如果系统应用可以长时间停止,并且在应用可控的情况下,建议upgrade系统并且安装最新的Patch,这样应该更简单可靠,但是一定要做好备份;
2、在只允许短时间停机的情况下,还是考虑安装patch,但是因为sun的patch的依赖关系的问题,所以,相对来说可能会麻烦一些,这要求在做patch升级前,需要尽可能考虑全面,避免遗漏某些patch不能正常升级;
30)Q:如何确认光驱是否好用
A:一般的,不需要手动mount的
ps -eaf | grep vold 看看vold起来没有
如果没有使用/etc/init.d/volmgt start启动
31)Q:sybase在solaris下创建大文件的问题
我做表时提示文件过大应该是超过了2G,我记得是应该在/etc/system下设置一行什么参数
A:默认的就是允许大文件存在的(大于2G)。
除非你自己又设定不允许大文件存在。
解释如下:
# mount /dev/dsk/c0t0d0s7 /export/home
In this example, the default action is to mount the file system with the following preferences: read/write, setuid, nologging, and largefiles.
上面的largefiles就是允许超过2G的选项。
32)Q:sun blade 2000的机器,新装的solaris8,跑大的软件感觉很慢。窗口输出的调试信息拖动一下滚动条都要等半天。
通过mpstat查看,觉得intr ithr 还有csw都很高。分别是216 114和100。而这个时候没有运行任何其他软件。
A:最好先检查应用软件,软件没配好,可消耗掉所有硬件资源,
再查服务器硬件,如对软件不知道,那只好看硬件了:
服务器硬件从CPU起,
a. 到cache,几十纳秒,假如定为秒,
b. 到内存,百到几百纳秒,相当于分钟,
c. 到硬盘,几到几十毫秒,相当于月,
d. 网络延迟,可能几十上百毫秒,相当月或年,
就一个服务器系统性能取决于最慢的设备,所有快设备等待:
a. sar
% sar -b 1 100
SunOS beautyvalley 5.10 Generic sun4u    03/14/2005
19:46:45 bread/s lread/s %rcache bwrit/s lwrit/s %wcache pread/s pwrit/s
19:46:46       0       0     100       0       0     100       0       0
如读或写cache命中率100%, 则非cache问题,
b.vmstat
% vmstat 3
kthr      memory            page            disk          faults      cpu
r b w   swap  free  re  mf pi po fr de sr s0 s3 s8 s1   in   sy   cs us sy id
0 0 0 3426656 1456248 3 155 21 1  1  0  3  0  1  1  0  355 6386  825  9  2 89
如free swap较大,pi/po虽多,但sr速度小,参看精华贴,不是内存少,
c. iostat
iostat 2
tty        sd0           sd3           sd8           sd10           cpu
tin tout kps tps serv  kps tps serv  kps tps serv  kps tps serv   us sy wt id
0   14   0   0    0   13   1   17   13   1   15    0   0    5    9  2  0 89
% iostat -xnp 3
                  extended device statistics              
  r/s    w/s   kr/s   kw/s wait actv wsvc_t asvc_t  %w  %b device
...
  0.1    0.0    0.4    0.0  0.0  0.0    0.0   32.4   0   0 c1t3d0
...
即硬盘平均服务时间不很大,硬盘i/o平均到所有硬盘,硬盘无问题。
d.netstat
% netstat -i 2
  input   bge0      output       input  (Total)    output
packets errs  packets errs  colls  packets errs  packets errs  colls
133509  5879  25315   0     5879   229419  5879  121235  0     5879
以太网原理,如冲突输出包比接近1-5%,可能网就不动了,机器空闲。
精华贴都是各前人经验,可参考,但先从最慢的查起,如软件,改善一点,全系统性能改善。
 
33)Q:solaris 8 下安装虚拟打印机。
A:很多朋友学习solaris的时候,苦于没有打印机,导致有关打印的那一部分内容只能看书,死记硬背。
有这么一句话“unix下,任何东西都是file,包括设备。”对printer来说,也一样。
下面就简单介绍一下我的办法,欢迎大虾们拍砖。
既然任何设备都是文件,那就建一个文件,名字随便,ownership & groupship 都是 lp; permissions 是 600。例如:printera。
然后:
#lpadmin -p pa -v ./printera
#accept printera
#enable printera
# lpstat -t
scheduler is running
system default destination: pa
system for _default: sun (as printer pa)
system for _default: sun (as printer pa)
device for pa: /dummy/printera
_default accepting requests since Friday March 10 23:56:40 EST 2000
_default accepting requests since Friday March 10 23:56:40 EST 2000
pa accepting requests since Friday March 10 23:56:40 EST 2000
printer pa is idle. enabled since Friday March 10 23:57:08 EST 2000. available.
 
第一章 网络地址和掩码
1. /etc/hostname.interface
Interface是网卡的型号,有le、hme等。Le是十兆网卡,hme为百兆网卡等等。后面跟一个数字,第一个十兆网卡为le0,第二个为le1;第二个百兆网卡为hme0,第二个为hme1等等。
文件的内容是这块网卡的名字,如Sunrise、Sunny。
#more /etc/hostname.le0
Sunrise
# more /etc/hostname.hme0
Sunny
2. /etc/hosts文件
系统名与IP地址的映射
与/etc/hostname.interface 协同工作,配置本机网卡地址
# more /etc/hosts
127.0.0.1 localhost loghost
172.16.255.1 Sunrise
172.18.255.1 Sunny
系统名不是机器名,机器名是唯一的,要更改机器名,用命令:hostname。
有了/etc/hostname.interface和/etc/hosts两个文件,系统就知道如何配置网卡了,如第一个百兆网卡的名字是Sunny,其对应的地址是172.18.255.1。
3. /etc/netmasks文件
将网络的IP地址与网络地址联系一起,划分子网
如果是标准网段,则不需要配置
标准网段:
A类网:0-127(127用于本地地址) 掩码:255..0.0.0
B类网:128-191 掩码:255.255.0.0
C类网:192-223 掩码:255.255.255.0
D类网:224-254(用于多址广播)
要配一个B类地址:172.16.255.1掩码为:255.255.255.0,则在/etc/netmasks文件中写:172.16.255.0 255.255.255.0
4. ifconfig命令
检测网络端口状态
#ifconfig -a
配置网络端口地址
#ifconfig le0 172.16.255.1 netmask 255.255.255.0
配置网络端口状态
#ifconfig le0 up/down
配置网络端口是否可用
#ifconfig le0 plumb/unplumb
5. ping命令
检测网络状态
测试网络速度
第二章 网络服务
1. /etc/services文件
网络服务协议的端口号
网络协议的服务类型
#cat /etc/inet/services
ftp-data 20/tcp
ftp 21/tcp
telnet 23/tcp
smtp 25/tcp mail
sunrpc 111/udp rpcbind
sunrpc 111/tcp rpcbind

每个TCP/IP应用层服务如(FTP、Telnet)都在传输层有一个端口号。/etc/services文件包含了每个能识别出的服务协议所对应的静态端口号。应用应使用唯一分配的端口号向传输提供者和远程对等实体标识自己。
文件中每一项都由服务名及其相关的端口号、传输协议提供者组成。有些服务可以在TCP和UDP上都可以运行。这时,此服务被列出两次。
2. /etc/inetd.conf文件
# cat /etc/inet/inetd.conf
ftp stream tcp nowait root /usr/sbin/in.ftpd in.ftpd
telnet stream tcp nowait root /usr/sbin/in.telnetd in.telnetd
login stream tcp nowait root /usr/sbin/in.rlogind in.rlogind
talk dgram udp wait root /usr/sbin/in.talkd in.talkd
...
UNIX并不是让每种服务的守护进程都在自己的端口上等待请求,而是将代表各个服务守护进程等待请求的任务交给一个叫inetd的服务进程。这样就可以大大减少对系统资源的占用。只有当超级服务进程发现一个服务请求时,它才调用该服务的守护进程。/etc/inetd.conf配置文件允许inetd在启动时决定自己将代表哪些服务等待服务请求。如果一种服务的守护进程没有包含在inetd.conf文件中,那么当inetd接收到该服务的请求时,会把该请求丢弃。
文件的字段:
service_name 这是文件/etc/services中列出的服务的标志符。
socket_type 用来标志使用的数据传输服务的类型。
proto 标识传输协议的名字。是UPD和TCP
flags 可以被设为"等待"和"非等待"。如果被设为"等待" 状态,inetd在恢复监听端口上的其他请求时,必须等待服 务协议释放将其连接到网络的连接。"非等待"可以使 inetd立即监听其他的请求。大多数TCP协议的采用"非等 待"方式,而UDP采用"等待"方式。
user 表示调用服务的用户名。
server_pathname 表示inetd在响应相关服务请求时必须调用的 服务程序的完整路径名。
Args 该域包括服务的程序所使用的命令行参数。即以程序名开 始,然后跟随用户设置的参数。
第三章 路由和网关
1. /etc/defaulrouter文件
配置缺省网关
防止不必要的路由进程
适用于只有一个路由器通向其它网段
单一路由占用较小的路由表资源
该文件保存了缺省路由得信息。系统安装时并没有该文件,是用户自己创建的。文件内容是缺省路由的地址。
#cat /etc/defaultrouter
172.16.255.254
优点:
占用资源少,只有一条路由条目。
2. /etc/gateways文件
路由表文件
net gateway metric
dest. net 目标网段
router 下一跳路由器的地址
count 跳数
3. route命令
route add|delete [host|net] destination [gateway ]
Add a route
#route add net 128.50.3.0 192.168.1.1 1
Delete a route
#route delete net 128.50.2.0 192.168.12.2
4. 查看路由表
# netstat -r
Routing Table:
Destination Gateway Flags Ref Use Interface
----------- ---------- ----- --- --- ---------
localhost localhost UH 0 2272 lo0
202.96.0.0 192.168.12.1 U 3 562 le0
10.103.0.0 192.168.12.2 U 3 562 le0
#
Destination 目标网络或主机
Gateway 转发数据包的主机
Flags 这条路由的状态,这个参数有这样几个选项:
U 端口处于激活状态(up)
H 目标是个主机,而不是网段
Ref 同一个网络接口地址拥有的路由条目数量
Use 通过这条路由的包数量,对于localhost来说,这个数字代表 所有接收的包数量
Interface 路由的网络接口
第四章 DNS客户端的设置
1. /etc/resolv.conf文件
记录DNS服务器的地址和域名
关键字:
domainname
nameserver
# more /etc/resolv.conf
nameserver 172.16.255.3
domainname sunrise.com.cn
2. /etc/nsswitch.conf文件
记录主机名的搜索顺序等信息
# more /etc/nsswitch.conf
#
# /etc/nsswitch.dns:
#
# An example file that could be copied over to /etc/nsswitch.conf; it uses
# DNS for hosts lookups, otherwise it does not use any other naming service.
#
# "hosts:" and "services:" in this file are used only if the
# /etc/netconfig file has a "-" for nametoaddr_libs of "inet" transports.
passwd: files
group: files
# You must also set up the /etc/resolv.conf file for DNS name
# server lookup. See resolv.conf(4).
hosts: files dns
ipnodes: files


将这个文件的hosts记录配置成hosts: files dns
3. nslookup命令
用于查询DNS服务器
用于验证客户端的设置
用于下载DNS数据库
# nslookup
Default Server: ns.zjhzptt.net.cn
Address: 202.96.96.68
>
Server: ns.zjhzptt.net.cn
Address: 202.96.96.68
Non-authoritative answer:
Name:
Address: 192.18.97.241
>
启动时,nslookup缺省地以本地服务器为目标。响应中包括目标服务器的名字和地址。
>是提示符,这意味着可以开始发送名字服务询问或配置。
1) Q:现在遇到这样一个问题,telnet一台SUN机时报下面的错误:
No utmpx entry. You must exec "login" from the lowest level "shell".
我做了下面的处理后:
cd /var/adm
mv utmpx utmpxbak
touch utmpx
telnet 恢复了正常,可在该机器的终端下执行login 命令时,又报了上面相同的错误。而且重新启动机器以后,telnet时还是报相同的错误!
A:进入单用户模式,清空(不是删除)这两个文件
# cat /dev/null > /var/adm/wtmpx
# cat /dev/null > /var/adm/utmpx
之后,重新启动系统
找了很多国外的论坛,都是这么说的:
The problem comes if utmp or wtmp file becomes corrupted . You need to initialize these and reboot the system to correct the error.
These files are log files and can be initialized without affecting the system, as long as you reboot the system after truncating the files. Perform these steps:
1. Bring the system into System Maintenance mode.
2. Make copies of the files /etc/utmp, /etc/utmpx, /etc/wtmp, and
/etc/wtmpx before proceeding with the next step.
3. Delete the contents of these files by executing the following
commands:
# > /etc/utmp
# > /etc/wtmp
# > /etc/utmpx
# > /etc/wtmpx
4. Shutdown the system:
# shutdown -y -g0
Restart the system
2) Q:我用setenv PATH=$PATH:/path/to/my/program的方式来赋值,总显示语法或者修饰符有问题。
如果用setenv PATH=/path/to/my/program就可以成功赋值。
请教各位老手,如果我想在CSehll下实现bash里面export PATH=$PATH:/path/to/my/program的赋值,应该怎么写啊?
没用过CShell,请各位多指点,谢谢。
A:CShell别用等号
setenv PATH "$PATH":/path/to/my/program
 
3) Q:系统是SUN 280R,我在#提示符下输入init s回车后屏幕闪了几下,然后就成了白屏,强行重启也没反应
A:关掉电源,从光盘启动,进去看看是怎么回事
boot cdrom –s             就是从光盘启动后进入系统
4) Q: 在sunfree的网站上,比如我想安装libiconv-1.8
那么libiconv-1.8-sol10-intel-local.gz 与  libiconv-1.8.tar.gz
有什么区别呢?
A: 第一个是编译好的适合solaris系统的binary格式package文件
安装,可以用pkgadd命令直接添加的
后边的source文件,还没有编译
安装,需要configure,make,make install的过程
5) Q: 求助:vmware下安装solaris10之后不能改分辨率和刷新率
A: 用kdmconfig命令,然后选择Xsun,即可调整分辨率
6) Q: fsck -F ufs -y /dev/rdsk/c1t0d0s6
A: fsck  修复文件系统  
命令格式:fsck raw-device 等同于DOS的chkdsk命令
例子:fsck /dev/rdsk/c0t1d0s0
ufs - UNIX文件系统。是Solaris缺省的文件系统。
-F好像是一个修复参数
-F ufs 是文件格式
-y 不要你敲y了,全部自动yes
fsck是对news过程的一个恢复
这两个操作是对裸设备文件的。
 
7) Q: 在solaris9上怎样设置oracle10g随系统启动时自动启动?    
A: 设定自启动
1. 先在/etc/init.d目录下,作下一个shell文件,
其中/export/home/oracle/product/8.1.7  是你Oracle的安装目录
,oracle是安装用户
# vi /etc/rc2.d/dbora
#!/bin/sh  
    ORA_HOME=/export/home/oracle/product/8.1.7  
    ORA_OWNER=oracle  
    if [ ! -f $ORA_HOME/bin/dbstart ]  
    then  
      echo "Oracle startup: cannot start"  
      exit  
    fi  
    case "$1" in  
       'start') # Start the Oracle databases and Net8 listener  
                su - $ORA_OWNER -c "$ORA_HOME/bin/dbstart" &  
                su - $ORA_OWNER -c "$ORA_HOME/bin/lsnrctl start" &  
                # Next line for Oracle 8.1.7 only  
                su - $ORA_OWNER -c "$ORA_HOME/Apache/Apache/bin/apachectl start"  
                ;;  
       'stop')  # Stop the Oracle databases and Net8 listener  
                su - $ORA_OWNER -c "$ORA_HOME/bin/lsnrctl stop" &  
                su - $ORA_OWNER -c "$ORA_HOME/bin/dbshut" &  
                # Next line for Oracle 8.1.7 only  
                su - $ORA_OWNER -c "$ORA_HOME/Apache/Apache/bin/apachectl stop"  
                ;;  
    esac  
2. 作连接
#ln -s /etc/init.d/dbora /etc/rc2.d/S99dbora  
   #ln -s /etc/init.d/dbora /etc/rc0.d/K10dbora
3.重新启动看看成不成功  
#sync
#sync
#reboot
 
Q: 请问可以在光盘启动的情况下,将磁带中备份的操作系统恢复吗?  
就是说插一块新硬盘,然后将磁带中备份的操作系统恢复到这块盘上,并且可以正常使用。请问能不能做到?
A: ufsrestore 恢复回来,然后做installboot
如果是光纤硬盘的话,ufsrestore回来后还需要修改/devices以及/dev下的设备联结!
情况比较复杂,需要找文档。
做installboot:
# cd /usr/platform/sun4u/lib/fs/ufs
# installboot bootblk /dev/rdsk/c0t0d0s0  ( This is your boot disk and / slice)
9) Q: 把 /etc下所有文件权限都设成了777....
1。 对系统可预见的影响(特别是如果此时reboot....后)
    哪位高手最好能 列出 一些对系统有致命影响的 文件 以及这些文件大概的用途。
  本人对/etc下 的许多文件都一知半解。。。
2。 如何恢复为好?
  是否只要把那些”致命“性的文件 属性恢复就可?
A: 估计一些文件pam.conf会出问题,也不一定,如果真出了问题,回到单用户,把权限改过来就行了!
我也那样做过,更严重
chmod -R 777 /
我真的碰到了 由于 pam.conf  mode非644 引发的 问题 -- 无法以任何user登陆server。。。。。
后来boot cdrom -s然后mount 上系统disk,把pam.conf属性改回了644
这才恢复了
10) Q: csh的shell:
vi $home/.cshrc
set path=( /bin /usr/bin /usr/ucb /etc /usr/local/bin /usr/local/sbin .)
setenv CC gcc
我怎么找不到cshrc文件呢,我刚刚安装完gcc,还有就是那个路径格式正确么?
A: set path=($path /bin /usr/bin /usr/ucb )
.cshrc是隐藏文件,cd ;ls -a可以看到
11) Q: solaris 10 ,为什么进不了桌面? 我用的是dvd的装的在(vm gsx server 中),但是就是进不了桌面,telnet,ftp 都拥不了
A: 我用/etc/init.d/dtlogin start 运行就可以了,不知道是怎么回事
 
12) Q: rsh 远程访问权限(.rhosts)问题   本机rnm1(hostname) 上/.rhosts 内容为
as1
rnm1
从远程server as1上
rsh rnm1
仍然提示让输入密码,
同时在本机rnm1上 提示下列信息
rnm1 rsh[xxxx]:attempt for user:root fail
rnm1 rsh[xxxx]:root attempt failed, but not allowed to lock
从本机rnm1上
rsh rnm1
成功 (不用输入密码)
看上去应该是 rnm1上.rhosts设置的host as1远程访问权限并没有生效。。。
但为什么没有生效呢? 还有哪些相关文件跟 rsh 访问权限相关?
哪位高人指点迷津,不胜感谢:)
另:本人曾经误把/etc下许多文件的mode改成了777..... 是否跟上述问题相关??
A: 远程登陆的过程是1、先查一下/ETC/PASSWD是否有登陆的USERNAME存在,2、再看是否是 SUPERUSER是的话察看$home/.rhost。3、否则Rhost是否在/ETC/hosts.equiv中。4、最后再看RHOST是否在$ home/.rhosts中。
1、 看看/etc/default/login里面CONSOLE=/dev/console是否已经被注释掉。
2、从as1上telnet rnm1,然后who。看看rnm1对应的机器名和/.rhosts文件中写的是否一致。
13) Q: SOLARIS8的系统,上面跑ORACLE817和SAP46C,以前一切都正常,今天发现系统变慢, 用top一查,cpu kernel部分居然使用了99%,也不是一直这样,不定时的会出现这种情况,一旦cpu kernel部分利用率超过50%,整个系统就会响应很慢,用dmesg看系统日志没有任何报错,ORACLE的ALERT和SAP的日志也没有任何错 误。top查看的各进程占用的CPU、内存都还正常。真的不知道该如何下手分析问题了,请各位大侠帮忙。top查看的结果如下:
CPU states: 0.8% idle,  0.2% user,  99% kernel,  0.0% iowait,  0.0% swap  
A: 这个东西确实不好查。
kernel是指比如说内存管理,处理器管理的。
还有就是一些用户程序调用的kernel提供的系统调用时,也算成kernel的cpu里。
可以这样看,
如果是solaris8或以上版本:
prstat -cvm
结果的第三和第四项分别标示了一个进程使用的user空间及kernel空间的cpu百分比。
试一下拉。
14) Q: 已安装GCC 为什么 make 时还在问我 sh: cc: not found ?
[BBQ:/usr/MQSeries-1.23]# gcc -v
Reading specs from /usr/local/lib/gcc-lib/sparc-sun-solaris2.8/2.95.3/specs
gcc version 2.95.3 20010315 (release)
[BBQ:/usr/MQSeries-1.23]# make
Skip ../blib/lib/MQClient/MQSeries.pm (unchanged)
/usr/bin/perl -I../blib/arch -I../blib/lib -I/usr/perl5/5.00503/sun4-solaris -Ip
/usr/bin/perl -I/usr/perl5/5.00503/sun4-solaris -I/usr/perl5/5.00503 /usr/perl5c
cc -c -I"/opt/mqm/inc" -I../include  -xO3 -xdepend     -DVERSION=\"1.23\"  -DXSc
sh: cc: not found
*** Error code 1
make: Fatal error: Command failed for target `MQSeries.o'
Current working directory /usr/MQSeries-1.23/MQClient
*** Error code 1
make: Fatal error: Command failed for target `subdirs'
A: 修改makefile,将其中定义CC的宏改成 CC=gcc
或者将绝对路径加上!
15) Q: 小弟有两台机器,一台把数据盘share出来,一台mount上了,但是客户端的主机进入共享盘中的某些 目录,系统提示ermission denied,只有把服务端的文件改为777才可以进,但是公司不许这么作,两台主机也已经重启过了,问题依旧,请教各位GGJJ,我该怎么设置?在线等  
A: Here are the note after I setup NFS server/client, it may help you to solve your problem.
Server site:
? Edit file /etc/dfs/dfstab, for automatic share File-system sharing. Add an entry for each file system that you want to share.
? The entry in file dfstab looks like:
Share –F nfs –o rw=usera:userb /somefs
There are some share options may need to set up for restriction and file protection
Ro=client:client1… setup read only for host or user.
Rw=client:client1… setup read/write for special host or users.
Root=host:host setup specified hosts will havew root access, by default, no host has root access.
Sec=mode:mode1… setup security modes (dh, krb4)
? Start the NFS service by:
/etc/init.d/nfs.server start (NFS service will automatic start at boot if there is a entry in /etc/dfs/dfstab file)
? Give a command “shareall”
? To check the shared file system, use command “share”
? Start the NFS log daemon /usr/lib/nfs/nfslogd (not on OS 2.6 or early)
Client site:
? Mount a file system at boot time, make an entry for each file system in file /etc/vfstab. (server:/directory-on-server – nfs – yes rw.soft)
? Create a mount point /mountpoint
? Check the automount daemon is running or not.
Ps –ef  | grep auto
? Stop or start autofs daemon
/etc/init.d/autofs start/stop
16) Q: solaris 10 在那儿设置DNS
A: /etc/nsswitch.conf
host : files dns
network : files dns
/etc/resolv.conf
nameserver xxx.xxx.xxx.xxx
17)Q:我装好了solaris10 但VMware的显卡包怎么都装不上,如下  ,该怎么办啊?
# ls
SUNWxf86r      SUNWxf86u      vmware.tar.gz
# ls  -an SUNWxf86r
总数 10
drwxr-xr-x   3 0        1            512 2001  12月 29 .
drwxr-xr-x   4 0        0            512  4月 19日 14:37 ..
drwxr-xr-x   2 0        1            512 2001  12月 29 install
-rw-r--r--   1 0        1            381 2001  12月 29 pkginfo
-rw-r--r--   1 0        1            209 2001  12月 29 pkgmap
# ^C
# ls -an SUNWxf86u
总数 26
drwxr-xr-x   4 0        1            512 2001  12月 29 .
drwxr-xr-x   4 0        0            512  4月 19日 14:37 ..
drwxr-xr-x   2 0        1            512 2001  12月 29 install
-rw-r--r--   1 0        1            390 2001  12月 29 pkginfo
-rw-r--r--   1 0        1           8104 2001  12月 29 pkgmap
drwxr-xr-x   5 0        1            512 2001  12月 29 reloc
# pkgadd -d SUNWxf86u
pkgadd: ERROR: no packages were found in
而且我发现里面好像没有安装文件啊
以下是install文件夹内容,是不是补丁包本来就不对啊
# ls -an install
总数 30
drwxr-xr-x   2 0        1            512 2001  12月 29 .
drwxr-xr-x   3 0        1            512 2001  12月 29 ..
-rw-r--r--   1 0        1             59 2001   6月 22 copyright
-rw-r--r--   1 0        1             97 2001   7月 21 depend
-rw-r--r--   1 0        1           3088 2001   8月 22 postinstall
-rw-r--r--   1 0        1           3872 2001   8月 22 preinstall
-rw-r--r--   1 0        1           2680 2001   8月 22 preremove  
A:那个该死的命令中间有 个点 pkgadd -d . SUNWxf86u
 
1  Q: #gunzip < mysql-4.0.24.tar.gz | tar xvf -
#cd mysql-4.0.24
#./configure --prefix=/usr/local/mysql  --enable-shared=max
#make
#make install
# scripts/mysql_intsall_db 当执行到这一句时问什么老是提示
bash: scripts/mysql_intsall_db: No such file or directory
是什么原因啊?
A: ./scripts/mysql_intsall_db
只能看看试一试
19)Q:我用solaris的mount命令加载光驱,始终没有反映。(使用本版的一句话手册)
提示/dev/dsk/c0t6d0s0 不是hsfs文件系统(先使用/etc/init.d/volmgt stop命令)
使用/etc/init.d/volmgt start听得到光驱转动,但不能在/cdrom目录显示。
是不是有什么开关锁住了光驱??
eject命令可以使用
A:有时设备名也不一定是/dev/dsk/c0t6d0s0,
试一下/dev/dsk/c0t6d0s1, /dev/dsk/c0t6d0s2,。。。
cd /dev/dsk  看看哪个像,
检查一下 / 有无cdrom目录,如没有,/etc/init.d/volmgt start无法mount,
或干脆建个目录,如/dvd,手工mount,
mount -F hsfs -o ro /dev/dsk/c0t6d0s0 /dvd
 
20)Q:有关访问不同网段的网络配置问题?同样的设置,不同的结果  
uname -a
SunOS MIBJ2 5.9 Generic_117171-13 sun4u sparc SUNW,Ultra-250
cat /etc/hostname.hme0
MIBJ2
cat /etc/hosts
#
# Internet host table
#
127.0.0.1       localhost
10.0.6.77       MIBJ2   loghost
cat /etc/defaultrouter
10.0.6.2
cat /etc/netmasks
10.0.6.77 255.255.0.0
ping 10.2.0.71
同样的设置,windows上可以,solaris上就不行
A: 1.   /etc/netmasks
10.0.0.0     255.255.0.0
2.  ping 10.0.6.2
3. ifconfig -a
4. ifconfig hme0 netmask 255.255.0.0 broadcast +
5. ping -s 10.2.0.71
] ping -s 10.2.0.71
PING 10.2.0.71: 56 data bytes
64 bytes from 10.2.0.71: icmp_seq=0. time=2. ms
64 bytes from 10.2.0.71: icmp_seq=1. time=0. ms
64 bytes from 10.2.0.71: icmp_seq=2. time=0. ms
网段设置错误,返回的包无法达到本机
21) Q: 本人用tar解压文件,出现报错信息,如下:
tar: directory checksum error?
哪为知道是什么原因啊?是不是跟目录建立太深有关啊?
屏幕显示信息:
# tar -vxf sol.tar
x sol, 0 bytes, 0 tape blocks
x sol/sets, 0 bytes, 0 tape blocks
x sol/sets/fgroups, 0 bytes, 0 tape blocks
x sol/sets/fgroups/fg0.taz, 3752101 bytes, 7329 tape blocks
tar: directory checksum error
# pwd
/opt/DDM/SETUP/DOMINO
A: 有几种可能,一是你加载了fat32 分区,它的路径限制
二是你下载的文件不完全.
三就是楼上朋友说的gnu tar 的问题
四是和磁带上的校验不一样
你可以试试用solaris tar 的-i参数看能不能跳过
22) Q: 多线程socket程序,有时候会出现“断开的管道”而退出,也不好调试(因为是多线程,多个线程都在打印日志,搞不清楚是那句代码有问题;gdb coredump也不行,因为不是“段错误”,不会产生core)。
请问,“断开的管道”是什么类型的错误引起的,在多线程情况下,有办法定位产生该错误的代码吗?
A: 我遇到过这问题,是由于套接字中大量大量的数据没被应用读走,导致被填满造成的
23) Q: Solaris 10 中如何避免启动时运行 Configuration Assistant  
就是那个蓝色的屏,每次启动都会出来问是否有新硬件。我的是 Solaris 10 for X86, 装在第二块硬盘上用 Grub 引导。以前 Sol 8 和 9 都是直接启动没有这样的问题。我因为没有显示器,每次启动总要猜好半天才能完成启动。
A: 用eeprom命令看看,下面的设置:
.....
auto-boot?=true
.....
如果不是true就用eeprom改一下
eeprom auto-boot?="true"
auto-boot 是 true,原因是我的 bootpath 总是指向第一块硬盘,改成第二块硬盘就好了。
24)Q: 普通用户在console登录,输入口令后几秒钟又返回到登录窗口,root可以登录
进去以后用su - 普通用户可以,并且没有输入密码的提示,有点怪!!!
# more /etc/default/login
#ident  "@(#)login.dfl  1.10    99/08/04 SMI"   /* SVr4.0 1.1.1.1       */
# Set the TZ environment variable of the shell.
#
#TIMEZONE=EST5EDT
# ULIMIT sets the file size limit for the login.  Units are disk blocks.
# The default of zero means no limit.
#
#ULIMIT=0
# If CONSOLE is set, root can only login on that device.
# Comment this line out to allow remote login by root.
#
CONSOLE=/dev/console
# PASSREQ determines if login requires a password.
#
PASSREQ=YES
# ALTSHELL determines if the SHELL environment variable should be set
#
ALTSHELL=YES
--More--(31%)
普通用户与这个文件应该也无关啊,/etc/passwd也是正常的
A: 普通用户的环境设置文件有问题, 修改之。
#su -  普通用户
$pwd
检查用户的家目录正确与否; 有时因为普通用户的家目录丢失或者没有写权限,login时会自动退出。
25) Q: How to configure the PPPoE on Solaris[TM] 8
A: Sun PPPoE is available in the Solaris [TM] 8 10/01 Maintenance Update 6 and higher. It is not available in earlier versions of the Solaris [TM] Operating Environment.
Packages:
Make sure the following packages are installed for pppoe server/client configuration:
# pkginfo -l |grep pppd
PKGINST: SUNWpppd
PKGINST: SUNWpppdr
PKGINST: SUNWpppdt
PKGINST: SUNWpppdu
PKGINST: SUNWpppdx          
Client confguration:
1. Make sure that no ppp daemon is running on the system, suchas ppp, pppd,pppoed, etc.
2. Make sure that the network interface, such as eri, le, ge, etc., is used only for pppoe.
3. Create a file in /etc/ppp/peers such as myserver to keep the connecting parameters.
pppoeclnt# more /etc/ppp/peers/myserver
sppptun
updetach
debug
plugin pppoe.so
connect "/usr/lib/inet/pppoec -v eri0 local"          
Where:
sppptun - what device to use
updetach -will display the o/p on screen when pppd starts.
debug -dubug mode
plugin pppoe.so -initialize the connect string.
connect "..." -connect string
4. Plumb the pppoed & pppoe protocols on the network interface eri0 as follows:
pppoeclnt# sppptun plumb pppoed eri0
pppoeclnt# sppptun plumb pppoe eri0          
5. Verify that the interface is plumbed:
pppoeclnt# sppptun query
eri0:pppoed
eri0:pppoe          
6. Start the pppoed deamon:
pppoeclnt#/usr/lib/inet/pppoed
7. Test the client configuration. You should see the MAC address, type of service, etc.
pppoeclnt# /usr/lib/inet/pppoec -i eri0
26) Q: 一台soalris9系统,硬盘73G。安装系统用了10G,其他63G都没分配。现在根目录容量不够,该如何操增大根目录?
我是新手,急需更改,希望有心人给于详细一些的答复!都是用什么命令,该如何操作,谢谢!
A: 1. format
( 将剩余的60GB 空间分配到 slice 5     10GB, slice 6 10GB)
2. newfs /dev/rdsk/c0t0d0s5
3. newfs /dev/rdsk/c0t0d0s6
4. boot  -s   ( 启动到单用户)
5.  mkdir /a /b
6. mount /dev/dsk/c0t0d0s5 /a
mount /dev/dsk/c0t0d0s6 /b
7. ufsdump 0cuf /b/opt.dump
8. cd /a
ufsrestore xvf /b/opt.dump
......
9. vi /etc/vfstab  (加入如下行)
/dev/dsk/c0t0d0s5  /dev/rdsk/c0t0d0s5   /opt/  ufs 2 yes  -
( 注意加/ 的后面)
10. reboot  
11. mount /dev/dsk/c0t0d0s6 /b
12. cd /b
rm opt.dump
如果空间释放的不够,参照实行,转移/export/home 或者/var 目录。
27)Q:solaris 安装一半光驱弹不出来,help~
A:好了~
/etc/init.d/volmgt stop
cd /
umount cdrom
以后好了
可是换了一张盘以后,mount不好用了~`` :(
怎么mount 上?
首先:
# /etc/init.d/volmgt start
# volcheck
如果不行,用:
# /etc/init.d/volmgt stop
# mount -F hsfs -o ro /dev/dsk/c0t6d0s0 /cdrom --挂接光驱
28)Q:用DiskSuite做了Raid 1的做root密码忘记的恢复?
A:1.  boot cdrom -s
2.  mount /dev/dsk/c0t0d0s0  /a
3. vi /a/etc/shadow      ( remove the password for root user)
4.  vi /a/etc/vfstab        ( modify the devices to mount ; using the disk name to replace the meta device name)
5. vi /a/etc/system       ( remove the root device line)
6. umount /a
7. reboot
8. remirror the root disk.
29)Q:使用format.dat文件恢复磁盘的vtoc
A:format.dat文件中记录了硬盘的缺省的分区表,并不记录该硬盘的使用的分区表。 除非你的文件中单独为这个硬盘建立了独立的信息。
# format
....... (选择硬盘)
type
....
   ( 选择你要的类型)
lab
q
(退出)
30)Q:请教列位大侠一个问题:就是solaris系统如何停止x-manager登录。
A:修改/usr/dt/config/Xaccess文件,屏蔽  *       # grant service to all remote displays 行,可使远程Xserver不能登录
31)Q:谁能告诉我怎样对拷两台SOLARIS服务器的数据?
先以某用户身份登录另一台服务器,然后执行rcp吗?
我要拷贝的是带子目录的一组数据。
 
A;1.share设置:
共享ultra60主机上的/home/test,以root用户修改/etc/dfs/dfstab文件加入如下命令
share -o rw -d “test director on ultra60” /home/test
然后重启动或执行如下命令
#/etc/init.d/nfs.server stop
#/etc/init.d/nfs.server start
2.mount共享目录:
在另一主机上建立/home/test2目录,root用户下输入如下命令
#mount -o rw ultra60: /home/test  /home/test2
这样test就被挂接到另一主机的test2目录下了
卸载:#umount /home/test2
32)Q:Samba server安装,配置指导
A:1.install samba
首先去下载最新版本的Samba
gzip -d samba-3.0.14a.tar.gz
tar -xvf samba-3.0.14a.tar
cd samba-3.0.14a
./configure --prefix==/usr/local/samba (你要安装的目录)
mkdir /usr/local/samba (你要安装的目录)
make
make install
2.配置samba的WEB界面
到此安装基本完成,下面我们要配置/usr/local/samba/lib/smb.conf这个文件,但是由于它很复杂所以我们采用WEB形式的Interface,这样便于很多初学者配置samba,所以我先把配置samba的WEB界面的步骤介绍一下
vi /etc/services,在末尾加上swat   901/tcp
vi /etc/inetd.conf,在末尾加上
swat   stream  tcp  nowait  root  /usr/local/samba/bin/swat  swat
然后强制系统重新读取inetd.conf文件
先用ps -ef | grep inetd找出inetd的SID
然后用kill -HUP XXX(inetd的SID)
3.配置samba共享
vi /usr/local/samba/lib/smb.conf
输入一个#然后保存退出
启动IE 在地址栏里输入“(samba的IP地址):901
在弹出的对话框里面输入root的用户名和密码,之后进入samba server配置的主界面,上方有8个摁扭,点击第8个“password”在最上的对话框里面添上username和password之后点击“add new user”创建新用户。
再点击第三个“share”摁扭创建共享目录,这里需要注意一点你创建的目录一定要存在否则samba不会自动创建,这样会导致从客户端连接的时候提示你“权限不够不能打开”
在Create share里面输入你新建的共享名称然后点击Create share
然后是设置详细的权限和路径主要的有这几项
Base Options
Help       comment  (目录的注释)
Help       path  (共享目录的路径)
Security Options
Help       invalid users  (不可以访问的用户)
Help       valid users  (可以访问的用户)
Help       admin users  (管理员用户)
Help       read list  (可以读取的用户)
Help       write list  (可以写的用户)
Help       read only YesNo (是否只读)
Help       guest ok YesNo (是否允许guest访问)
设置完成之后点击“commit changes”到此一个新的共享建立好了
4.启动samba server
在Samba的主界面里点击第六个摁扭“status”下面的“start smbd”启动samba service(如果只用IP地址访问samba server,只启动这一个就好了)
 
阅读(15016) | 评论(2) | 转发(0) |
0

上一篇:volume manage笔记[转贴]

下一篇:vmstat

给主人留下些什么吧!~~

chinaunix网友2008-08-01 02:08:28

SAP99,支持下,也欢迎访问我的博客, SAP资料多多 http://sap99.cublog.cn http://www.sap99.com 有很多的学习资料,推荐一下,