FreeBSD
1.一般我們用來檢查網絡是否有問題,大多是用以下三個指令
nslookup
ping
traceroute
其中 nslookup 是用來檢查 dns 的相關設定, ping 用來檢查自己和對方網絡是否通暢,而 traceroute 則是用用來檢查從自己電腦到對方的電腦所經過的路由路徑情況..
不過以 nslookup 而言,個人覺得不是很好用,有時我們只是想單純的查一下某台主機或是MX 記錄,那使用 nslookup 就有點羅嗦了..
在此介紹二個好用的指令 host 及 dig,這二個指令很相似,不過效率較之 nslookup 高
# host -a <主機名稱> 或 <ip>
=> 輸入主機名稱顯示 dns 正向解析的部份,輸入 ip 則是顯示反向(ptr)
# dig <主機名稱或ip> <any a mx soa txt.. 任選一項>
如要顯示 MX 記錄
# dig 主機名稱 mx
2. 忘了 root 密碼
如果你忘了 root 的密碼怎麼辦,請參照以下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
3. 軟件的啟動
(1)如一些 *.conf 檔,象修正了 apache sendmail .. 等
通常在 /etc/local/rc.d/ 這個目錄中會有相關的 .sh 檔,直接執行就可以了,注意的是一般要加上參數,一般的參數有以下(視軟件而定會有不同)..
start 啟動
stop 停止
reload或restart 重新啟動
(2)第二種方法就是直接使用 killall,如我們要重新啟動inetd,可用以下方法:
# killall -1 inetd
或是
# killall -HUP inetd
這樣就可以重新啟動這個daemon 了
4.軟體的安裝
關於下載的.tar.gz源碼包的安裝方式:如安裝samba-3.0.13.tar.gz
首先#tar -zxvf samba-3.0.13.tar.gz解壓開包;
然後進入/samba-3.0.13/source目錄,#./configure 配置一下;
配置完畢後,#make 編譯一下;
編譯完成後,#make install clean 安裝並清空垃圾文件
現在所有工作完畢。(該安裝方式是為了保證需穩定可靠運行的軟件成功安裝的一種重要安裝方式)
(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 下
注意以上並不是絕對的,因為有些特殊情況需視軟件而定..
5.如何在 FreeBSD 同一片網絡卡上再加一個ip 地址
有的時候,需要在同一片網絡卡上加多個 ip 以達到一些特殊的要求..
在 FreeBSD 這是非常簡單的,假設原先網絡卡的 ip 是 211.211.211.211,想加一個 211.211.211.212,使用的是 rl0 這片網絡卡,則做法如下..
(1) 在 /etc/rc.conf 加上這一行
ifconfig_rl0_alias0="inet 211.211.211.212 netmask 255.255.255.255"
其中的 alias0 就是加裝的第一個 ip,如要設定多個可在此修正,如 alias1、alias2.. aliasN
(2). 重新啟動網絡卡,執行 /etc/netstart
# /etc/netstart
df
查詢系統的可使用檔案空間
df -h
另外,我們還可以使用參數 -i 來查看目前檔案系統 inode 的使用情形: df -ih
du
顯示目錄或檔案所占的磁盤空間
du -a 檔名
systat
查看目前硬盤是否忙碌中,以了解硬盤的使用效率
systat -vm 1
dmesg
查看開機信息,得到有用硬件信息
ps
查詢系統process狀態
ps -aux|grep apach*
adduser
新增使用者
rmuser
刪除使用者
vipw
編輯使用者賬戶
passwd
變更密碼
ifconfig
查詢所有網絡接口的情形
ifconfig -a
設定網絡接口的參數
ifconfig de0 192.168.1.10 netmask 255.255.255.0
停止網絡接口
ifconfig de0 down
啟動網絡接口
ifconfig de0 up
route
可以設定routing table
改變 routing path 之gateway
route change default 192.168.1.254
netstat
查詢 routing table
netstat -rn
查詢網絡接口流量統計
netstat -I
查詢 TCP網絡聯機情形
netstat -t
查詢所有網絡聯機情形
netstat -a
切換終端機
ALT+F*(*表示要切換的終端號,如F1是終端1,F2是終端2)
$sed -e '/^#/' GENERIC>tmp
$mv tmp GEERNIC
在內核配置文件中去掉所有#開始的行
top [參數]
顯示系統中使用CPU資源的Process排名、CPU當前的使用情況、內存當前的使用情況,而且會持續更新
ps [-參數]
ps指令可以用來監視、查看進程的狀態
執行ps -aux則會顯示所有進程的詳細數據
[-u]:將進程的相關數據以較詳細的方式顯示出來
[-a]:除了顯示自己的進程,將其他人在tty所執行的進程也列出來
[-x]:將不在tty中啟動的進程也列出來,即顯示tty為??的進程
ps -aux欄位說明
USER:進程的擁有者
PID:進程的代碼
%CPU:進程占用CPU時間的百分比
%MEM:進程使用實際內存的百分比
VSZ:進程的虛擬大小(單位KB)
RSS:進程常駐內存的空間大小(單位KB)
TT:進程在編號為幾的控制客戶機上執行
STAT:進程當前的狀態 R=可執行 D=在驅動器中等待置換 I=睡眠中(<20秒) S=睡眠中(>20秒) T=停止 Z=結束
常見的附加標志 +=屬於控制客戶機的前景程序 E=進程嘗試離開 L=有頁面被鎖住 s=進程是此控制客戶機的主人 W=進程被置換出去
STARTED:進程開始的時間
TIME:進程已耗用的CPU時間
COMMAND:所執行的命令名稱和參數
定時任務
crontab [-參數]
crontab文件列出在某一個時間要采取的動作
【舉例】:1. crontab -e
2. crontab -d
3. crontab -l
【作用】:1. 編輯crontab文件
2. 刪除crontab文件中定義的工作
3. 列出crontab文件定義的工作
crontab編寫格式
分 時 日 月 星期 由誰來做 所要執行的工作
例:1 0 * * * root /home/word.sh //每天凌晨1點,由root執行/home/word.sh