Solaris新手必讀-121個(gè)問題解答

47 Q: 1.問題描述:Router&LanSwitch的日志管理依賴系統(tǒng)的syslogd進(jìn)程來實(shí)現(xiàn)。
通過設(shè)置/etc/syslog.conf文件, 可以控制syslogd把日志存入特定的文本
文件中。然后日志后臺(tái)就可以周期性的輪詢這些文件并導(dǎo)入數(shù)據(jù)庫。按照sun
的man頁說明,當(dāng)向syslogd進(jìn)程發(fā)HUP信號(hào)時(shí),進(jìn)程將重讀配置文件
/etc/syslog.conf,然后繼續(xù)運(yùn)行。 但在Solaris2.7以下實(shí)際的效果是:發(fā)
HUP信號(hào)將導(dǎo)致syslogd進(jìn)程不能正常工作(有的試驗(yàn)結(jié)果是,信號(hào)導(dǎo)致進(jìn)程
終止),后續(xù)設(shè)備日志全部丟失。
2.解決建議:
我們的建議是,修改系統(tǒng)的腳本文件/usr/lib/newsyslog,不讓其向syslogd
發(fā)HUP信號(hào),而是TERM(終止信號(hào)),然后重啟。此種方法的弊端是,如果用
戶主動(dòng)向進(jìn)程發(fā)HUP信號(hào),仍然存在問題。而且也不能解決syslogd意外退出
的情況。第二種建議是由綜合統(tǒng)一做一個(gè)檢測(cè)進(jìn)程,這樣各項(xiàng)目就不會(huì)產(chǎn)生
沖突。但仍然存在用戶主動(dòng)向進(jìn)程發(fā)HUP信號(hào)使syslogd失效的問題。由上述
可以看出,無論何種方法,都不能徹底解決問題。
A: 問題的產(chǎn)生可能是由于程序員定義了新的日志文件并企圖 使用newsyslog 腳
本來處理,這個(gè)腳本備份日志文件再發(fā)送 HUP信號(hào)。newsyslog 腳本在處理系
統(tǒng)文件時(shí)不會(huì)有問題,很可能是由于syslogd對(duì)這些文件做過專門的處理。但
不能認(rèn)為我們自己的文件也會(huì)得到同樣的照顧,事實(shí)上,這樣做通常是危險(xiǎn)
的。 我認(rèn)為建議2 是可行的, 因syslogd打開的是新的日志文件,不會(huì)發(fā)
生異常。而用戶發(fā)送的 HUP 命令只是使 syslogd重讀 syslog.conf 文件
,也不會(huì)發(fā)生意外.為了比較好的定位問題,建議在一個(gè)比較干凈的系統(tǒng)上進(jìn)
行測(cè)試,在測(cè)試之前最好停掉自己的程序,
簡化/etc/syslog.conf,我是這樣測(cè)試的:
# /usr/lib/newsyslog
# logger -p deamon.notice "12345"
# cat /var/adm/messages
# kill -HUP `cat /etc/syslog.id`
# logger -p deamon.notice "aaaa"
# cat /var/adm/messages
結(jié)果正常.
48 Q: Solaris 8中,為什么不可以用如下命令給網(wǎng)卡增加邏輯地址?
ifconfig hme0:1 xxx.xxx.xxx.xxx up
A: Solaris 8 對(duì)ifconfig 作了一些改動(dòng),在這個(gè)命令之前,先執(zhí)行下面的命令就可
以了: ifconfig hme0:1 plumb
49 Q: 為什么Solaris 中的多個(gè)網(wǎng)卡顯示的以太網(wǎng)地址都是一樣的?
A: 缺省情況下,系統(tǒng)使用本機(jī)的MAC地址作為各網(wǎng)卡的MAC地址,可以用如下
OpenBoot 命令讓系統(tǒng)使用網(wǎng)卡自帶的MAC地址.
ok setenv local-mac-address? true
50 Q: 如何在一臺(tái)機(jī)器里如何實(shí)現(xiàn)用多塊網(wǎng)卡容錯(cuò)?
A: Solaris8 新增了一個(gè)daemon叫mpathd將網(wǎng)卡管理分組管理來完成這樣的功能.
原理是給每個(gè)網(wǎng)卡分配兩個(gè)地址,多出的一個(gè)邏輯IP地址由mpathd用來檢查個(gè)網(wǎng)
卡的工作情況.下面一兩塊網(wǎng)卡為例介紹配置過程,這里兩塊網(wǎng)卡分別是hme0和
hme1,
1. ifconfig hme0 group test
ifconfig hme1 group test
2. ifconfig hme0 addif 19.16.85.21 netmask + broadcast + -failover deprecated up
ifconfig hme1 addif 19.16.85.22 netmask + broadcast + -failover deprecated up
3. 檢查hme0:1和hme1:1看是否有邏輯IP
ifconfig hme0:1
ifconfig hme1:1
這里要注意,給網(wǎng)卡增加的邏輯IP應(yīng)當(dāng)與實(shí)際分配的IP地址在同一個(gè)網(wǎng)段并
且不能與網(wǎng)上其他主機(jī)IP地址沖突.
51 Q: 一個(gè)進(jìn)程里最多可以打開多少文件?
A: 操作系統(tǒng)為每個(gè)進(jìn)程維護(hù)一個(gè)所打開文件的數(shù)組,進(jìn)程能夠打開的文件與此數(shù)組
的大小有關(guān).此數(shù)組的大小由兩個(gè)系統(tǒng)變量限制: rlim_fd_max , rlim_fd_cur,
這兩個(gè)變量可以用limit或ulimit 命令察看和修改,要擴(kuò)大rlim_fd_max需要
root權(quán)限,rlim_fd_cur不能超過rlim_fd_max. 編程時(shí)則有庫函數(shù) getrlimit
和 setrlimit 可以使用. 另外一種改法是在 /etc/system文件中修改. 如果是
調(diào)用stdio函數(shù)打開文件,則還有另外一種限制,32位內(nèi)核Solaris 的 FILE 結(jié)構(gòu)
中的 文件句柄是一個(gè)字節(jié),所以同時(shí)打開文件的上限是256
52 Q: 如何改變登錄CDE時(shí)的語言環(huán)境?
A: 修改/usr/dt/config/Xconfig文件中的變量 Dtlogin*language即可.
53 Q: 如何防止用戶通過CDE 環(huán)境中的 suspend 菜單關(guān)閉計(jì)算機(jī)?
A: 修改 /usr/openwin/bin/sys-suspend的執(zhí)行權(quán)限就可以了.
54 Q: 我安裝完solaris5.7之后(安裝時(shí)選擇簡體中文),運(yùn)行C語言編譯器cc不成功
,提示"language optional software package not installed."。請(qǐng)問這是
怎么回事,該如何解決?
A: Solaris本身帶有adb,mdb,make工具,但不帶C語言編譯器.若要使用需要單獨(dú)購
買軟件包及l(fā)icense.
55 Q: 想修改ROOT的缺省PATH,在哪改?不要告訴我LOCAL.PROFILE,不管用.
A: 如果以root用戶身份登錄或者用 su - 命令進(jìn)行切換,則修改 home目錄下
.profile是管用的. 如果是簡單的 用 su 進(jìn)行切換, 則系統(tǒng)保留除 PATH之外
的所有環(huán)境變量, PATH被設(shè)為 /etc/default/su 中的 SUPATH ,缺省時(shí)為
/usr/sbin:/usr/bin
56 Q: 問一下,現(xiàn)在在Solaris下有什么比較好的測(cè)試程序語句以及條件覆蓋率的工具
A: prof 和 gprof 都有. 如果您使用workshop 或者 Forte 6.0,則其中有
performence analysis tools 可以使用.
57 Q: 怎么樣讓系統(tǒng)啟動(dòng)時(shí)就自動(dòng)在一個(gè)網(wǎng)卡上綁定兩個(gè)IP地址
A: 創(chuàng)建文件 /etc/hostname.hme0:1,其中寫上第二個(gè)ip地址.
58 Q: Sun solaris7系統(tǒng)中有一下幾種SHELL,sh,csh,ksh,另外還有一個(gè)jsh.
我的問題是:jsh是什麼SHELL?另外有bash SHELL嗎?
A: jsh 就是 sh, 只不過是激活了job control 模式. 但現(xiàn)在 sh 本身就有job
control 功能,所以只用 sh 就可以了. bash 是 sh 的增強(qiáng), 如果你的系統(tǒng)沒
有這個(gè)shell, 可以到 www.sunfreeware.com 下載.
ls /bin/*sh 可以看到系統(tǒng)所有存在的shell.
59 Q: 我的光驅(qū)無法讀取光盤?且總是顯示設(shè)備忙,如何搞定?mount顯示沒有被
mount.
A: 查找進(jìn)程 vold 并將其終止,就可以手工打開光驅(qū).
60 Q: 如何將root用戶的shell改掉,我知道一般用戶可在admintool下修改,但root
用戶不能。
A: 1. chmod 666 /etc/passwd (一定要讓普通用戶有些權(quán)限,切記!)
2. vi /etc/passwd(最后一個(gè)字段試root 的 shell,要確保該程序存在方可改
掉它. )
相關(guān)文章
- Solaris是Sun公司開發(fā)和發(fā)布的一種現(xiàn)代操作系統(tǒng),是UNIX系統(tǒng)的一個(gè)重要分支,今天小編為大家?guī)淼氖荢olaris線程模型詳解,希望對(duì)大家會(huì)有幫助,有需要的朋友一起去看看吧2017-04-06
- 今天小編為大家?guī)淼氖荢olaris iostat詳解,希望對(duì)大家會(huì)有幫助 ,有需要的朋友一起去看看吧2017-04-06
- 今天小編為大家?guī)淼氖菧\談Solaris技術(shù),希望對(duì)大家會(huì)有幫助,有需要的朋友一起去看看吧2017-04-06
solaris11如何擴(kuò)展資源池?solaris11擴(kuò)展資源池的方法
最近一些朋友問小編solaris11如何擴(kuò)展資源池?今天小編將為大家分享solaris11擴(kuò)展資源池的方法!希望對(duì)大家會(huì)有幫助,有需要的朋友一起去看看吧2017-04-06Solaris10如何更改子網(wǎng)掩碼?Solaris10更改子網(wǎng)掩碼的方法
最近一些朋友在問Solaris10如何更改子網(wǎng)掩碼?下面小編將為大家分享Solaris10更改子網(wǎng)掩碼的方法!希望對(duì)大家會(huì)有幫助!有需要的朋友一起去看看吧2017-03-19Solaris中對(duì)tar.z進(jìn)行安裝卸載詳解
今天小編將要為大家?guī)淼氖荢olaris中對(duì)tar.z進(jìn)行安裝卸載詳解!希望對(duì)大家會(huì)有幫助!有需要的朋友一起去看看吧2017-03-16如何在solaris中設(shè)置分辨率?在solaris中設(shè)置分辨率的方法
最近有些朋友問小編如何在solaris中設(shè)置分辨率?下面小編將為大家?guī)淼氖窃趕olaris中設(shè)置分辨率的方法!希望對(duì)大家會(huì)有幫助,感興趣的朋友一起去看看吧2017-03-15如何查看solaris系統(tǒng)的版本和位數(shù)?
最近一些朋友問小編如何查看solaris系統(tǒng)的版本和位數(shù)?今天小編將為大家分享查看solaris系統(tǒng)的版本和位數(shù)的方法!希望對(duì)大家會(huì)有幫助,有需要的朋友一起去看看吧2017-03-14整理Solaris系統(tǒng)與Linux系統(tǒng)常用命令的區(qū)別
這篇文章主要介紹了Solaris系統(tǒng)與Linux系統(tǒng)常用命令的區(qū)別,Linux作為Unix的仿制品,其命令會(huì)與作為Unix發(fā)行版的Solaris有諸多相同點(diǎn),而本文則關(guān)注它們的相異之處,需要的朋友2016-02-05windows XP+Fedora 8+solaris 11三系統(tǒng)安裝攻略
介紹windows XP+Fedora 8+solaris 11三系統(tǒng)安裝攻略2014-06-16