FreeBSD中文wiki
http://wiki.freebsdchina.org
制作FreeBSD-USB安裝盤
IMG映像文件下載:ftp://ftp.FreeBSD.org/pub/FreeBSD/releases/i386/7.4-RELEASE/floppies/。
在當(dāng)前目錄下執(zhí)行,#dd if=FreeBSD-8.2-RELEASE-i386-memstick.img of=/dev/da0[設(shè)備名] bs=64k
如何設(shè)定網(wǎng)絡(luò)
修改/etc/rc.conf,需要/etc/rc.d/netif重起,或reboot才能生效。
ifconfig_re0="inet 192.168.0.76 netmask 255.255.254.0"
增加第二個(gè) IP
ifconfig_re0_alias0="inet 192.168.0.76 netmask 255.255.254.0"
直接使用ifconfig,立刻生效
# ifconfig re0 192.168.0.76 255.255.254.0
設(shè)定系統(tǒng)默認(rèn)網(wǎng)關(guān)
修改 /etc/rc.conf
defaultrouter="192.168.0.1"
使用route命令,即時(shí)生效
route add default 192.168.0.1
設(shè)定系統(tǒng)默認(rèn)域名服務(wù)器
修改 /etc/resolv.conf 文件到如下內(nèi)容,如果這個(gè)文件不存在,可以直接創(chuàng)建。
nameserver 192.168.0.1
更復(fù)雜的設(shè)定可以參考這個(gè)文件的 man 文檔。
/etc/hosts 文件的作用
系統(tǒng)默認(rèn)查詢域名的順尋是,先從 /etc/hosts 查詢,如果查不到就從 dns 服務(wù)器查詢。因此,你可以把一些常用的 域名-IP 地址對(duì)應(yīng)寫到 /etc/hosts 里面以加快網(wǎng)絡(luò)速度。
FTP訪問相關(guān)
# ftp 192.168.1.248 Enter //# lftp lipengfei:wocuole@192.168.1.249 Enter
# 用戶名 Enter
# passwd Enter
# get file(文件名)即可下載文件到用戶目錄
# 匿名服務(wù)器 anonymous
4.啟動(dòng)putty并使root可ssh登錄
首先vi編輯/etc/inetd.conf,去掉ssh前的#,保存退出
編輯/etc/rc.conf
最后加入:sshd_enable="yes"即可
激活sshd服務(wù):
techo#/etc/rc.d/sshd start
用下面命令檢查服務(wù)是否啟動(dòng),在22端口應(yīng)該有監(jiān)聽。
#netstat -an ## check port number 22
最后
vi /etc/ssh/sshd_config,
修改下列一行
#PermitRootLogin yes #允許root登錄
修改完配置文件后,重新啟動(dòng)sshd服務(wù)器(/etc/rc.d/sshd restart)即可。
解決安裝后聲卡無法識(shí)別問題
# vi /boot/loader.conf
添加
snd_hda_load="YES"
保存,reboot.即可。
Grub4dos引導(dǎo)FreeBSD系統(tǒng)
title FreeBSD
root (hd0,x,y)
kernel /boo/loader \\其中,x為你的FreeBSD的分區(qū),y為FreeBSD/所在的SLICE.
Grub2引導(dǎo)FreeBSD
menuentry "FreeBSD2" {
insmod ufs2
set root=(hd0,2)
kfreebsd /boot/kernel/kernel
}
設(shè)備標(biāo)示
ad ATAPI (IDE) 磁盤
da SCSI 直接存取磁盤
acd ATAPI (IDE) 光驅(qū)
cd SCSI 光驅(qū)
fd 軟驅(qū)
軟件包管理
1.查詢
pkg_info -r joe-(version).tgz #查詢指點(diǎn)套件所依賴軟件包
pkg_info #查詢所有套件
pkg_info | grep * #查詢目前系統(tǒng)與*相關(guān)的套件
pkg_info -W /usr/local/bin/joe #查詢joe屬于哪個(gè)套件,若沒有回執(zhí)則說明joe屬FreeBSD內(nèi)建的。
pkg_info -L /var/db/pkg/joe-(version) #查詢某個(gè)套件安裝了那些檔案
pkg_version(1) #是一個(gè)用來統(tǒng)計(jì)所有安裝的軟件包版本的工具。它可以用來比較本地 package 的版本與 ports 目錄中的當(dāng)前版本是否一致。在第二列的符號(hào)指出了安裝版本的相關(guān)時(shí)間和本地ports目錄樹中可用的版本。
符號(hào) 含義
= 在本地ports樹中與已安裝的軟件包版本相匹配。
已安裝的版本要比在ports樹中的版本舊。
> 已安裝的版本要比在ports樹中的版本新 (本地的port樹可能沒有更新)。
? 已安裝的軟件包無法在ports索引中找到。 (可能發(fā)生這種事情,舉個(gè)例子, 您早先安裝的一個(gè) port 從 port 樹中移出或改名了)
* 軟件包有很多版本。
2.安裝
pkg_add -r joe-(version).tgz #安裝指定套件
pkg_add -f joe-(version).tgz #強(qiáng)制安裝指定套件,不考慮依賴問題
pkg_version -c #自行整理并提供可升級(jí)套件列表
3.卸載
cd /usr/ports/editors/joe
make deinstall #移除軟件
pkg_delete -f joe-(version) #強(qiáng)制移除
make deinstall-depends(軟件包名) #一并移除相依賴軟件
pkg_delete joe-(version) #一并移除相依賴軟件
pkg_delete xchat\* #這時(shí), 所有名字以 xchat 開頭的 package 都會(huì)被刪掉。
Debian Linux下掛在FreeBSD分區(qū)UFS
# fdisk -l //可以看出FreeBSD的UFS分區(qū)在linux被識(shí)別為/dev/sda2
# cd /mnt mkdir sda2 //創(chuàng)建UFS分區(qū)掛載點(diǎn)/mnt/sda2
# mount -rt ufs -o ufstype=ufs2 /dev/sda2 /mnt/sda2/ //執(zhí)行掛在命令
# mount -t ufs -o ro,ufstype=ufs2 /dev/sda2 /mnt/mnt/
OK
如果希望啟動(dòng)后自動(dòng)掛載則在/etc/fstab添加
/dev/hda9 /mnt/bsd ufs ro,ufstype=ufs2 0 0
啟用FreeBSD系統(tǒng)自帶FTP服務(wù)
# vi /etc/inetd.conf
去掉ftp stream tcp nowait root /usr/libexec/ftpd前面的#刪除。(開啟ftp服務(wù))
# vi /etc/rc.conf
添加
ftpd_enable=”YES”
將ftpd服務(wù)加入自啟動(dòng)
/etc/rc.d/ftpd start
啟動(dòng)ftp服務(wù)
/etc/ftpusers 不可使用來登陸ftp的用戶,指黑名單列表設(shè)定
/etc/ftpchroot 需要做chroot 的賬號(hào)和群組列表
/etc/ftphosts 虛擬機(jī)站點(diǎn)的設(shè)定
/etc/ftpwelcome 進(jìn)行ftp的歡迎信息
/etc/ftpmotd 登陸后自動(dòng)的提示信息
/var/run/nologin 拒絕登陸后的顯示信息
/var/log/ftpd 記錄用匿名方式登陸時(shí)的傳輸情況
解決freebsd下普通用戶無法su至root
vi /etc/group //編輯group文件
wheel:*:0:root //修改第一行
wheel:*:0:root,xiaopang //給wheel用戶組添加xiaopang用戶
然后就可以通過普通用戶xiaopang su 到root了
設(shè)置FreeBSD登陸提示信息
# vi etc/motd //寫入需要提示內(nèi)容即可
ports使用技巧
下載指定軟件tarball
# make fetch
下載安裝指定ports所需其他ports的tarball
# make retch-recursive
如果希望下載所有ports的tarball
# cd /usr/ports
# make fetch
會(huì)將所有tarball下載到/usr/ports/distfiles/目錄下
抓取ftp下所有ports的ports的tarball,則:
# cd /usr/ports/ftp
# make fetch
# dmesg | grep attached //可查看那些設(shè)備沒有被驅(qū)動(dòng)
# pciconf -lv //可查看具體信息
# /var/run/dmesg.boo //也是個(gè)不錯(cuò)的排錯(cuò)參考之一
# ntpdate time.windows.com //網(wǎng)絡(luò)校時(shí)
改變ports安裝軟件下載地址,在/etc/make.conf中加入
MASTER_SITE_BACKUP?=http://mirrors.163.com/FreeBSD/distfiles/${DIST_SUBDIR}/
MASTER_SITE_OVERRIDE?=${MASTER_SITE_BACKUP}
Packages更改軟件庫下載地址
setenv PACKAGESITE http://mirrors.163.com/FreeBSD/releases/i386/8.1-
RELEASE/packages/Latest/
pkg_add -r package #package為要安裝的軟件名
啟動(dòng)NFS客戶端
1.修改/etc/rc.conf
nfs_client_enable="YES"
2.修改/etc/fstab,添加遠(yuǎn)程nfs分區(qū),例如
remote_server:/path/to/export /local/mount/point nfs rw,late 0 0
注: 選項(xiàng) late 也可以不添加。如果添加了,就可以用 /etc/rc.d/mountlate 來掛載啟動(dòng)時(shí)沒
有掛載或掛載失敗的 nfs 分區(qū)。
3.執(zhí)行/etc/rc.d/nfsclient
# /etc/rc.d/nfsclient start
掛在iso鏡像
mount -t cd9660 /dev/`mdconfig -f cdimage.iso` /mnt
掛在ext3/ext2分區(qū)
mount -t ext2fs /dev/ad0s1 /mnt/ad0s1
如何查看當(dāng)前用戶默認(rèn)的shell
echo $SHELL
查詢Ports中是否含有某個(gè)軟件包
$ /usr/ports
$ make search key=pidgin
同樣也可以使用
$ cd /usr/ports
$ make search name=pidgin
用上面兩種方法查詢時(shí),顯示的信息比較詳細(xì),包括維護(hù)者、依賴包、主頁等內(nèi)容。如果只想顯示所在的路徑和軟件名稱,則可以用
$cd /usr/ports
$make quicksearch name=php
安裝fcitx-googlepinyin輸入法
# cd /usr/ports/chinese/fcitx-googlepinyin/ make install clean
在.cshrc里加入
setenv XMODIFIERS @im=fcitx
setenv GTK_IM_MODULE xim
setenv QT_IM_MODULE xim
在.xinitrc里加入
fcitx 注意:這個(gè)一定要寫在/usr/local/bin/startxfce4的前面。
更新ports的方法
portsnap fetch extract update
更改用戶shell
# vipw 或 chsh
如何讓csh顯示彩色文件列表
編輯/etc/csh.cshrc加入以下代碼
setenv LSCOLORS ExGxFxdxCxegedabagExEx
setenv CLICOLOR yes
然后執(zhí)行
# sed -i.bak -E s/set\ prompt/#set\ prompt/g /root/.cshrc
如何讓csh想bash那樣按TAB自動(dòng)列出無法補(bǔ)全的候選文件,
標(biāo)準(zhǔn)方法是按Ctrl+D,但如果一定要用TAB的話,在/etc/csh.cshrc中加入;
set autolist
如何讓FreeBSD的csh顯示類似[xiaopang@BSD]~這樣的提示符號(hào)?
在/etc/csh.cshrc中加入;
set prompt = '[%B%n@%m%b] %B%~%b%# '
然后執(zhí)行;
# sed -i.bak -E s/set\ prompt/#set\ prompt/g /root/.cshrc
搭建samba服務(wù)器
# cd /usr/ports/net/samba46 make install
出現(xiàn)選擇,依照內(nèi)定預(yù)設(shè)值,按TAB選擇OK,再按Enter.
Options for samba 3.0.24,1
[X] LDAP With LDAP support
[X] ADS With Active Directory support
[X] CUPS With CUPS printing support
[X] WINBIND With WinBIND support
[X] ACL_SUPPORT With ACL support
[ ] FAM_SUPPORT With File Alteration Monitor
[X] SYSLOG With Syslog support
[ ] QUOTAS With Disk quota support
[X] UTMP With UTMP accounting support
[ ] MSDFS With MSDFS support
[ ] PAM_SMBPASS With PAM authentication vs passdb backends
[ ] CLUSTER With experimental cluster support
[ ] EXP_MODULES With experimental modules
[X] POPT With system-wide POPT library
[ ] MAX_DEBUG With maximum debuging
# cp /usr/local/etc/smb.conf.default /usr/local/etc/samba.conf \\復(fù)制Samba.conf配置文件
########################以下內(nèi)容可實(shí)現(xiàn)用戶自動(dòng)登錄home目錄##########################
workgroup = WORKGROUP
server string = %h Samba Server
log file = /var/log/samba/%m.log
[homes]
comment = Home directory for %u on %h
browseable = no
writable = yes
path = /usr/home/%u/
valid users = %S
##################################################################
編輯/etc/rc.conf添加
winbindd_enable="YES"
samba_enable="YES"
然后添加使用者賬號(hào)
# adduser username
設(shè)定samba user database (samba的使用者賬號(hào)):
# smbpasswd -a username
/usr/local/etc/rc.d/samba start //啟動(dòng)samba服務(wù)
安裝Apache22
1.可以使用ports安裝
cd /usr/ports/www/apache22
make install clean
第一次安裝由于沒有配置config,所以會(huì)彈出窗口讓你選擇模塊,選擇所需要的模塊進(jìn)行安裝
2.使用編譯好的包遠(yuǎn)程安裝
pkg_add -rv apache22
3.配置apache
apache的主配置文件是/usr/local/etc/apache22/httpd.conf,可以根據(jù)實(shí)際情況修改,主要并且重要的參考:http://lamp.linux.gov.cn/Apache/ApacheMenu/index.html
4.啟動(dòng)apache
echo 'apache22_enable="YES"' >> /etc/rc.conf
/usr/local/etc/rc.d/apache22 start
FreeBSD 9.0 vncserver 安裝與配置
# cd /usr/ports/net/vnc
# make
# make install \\查看vncserver路徑
# which vncserver
/usr/local/bin/vncserver
# mkdir .vnc
# cd .vnc
# vncserver \\啟動(dòng)vnc第一次啟動(dòng)會(huì)要求輸入密碼
# vncserver -kill :1
# vi xstartup \\修改xstartup為以下內(nèi)容
####################################################
#!/bin/sh
[ -r $HOME/.Xresources ] xrdb $HOME/.Xresources
xsetroot -solid grey
vncconfig -iconic
# 下面的2行是vncserver第一次啟動(dòng)的時(shí)候產(chǎn)生的,為了使用Gnome,我把它們給
# 注釋掉了
# xterm -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop"
# twm
fvwm
#####################################################
# vncserver //重新啟動(dòng)vncserver,服務(wù)端配置完畢。
在客戶端啟動(dòng)vnc viewer 輸入:“192.168.1.111:1”,確認(rèn)并輸入密碼即可遠(yuǎn)程登陸。