SUN Solaris 问题小结

发布时间:2017-03-13 12:05:50

 SUN服务器可能遇到的问题总结(一)

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 </Documents/SUNWxf86u>

而且我发现里面好像没有安装文件啊 
以下是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 
eri0ppoed 
eri0ppoe


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 
首先去www.samba.org下载新版本的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 在地址栏里输入“http://192.168.12.16(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,只启动这一个就好了)

###############################################################
SUN服务器可能遇到的问题总结(二) 
1) Q:用xmenager登陆虚拟机上的solaris不能进入图形界面 
用xmenager登陆虚拟机上的solaris不能进入图形界面 
输入密码回车后显示: 
Unalbe to access home directory .click OK to start a failsafe session,or Cancel to restart login

注:solaris 10的显卡也没有安装,:(因为我找不到对应的显卡驱动,我试用过sunwxf86-vmware.tar.gz可是安装后找不到对应的显卡驱动显卡 XF86-VMWARE VMware virtual video adapter,后来看到高手说要用:xf86_drv_port_bin_420_1.tar.gz 
可是我找不到下载的地址,上面提供的下载不了,希望高手帮帮忙 
A:检查一下看你的用于登陆的用户的主目录权限设置是否正确,看看该目录的拥有者。

yd518-cj 兄显示中文为空白的问题,是缺少中文字体文件。 
1、首先进入Solaris将/usr/openwin/lib/locale/zh/X11/fonts下的75dpi目录打包在传回本地,解压到某个文件夹下。 
2、进入该文件夹,重命名fonts.alias为fonts.ali 
3、将刚才解开的目录下的.Z压缩文件都解开 
4、修改文件fonts.dir 将其中的类似.pcf.Z都改为.pcf 
5、以Xmanager为例,进入Xconfig在所有的配置文件的font路径中加入该目录即可。

2) Q:s9下解压缩9_Recommended.tar.bz2一定要另外下bunzip2么 
A:请你执行 
# which bunzip2 
你就能看到bunzip2在哪个目录下啦,S9是自带的。无需另外下载,应该在 
/usr/bin/bunzip2。请核实 
如果你是想安装这个s9的推荐安装patch包 
#cd /cdrom/cdrom0/sun/patch/9 
#unpack-patches (这个脚本会自动的解压recom包的) 
还可以到 /opt/sun/bin/ 下面有unpack-patches脚本

3)Q:我的solaris8 下所有用户(包括root)下都没有.profile? 
请问:我的solaris8 下所有用户(包括root)下都没有.profile? 
我的man 也用不起来, 
在/usr/share/man/下有东西 
.profile 是隐藏文件 
$ ls –al 
/etc下应该是profile,前面不该有(.)。 
你可以用/etc/skel里的local.profile做模版,为root还有用户建立自己的.profile文件。 
贴一下我的.profile文件给你参考:

# more /etc/profile 
#ident "@(#)profile 1.18 98/10/03 SMI" /* SVr4.0 1.3 */

#For test only, please do not move. 
echo "I am /etc/profile....................."

# The profile that all logins get before using their own .profile. 
trap "" 2 3 
export LOGNAME PATH

if [ "$TERM" = "" ] 
then 
if /bin/i386 
then 
TERM=sun-color 
else 
TERM=sun 
fi 
export TERM 
fi

# Login and -su shells get /etc/profile services. 
# -rsh is given its environment in its .profile.

case "$0" in 
-sh | -ksh | -jsh)

if [ ! -f .hushlogin ] 
then 
/usr/sbin/quota 
# Allow the user to break the Message-Of-The-Day only. 
trap "trap '' 2" 2 
/bin/cat -s /etc/motd 
trap "" 2

/bin/mail -E 
case $? in 
0) 
echo "You have new mail." 
;; 
2) 
echo "You have mail." 
;; 
esac 
fi 
esac

umask 022 
trap 2 3 

# more .profile 
echo "I am /.profile................" 
stty erase 

# env 
EDITOR=vi 
HOME=/ 
HZ=100 
LC_COLLATE=en_CA.ISO8859-1 
LC_CTYPE=en_CA.ISO8859-1 
LC_MESSAGES=C 
LC_MONETARY=en_CA.ISO8859-1 
LC_NUMERIC=en_CA.ISO8859-1 
LC_TIME=en_CA.ISO8859-1 
LOGNAME=root 
MAIL=/var/mail/root 
PATH=/usr/sbin:/usr/bin 
SHELL=/sbin/sh 
TERM=ansi 
TZ=Canada/Eastern 
_INIT_NET_STRATEGY=none 
_INIT_PREV_LEVEL=S 
_INIT_RUN_LEVEL=3 
_INIT_RUN_NPREV=0 
_INIT_UTS_ISA=sparc 
_INIT_UTS_MACHINE=sun4m 
_INIT_UTS_NODENAME=sun 
_INIT_UTS_PLATFORM=SUNW,SPARCstation-5 
_INIT_UTS_RELEASE=5.8 
_INIT_UTS_SYSNAME=SunOS 
_INIT_UTS_VERSION=Generic_108528-29 

# set 
EDITOR=vi 
HOME=/ 
HZ=100 
IFS=

LC_COLLATE=en_CA.ISO8859-1 
LC_CTYPE=en_CA.ISO8859-1 
LC_MESSAGES=C 
LC_MONETARY=en_CA.ISO8859-1 
LC_NUMERIC=en_CA.ISO8859-1 
LC_TIME=en_CA.ISO8859-1 
LOGNAME=root 
MAIL=/var/mail/root 
MAILCHECK=600 
OPTIND=1 
PATH=/usr/sbin:/usr/bin 
PS1=# 
PS2=> 
SHELL=/sbin/sh 
TERM=ansi 
TZ=Canada/Eastern 
_INIT_NET_STRATEGY=none 
_INIT_PREV_LEVEL=S 
_INIT_RUN_LEVEL=3 
_INIT_RUN_NPREV=0 
_INIT_UTS_ISA=sparc 
_INIT_UTS_MACHINE=sun4m 
_INIT_UTS_NODENAME=sun 
_INIT_UTS_PLATFORM=SUNW,SPARCstation-5 
_INIT_UTS_RELEASE=5.8 
_INIT_UTS_SYSNAME=SunOS 
_INIT_UTS_VERSION=Generic_108528-29 

据我研究,$HOME/.profile,$HOME/.login和$HOME/.cshrc默认的情 况下,系统并不自动建立。在/etc下,默认有profile和.login两个文件,它们是system-wide的initialization files。不同用户的登陆默认shell不同,运行的初始化文件-initialization files也不同。

1、对/bin/sh用户,运行/etc/profile和$HOME/.profile(如果有的话)。 
2、对/bin/ksh用户,也运行/etc/profile和$HOME/.profile(如果有的话)。 
3、对/bin/csh用户,运行/etc/.login和$HOME/.cshrc还有$HOME/.login(如果有的话)。然后,每一次产生新的子shell,再运行$HOME/.cshrc一次。

/etc/skel是系统默认的存放初始化文件-initialization files的地方,当你用useradd创建新用户时,-k /etc/skel就等于告诉系统去哪里寻找初始化文件-initialization files。但是这3个文件的原名分别为local.cshrc,local.login,local.profile,系统只是简单的把他们复制到用户 $HOME下,需要你手动修改他们的名字为.cshrc,.login,.profile。

想知道自己到底在第几层shell里,可以运行#ptree | grep sh

至于MANPATH=/usr/share/man,我不清楚。我从未注意,也未动过。


4) Q: 文件许可权限 
A: 去掉不用的suid文件

安全层面:本地

解决方法:

许多运行在solaris上的suid程序都只属于root,检查这些程序,有没有是属于其他用户的:


步骤:

1) 找出所有的suid程序 
2) 创建备3) 份目录(如:/opt/backup/usr/local/bin) 
4) 把这些suid程序备5) 份在以上目录里 
6) 把这些程序用tar打成包(使find程序在备7) 份目录里找不8) 到这些程序) 
9) 删掉备10) 份目录 
11) 去掉所有的suid程序的s权位 
12) 只保留一些必须的suid程序。如:passwd,13) su等 
14) 再次执行一遍find程序,15) 看看输出情况 
必须用到的一些命令: 
find / -type f\( -perm -4000 \) |xargs ls -a 
find / -type f\( -perm -4000 \) |xargs chmod -s

去掉不用的sgid程序

安全层面:本地

解决方法:

许多运行在solaris上的sgid程序都只属于root,检查这些程序,有没有是属于其他用户的:

1) 出所有的sgid程序 
2) 创建备3) 份目录(如:/opt/backup/usr/local/bin) 
4) 把这些sgid程序备5) 份在以上目录里 
6) 把这些程序用tar打成包(使find程序在备7) 份目录里找不8) 到这些程序) 
9) 删掉备10) 份目录 
11) 去掉所有的sgid程序的s权位 
12) 只保留一些必须的sgid程序。如:passwd,13) su等 
14) 再次执行一遍find程序,15) 看看输出情况 
必须用到的一些命令: 
find / -type f\( -perm -2000 \) |xargs ls -a 
find / -type f\( -perm -2000 \) |xargs chmod -s

删除一切/etc目录下的组用户可写的文件

安全层面:本地

解决方法:

检查/etc目录下所有的组可写文件: 
find /etc -type f\( -perm 20 \) | xargs ls -las

不需要组的可写权限,修改如下: 
find /etc -type f\( -perm 20 \) | xargs chmod g-w

移除/etc目录下一切对用户可写的文件

安全层面:本地

解决方法:

检查/etc目录下对用户可写文件: 
find /etc -type f\( -perm 2 \) | xargs ls -las

不需要用户的可写权限,修改如下: 
find /etc -type f\( -perm 2 \) | xargs chmod g-w

改变所有文件的rw-rw-rw权限为rw-r-r-

安全层面:本地

解决方法:

首先列出文件: 
find / -type f -perm 666 |xargs ls -al > perm-666-before-change.txt

改变权限: 
find / -type f -perm 666 |xargs chmod 644 
find / -type f -perm 666 |xargs ls -al > perm-666-after-change.txt

改变文件的rwxrwx

安全层面:本地

解决方法:

首先列出文件: 
find / -type f -perm 777 |xargs ls -al > perm-777-before-change.txt

改变权限: 
find / -type f -perm 777 |xargs chmod 755 
find / -type f -perm 777 |xargs ls -al > perm-777-after-change.txt

找出可写的目录

安全层面:

本地

解决方法: 
find / -type d\( -perm 2 \) 
改变你所需要的权限设置

确定所有应用服务的启动脚本的用户属主和用户组是root 
(这些可以影响补丁的程序和出错信息)

安全层面:本地

解决方法:

检查启动脚本的文件属主: 
find /etc -type f -print | grep rc | egrep -v "skel|tty|mail|snmp|Mail" | xargs ls -al > rc-files-before-change.txt

改变这些文件的文件属主: 
find /etc -type f -print | grep rc | egrep -v "skel|tty|mail|snmp|Mail" | xargs chown 
root:root 
find /etc -type f -print | grep rc | egrep -v "skel|tty|mail|snmp|Mail" | xargs ls -al > rc-files-after-change.txt 
ls -al /etc/ init. d > etc-init.d-before.change.txt 
chown root:root /etc/ nit.d 
ls -al /etc/init.d > etc-init.d-after-change.txt

经过这样的改变,所有的rcX.d里的脚本的文件属主都为root,所有的/etc/init.d目录里的脚本的文件属主文件组都是root了,为了防止特洛伊木马。

打开cron程序的记账

安全层面:本地

解决方法:

确定/etc/default/cron文件里有如下行: 
CRONLOG=YES

检查utmp,utmpx的权限

安全层面:本地

解决方法:

检查/var/adm目录下的文件权限: 
find /var/adm -type f\( -perm 2 \) | xargs ls -las

修改文件: 
chmod 644 /var/adm/utmp

寻找没有用户关联的文件

安全层面:本地

解决方法: 
find / -type f -nouser

如下步骤:

1) find / -type f -nouser > files-nouser-before-change 
2) find / -type f -nouser | xargs chwon nobody:nobody 
3) find / -type f -nouser > files-nouser-after-change

寻找没有组关联的文件

安全层面:本地

解决方法: 
find / -type f -nogroup

如下步骤:

1) find / -type f -nogroup > files-nogroup-before-change 
2) find / -type f -nogroup | xargs chgrp nobody 
3) find / -type f -nogroup > files-nogroup-after-change

检查/var/cron的权限

安全层面:本地

解决方法:

如果/etc/cron文件的文件属主不是root,组不是sys,修改该文件的权限: 
chmod 700 /var/cron && chown root /var/cron && chgrp sys /var/cron


5) Q: 请教:set -o vi 是什么意思? 
A:set -o vi 总是见到出现在初始化脚本里面(.profile), ,哪位告诉一下这句是什么意思? 
在.kshrc中输入: 
set -o vi 
即设置联机编辑器为vi

set +o vi 取消 
.kshrc是ksh的run command,但不一定非得叫这个名字(这一点与csh不同)

6) Q: s9安装完后自带的sun volume manager的问题? 
A: 在8里面需要单独安装,9自带 
做镜像或RAID5可以参考:http://chinaunix.net/jh/6/339263.html

7) Q: 如何测试一台外接磁带库呢 
A: mt -f /dev/rmt/x status 
其中/dev/rmt/x是你的磁带机设备名。如果是有多个驱动器或机械手的磁带库,要分别测试,随机文档中应该有测试方法。


Q: 如何用一条命令更改目录及其下得所有子目录和文件权限啊? 
A: 我在solaris9用chmod 755 samba这个命令只能更改samba这个目录得权限,其下面得子目录和文件要再输入命令才能行!这样太麻烦了,请问怎么才能一次更改所有得权限啊? 
The -R option can meet your needs

9) Q: 如何重新启动inetd ? 
A: 修改了 /etc/inetd.conf 里的部分属性 
现在想重新启动inetd,如何做? 
我的os是solaris9 
pkill -HUP inetd 
pkill -HUP inetd 
是重启

如果已经杀掉则,inet.d -s就可以了.

10) Q: 怎样用gcc替代cc让make程序默认编译器是gcc ? 
$ls -l codec_dbkapi.c 
-r--r--r-- 1 xinh staff 0 Jan 24 11:42 codec_dbkapi.c

$make codec_dbkapi 
cc codec_dbkapi.c -o codec_dbkapi 
/usr/ucb/cc: language optional software package not installed 
make: *** [codec_dbkapi] Error 1


如何才可以让make默认编译器是gcc 呢?? 
机器上已经安装了gcc ,但是cc软件包没有, 
btw ,没有超级用户权限 
A: 修改makefile吧,把cc定义成gcc就行了 CC=gcc

10) Q: 请教关于sun网卡的问题 
有一台sun v480 
ifconfig -a 
lo0: flags=1000849<UP,LOOPBACK,RUNNING,MULTICAST,IPv4> mtu 8232 index 1 
inet 127.0.0.1 netmask ff000000 
ce0: flags=1000843<UP,BROADCAST,RUNNING,MULTICAST,IPv4> mtu 1500 index 2 
inet 172.16.6.11 netmask ffffff00 broadcast 172.16.6.255 
ether 0:3:ba:68:7:67

在不重起机器的前提下,想将它的另一块网卡(应该是ce1吧)配上ip,请问高手怎么办 
A: #ifconfig ce1 plumb ;启用ce1 
#ifconfig ce1 inet x.x.x.x netmask 0xffffff00 up ;起用ce1 
这是临时的,下次重起机器后消失,如果要永久性修改,要同时修改hosts,netmasks,创建hostname.ce1即可.

 

11) Q:DNS解析不是和/etc/resolv.conf有关系吗? 
原先resolv.conf里写nameserver xx.xxx.xx.xx,可我把这个文件删除掉,solaris怎么还能解析出地址呢 
Q:原因如下: 
(1)如果没有DNS解析了,而你的/etc/hosts里面包含那个域名,机子也可以识别那个域名。 
(2)如果/etc/hosts里面没有哪个域名,而用nslookup也可以解析,那是因为域名解析系统默认自己机子作为dns服务器。如果你自己的机子上有运行DNS服务器,也会出现这种情况。

12)Q:solrais10 for x86 如何更改显示器刷新率? 
A:用此命令:/usr/X11/bin/xorgconfig
13)Q:我的.profile 里只有一行:PATH=$PATH:/usr/local/bin:/usr/ccs/bin:/usr/j2se/bin;export PATH 
在etc/profile里有: 
#ident "@(#)profile 1.18 98/10/03 SMI" /* SVr4.0 1.3 */

# The profile that all logins get before using their own .profile.

trap "" 2 3 
export LOGNAME PATH

if [ "$TERM" = "" ] 
then 
if /bin/i386 
then 
TERM=sun-color 
else 
TERM=sun 
fi 
export TERM 
fi

# Login and -su shells get /etc/profile services. 
# -rsh is given its environment in its .profile.

JAVA_HOME=/usr/j2se 
export JAVA_HOME 
case "$0" in 
-sh | -ksh | -jsh)

if [ ! -f .hushlogin ] 
then 
/usr/sbin/quota 
# Allow the user to break the Message-Of-The-Day only. 
trap "trap '' 2" 2 
/bin/cat -s /etc/motd 
trap "" 2

/bin/mail -E 
case $? in 
0) 
echo "You have new mail." 
;; 
2) 
echo "You have mail." 
;; 
esac 
fi 
esac

umask 022 
"profile" 48 lines, 741 characters

在env 
bash-2.03# env 
PWD=/etc 
TZ=PRC 
XFORCE_INTERNET=True 
WINDOWID=83886089 
LC_MESSAGES=C 
DTSCREENSAVERLIST=StartDtscreenSwarm StartDtscreenQix StartDtscreenFlame StartDtscreenHop StartDtscreenImage StartDtscreenLife StartDtscreenRotor StartDtscreenPyro StartDtscreenWorm StartDtscreenBlank 
dtstart_sessionlogfile=/dev/null 
HOSTNAME=support 
XMBINDDIR=/usr/dt/lib/bindings 
DTUSERSESSION=root-192.168.1.212-0 
DTDATABASESEARCHPATH=//.dt/types,/usr/dt/appconfig/types/%L,/usr/dt/appconfig/types/C 
OPENWINHOME=/usr/openwin 
MANPATH=/usr/dt/man:/usr/man:/usr/openwin/share/man 
LC_TIME=en_US.ISO8859-1 
USER=root 
MACHTYPE=sparc-sun-solaris 
AB_CARDCATALOG=/usr/dt/share/answerbooks/en_US.ISO8859-1/ab_cardcatalog 
DTXSERVERLOCATION=remote 
XFILESEARCHPATH=/usr/openwin/lib/locale/%L/%T/%N%S:/usr/openwin/lib/%T/%N%S 
MAIL=/var/mail/root 
OLDPWD=/ 
EDITOR=/usr/dt/bin/dtpad 
LANG=en_US.ISO8859-1 
JAVA_HOME=/usr/j2se 
LC_NUMERIC=en_US.ISO8859-1 
DISPLAY=192.168.1.212:0.0 
LOGNAME=root 
SHLVL=1 
LC_CTYPE=en_US.ISO8859-1 
XMICONSEARCHPATH=//.dt/icons/%B%M.pm://.dt/icons/%B%M.bm://.dt/icons/%B:/usr/dt/appconfig/icons/%L/%B%M.pm:/usr/dt/appconfig/icons/%L/%B%M.bm:/usr/dt/appconfig/icons/%L/%B:/usr/dt/appconfig/icons/C/%B%M.pm:/usr/dt/appconfig/icons/C/%B%M.bm:/usr/dt/appconfig/icons/C/%B 
HELPPATH=/usr/openwin/lib/locale:/usr/openwin/lib/help 
SESSION_SVR=support 
XMICONBMSEARCHPATH=//.dt/icons/%B%M.bm://.dt/icons/%B%M.pm://.dt/icons/%B:/usr/dt/appconfig/icons/%L/%B%M.bm:/usr/dt/appconfig/icons/%L/%B%M.pm:/usr/dt/appconfig/icons/%L/%B:/usr/dt/appconfig/icons/C/%B%M.bm:/usr/dt/appconfig/icons/C/%B%M.pm:/usr/dt/appconfig/icons/C/%B 
DTHELPSEARCHPATH=//.dt/help/root-192.168.1.212-0/%H://.dt/help/root-192.168.1.212-0/%H.sdl://.dt/help/root-192.168.1.212-0/%H.hv://.dt/help/%H://.dt/help/%H.sdl://.dt/help/%H.hv:/usr/dt/appconfig/help/%L/%H:/usr/dt/appconfig/help/%L/%H.sdl:/usr/dt/appconfig/help/%L/%H.hv:/usr/dt/appconfig/help/C/%H:/usr/dt/appconfig/help/C/%H.sdl:/usr/dt/appconfig/help/C/%H.hv 
DTSOURCEPROFILE=true 
DTAPPSEARCHPATH=//.dt/appmanager:/usr/dt/appconfig/appmanager/%L:/usr/dt/appconfig/appmanager/C 
SHELL=/bin/sh 
HOSTTYPE=sparc 
OSTYPE=solaris 
HOME=/ 
TERM=dtterm 
PATH=/usr/sbin:/usr/bin:/usr/dt/bin:/usr/openwin/bin:/bin:/usr/ucb:/usr/local/bin:/usr/ccs/bin:/usr/j2se/bin 
LC_MONETARY=en_US.ISO8859-1 
TERMINAL_EMULATOR=dtterm 
LC_COLLATE=en_US.ISO8859-1 
_=/usr/bin/env 
请问env里的东西来在哪里?我要修改path在哪里修改呀?

A:是ROOT用户吗?是的话就在/etc/porfile 
如果是其他用户的话就在用户的家目录下。$HOME/.profile

14)Q:以前的情况: 
在U60主机上,插了一个SCSI卡,系统盘就接在上面.该硬盘的SCSI ID是0,设备名为c1t0d0,而光驱接在主机系统板自带的scsi口上.其scsi ID是6,其设备名为c0t6d0.安装的系统是solairs8,一直都运行正常.

现在的情况是: 
需要把SCSI卡取走,那么我把硬盘接到主机系统板自带的scsi口上,然后用光驱引导系统进入维护模式,更改了/etc/vfstab文件,将c1t0d0都改为c0t0d0.保存后重启系统. 
在OK提示符下输入 
boot /pci@1f,4000/scsi@3/disk@0,0 
然后系统开始从硬盘引导,但是系统在初始化的过程当中退出,无法进入系统,系统提示信息是:找不到c0t0d0s0的设备。 
我用光盘启动到维护模式后,将系统盘c0t0d0s0 MOUNT到/a下,然后ls -l /a/etc/dsk,确实没有看到c0t0d0s0的设备文件,而只有c1t0d0s*和c0t6d0s*的设备。(然后我将/etc/vfstab文 件改回原来的值,并将系统盘接回到SCSI卡上之后,系统还是能正常进入)

我尝试在OK提示符下用boot -r启动系统,同样也解决不了问题,错误信息也是:找不到c0t0d0s0的设备。 
请问各位如何让系统生成c0t0d0s*的设备? 
A:手动 
ln -s /devices/..你的具体的设备文件名 c0t0d0s0


15)Q:我执行了script,但是在 .sh_history文件中没有任何键盘记录啊? 
如果使用 script -a filename的话,只是记录屏幕输入。 
我现在要记录登陆用户的键盘操作,请问如何处理?

A:# script 
Script started, file is typescript 
# lsdjf 
sh: lsdjf: command not found 
# ls 
acct exacct log messages.0 messages.2 passwd sm.bin streams typescript vold.log 
aculog lastlog messages messages.1 messages.3 sa spellhist sulog utmpx wtmpx 
# exit 
Script done, file is typescript 
# cd / 
# ls 
bin devices home lost+found net platform tmp vol 
data etc kernel mbox nohup.out proc usr xfn 
dev export lib mnt opt sbin var 
# more typescript 
typescript: No such file or directory 
# find / -name typescript -print 
/var/adm/typescript 
# more /var/adm/typescript 
Script started on Mon Jan 10 17:44:51 2005 
# lsdjf 
sh: lsdjf: command not found 
# ls 
acct exacct log messages.0 messages.2 passwd sm.bin streams typescript vold.log 
aculog lastlog messages messages.1 messages.3 sa spellhist sulog utmpx wtmpx 
# exit

script done on Mon Jan 10 17:44:58 2005 

# script newscript 
Script started, file is newscript 
# ls 
bin devices home lost+found net opt sbin var 
data etc kernel mbox newscript platform tmp vol 
dev export lib mnt nohup.out proc usr xfn 
# exit 
Script done, file is newscript 
# cd /var/adm 
# ls 
acct exacct log messages.0 messages.2 passwd sm.bin streams typescript vold.log 
aculog lastlog messages messages.1 messages.3 sa spellhist sulog utmpx wtmpx 
# cd 
# ls 
ecqi jboss-3.2.6.tar jboss-4.0.1RC1.tar local.profile 
j2sdk-1_4_2_06-solaris-sparc.sh jboss-4.0.1-src jboss4 nohup.out 
j2sdk1.4.2_06 jboss-4.0.1-src.tar local.cshrc sol8_patch.txt 
jboss-3.2.6 jboss-4.0.1RC1 local.login 
# find / -name newscript -print 
/newscript 
# cd / 
# more newscript 
Script started on Mon Jan 10 17:47:58 2005 
# ls 
bin devices home lost+found net opt sbin var 
data etc kernel mbox newscript platform tmp vol 
dev export lib mnt nohup.out proc usr xfn 
# exit

script done on Mon Jan 10 17:48:03 2005 
#


16)Q:在两台机子之间rlogin,rsh都没有问题。测试通过。 
但是rcp的时候出错。不知道是什么原因。 
命令:rcp test.txt username@hostname:/export/home/aa 
错误如下: 
stty: : Invalid argument 
A:如果缺省shell是C shell,那么不要在.cshrc中加入stty之类对终端操作的命令。 
可以在.login中加入stty erase ^H 
.cshrc中不要有stty命令,也不要向终端输出信息(例如:echo Welcome.)

17)Q: 
大家好,今天要修改ftp的登陆权限,应该是往/etc/ftpusers里加入不想让其ftp的用户啊。可是我根本打不开这个文件。错误如下:请大家看看是怎么回事,谢谢!

# pwd 
/etc 
# ls -l ftp* 
total 14 
-rw-r--r-- 1 root sys 1249 Sep 28 17:37 ftpaccess 
-rw-r--r-- 1 root sys 551 Sep 28 17:37 ftpconversions 
-rw-r--r-- 1 root sys 104 Sep 28 17:37 ftpgroups 
-rw-r--r-- 1 root sys 108 Sep 28 17:37 ftphosts 
-rw-r--r-- 1 root sys 114 Sep 28 17:37 ftpservers 
-rw-r--r-- 1 root sys 75 Sep 28 17:37 ftpusers 
# more ftpusers 
ftpusers: No such file or directory 
# chown root:root ftpusers 
chown: ftpusers: No such file or directory 

A: 
solaris 8 /etc/ftpusers 
solaris 9 /etc/ftpd/ftpusers 
不好意思。没有及时告诉大家问题的后解决情况。 
我发现我的是solaris 8 
居然也是在/etc/ftpd下。 
奇怪了。

1 Q: 我在solaris下想设置crontab,但是当我输入命令时,屏幕上跳出下面这个东东 
# crontab -e 
688

使我现在都无法对crontab进行设置,请问我该如何做才能设置我的crontab啊? 
A: 1. make a crontab copy 
crontab -l > /tmp/crontab.user 
2. make changes 
vi /tmp/crontab.user 
3. update cron 
crontab /tmp/crontab.user 
4. verify 
crontab –l

 

19) Q: 服务器v880 
客户机blade 2000 
客户机能够通过autofs自动mount到服务器的/A目录到本地的/B目录 
现在的问题是/A目录中的其中一个子目录(新创建)在客户端上无法看到,该目录相应权限都没问题,就是刚创建的。本人对autofs了解的不够多,又比较 着急,请各位解释一下这个问题的原因并提出在不改变服务器的任何设置和服务的情况下,该如何解决这个问题?好也不重启客户机。谢谢大家! 
A: 1.先退出/B目录,等上几分钟系统将umount后,再进入,就可以看见了 
2.或者在客户机上退出/B目录,再automount -t 60后,再进入 
你的方法一没用,方法二我没有试 
我已经解决这个问题了,和nis有关,我去/var/yp/maps中将相应的“auto_A”文件中添加上新建的子目录,如下: 
A -rw,hard,nointr,suid,bg server:/share/A 
然后make一下就好了。看来nis和autofs有很多关联,自己还得多看看书。。。。。。 
谢谢! 
20) Q: SMC中系统配置下面的Project是做什么用的? 
A: 1.显示系统资源类型:

# dispadmin -l 
CONFIGURED CLASSES 
================== 
SYS (System Class) 
TS (Time Sharing) 
FX (Fixed Priority) 
IA (Interactive) 
RT (Real Time)

2. 激活FSS类型,重启:

# dispadmin -d FSS

# dispadmin -l 
CONFIGURED CLASSES 
================== 
SYS (System Class) 
TS (Time Sharing) 
FX (Fixed Priority) 
IA (Interactive) 
RT (Real Time) 
FSS (Fair Share)

# reboot

3. 激活SRM,建立处理器组:

# pooladm -e 
# poolcfg -dc 'create pset pset ( uint pset.min=0; uint pset.max=2)' 
# poolcfg -dc info 
... 
pset pset 
int pset.sys_id 1 
boolean pset.default false 
uint pset.min 0 
uint pset.max 2 
string pset.units population 
uint pset.load 0 
uint pset.size 0 
string pset.comment 
...

4. 建立资源池:

# poolcfg -dc 'create pool pool' 
# poolcfg -dc info 
... 
pool pool 
int pool.sys_id 1 
boolean pool.active true 
boolean pool.default false 
int pool.importance 1 
string pool.comment 
pset pset_default

...

5.关联处理器组和资源池: 
# poolcfg -dc 'associate pool pool (pset pset)' 
# poolcfg -dc info 
... 
pool pool 
int pool.sys_id 1 
boolean pool.active true 
boolean pool.default false 
int pool.importance 1 
string pool.comment 
pset pset 
...
6.迁移CPU到处理器组:

# poolcfg -dc 'transfer to pset pset (cpu 0)' 
# poolcfg -dc info 
... 
pset pset 
int pset.sys_id 1 
boolean pset.default false 
uint pset.min 0 
uint pset.max 2 
string pset.units population 
uint pset.load 0 
uint pset.size 1 
string pset.comment 
cpu 
int cpu.sys_id 0 
string cpu.comment 
string cpu.status on-line 
...

7. 建立project, 及project所用内存限额:

# vi /etc/project 
... 
project:10000:test project:name::rcap.max-rss=10000

# rcapadm -E 
# rcapstat 
id project nproc vm rss cap at avgat pg avgpg 
10000 sunbj-project 0 0K 0K 10K 0K 0K 0K 0K 
10000 sunbj-project 0 0K 0K 10K 0K 0K 0K 0K 
10000 sunbj-project 0 0K 0K 10K 0K 0K 0K 0K

8. 每个project可设置多个task, 如ufsdump, netscape, ftp, ...


21) Q: DNS客户端的设置 
A: 俩个文件

1、/etc/resolv.conf文件 
没有就vi一个新文件 
记录DNS服务器的地址和域名 
关键字: 
domainname 
nameserver 
# more /etc/resolv.conf 
nameserver 192.168.2.1

2、/etc/nsswitch.conf文件 
记录主机名的搜索顺序等信息 
vi /etc/nsswitch.conf


将这个文件的hosts记录配置成hosts: files dns

 

22) Q: 要做WEB SERVER, VIEW SERVER,APP SERVER,DB SERVER 
给用户配什么sun的服务器比较合适啊?急!谢谢! 
A: 一点参考,已贴过n次的:

以Sun 1.2GHz UltraSPARC IV为例:

1.2GB USIV, 双内核双线程

其中每内核:

2个浮点处理器, 理论上

1.2Ghz * 2 == 2.4Mflop/s 即2.4百万次浮点运算

实际可测试:

for (i=0; i< 1000000; i++) 
a[i] + = 2 * b[i];

全UltraSPARC IV浮点运算次数:

2内核(2线程)* 2浮点运算单元 * 1000000 == 4000000

如运算时间需1秒结束, 则实际性能:

1.0E-06*(4000000)/1= 4Mflop/s

即一个UltraSPARC IV大概4M百万次浮点运算每秒,大概对科学计算应用有参考, 
其它应用,应考虑更多一些:

Sun服务器,从小到大:

1. CPU数量:1-72

1.2GB USIV, 双内核双线程

其中每内核:

L1,L2,和内存控制器均在CPU上,

L1 Cache,需<1ns时间访问:

4路,64KB 数据cache, 
4路,32KB 指令cache, 
4路, 2KB 预取cache, 
4路, 2KB 写cache,

L2 Cache,需10-20ns时间访问: 
8MB cache

内核间cache独立,归各内核自用,不共享


2. 内存:2GB-576GB,修改内存及内存数据同步时间180-440ns,

建议每CPU至少配2GB内存,每CPU实际可对应32GB内存 
理论系统带宽:2.4GB/s/CPU, 
实测系统带宽: 1.9GB/s/CPU, 
全系统持续带宽:9.6GB/s, 2-24CPU, 43GB/s, 72CPU

3.I/O,硬盘访问时间5-70ms, 网络大100ms延迟。

每I/O板理论带宽2.4GB/s, 实测带宽840MB/s 
每I/O板2个I/O控制器 
每I/O每I/O控制器理论带宽1.2GB/s,实测带宽420MB/s

其中. 
硬盘:9GB-300GB/个 
I/O性能: 
9 GB 7200转/分,141次I/Os每秒 
18 GB 10000转/分,141次I/Os每秒 
36 GB 15000转/分,178次I/Os每秒, 12-20MB/s 
73 GB 10000转/分,122次I/Os每秒 
146GB 10000转/分,130次I/Os每秒 
180GB 10000转/分, 86次I/Os每秒

1个66MHz PCI总线, 插FC光纤硬盘,1个100MB/s FCAL光纤环提供I/O实测带宽94MB/s 
1个66MHz PCI总线, 插FC光纤硬盘,2个100MB/s FCAL光纤环提供I/O实测带宽186MB/s


Internet网络客户: 
每个56Kbps Modem, 需网络带宽0.0056MB/s

4.应用

数据库层:

联机事务处理常用2KB I/O,文件服务常用8KB I/O, 决策支持常用64KB I/O,典型每事务处理2-200行SQL,1 SQL操作对应3-9 I/Os操作,平均每次交易对应70KB/s, 
(如300万次IBM TPCC世界记录:70KB/s/交易 * 3000000交易/60秒 = 2.1GB/s I/O,大概用了64个Power5 CPU, 6000多硬盘), 
1CPU 对应60GB/s I/O,2MB内存对应1数据库用户,额外需相当于5-15%总数据库的内存为数据库cache,64MB内存对应于OS,例如:

Oracle数据库常规应用,1000并发用户,大量并发小规模随即数据读写,采用2KB I/O,约需:

每8CPU对应10000用户, 
I/O带宽: 2KB/s * 1000并发用户 * 5I/Os/每次交易 = 10MB/s 
需硬盘数: 5I/Os/每次交易 * 1000并发用户 / 100 I/Os/硬盘 = 50硬盘 
一个硬盘不够,只能用50个硬盘组成卷, 
IDE因为总线所支持硬盘数少,而不予考虑, 
SCSI总线多可支持16个设备,单条总线不够,而必须在PCI总线上多插SCSI卡,带多SCSI总线, 
SCSI/FC带宽40MB/s 到320MB/s, 66MHz PCI带宽,均够用,

Oracle数据库决策系统,1000并发用户,大规模连续数据读写,采用64KB I/O, 
约需:

所有CPU可能被一用户程序所消耗,多配CPU, 
I/O带宽:64KB/s * 1000并发用户 * 5I/Os/每次交易 = 320MB/s 
IDE因为总线带宽不够及所支持硬盘数少,而不予考虑, 
SCSI总线多可支持16个设备,单条总线不够,如不用320MB/s硬盘,则而必须在PCI总线上 
多插SCSI卡,带多SCSI总线, 
FC带宽无论1Gb/s或2Gb/s, 均不够用,必须在PCI总线上多插FC卡,带多FC环 
无论PCI,或PCI-X, 或PCI-E,带宽都够用, 
1个66MHz PCI总线, 带宽足够,但可能PCI槽位由于插多SCSI/FC卡而需另加一PCI总线。 
如Sun Fire 25K TPC-H世界记录, 72CPU, 实际系统带宽57GB/s, 
运行Oracle10g, 5TB数据,插71 FC卡连188T2B,3000多FC硬盘,用128KB 1/O, 
理论I/O带宽43GB/s 实测18GB/s

NFS文件服务应用,1MHz CPU对应1 Mbps网络, 即每千兆网1 CPU,每64NFS用户对应128MB内存, 
如为轻I/O应用,每硬盘对应2并发用户,8-9硬盘每SCSI总线,每百兆网对应40用户。

中间件层: 
?。。。。。。。(如何规划,需高手补充) 
Sun Fire v20z 双节点集群SPECjAppServer2002世界记录, 690.13TOPS@DualNode 
2x 2.2 Ghz, AMD Opteron 248双节点。 
一般2-4CPU机器够了,如Sun Fire V240/V440/V490

Web层: 
在线用户数对应1点击每秒,多数页面点击文件大小<15KB,1点击对应2 I/Os操作, 
已知世界记录为2000年美国总统选举时 
CNN使用Sun Web服务器创造的3.3百万点击每分(?), 1CPU对应800动态页面点击/s,1CPU需4GB 
内存,一个10000转/分硬盘对应50个点击/s,一千兆网对应3500-5000点击, 
一般2-4CPU机器够了,如Sun Fire V210/V240/V440/V490

Sun Fire v20z 2x2.4GHz CPU SPECweb99_SSL世界记录, 2,500个连接数。 
IBM p655 4x1.7GHz Power CPU也不错,运行Zeus Web服务器,3699个连接数。 
HP rx8620 16 x 1.5GHz安腾2也不错,运行Zeus Web服务器 9060个连接数。 
Sun Fire v490 4CPU4节点集群SPECweb99_SSL世界记录,10700个连接数。

而且应用所需配置应只针对服务器70%的工作负载,即应用如需100%的能力,服务器应在当年实际具有 
143%的能力。


另外,对于一个应用程序,无论PC,还是小型机:

因为CPU到L1 cache 时间<1ns, 到L2 cache时间<20ns, 等内存同步需180-440ns,等硬盘读数据5-70ms,等以太网络大100ms延迟, 
所以对一个数据的读写操作,其一个循环即相差几十1000倍(ns-ms),编程要珍惜每一个从网络服务器硬盘读的数据,对于C等,读入的数组行应尽量在Cache行中用完,如:

将: 
for (i=0; i<n; i++) 
a[i] = 2 * b[i];

for (i=0; i<n; i++) 
c[i] = a[i] + d[i];

a[i]读入后,又再次读入使用,性能对小型机来说浪费几十1000倍,可能对PC机浪费少些,应改为: 
for (i=0; i<n; i++) 

a[i] = 2 * b[i]; 
c[i] = a[i] + d[i]; 
}

系统性能才不会降低,才不浪费CPU,内存,I/O..

23) Q: $ env 
HOME=/export/home/whaler 
LOGNAME=whaler 
MAIL=/var/mail/whaler 
MANPATH=#MANPATH:/usr/local/man 
PATH=/bin:/usr/bin:/sbin:/usr/sbin:/usr/local/bin:/usr/ccs/bin 
SHELL=/bin/sh 
SSH2_CLIENT=219.239.8.50 2162 203.86.90.21 22 
SSH2_SFTP_LOG_FACILITY=-1 
TERM=xterm 
TZ=PRC 
USER=whaler 
$

除了path等在profile里设置,其余的是否可以设置,在哪边?谢谢

A: 根据不同的shell在不同文件中设置环境变量

几中常见shell在用户目录下的控制文件 
1)korn shell (ksh) - .profile .kshrc 
2)bourne shell (sh) - .profile 
3)c shell (csh) - .cshrc .login 
4)bash shell (bash) - .bash_profile .bash_login .profile


24) Q: 请问 Solaris 10 下如何改变分辨率?谢谢! 
A: kdmconfig 
修改 /etc/X11/xorg.conf 搞定 
b72以后kdmconfig也不行的,因为默认x是xorg, 
直接在jds里右键菜单里设置就可以

25) Q: 如何在SUN下使用串口连接交换机?用什么命令呢? 
A: tip hardwire

26) Q: 现在我的两台V880 Server的网址是192.168.101.xx 网段内的,因为工作需要,与10.71.0.x网段内一些设备连接在一起,请问我如何能设置以拒绝这些设备telnet或ftp我的V880。 
A: 知何时,Solaris里有了IP包过滤,NAT地址变换,PAT端口地址变换。

例如包过滤:

% cd /etc/ipf 
% ls -l 
总数 4 
-rw-r--r-- 1 root sys 134 1月 20日 10:15 ipf.conf 
-rw-r--r-- 1 root sys 413 1月 20日 10:15 pfil.ap

在ipf.conf文件中加入:

如定义IP池: 
table role = ipf type = tree number = 100 { 192.168.101.0/24, 10.71.0.0/16, !245.2.2.0/24 };

如定义规则: 
block in from pool/100 to any

加载: 
# ippool -f /etc/ipf/ippool.conf

其它,如禁止NFS: 
block in on eri0 proto tcp/udp from any to any port = 2049

 

27) Q: 我装的是solaris10,开始看到hostname命令就试了一下,把主机名改了,以为只要用这一个 命令就把主机名搞定了,后来再进图形界面的时候,提示主机名有错误不能启动,后来才知道有几个文件里都记着主机名,要改成一致的。按照启动时给出的提示要 修改3个文件/etc/src.sh /etc/hosts /usesr/adm/inetd.sec,可是除了hosts那个文件找到了,其他两个系统提示的文件,到相应的目录下根本没找到啊,不知道怎么回事, 提示有问题么?

A: 可是我找过了三个文件里我还是只有hosts一个,那两个都没有啊!!

在找hostname.hme0 的时候,那个没找到,有一个hostname.elx10,不知道是干么的,打开是空的

我刚又查了一下版本,是5.10 
引用一段Solaris 8 的教材:

/etc/hostname.xxn文件

/etc/hostname.xxn文件只包含用于配置网卡的一个项目。这个文件中的主机名必须在/etc/hosts 文件中存在使得主机名在系统引导时解析为IP地址。作为选择,这个文件可以包含一个IP地址。这个文件内容的一个例子是:

# cat /etc/hostname.hme0 
host1


注意 - 建立一个空的/etc/hostname6.xxn文件使得Solaris操作环境自动产生一个用于IPv6网卡的IP地址。如果在安装Solaris操作环境时允许IPv6,那么也会出现这种情况。


/etc/hosts文件

/etc/hosts文件包含至少loop-back 和主机信息。例如:

# cat /etc/hosts 
# Internet host table 
127.0.0.1 localhost loghost 
192.168.10.25 host1

localhost和loghost都被指向loop-back地址而网卡名,host1,被指向一个不同的IP地址。

重要文件和实用程序

下面的文件和命令在Solaris 8操作环境管理中扮演了关键的角色。

/etc/n o d e n a m e文件

每个Solaris操作环境有一个标准的名称,该名称由人们在提及一个系统时使用。你可以通过编辑/etc/n o d e n a m e并重新引导系统来改变这个标准名称。下面是一个系统的/etc/n o d e n a m e文件的例子:

# cat /etc/n o d e n a m e 
host1

系统的主机名和它的网卡名称不必相同而且经常不同。如果这个标准名称不与一个网卡名称匹配,那么没有多播网卡被配置。


2 Q: host1上的用户A可否rlogin,上到host2? 
可以的话,上去以后是什么身份,有什么权限?

/.rhosts和/etc/hosts.equiv,以及普通用户的$HOME/.rhosts是不是等价的? 
A: /.rhosts 和 /etc/hosts.equiv 只要配一个就可以了.登陆后的权限是root.

$HOME/.rhosts 指仅一该用户的权限登陆. 
/.rhosts 和 /etc/hosts.equiv 只要配一个就可以了.登陆后的权限是root

/etc/hosts.equiv 对root用户无效 
1. rlogin 在远程机上注册 
命令格式 : rlogin hostname -l username

2. rsh 在远程机上执行一个程序 
命令格式 : rsh hostname -l username order

3. rcp 在远程系统之间拷贝文件 
命令格式 : rcp host:filename filename


访问鉴别相关文件 
当rlogin,rsh,rcp命令时,有几个文件对网络安全是很重要的. 
1. /etc/passwd 
如远程系统的口令文件有本拥护的登记项,否则必须使用 [-l] 选项以指明不同用户

2. $home/.rhosts 
rlogin,rsh,rcp首先检查用户主目录下的.rhosts文件,如主机及用户被列在文件中, 
则此用户为可信任主机,不需口令即可登录,如远程鉴别失败,则正常询问口令

3. /etc/.hosts.equiv 
作用与.rhosts 文件类似,文件中列出用户对于本机为可信任用户, 
不需口令即可登录(除超级用户)

29) Q: >>>/etc/.hosts.equiv 
>>>作用与.rhosts 文件类似,文件中列出用户对于本机为可信任用户, 
>>>不需口令即可登录(除超级用户)

应该是/etc/hosts.equiv 吧? 
还有,为什么/etc/hosts.equiv 对root无效? 
A: /etc/hosts.equiv是用来定义普通用户的信任设置,对root用户无效。这是为了安全因素,操作系统就是这么设计的。缺省在/下没有.rhosts文件。

30) Q: Solaris9 下如何安装make ---新手求助 
A: # gzip –dv make-3.80-intel-local.gz 
# pkgadd –d make-3.80-intel-local 
另外还要做环境变量设置 
安装好make等常用软件后,一般make等不在用户的默认路径里(一般在/usr/local/bin下),所以为了系统能够找到make等,就需要把make等包含到用户工作路径中。

1. 超级用户的PATH设置: 
在/.profile文件中添加如下内容: 
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/etc:/usr/local/bin:/usr/ccs/bin 
export PATH

2. 普通用户的PATH设置: 
对csh用户: 写在用户主目录下的.cshrc文件中 
对sh用户:写在用户主目录下的.profile文件中 
增加内容如下 
setenv PATH /bin:/sbin:/usr/bin:/usr/sbin:/etc:/usr/local/bin:/usr/ccs/bin


31) Q: 请问如何察看主板的bios时间和版本 
A: 进入OK状态,输入“.version”


32) Q: 2台450机器,1台A1000磁盘阵列。原来在2台450机器上可以看到磁盘阵列。由于某些原因需要对A1000进行重新制作,并连接。 
在重新制作的过程中,曾将其中一台的NVRAM清回到默认设置。 
现在遇到的问题是:可以通过RM6,对磁盘阵列进行设置,进行raid5的制作。但是在制作完成后,重新启动系统后。在Solaris下进行用format命令,无法看到磁盘阵列。 
请大家帮助....... 
A: 执行/usr/platform/`uname -i`/sbin/eeprom scsi-initiator-id 看一下scsi-initiator-id 是不是冲突了? 
双机scsi连阵列,通常会碰到scsi id冲突的问题。以下是一些解决办法。希望能对你有所帮助

dfault时 
ok printenv scsi-initiator-id = 7

当 
(A host)---scsi-->(A/D 1000)<----scsi--(B host) 
时 
会发生scsi冲突,所以应如下作:

1)(A host)---scsi-->(A/D 1000) 
1)install solaris on A host 
2)format (测试连通性) 
3) if A1000 
then install raid manager on A host 
4) rm6 (用rm6去配置)

2)ok probe-scsi-all 
/SBUS3.0/..... 
Target 6 
CDROM 
/SBUS2.0/... 
Target 5 
unit 0 ..... 
unit 1 .....

power off (A host && A/D1000)


3)(A/D 1000)<----scsi--(B host) 
power on 
ok setenv auto-boot? false 
ok reboot 
ok probe-scsi-all 
ok probe-scsi-all 
/SBUS3.0/..... 
Target 6 
CDROM 
/SBUS2.0/... 
Target 5 
unit 0 ..... 
unit 1 ..... 
/QLGC/....

ok setenv scsi-initiator-id 6 
ok nvedit 
0robe-all 
1:cd /sbus@3,0/SUNW,fas@3,8800000 
2:7 encode-int " scsi-initiator-id" property 
(若有TAPE,则应也改TAPE的" scsi-initiator-id" property 
3:device-end 
4:install-console 
5:banner (Ctrl+c) 
ok nvstore 
ok setenv use-nvramrc? true 
ok reset-all 
ok setenv diag-siwtch? Flase

33 ) Q: solaris 10 修改网络配置 
A:修改了这几个文件后,重启,网络没有被更改。

hostname.interface_name 
hosts 
defaultrouter 
netmasks 
n o d e n a m e


还需要更改/etc/inet/ipnodes。

 

 

34)Q:用kdmconfig找不到相关的vmware显卡型号,不知是为什么? 
A:搞定,终于见到久违的CDE环境了。还是按照南非蜘蛛的方法,我强行改了了OWconfig文件,重启一下就可以了。 
# vi /etc/openwin/server/etc/OWconfig 
package="RESERVED-unassigned"

class="XSCREEN" name="SFWxf86.vmware" 
ddxHandler="ddxSFWxf86.vmware.so.1" 
ddxInitFunc="SFWxf86Init" 
AdapterManufacturer="XF86-VMWARE" 
AdapterModel="VMware virtual video adapter"; 
class="XSCREENCONFIG" name="vmware" 
device="SFWxf86.vmware" 
res="800x600" 
defdepth="24" 
size="17-inch (43cm)" 
board="xf86/vmware.xqa" 
monitor="mfreq/svga.vda" 
dpix="58" 
dpiy="58" 
desktop="800x600" 
DisplayChksum="0xcd2e6ec" 
hz="56" 
MonitorManufacturer="Super VGA" 
MonitorModel="35.5 kHz (800x600 @ 56Hz and 1024x768 Interlaced)" 
dcm="Adapter"; 
class="XDISPLAY" name="0" 
coreKeyboard="IKBD" 
corePointer="ps22b" 
listOfScreens="vmware"; 
class="XINPUT" name="ps22b" 
csize="0" 
emulTimeout="25" 
buttons="3" 
strmod="vuid2ps2" 
ddxInitFunc="ddxSUNWmouseProc" 
ddxHandler="ddxSUNWmouse.so.1" 
dev="/dev/kdmouse" 
ptrfile="ps22b3be025.ptr" 
MouseManufacturer="Built-in" 
MouseModel="PS/2 Mouse (2 Button+ 25ms 3 Button Emulation)" 
PtrChksum="0x45cafda9";

不过还是要多谢netbee兄弟,我按照你说的把文件cp过去后,用kdmconfig就可以看见那个东东了。这个东东差不多耗我一天里头,在网络逛了n久也没有找到答案,中间不得以还重新装了一次。


35)Q:求助,网络安装solaris的方法,家有两台机器.怎么装啊! 
A:安装服务器: 
假定 
服务器IP 10.1.1.5 u5 
ClientIP 10.1.1.10 u10

1。设IP

# vi /etc/hosts 
... 
10.1.1.5 u5 
10.1.1.10 u10

# vi /etc/ethers 
8:0:20:82:45:5 u5 
8:0:20:82:45:10 u10

# vi /etc/netmasks 
10.0.0.0 255.255.255.0

2。共享Solaris目录:

# share -F nfs -o ro,anon=0 /cdrom

3。设置Jumpstart文件

# mkdir config

# cd /export/config

# vi sysidcfg 
terminal=dtterm 
timeserver=localhost 
network_interface=primary { protocol_ipv6=no 
netmask=255.255.255.0 
default_route=10.1.1.1 } 
name_service=NONE 
security_policy=NONE 
timezone=PRC 
system_locale=zh_CN.GB18030 
root_password=xUtVzDka68roc


# vi rules 
hostname u10 - profile finish.sh 
...

# vi profile 
install_type initial_install 
system_type standalone 
partitioning explicit 
filesys c0t0d0s0 free / 
filesys c0t0d0s1 512 swap 
cluster SUNWCXal

# vi finish.sh 
# disable Power automatically shutdown 
touch /a/noautoshutdown

# create .cshrc for root 
touch /a/.cshrc 
echo "set path=(/bin /usr/bin /usr/sbin /sbin /usr/ucb /etc .) " >> /a/.cshrc

# permit remote login with root id 
sed 's/CONSOLE=/#CONSOLE=/' /a/etc/default/login > /tmp/login.new 
mv /tmp/login.new /a/etc/default/login

# ./check 
Validating rules... 
Validating profile profile... 
The custom JumpStart configuration is ok.

# ls 
check finish.sh profile rules rules.ok sysidcfg

4。加入安装client

# ./add_install_client -c u5:/config -p u5:configu10 sun4u 
making /tftpboot 
enabling tftp in /etc/inetd.conf 
starting rarpd 
starting bootparamd 
updating /etc/bootparams 
copying inetboot to /tftpboot

# share -F nfs -o ro,anon=0 /cdrom 
# share -F nfs -o ro,anon=0 /config 
# share 
- /cdrom ro,anon=0 "" 
- /config ro,anon=0 "" 
5。引导安装client 
OK boot net – install 
一个小时后自动装完重启

###############################################################
SUN服务器可能遇到的问题总结(三) 
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:78f5: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] /pci@8,700000/scsi@3 (glm4): 
Cmd (0x9771c18) dump for Target 11 Lun 0: 
scsi: [ID 365881 kern.info] /pci@8,700000/scsi@3 (glm4): 
cdb=[ 0x8 0xe 0x40 0x92 0x10 0x0 ] 
scsi: [ID 365881 kern.info] /pci@8,700000/scsi@3 (glm4): 
pkt_flags=0x4000 pkt_statistics=0x61 pkt_state=0x7 
scsi: [ID 365881 kern.info] /pci@8,700000/scsi@3 (glm4): 
pkt_scbp=0x0 cmd_flags=0x8e1 
scsi: [ID 365881 kern.info] /pci@8,700000/scsi@3 (glm4): 
Cmd (0x9771470) dump for Target 11 Lun 0: 
scsi: [ID 365881 kern.info] /pci@8,700000/scsi@3 (glm4): 
cdb=[ 0x0 0x0 0x0 0x0 0x0 0x0 ] 
scsi: [ID 365881 kern.info] /pci@8,700000/scsi@3 (glm4): 
pkt_flags=0x4000 pkt_statistics=0x61 pkt_state=0x7 
scsi: [ID 365881 kern.info] /pci@8,700000/scsi@3 (glm4): 
pkt_scbp=0x0 cmd_flags=0xe1 
scsi: [ID 365881 kern.info] /pci@8,700000/scsi@3 (glm4): 
Cmd (0x97712e8) dump for Target 11 Lun 0: 
scsi: [ID 365881 kern.info] /pci@8,700000/scsi@3 (glm4): 
cdb=[ 0xa 0x0 0x38 0xd1 0x39 0x0 ] 
scsi: [ID 365881 kern.info] /pci@8,700000/scsi@3 (glm4): 
pkt_flags=0x4000 pkt_statistics=0x61 pkt_state=0x7 
scsi: [ID 365881 kern.info] /pci@8,700000/scsi@3 (glm4): 
pkt_scbp=0x0 cmd_flags=0x18e1 
scsi: [ID 365881 kern.info] /pci@8,700000/scsi@3 (glm4): 
Cmd (0x999c188) dump for Target 11 Lun 0: 
scsi: [ID 365881 kern.info] /pci@8,700000/scsi@3 (glm4): 
cdb=[ 0xa 0x0 0x39 0xa 0x8 0x0 ] 
scsi: [ID 365881 kern.info] /pci@8,700000/scsi@3 (glm4): 
pkt_flags=0x4000 pkt_statistics=0x61 pkt_state=0x7 
scsi: [ID 365881 kern.info] /pci@8,700000/scsi@3 (glm4): 
pkt_scbp=0x0 cmd_flags=0x18e1 
scsi: [ID 365881 kern.info] /pci@8,700000/scsi@3 (glm4): 
Cmd (0x97bfc28) dump for Target 11 Lun 0: 
scsi: [ID 365881 kern.info] /pci@8,700000/scsi@3 (glm4): 
cdb=[ 0x2a 0x0 0x0 0xdb 0x3c 0x92 0x0 0x0 0x20 0x0 ] 
scsi: [ID 365881 kern.info] /pci@8,700000/scsi@3 (glm4): 
pkt_flags=0x4000 pkt_statistics=0x61 pkt_state=0x7 
scsi: [ID 365881 kern.info] /pci@8,700000/scsi@3 (glm4): 
pkt_scbp=0x0 cmd_flags=0x18e1 
scsi: [ID 107833 kern.warning] WARNING: /pci@8,700000/scsi@3 (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: /pci@8,700000/scsi@3/sd@b,0 (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. 
#

###############################################################
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:http://www.filibeto.org/sun


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:http://www.sun.com/bigadmin/cont ... 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:http://www.unix.com/ 
http://www.bsdforums.org/ 
http://forums.mozillazine.org/ 
http://www.webmasterworld.com/ 
http://www.phpbb.com/phpBB/ 
http://area51.phpbb.com/phpBB/ 
http://www.vbulletin.com/forum/ 
这是我常去的一些。

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 <default> 
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:<stop> + 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

###############################################################
SUN服务器可能遇到的问题总结(五) 
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 的,折腾了我整整一个星期,包括晚上。 
我也是刚学这个,我是在www.sunfreeware.com下载的sol9-x86的...解决,先解决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 9-6硬盘(2 RAID 0+1,3 RAID 5,1 Hot Spare) 
A:RAID 0+1 
C1t0d0s0 c1t1d0s0 / 
C1t0d0s1 c1t1d0s1 /var 
C1t0d0s6 c1t1d0s6 /usr 
C1t0d0s5 c1t1d0s5 /opt 
C1t0d0s7 c1t1d0s7 /export/home 
C1t0d0s3 c1t1d0s3 swap

“/”的RAID 1: 
metainit –f d11 1 1 c1t0d0s0 
metainit d12 1 1 c1t1d0s0 
metainit d10 –m d11 
metaroot d10 
init 6 (很重要!) 
metattach d10 d12

“/var”的RAID 1: 
metainit –f d21 1 1 c1t0d0s1 
metainit d22 1 1 c1t1d0s1 
metainit d20 –m d21 
vi /etc/vfstab 
/dev/md/dsk/d20 /dev/md/rdsk/d20 
init 6 (很重要!) 
metattach d20 d22

“/usr”的RAID 1: 
metainit –f d31 1 1 c1t0d0s6 
metainit d32 1 1 c1t1d0s6 
metainit d30 –m d31 
vi /etc/vfstab 
/dev/md/dsk/d30 /dev/md/rdsk/d30 
init 6 (很重要!) 
metattach d30 d32

“swap”的RAID 5: 
metainit –f d41 1 1 c1t0d0s3 
metainit d42 1 1 c1t1d0s3 
metainit d40 –m d41 
vi /etc/vfstab 
/dev/md/dsk/d40 /dev/md/rdsk/d40 
init 6 (很重要!) 
metattach d40 d42

“/opt”的RAID 1: 
metainit –f d51 1 1 c1t0d0s5 
metainit d52 1 1 c1t1d0s5 
metainit d50 –m d41 
vi /etc/vfstab 
/dev/md/dsk/d50 /dev/md/rdsk/d50 
metattach d50 d52

“/export/home”的RAID 1: 
metainit –f d61 1 1 c1t0d0s7 
metainit d62 1 1 c1t1d0s7 
metainit d60 –m d61 
vi /etc/vfstab 
/dev/md/dsk/d60 /dev/md/rdsk/d60 
metattach d60 d62

RAID 5: 
C1t2d0s2 c1t3d0s2 c1t4d0s2 c1t5d0s2为整个硬盘,s0用于存放metadb,s1是除s0以外的空间。C1t5d0s2为hotspare。

Metadb –a –c 3 –f c1t2d0s0 c1t3d0s0 c1t4d0s0 c1t5d0s0 (hotspare的s0也存放metadb) 
Metainit d75 –r c1t2d0s1 c1t3d0s1 c1t4d0s1 
若坏c1t3d0s1,则可以使用以下命令(在插入新硬盘到原来槽位后): 
metareplace –e d75 c1t3d0s1

HOTSPARE: 
Metainit hsp001 c1t0d0s1 
Metaparam –h hsp001 d75


### 在个metainit 前必须做metadb. 
Metadb –a –c 3 –f c0t3d0s0 ...... metadb 的位置。 用format 将硬盘分区确定。

### 在metaroot d10 后加入 
lockfs -f 
init 6

### 创建所有的单边mirror device 并且修改所有的相关的/etc/vfstab 中的描述 
### 然后reboot system; 不需要每次修改/etc/vfstab后就reboot system 
metainit -f ...... 
....... 
reboot

### attach mirror device 
metattach d10 d12 
......

2) Q: 请问如何在solaris9下建立大于8个字符的用户名 
A: 如果不用admintool,useradd应该可以添加大于8个字符的用户名。

如果useradd也不行,还有必杀计:手动编辑/etc/passwd文件。嘿嘿,肯定可以了。


3)Q:一台SUN 280两快72G硬盘做RAID1后,开机自检时,出现以下信息!请问这正常吗? 
WARNING forceload of misc/md_trans failed 
WARNING forceload of misc/md_raid failed 
WARNING forceload of misc/md_hotspares failed 
WARNING forceload of misc/md_sp failed 
A:如果想在启动时候不出现。可以去改SYSTEM的文件。注释掉就OK了 
安装sds后,如果没有建立相应的卷,就会出现该提示;对系统运行没有影响,如果要消除警告信息可有两种方法: 
1、建立相应的卷,重新启动系统。 
2、把md_trans, md_raid, md_hotspares, md_sp这4个模块在/etc/system文件里对应的4行字注释掉就不会有警告了。

 


4) Q:两台SUN 480机器,

接A1000阵列

接上后,用FORMAT看时每次只能一台机器看到阵列是正常的,另外一台显示驱动不可用

然后,怀疑是阵列的ID号有冲突,按网上的一些文档修改

文档中一般是说在OK状态下,先输入set-defaults 
再reset-all 
然后再改一台机器的SCSI的ID, 
可是我这样改了后, 
发现机器重启时,直接进入系统,无法进入OK状态,按STOP+A也没用 
按HALT也没用 
在另外一台机器上,在OK状态下输入 
set-defaults 
再reset-all 
后,居然也无法进入OK状态!!!!!

A:1. power off all v480 
2. disconnect one V480 from the A1000. 
3. stop+N ; power on the v480 
4. This system will go to OK prompt. 
5. OK printenv 
OK set scsi-ini...-id 6 ( diff with your all disks and A100 ID) 
OK printenv ( confirm it) 
6. OK reset-all 
7. connect the A1000 and both v480 
8. poweron all v480 
9. OK probe-scsi-all (confirm )


5) Q: 请教如何查看CPU的温度,大概值是多少才正常? 
A: #./usr/platform/sun4u/sbin/prtdiag -v |more 
正常的温度就应该在50-65左右的。(一般情况下。)


6) Q:怎么使用unix下面写一个命令完成这个两个任务 
我需要使用tar和gzip来生成压缩包,请问怎么写命令来生成压缩包并且避免生成中间文件。

先用tar打包然后用gzip生成压缩文件,一个命令搞定,而不需要发送两条命令分别处理。 
此外,这个术语是不是管道命令?

A:用GNU tar 当然是一下子就搞定了 
可是用一般的tar + gzip 用管道+〉的话,试了,好像是不行,就算得到目标文件:fill.tar.gz可是不能解开,没有意义

如果非要用普通的tar + gzip 的话在一行上也可以解决: 
tar cf test.tar testfile;gzip test.tar.gz 
就行了,也不会有中间文件. 
中间用分号,等于是两个命令敲在一行上顺次执行,没意义,呵呵 
tar cvf - files |gzip >files.tar.gz 
( files are your want to backup files)

这个命令完全可行,经过测试,不产生中间的临时文件。终生成需要的tar.gz 文件。 
tar cf - <source> | gzip > filename.tar.gz为一解。 
安装相应的库文件为二解。 均可。

7)Q: QIBEI : 
在SOLARIS2。5。1中 
[oracle]/oracle/home>uptime 
4:07下午 运行 63 天 7:01, 2 users, 平均负荷: 0.03, 0.04, 0.03 
[oracle]/oracle/home>uptime 
8:37上午 运行 92 天 17:57, 2 users, 平均负荷: 2.08, 2.15, 1.81 
UPTIME的平均负荷是如何计算出来的?上面两台怎么相差如此大?有上限吗?

问题2: 
CPU的负荷在vmstat 中有些表示 如 US表示USER 占用的CPU sy表示SYSTEM占用CPU ,是不是CPU的占用率是 (US+SY)%? 
[oracle]/oracle/home>vmstat 
procs memory page disk faults cpu 
r b w swap free re mf pi po fr de sr m1 m2 m3 m4 in sy cs us sy id 
0 0 0 4248 2976 1 108 7 10 14 14520 0 1 1 1 0 309 34 183 16 6 78

A: 个问题.3个值是的范围正常情况下在0-2. 
第二个问题.US就是代表USER.SY就是代表SYSTEM.vmstat好加一个间隔时间.vmstat行输出的结果是没有意义的. 
补充以下: 
uptime显示的load average 分别是前1分钟、5分钟、15分钟的机子的平均值。 
对于load average有个说法,就是如果load average的值不大于本机拥有的CPU的个数,就说明CPU的负载是正常的可接受的。

对于vmstat的输出来说:id 指的是idel(空闲),但是这个空闲包括了IO wait的时间,并不是真正的空闲(mpstat的id才是真正的空闲)。

总之:1。idel在30%以上的系统的状况是良好的。 
2。sy在30%以上的系统肯定有问题。

Q:请教,V240机器输出设置错误,如何恢复默认状态啊? 
A: 检测下机器! 
set-defaults是回到默认设置,不一定适合你! 
在OK提示符号下 
1、ok setenv diag-switch? true 
2、ok setenv diag-level max 
3、ok setenv diag-device disk 
4、ok setenv auto-boot? false 
5、ok reset-all 
6、关闭电源,然后重新开启


9) Q: 要在windows上直接通过资源管理器的方式访问solaris工作站上的文件。 
在linux上是通过samba实现的,在solaris上要怎么操作啊? 
A: 在windows上装个exceed,里面有个Host Explorer可以像资源管理器一样,浏览solaris文件结构哦。
10) Q:如何copy link的文件 
A:example: 
file in /etc 
lrwxrwxrwx 1 root root 14 Mar 24 15:09 umount -> ../sbin/umount

%cp umount /tmp/umount 
%ls -l /tmp 
-r-xr-xr-x 1 root root 18940 Mar 30 14:05 umount

#### After copy all link file is a real file####


10)Q:如何让solaris9运行jsp? 
我装完了solaris9,配置了apache 
但是无法处理jsp脚本,我看solaris里也自带了j2se和tomcat,是不是还要配置一下 
A:把tomcat和apache联动起来,用tomcat来解析jsp。


11)Q:请问大侠们,有没有办法利用只有一个网卡的solaris平台服务器,当作路由器使用,以访问另一个网段? 
A:建立一个逻辑网卡,然后设立ip/netmask,然后用ndd -set /dev/ip ip-forwarding 1 启动他的路由转发功能

12)Q:可以用solaris9自带的apache和tomcat配置web服务器吗? 
我用start启动不了apache,是不是必须重新安装? 
A:配置: 
cd /etc/apache 
cp httpd.conf-example httpd.conf

httpd.conf存放apche web server的配置,如主页目录,端口等,后reboot。


13)Q:solaris9配置web服务器用自带得apache能行吗? 
如果不行是不是得先把那个自带得给删除才能安装新得? 
A:当然可以,不用重新安装,只需要配置好 
配置文件 
/usr/local/apache/conf/httpd.conf 
(/usr/local/为apache的默认安装目录,具体看你系统安装的位置)

也当然可以安装新的,而不必要删除原来的 
可以把apache安装到任意目录

14)Q:我在solaris9下面用 
tar xf splint.tgz出现tar: directory checksum error 错误,怎么才能解压呢,这个文件不大,只要几兆 
A:用GNU的tar, 
/usr/local/bin/tar -zxvf splint.tgz. 
sun自己提供的tar不能解开.tgz的格式的冬冬。

15)Q:装oracle时遇到的问题,帮忙一下 
以下是报错信息

$ ./runInstaller

$ Initializing Java Virtual Machine from /tmp/OraInstall2005-03-31_10-05-17AM/jr 
e/bin/java. Please wait... 
Xlib: connection to "localhost:0.0" refused by server 
Xlib: Client is not authorized to connect to Server 
Exception in thread "main" java.lang.InternalError: Can't connect to X11 window 
server using 'localhost:0.0' as the value of the DISPLAY variable. 
at sun.awt.X11GraphicsEnvironment.initDisplay(Native Method) 
at sun.awt.X11GraphicsEnvironment.<clinit>(X11GraphicsEnvironment.java:5 
9) 
at java.lang.Class.forName0(Native Method) 
at java.lang.Class.forName(Class.java:120) 
at java.awt.GraphicsEnvironment.getLocalGraphicsEnvironment(GraphicsEnvi 
ronment.java:5 
at java.awt.Window.<init>(Window.java:186) 
at java.awt.Frame.<init>(Frame.java:315) 
at java.awt.Frame.<init>(Frame.java:262) 
at oracle.sysman.oii.oiic.OiicInstaller.main(OiicInstaller.java:593) 
^C 
A:root 用户执行 
# xhost +

随后即可运行oracle安装


16)Q:我在装solaris9时,硬盘空间只用了20G剩下的没有分.现在想把空间分配下去,不知道系统是否支持. 
A:你要把空间给什么分区用呢?solaris一个硬盘能够分七个区,如果还有未分配得分区,就可以将剩余得空间分配过去,然后利用newfs命令创建文件系统,mount上就可以使用了 如果你不是想扩展系统分区(如/,/var,/usr,swap)就可以


17)Q:可以用如oracle类用户用telnet 或者rlogin登陆 不可以用root登陆 用root登陆时 报not on system console 现在我加了张网卡 安装完了之后可以ping通自己的地址 但是ping不通其他地址 网线没问题 
A:在系统的配置文件中屏蔽了root用户非CONSOLE的注册权。 
修改/etc/defult/login 文件, 屏蔽掉其中CONSOLE=console 一行即可。 
保证成功。


18)Q:在solaris9上配置路由重起丢失 
我配了路由: 
route add net 129.9.4.0 195.9.5.4 
有netstat -rn看路由存在,ping 129.9.4.0网段是通的,但重起后就没有了. 
用netstat -rn看 对应的 flag是UG

后来我又vi /etc/gateways 
net 129.9.4.0 gateway 195.9.5.4 metric 1 passive 
重起机器netstat -rn 路由存在,但ping不通129.9.4.0网段. 
用netstat -rn看 对应的 flag是UGH

A:将该行加到S69* 文件中。 
route add net 129.9.4.0 195.9.5.4

如果没有defaultrouter 可以编辑/etc/defaultrouter 
195.9.5.4 
重起系统 
在/etc/rc2.d/S69inet文件的后加上 
route add net 129.9.4.0 195.9.5.4 
重起机器成功了.

19)Q:想知道系统安装的具体时间,请问大家有没有什么办法? 
A:/var/sadm/install_data/install_log 的生成时间。


20)Q:怎样在solaris上卸载oracle 
A: 直接把oracle的binary、datafiles、implement script、/var/opt/oracle?和oracle user & group删除即可。

21) Q: 关于ACL权限问题 
我给另一个用户给了执行权限,如下: 
/export/home/tomtan/shell>setfacl -m user:isos:--x test.sh 
/export/home/tomtan/shell>ls -l test.sh 
-rws------+ 1 tomtan member 21 Apr 1 16:34 test.sh* 
/export/home/tomtan/shell>getfacl test.sh

# file: test.sh 
# owner: tomtan 
# group: member 
user::rwx 
user:isos:--x #effective:--- 
group::--- #effective:--- 
mask:--- 
other:---

但当我以这个用户身份来执行这个文件时,却没有执行权限,输出如下: 
(SSC-ESE180) /export/home/tomtan/shell (35456)$ id 
uid=100(isos) gid=10(staff) 
(SSC-ESE180) /export/home/tomtan/shell (35457)$ test.sh 
ksh: test.sh: cannot execute

请问为什么? 
A: you have to change the mask privilage as well.

user:isos:--x #effective:--- group::--- #effective:--- 
mask:--- setfacl -m mask:--x test.sh 问题就解决了。

22) Q: INIT:Cannot create /var/adm/utmpx 
重启就出问题了,提示/etc/rcS 中第812行“(”expected 
再后来,我照下面的做可是不行:fsck -y 
之后,想按照下面的步骤来 
1.把solaris光盘放进cdrom 
2.键入stop+a 
3.当出现'ok'字样时,键入boot cdrom -s 
4.cd /tmp 
5.mkdir /tmp/xxx (xxx是什么东西无关紧要,随便取一个名字,如test) 
6.mount /dev/dsk/c0t0d0s0 /tmp/xxx (在这里c0t0d0s0是你的root盘) 
7.运行csh 
8.setenv TERM vt220 
9.vi /tmp/xxx/etc/init.d/rootusr,把esac那行也注释掉即可。 
10.把solaris光盘拿出,reboot,重启动即可。 
,可是在sh,ksh,bash之下stop -a都不起作用,csh下stop -a没有任何反应, 
boot cdrom -s 也不起作用,

A: if you want "stop-a" work, you have to edit /etc/default/kbd file and uncomment KEYBOARD_ABORT=disable,

the old system the default setting is enable, after OS 2.6 the default setting now is disable for security reason.


23)Q:现在问题是只能以单用户模式进入系统,而且vi等都无法使用,提示Read-only file system,很是着急,就是不知如何解决,请高手继续指点,谢谢! 
A:我从光盘进入单用户模式后,先fsck,再重新mount,之后把之前的修改改回来后,退出光盘,强行重启,跳过安装提示,就ok了!


24)Q:我是用绝对路径进行备份的。tar cvf /dev/rmt/0 
现在需要用这个包里的一个文件,但是,不知如何进行针对性的某个文件解包?还请各路高手赐教!谢谢! 
A:tar xvf /dev/rmt/0 /file/files/youwantfile


25)Q:请问Solaris下如何开启telnet和ftp服务,谢谢! 
A:查看/etc/inetd.conf文件,ftp,telnet行是否被注释,如果已经注释,去掉注释符:"#",然后杀掉inetd进程,inetd -s重启即可.

 

 


26)Q:一台SUN 2000机器,SOlaris9 ,两块显卡,早上回来发现两台显示器黑屏,可以ping通但是不能远程Telent,怎么解决? 
A:PC连串口,编辑/etc/default/login,注释掉console那一行,可telnet。


27)Q:支招:sar: can't open /var/adm/sa/sa05 
# sar 
sar: can't open /var/adm/sa/sa05 
No such file or directory 
怎麼解決啊? 
A:1. edit /etc/rc2.d/S21perf,将程序中的#号去掉,不要把该注释掉的地方的#号去掉。 
2./etc/rc2.d/S21perf 
然后就可以用sar了。 可以直接sar的。

 

28)Q:求救,solaris10下mozilla的安装目录在那里? 
A:/usr/sfw/lib/mozilla下还有个plugins目录,即2个都试试:

/usr/sfw/lib/mozilla 
/usr/sfw/lib/mozilla/plugins 
应该是/usr/sfw/lib/mozilla

29) Q:/etc/inittab文件 
修改内容为“is:3:initdefault:”,我把3改成了5,系统开机后立刻coming down。 
A:你修改了Solaris的 default run level 
5是关机断电,当然启动不了了。

从cdrom以single user mode 启动 
光盘是Solaris安装盘的Software 1/2 
boot cdrom –s 
然后把 / 文件系统mount到任意一个目录,进入/etc/inittab文件修改回run level 3 
从新启动系统就OK了。 
今天我也是碰到这个问题。开始solaris 9 进不了登陆界面。我依着linux下的经验修改/etc/inittab文件,将运行级别从3改成5,结果机器启动就关机。solaris启动和 linux启动有很大的不同。解决的方法楼上已经有人提到了。用启动盘启动到单用户模式,然后再mount 主目录所在的分区到mnt文件夹修改inittab文件就够了。注意的是好先fsck一遍系统分区。

30)Q:请问如何让一个命令的输出作为新建文件的文件名。 
比如使用hostname命令,输出machine1,然后要用machine1为文件名新建一个文件,该如何用命令执行。 
A:# hostname 
lc24 
#touch `hostname` 
# ls -l lc24 
-rw-r--r-- 1 root root 0 Apr 5 23:36 lc24

31)Q:sun的服务器有没有自动执行ftp的功能?类似于tru64 unix上的.netrc的配置,可以在里面添加ftp 的服务器名,要put或get的文件等,然后在crontab里执行就可以。但我在sun里没有发现。有什么方法吗? 
A:这个就可以!是我常用来备份数据库的! 
ftp -n << ! 
open 211.1.1.1 
user oracle 123456 
cd /db/back/ 
bin 
put exp$dt.dmp.Z 
put exp$dt.log 
bye


32)Q:求助,在solaris 9下安装oracle 9i遇到的问题 
我刚接触unix不到一周,现在要安装oracle9i数据库,在安装过程中发生了很多问题,那位高手请指点一下。 
1、在安装oracle的时候进行到后database configuration assistant安装.进行到46%,系统报错"内存溢出",然后就停止安装了,是什么问题?我内存是4G,硬盘400g,系统支持64位内核的……shell是sh的 
2、在跳过上面那步骤之后要以root运行root.sh文件,我在系统oracle用户下用su 切换到root用户,并进入相对的路径中,请问用什么命令运行他?直接敲root.sh?还是source root.sh?还是什么?我没用过unix所以不太明白运行机制…… 
3、后我参考一些资料上面说要配置.profile,配置完了如何生效?是重新启动计算机吗? 
A:2:进入该路径下后运行:./root.sh 
3rofile 是用户的初始化文件,你应在安装ORACLE前建ORACLE用户,并将ORACLE用户的PROFILE改成安装用。不用重启机器,你注销一下ORACLE,重新以ORACLE用户进入,配置就生效了,检查用ENV就行了。 
直接执行给你路径/root.sh 
配置完了重新登陆就可以了


33)Q:用于oracle数据库双机热备 
sun v880 两台 3510磁盘阵列 
数据在磁盘阵列上面

怎么导入原来的数据?两台v880都需要导入么? 
A:请问suncluster都配置好了吗?

如果都配置好了,按照以下步骤(只在一台机器上执行): 
1.利用ifconfig命令将虚拟IP启动起来例如:#ifconfig eri0:1 plumb ip_address netmask 255.255.255.0 up 
2.将磁盘阵列挂接在同一台服务器上, 
3.手工连接启动oracle 
4,导入数据 
5,关闭oracle 
6,启动suncluster:scswitch -Z -g oracle-rg

如果没有配置好suncluster,则只要在一边启动oracle,然后挂接上阵列,倒数据就OK了 
在V880上配置好SE3510,划分好磁盘阵列,安装好ORACLE并且启动;通过网络将数据从E450的数据库中导入到V880的数据库中。 然后在CLUSTER中注册ORACLE数据库的AGENT。 使用CLUSTER启动数据库并进行测试



信胜科技

北京 010-82539930

上海 021-54561232

苏州 0512-65583086

天津 022-58697807

......

扫一扫