歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Unix知識 >> 關於Unix

FreeBSD管理小技巧


1.問:如何讓FreeBSD像RedHat那樣在ls時顯示多種顏色的目錄?
答:在/etc/csh.cshrc裡面加入:
setenv LSCOLORS ExGxFxdxCxegedabagExEx
setenv CLICOLOR yes
然後,執行:
sed -i.bak -E s/set prompt/#set prompt/g /root/.cshrc
並重新登錄。
2.問:如何讓FreeBSD的csh像bash那樣按tab列出列出無法補齊的候選文件?
答:標准的方法是按Ctrl+D。但如果一定要用tab的話,在/etc/csh.cshrc中加入:
set autolist
3.問:如何讓FreeBSD的csh顯示類似[delphij
spirit] ~這樣的提示符?
答:在/etc/csh.cshrc中加入:
set prompt = ''[%B%n
%m%b] %B%~%b%# ''
然後,執行:
sed -i.bak -E s/set prompt/#set prompt/g /root/.cshrc
4.問:如何讓普通用戶也擁有類似root用戶那樣的命令行編輯能力?
答:在/etc/csh.cshrc中加入:
bindkey "^W" backward-delete-word
bindkey -k up history-search-backward
bindkey -k down history-search-forward
5.讓ctr+del+alt 失效
Look into your keymap file (taken from /usr/share/syscons/keymaps) and
search for boot in it. If it has not the "boot" string in it, replace the
lines #083 and #103 by these

083 del ''.'' ''.'' ''.'' ''.'' ''.'' boot boot N
103 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O

There was talk to enable/disable it via a sysctl(3) parameter but no one
ever got around to do it...
6. 環境變量:文件/etc/profile,
BLOCKSIZE=K; export BLOCKSIZE(通用)
文件~.cshrc BLOCKSIZE K
setenv
my cshrc
代理服務器的使用
HTTP 的代理: #setenv HTTP_PROXY http://proxyip:port
FTP 的代理: #setenv FTP_PROXY http://proxyip:port
7、 設定開機畫面
使用 windows 的人,都知道所謂的開機畫面,在 FreeBSD 下是否也有此功能呢?答案是肯定的,而且設定更為簡便,請照以下 steps:
一. 首先制作一個圖型文件,檔案格式為 logo.pcx 或 logo.bmp,需注意的是 .bmp 的檔案存盤時不用壓縮,分辨率需為 640 X 480 以內(含),色階為 256 色..
二. 將此檔案 copy 到 /boot/ 這個目錄下
splash_bmp_load="YES" -> 如果使用 .bmp 格式,此項需設為 YES
splash_pcx_load="YES" -> 使用 .pcx,請將此項設為 YES
vera_load="YES"
bitmap_load="YES"
bitmap_name="/boot/logo.pcx" -> 請依你的檔案格式更改
bitmap_type="splash_image_data"
8.激活你的 screensaver
由於 FreeBSD 大多當為主機使用,都是常期不關機的,因此可將屏幕關掉,或使用 ScreenSaver 功能..
blanktime="900"
=> 以秒數為單位,如以上為 15 分鐘
saver="logo"
=> logo 是 FreeBSD 的吉祥物(圖型接口),另也可使用 "daemon",這是文字型式
9. 重復使用先前使用過的指令
你可以使用以下的方法來重復使用先前使用過的指令:
例如,我們先用 history 顯示先前輸入的指令:
# history
.
..
...
10 clear
11 cd /usr/local
12 ls
13 ls etc
14 cd ~
15 clear
1. 用 up down 可用上下一個指令,或是 ctrl+p ctrl+n 亦然
2. 配合 ! 的用法,例如以下(ps: 在<...>內代表要輸入的東東)
!!
# !! => 重復執行上個一個指令
!<編號>
# !11 => 執行 cd /usr/local
!<指令> 可輸入部份字,但前面部份需符合
# !cl
執行 15 clear 指令
! 輸入部份字符,部份吻合
# !?etc?
執行 13 ls etc
以上指令在 tcsh 及 bash 下皆可使用,如此是不是可幫你省下許多時間..
10.用 dig 及 host 來取代 nslookup
一般我們用來檢查網絡是否有問題,大多是用以下三個指令..
nslookup
ping
traceroute
其中 nsllokup 是用來檢查 dns 的相關設定, ping 用來檢查自己和對方網絡是否通順,而 traceroute 則是用來檢查從自己的計算機到對方的計算機所經過的線路狀況..
不過以 nslookup 而言,個人覺得不是很實用,有時我們只是想單純的查一下某台主機或是 MX 記錄,那使用 nslookup 就有點噜嗦了..
在此介紹二個好用的指令 host 及 dig,這二個指令很類似,不過效率較 nslookup 高
# host -a <主機名稱> 或
=> 輸入主機名稱顯示 dns 正向解析的部份,輸入 ip 則是顯示反向(ptr)
# dig <主機名稱或ip>
如要顯示 MX 記錄
# dig 主機名稱 mx
個人是覺得比 nslookup 方便多了,你覺得呢.. ^.^
當然功能不只這些,詳情請 man dig 或 host..
11.加快你的開機速度..
嚴格說起來,FreeBSD 的開機速度算滿快的,不過中間會有個 10 秒的延遲時間(以便讓你進入 boot 的 command prompt mode),如果你嫌這10秒還是太慢了,那你可將時間?#123;短一些..
autoboot_delay="秒數" 即可,如
autoboot_delay="7" 代表7秒
這樣開機是不是更快了..
12.忘了 root 密碼
如果你忘了 root 的密碼怎麼辦,這在 FreeBSD 中滿好解決的,請照以下 steps 來處理..
1. 進入單人模式
開機後,當出現
Hit [Enter] to boot immediately, or any other key for command prompt.
Booting [kernel] in 10 seconds...
按 space(或除了 enter 以外的鍵) 鍵則會進入 command prompt mode,同時出現一個 ok ..
這時請輸入 boot -s 以進入單人模式
2. 選擇 sh
進入單人模式後,系統會詢問你要使用那個 sh,內定是 /bin/sh ,就使用這個吧,直接按 enter 跳過
3. 將所有的硬盤分割架起來
# mount -a
4. 更改密碼
# passwd
長度要在 6 個以上,輸入二次
5. 重新激活
# reboot
13.介紹一些一些有用的參數(注意大小寫)..
%B 代表高亮度
%n 代表用者名稱
%m 主機名稱
%/ 目前的目錄
一般我們可能比較在意以上幾點,如我要管理好幾台 FreeBSD 主機,那麼以上幾個參數就很重要了..
舉個實例來說,如我想把我的 prompt 改成這樣,而且要高亮度顯示:
使用者名稱
主機名稱[目錄名稱]>
則 prompt 的設定應該是這樣的..
set prompt = "%B%n
%m[%/]> "
注意 = 左右都要有一個空白,否則會出錯,導致無法登入,另外如果要統一所有使用者的 prompt 的話,除了更改 /home/使用者/.cshrc 外,最好也在 /etc/csh.cshrc 中設定這一行,另外如要新增新用者也用這種提示,則請在 /usr/share/skel/dot.cshrc 中也加上(或改成)這一行,這是因為:
tcsh 在使用時會先參考 /etc/csh.cshrc 這個檔案,再依 user 去抓其 home 目錄下的 .cshrc,而設定 /usr/share/skel/dot.cshrc 是讓你新使用者時,自動將其 prompt 設定成 set prompt = "%B%n
%m[%/]> "
這種設法,當你在管理多台主機及切換目錄時,就不易搞錯而發生一些慘劇
14.在提示列秀出 [使用者]目前工作目錄 (可以少打很多次pwd)
# cd /root
編輯 .cshrc
# set prompt="''hostname -s''# " ### 找到這一行並 mark 起來
set prompt = "[%n]%/# " ### 新增此行並存盤離開
# logout
login: root ....重新登入
ps.其它user id 是否可照辦? 我還沒試過哩..剛裝freebsd而已
15.如何防止別人登錄到你的計算機
有時,我們並不想讓別人直接登入到我們的主機或是只想限定某些人可使用,如 telnet、ssh..
或者是開放了些服務,如 ftp、smtpd ..等,由於這些都必需在主機端建有帳號,因此防止不相干的人登入到你的主機是非常重要的,也是一個安全上的考量..
但一般限定的方式都是使用 ip 或是 domain 的方式,那麼有無方法可解決這個問題呢?
答案是可從 /etc/login.access 來著手,這個檔案就是限定 login 的..
一個典型的設定如下,例如我們想限定只有 root 及 使用者 john 可登入到主機(含local 及 remote):
-:ALL EXCEPT root john:ALL
可分為三個項目,每個項目間以 : 分隔,說明如下:
1. + 或 - 代表允許或禁止
2. 設定的使用者或群組,可用 ALL EXCEPT 來強化限定的范圍
適當的設定,可讓你的系統更加的安全..
詳細用法可 man login.access..
15. 一個 ./ 的技巧
眾所周知,在 nix-like 中執行目前目錄中的可執行文件時,必需加上 ./ 這二個符號,很多 unix-like 的初學者都會感覺較不習慣,因為在 dos 或 windows 的 dos 窗口中並不是如此..
其實在 unix-like 中如此設定是有其安全考量的,在使用指令或執行文件時,一般是建議使用完整的目錄,例如要使用 ls,則如下:
# /bin/ls
當然,你直接輸入 ls 亦可正確的執行,這是因為你所使用的 shell 中環境變量 $PATH 的因素..
你可鍵入 echo $PATH,來看目前 $PATH 的設定,當我們執行一個指令時,系統會依照這個環境變量來搜尋這個執行檔並加以執行..
內定 shell 不會將目前目錄 . 加到 $PATH 中,因此如果你想在目前目錄執行這個目錄下的執行文件而不想加上 ./ 時,可在你的 shell 中將 . 加入..
如一般在 FreeBSD 都是使用 tcsh,你可編輯個人 home 目錄下的 .cshrc 檔 set path = ( ........ ,在此加入 . 即可..
記得重新退出 shell 再登錄,以便讓你的新設定生效.
16.談談軟件的安裝路徑..
FreeBSD 對於檔案目錄的觀念非常重,什麼樣的檔案要放在那個目錄都有規定,這也是有別於其它 unix-like 系統..
一般我們將軟件安裝分成二個部份,在這裡來探討一下軟件到底都安裝到那去了..
在安裝軟件時,通常會安裝諸如 執行檔、設定檔、man file、doc 文件..
1. 安裝系統時所安裝的軟件
執行檔通常裝在 /bin、/sbin、/usr/bin、/usr/sbin、/usr/libexec 下
設定文件通在在 /etc 目錄下
man file 通常在 /usr/man 或 /usr/share/man
doc 文件通常在 /usr/share/doc 下
2. 經由 package 或 port 安裝的軟件
執行檔通常裝在 /usr/local/bin、/usr/local/sbin、/usr/local/libexec 下
設定文件通在在 /use/local/etc 目錄下
man file 通常在 /usr/local/man ..
doc 文件通常在 /usr/share/doc 下
以上並不是絕對的(所以我用通常..^.^),因為有些特殊情況需視軟件而定..
如此有時可能會造成些許困擾,因為如 ssh 、 bind .. 大多是在系統安統時就安裝的,那如果升級新版時怎麼辦..
由於 FreeBSD 找尋執行檔時會依照 $PATH 這個環境變量找尋,因為 /bin、/sbin、/usr/bin、/usr/sbin 比 /usr/local/bin 或 /usr/local/sbin 先,所以會先執行..也就是先抓到舊版的執行檔..
因此在更新時要注意這種情況,以免更新了還是執行舊的程序..
那麼如何看安時程序時的相關檔案的安裝路徑呢?通常有以下方法
1. 看 port 的 pkg-plist 檔
2. 有時用 man [執行檔名稱] 可看到一些重要檔案的位置
3. 看說明文件,通常在 /usr/local/share/doc 目錄下
17、 如何在 FreeBSD 同一片網硌卡加一個 ip 地址
有的時候,需要在同一片網絡卡上加 ip 以達到一些特殊的要求..
在 FreeBSD 這是非常簡單的,假設原先網絡卡的 ip 是 211.211.211.211,想加一個 211.211.211.212,使用的是 rl0 這片網絡卡,則做法如下..
ifconfig_rl0_alias0="inet 211.211.211.212 netmask 255.255.255.255"
其中的 alias0 就是加裝的第一個 ip,如要設定多個可在此修正,如 alias1、alias2.. aliasN
2. 重新激活網絡卡,執行 /etc/netstart
# /etc/netstart
18.保護你的檔案
在系統中,有許多檔案或一些設定檔是非常重要的,加上 FreeBSD (或是一般 unix-like)系統都沒有類似 ms 的垃圾回收桶的功能,萬一不幸刪掉(或修改)某個重要的檔案,可能會造成不小的困擾..
雖然,FreeBSD 對於檔案的權限設定的非常嚴密,但有些時候,我們以 root 身份工作,仍會有此風險..
那要如何避免這種情形發生或是保護某些重要的檔案呢?
我們可以用 chflags 來達成這個目的,顧名思義, chflags 是由二個字所組成,即 change 和 flags(檔案的旗標)..
這樣就可以保護這些檔案,如要顯示這些檔案的旗標(flag),可用 ls 來看..
要解除旗標設定,可用 unschg,也就是在 schg 前加 un ,如:
大部份我們進入主機都是以 root 身份執行,因此稍不小心,可能就..因此建議將一些重要的檔案及設定檔設定為 schg flags,以保護檔案..
chflags 詳細用法請參考 man chflags..
19.有關系統的一些激活問題..
這可分為三方面來說..
1. 網絡相關設定,如網絡適配卡、hostname .. 等,只要執行以下指令就可以重新加載你的網絡設定..
# sh /etc/netstart
可參考以下三個 step 來做..
. 進入單人模式
# shutdown now
. 選擇 sh,造內定值即可,即 /bin/sh
. 離開單人模式
# exit
這樣就會重新激活系統了..

通常在 /etc/local/rc.d/ 這個目錄中會有相關的 .sh 檔,直接執行就可以了,注意的是一般要加上參數,一般的參數有以下(視軟件而定會有不同)..
start 激活
stop 停止
reload 或 restart 重新激活
第二種方法就是直接使用 killall,如我們要重新激活 inetd,可用以下方法:
# killall -1 inetd
或是
# killall -HUP inetd
這樣就可以重新激活這個 daemon 了
20.
我要如何分割硬盤..
檔案目錄對於 FreeBSD (或者是所有 unix-like 系統),都是相當重要的,如開始時,分割的不是很恰當,日後就會遇到一些麻煩,如空間不夠..等問題..
那麼,我們要如何分割比較恰當呢..
這就有關於你的用途及 FreeBSD 的目錄架構了..
一般個人是建議你如此分割:
1. / 根目錄,一般在 250 ~ 500 MB 絕對夠用,以我的根目錄來說,使用一年多了,也才用了 66 MB 多。因為這個目錄只是一些 kernel modules sbin bin etc .. 等目錄
2. swap 檔,一般人都不知道如何設較恰檔,這也沒一個標准,最主要是要看你的 ram 及硬盤而言,一般設成 1-2.5 倍(相對於你的 ram)。如你的 ram 在 256 mb 以上(含),設成一倍;如在 64 - 128 mb,則建議設成 2 倍
如要檢查你的 swap 使用狀況,可用以下指令來看..
# pstat -T
44/4044 files
0M/127M swap space
由以上可看出目前使用的 swap 為 0 ,設定的大小為 128 M
/var 目錄 及 /usr 目錄
這二個目錄一般都會占比較大的空間,/var 的變動較小,以我個人來說,一年前設為 8 GB ,在目前只使用了不到 2GB。
但要注意的是一般的 mail 軟件,都是將信件存在 /var/mail/ 中,如果你的信件很多或很大,這個部份不妨加大一些..
而 /usr 這個目錄能大就給它大一點的空間,因為所安裝的程序,或是 hone 都是在這個目錄下(如果你沒將 home 目錄設成一個分割) ..
那這兩個要如何分配呢,我的建議是 usr 和 var 的比例為 3:1,或是 2:1
4. 有些主機使用者較多,如學校單位。如果你沒將 home 設成一個 partition,則 FreeBSD 會將 home 安裝在 /usr 目錄下,如果為了管理及安全問題,則不妨將 home 分割為單一目錄..
至於大小,我想應該 3-5 GB 左右,就絕對夠用了
我們來舉個實際例子,假設你有一顆 40 GB 的硬盤,使用內存為 128 MB RAM,那我建議你的硬盤如此分割..
1. / => 250 MB
2. swap => 取 2 倍,即 256 MB
3. /home 如要獨立出來,給它 3-5 GB
4. 剩下來的以 3:1 或 2:1 的比例設給 /usr 及 /var
21.FreeBSD 在那激活程序..
一般 FreeBSD 激活後會依序執行以下位置的程序..
2. /usr/local/etc/rc.d 下的一些 .sh 檔,這些檔案的權限都是被設定成 x ,如 apache samba .. 都是在此設定
3. /etc/rc.local 這裡也可設定,如我要把 postfix 設定在此,只需在這個檔案內加一行,如下
/use/local/sbin/postfix start &
加上 & ,就不會顯示出訊息
4. 由 cron 所控制的一些檔案,當時間到了,便會自動執行..
了解以上並時時注意是否有不明的程序在執行(可能是被人植入木馬程序),也是日常檢視系統的重要工作..
21.有關 kernel 的激活..
kernel 對 unix-like 系統來說,是非常重要的一環,如果 kernel 損壞或編譯出了問題,可能會導致嚴重的後果..
FreeBSD 一向以安全著稱,在這方面有什麼防護的措施呢?
FreeBSD 的 kernel 是放在 / 目錄下,一般會有二個
kernel
kernel.GENERIC
如果你有編譯過核心(kernel)的話,則原先的 kernel 會轉換成 kernel.old,新的核心會變成 kernel,也就是在 / 下的 kernel 檔案如下:
kernel => 新編譯過的核心
kernel.GENERIC
kernel.old => 原先的核心
那 kernel.GENERIC 是什麼呢,這個是系統安裝時所裝好的,一般都不會變動,即使編譯過核心亦然,這個檔案可說是救命核心,最好不要亂動,理由如下所言..
FreeBSD 激活時,會使用 kernel 這個核心,如果這個檔案不存在,則會抓 kernel.old 這個檔案..
如果這二個檔案不幸都不在,那怎麼辦..這時則會進入 command prompt mode,你必需自行輸入 kernel 的名稱,如
boot
boot kernel.GENERIC
了解以上之後,在編譯核心無法正常執行時,相信各位知道如何處理了..
22.加速你的按鍵速度..
相信使用 FreeBSD 的人很多都是在 console 下操作吧,有些時,要重復某一按鍵速度實在很慢..
另一個問題就是 cusror 的位置有些時不太明顯..
可用以下方法來改善:
keyrate="fast"
cursor="blink" 或 "destructive"
23.顯示目錄及檔案 => tree
有時需顯示某個目錄下所有的目錄及檔案,雖使用 ls 可達到部份功能,但並不是很方便..
在 dos 中,有個 tree 指令,是不是滿好用的..
其實在 FreeBSD 中也有類似的指令 => tree..
以下我們就透過 ports 來安裝 tree
# cd /usr/ports/sysutils ; make install
如此會將 tree 這個指令安裝在 /usr/local/bin/ 這個目錄下..
使用例子:
1. 顯示 /usr/ 下的目錄及檔案
# tree /usr
2. 只顯示 /usr 下的目錄
# tree -d /usr
詳細用法請參考 man tree
PS:可透過管道 | 及 more 來顯示
如 tree /usr | more..
24.mount nfts
但是在mount的時候和5.2.1等以前的5.x有點不同。
5.2.1等以前的5.x可以用
#mount_ntfs -C zh_CN.eucCN /dev/* /*來mount相應的ntfs分區。
但是在5.3中需要這樣來才行。
#mount_ntfs -C eucCN /dev/* /*
需要去掉zh_CN.才可以正常mount,編輯fstab,加入
/dev/ad0s2 /ntfs1 ntfs ro,noauto,-C=eucCN 0 0
注意NTFS格式只讀
mount iso:
在FreeBSD4.x下的方法:
%vnconfig /dev/vn0c ./IMAGE.ISO
%mount -t cd9660 /dev/vn0c MOUNT_DIR
%umount MOUNT_DIR
%vnconfig -u /dev/vn0c
在5.x以下則完全不同了:
%mdconfig -a -t vnode -f abc.iso -u 1
%mount -t cd9660 /dev/md1 MOUNT_DIR
%umount MOUNT_DIR
25.
如果控制台處於非安全狀態,那麼進入單用戶狀態就需要口令認證了。
提示:更改/etc/ttys中有關console的設置為insecure來保護單用戶狀態。
tty0改為insecure時,root用戶沒法在console下直接登陸
26.freebsd下默認安裝的戲在命令是fetch,linux下是wget
uname -R 操作系統版本,free顯示內存,swap的使用情況
27. vim代碼顏色顯示
修改$HOME中的.vimrc
syntax on(彩色)
syntax off(單色)
沒有這個文件,建立一個就是了
28.
FreeBSD系統提供內核的源代碼,在安裝系統時是否安裝內核代碼與使用的不同安裝選項有關。安裝後的源代碼位於/usr/src/sys目錄中,如果這個目錄不存在或者為空目錄,則說明源代碼沒有安裝。此時就必須重新安裝內核源代碼。
  仍然可以使用/stand/sysinstall程序,選擇Distribution選項來安裝源代碼;也可以運行安裝介質中src目錄下的install.sh來安裝。安裝FreeBSD內核源代碼之後,習慣上還創建了一個符號連接/sys,指向/usr/src/sys目錄,以方便使用。
29. n>&m
使文件描述符n指向文件描述符m相同的文件
30.
  update_motd="NO"
31.
修改登錄提示,編輯 /etc/gettytab. 找到 default:\\ 小節,它以下面的文字開頭:
  :cb:ce:ck:lc
%s -->OS
%m -->Architecture
%h -->Hostname
%t -->tty name
  小心地修改 \\r\\n\\ \\r\\n\\r\\nr\\n: 之間的文字來適應自己的需要。請仔細檢查 \\r 和 \\n 的數量,並保存修改。例如,我的登錄提示是這樣的:
  I''m a node in cyberspace. Who are you?
  login:
  可以在其他終端上嘗試登錄,以確認正確性。
32.
(1)啟動日志
  #記錄SSH連接記錄
  auth.* /var/log/authlog
33.
用下面的命令可以查看哪些服務正在試圖監聽連接你的系統:
  sockstat -4
34.
  sendmail_enable="NO"
  將告訴 sendmail 只監聽 localhost,這允許所有的郵件客戶程序發送郵件。如果你知道你的郵件客戶程序帶有內置的SMTP代理,或者喜歡冒險,那麼可以嘗試一下:
  sendmail_enable="NONE"
  這將徹底關閉25端口。檢查一下這是否讓你無法發送郵件是很重要的,確保已經關掉了所有應用程序,隨後,以超級用戶身份執行:
  shutdown now
  收到提示後按回車、exit。重新登錄後給自己發一封郵件,如果收不到,那麼把NONE改回NO。
  nfs_server_enable="NO"
  nfs_clIEnt_enable="NO"
  portmap_enable="NO"

35.
  syslogd_enable="YES"
  syslogd_flags="-ss"
  標志中的ss (確認用了兩個s,而不是一個) 將禁止來自遠程主機的記錄並關閉端口,但仍然允許 localhost 進行日志記錄。
36.
你可能希望禁止一切遠程登錄(這意味著你必須物理地坐在機器前面),刪除下面這一行前面的#號:
  #-:wheel:ALL EXCEPT LOCAL .win.tue.nl
  把 .win.tue.nl 去掉,於是它看起來將像這樣:
  -:wheel:ALL EXCEPT LOCAL
  如果你需要從遠程登錄,那麼把.win.tue.nl 替換為相應的IP或域名。如果有多個地址,用空格分開。
  如果只有一兩個用戶的話,那麼可以拒絕其他人登錄:
  -:ALL EXCEPT user1 user2:ttyv0 ttyv1 ttyv2 ttyv3 ttyv4
  用具體的用戶名替換掉 user1 user2 。如果需要的話,增加相應的tty。
  另外,也可以把用戶組方在這裡。首先,編輯 /etc/group 並增加下面的行:
  mygroup:*:100:genisis,dlavigne6,biko
  當增加組時,需要保證GID的唯一性。
  隨後,修改 /etc/login.access :
  -:ALL EXCEPT mygroup:ttyv0 ttyv1 ttyv2 ttyv3 ttyv4 ttyv5
  測試它非常重要,一定要留一個終端。測試每一個終端上的登錄,確認其效果。
37.
拒絕直接以root身份登錄:
  在/etc/ttys文件中,將"secure"標記改為"insecure"標記,使系統在進入單用戶模式時會要求root密碼。但是這樣以來也為恢復root密碼制造了障礙——安全和易用再次形成了矛盾的兩個對立面。
38.
#找出你所有的可寫入目錄,
  #find / -perm -0777 -type d -ls
39.
配置SSH
  修改/etc/ssh/ssh_config文件
  (1)使用protocol 2代替protocol 1,SSH2更加安全,可以防止攻擊者通過修改攜帶的版本banner來劫持(hijacking)啟動會話進程並降低到protocol 1。注釋掉protocol 2,1 改用下面語句代替:
  protocol 2
  (2)合理設置最大連接數量, 防止DOS攻擊
  MaxStartups 5:50:10
  (3)禁止遠程root和空密碼登錄,建議關閉X11forwording
  X11Forwarding no
  (4)強烈建議不使用靜態密碼,而使用DSA 或RSA KEY,修改如下內容可以關閉使用密碼認證:
  PasswordAuthentication no
  (5)可以限制組或光是單個用戶訪問shell
  AllowGroups wheel
  AllowUsers xundi
  (6)使用TCP wrappers來限制一些訪問,修改/etc/hosts.allow文件,注釋掉"ALL : ALL : allow",增加如下內容:
  sshd:localhost:allow
  sshd:friendlcomputer:allow
  sshd:all : deny
  #相關命令:
  #chsh -s /sbin/nologin user
40.
FreeBSD下面
$ md5 4.1-install.iso
MD5 (4.1-install.iso) = 782d53b69c9e9ae89678c925ba6b6647
Linux下面
$ md5sum 4.1-install.iso
782d53b69c9e9ae89678c925ba6b6647 4.1-install.iso
41.
升級源碼樹
安裝cvsup
進入:/usr/ports/net/cvsup
make clean
make deinstall
make install
make clean
即可
升級系統源碼樹及ports
更新/usr/share/examples/cvsup目錄下stand-cvsup和ports-cvsup文件,並執行cvsup –g –L2 standard-supfile和cvsup –g –L2 ports-cvsup兩個文件,升級ports樹﹔
42.
如何讓FreeBSD的csh像bash那樣按tab列出列出無法補齊的候選文件?
答:標准的方法是按Ctrl+D。但如果一定要用tab的話,在/etc/csh.cshrc中加入:
代碼:
set autolist
43.
FREEBSD-6.0更新到穩定版
首先安裝FreeBSD的系統源代碼和Ports
# mount -t cd9660 /dev/acd0 /mnt/
# cd /mnt/6.0-RELEASE/ports
# ./install.sh
# cd /mnt/6.0-RELEASE/src
# ./install.sh all
更新FreeBSD的系統源代碼以及Ports
# cd /usr/share/examples/cvsup
# vi standard-supfile
*default release=cvs tag=RELENG_6
# cvsup -g -L 2 /usr/share/examples/cvsup/standard-supfile
# cvsup -g -L 2 /usr/share/examples/cvsup/ports-supfile
編譯生成新的系統二進制文件
# cd /usr/src
# make buildworld
# make installworld
# reboot
現在,你的系統已經是最新的了。注意新的系統升級完成之後一些原先安裝的軟件最好重新安裝,否則很容易引發一些意想不到的問題。
44.
問:tcsh(csh兼用) 提示符的變量常用的都有哪些?
答:
! 和%h一樣
%B 開始粗體模式
%b 結束粗體模式
%c 當前工作目錄名稱的最後部分
%c2,%c3等等 當前工作目錄名稱的最後兩個、三個(等等)組成部分
%C 跟%c類似,但是使用長形式的目錄名稱
%d 本周的當天
%D 今天是當月中的第幾天
%h 當前命令的歷史記錄編號
%l shell的當前控制終端
%L 清除從提示符末尾到下一行的所有內容
%m 機器的主機名稱
%M 機器的完全符合規范的域名
%n 用戶名
%p 用精確格式(包括秒)顯示的12小時制時間
%P 用精確格式(包括秒)顯示的24小時制時間
%S 開始標准輸出格式
%s 結束標准輸出格式
%t 以12小時制格式顯示時間
%T 以24小時制格式顯示時間
%U 開始下劃線模式
%u 結束下劃線模式
%w 當前月的名稱
%W 當前月的序數
%y 以2位格式表示的年
%Y 以4位格式表示的年
%% %字符
%! 跟%h相同
%
跟%t相同
$# 擴展到>供常規使用,如果用戶正以root身份運行的話,就擴展到#
%/ 當前工作目錄的完整名稱
%- 以短格式表示的當前工作目錄
^C 跟C匹配的控制字符:例如^G代表Ctrl+G
\\a 使tcsh在任何時候顯示提示符時嘟嘟響
\\e 終止的escape符0x1B
\\f 終止的換頁符
\\n 在這個位置開始一個新行
\\r 回車符
\\t Tab制表符
\\v 垂直制表符
\\nnn 由八進制數字nnn所指定的字符
45.
在 console 下操作時,由於屏幕顯示有限,有時需看前面顯示的資料,這時你可:
. 按一下 Pause or Scroll Lock鍵後,則可利用 PageUp PageDown Up Down Home End 等鍵來看前後顯示的資料
. 再按一下 Pause or Scroll Lock則可回復等待輸入畫面.
46.
加快你的開機速度..
嚴格說起來,FreeBSD 的開機速度算滿快的,不過中間會有個 10 秒的延遲時間(以便讓你進入 boot 的 command prompt mode),如果你嫌這10秒還是太慢了,那你可將時間?#123;短一些..
autoboot_delay="秒數" 即可,如
autoboot_delay="7" 代表7秒
這樣開機是不是更快了..
47.
$lock -p
當你使用終端登陸時想暫時離開而又不想logout,那麼可以用lock -p.
當你返回時輸入密碼就可以.
Copyright © Linux教程網 All Rights Reserved