Subject: 系統管理篇 X-Disclaimer: [椰林風情] 對本信內容恕不負責 ┌────────────────┐ │問 : 為何我在 tcsh 下不能 ftp ? │ └────────────────┘ 答 : 在 /etc/shells 中加入 : /bin/tcsh 若你的系統沒有這個檔, 就加一個吧 !! 這個檔案的功能在登錄系統中合法正常的 shell 。 譬如, 有些機器會提供特別的服務, 像是 archie 之類的, 系統管理者會把 archie 的 shell 設為 archie-shell 之類的東東, 因為這個 shell 並非在 /etc/shells 中註冊 有案, archie 便自動不接受外界 ftp, 有保護系統的作用。 ┌─────────────────────────────────┐ │問 : 為何我無法從別台機器FTP到我的機器, 每次輸入完我的LOGIN NAME, │ │ 就被 access deny!!!! │ │ 但是別的user就可以login, 我的就不行!!! │ │ 是不是換了tcsh, 還是......... │ │ 是否還有其他設定!!!!! │ └─────────────────────────────────┘ 答 : (1) 這可能是shell的問題. FTP 時會 check /etc/shells. 如果你要用tcsh, 請將 tcsh 含完整路徑加入該檔中即可. (2) 查一下 /etc/ftpusers 查您的大名是否被掛在那邊了.. 只要被掛在 /etc/ftpusers 中的 user 都不能以 ftp access. ┌────────────────────────────────┐ │問 : 各位先進小第知道 login 後若有 message 要告知 user 須在那裡 │ │ 編輯呢 ? │ └────────────────────────────────┘ 答 : 可於 /etc/motd 編輯。 ┌──────────────────┐ │問 : login 前的 message 該如何處理. │ └──────────────────┘ 答 : (1) 可在 /etc/issue 編輯。 (2) 提供你一個交大計中所率先使用, 最 easy 的方法: 以 SunOS 為例: 1) 將原始的 /usr/etc/in.telnetd rename , 如改成 /usr/etc/in.telnetd.exe 2) 用 shell 新創一個 /usr/etc/in.telnetd , 如 : #!/bin/sh cat /etc/login.banner <==== 此即為 messages 檔 echo " "`/usr/ucb/uptime` if [ -f /etc/login.banner.system ] then cat /etc/login.banner.system fi echo -n "" exec /usr/etc/in.telnetd.exe 用此方式可自行加上所需的其它訊息, 如上例的 uptime 等. 3) 別忘了對此新檔 chmod a+x ┌───────────────────────────────┐ │問 : 請教有關於user的問題 : │ │ 假設有a , b , c 三個user 及 dd user │ │ a , b, c 三個user 不能互相cd 目錄,旦可以 由 dd user去監 │ │ 督 a , b , c 三個 user │ └───────────────────────────────┘ 答 : 用 group, 將 a, b, c 三個分別置於 3 個不同的 group, 將三個 user 的 directory 設成 group access, world denied, 再將 dd 分別置於三個 group 中, 如此一來 a, b, c 不能互相看 對方的目錄(除非自己打開), 但 dd 卻可以看所有的的目錄。 ┌───────────────────────────────┐ │ 問 : 拿到一個檔案的 patch , 說有改掉一些 bug . 請問要如何 │ │ 使用這 patch ? │ └───────────────────────────────┘ 答 : patch -p < patchfile ┌────────────────────────────────┐ │ 問 : 在使用 telnet bbs 進入bbs站後, 不用輸入username ,password │ │ ( 我指的是UNIX 的username ,password, 不是bbs 的 username ,│ │ password ),便可直接進入系統值行bbs的程式. 這是怎麼辦到的? │ └────────────────────────────────┘ 答 : 更改 telnet daemon 。 ┌──────────────────────────────┐ │ 問 : 我需要在 login 前 delay 一段時間 (about 20 seconds). │ │ ( before prompt username or any other prompt message ). │ │ 是否有方法可達成? │ └──────────────────────────────┘ 答 : 方式如同在 login prompt 出現前 show messages 一樣, 有兩種方法: 1) 找份 telnetd 的 source code , 修改成你所需的模式. 2) 以 shell script 窵個"新的" telnetd , 如下: a) 首先將 telnetd rename 成 telnetd.exe b) create a telnetd program , #!/bin/sh sleep 20 exec telnetd.exe c) chmod a+x telnetd ┌─────────────────────────────────────┐ │問 : 若有新信進來,如何知道 ?? 即如何使 user 在 login 時顯 "You have new │ │ mail" ? │ └─────────────────────────────────────┘ 答 : (1) 試試 newmail -i 10 ==> 每 10 秒 檢查你的 incoming mbox (2) 在 csh 或 tcsh 中, 可試試 set mail = (300 /usr/spool/mail/username) 要 Shell 約每 300 秒檢查一下 'username' 此人的 mail spool 是否有新的 mails。 ┌─────────────────────────────┐ │問 : 請問SunOS's patch的編號有沒有代表什麼含義? │ │ 例如某些位數代表版本,某些位數代表patch的種類等... │ └─────────────────────────────┘ 答 : 前面好像只是編號... 後面 -xx 是表示 patch 的次數....