USB安裝FreeBSD系統

使用光碟來裝,每出一版就要燒一次,此外有些電腦不見得有買光碟機,所以還要借外接式光碟來裝非常麻煩,這裡提供了透過USB碟來安裝FreeBSD的方式。如此可以更節省不必要的資源浪費

* 準備東西

1. 下載8.0-RELEASE-i386-disc1.iso映像檔放在/root/下面
2. 準備一片隨身碟大小超過600M的就行了

* 格式化並安裝BootLoader在隨身碟上

# dd if=/dev/zero of=/dev/da0 bs=1k count=1 (清除所有MBR與Partition Tables)
# sysinstall (使用系統工具切割Partition比較方便)
-> Custom -> Partition -> da0 (假設你插上去裝置是da0)
-> 選A = Use Entire Disk(用掉整個隨身碟) -> 選W = Write Changes -> 問你問題選YES
-> 之後會問你要不要裝boot manager在MBR上,選Standard就行了 -> 完成後離開sysinstall
# sysinstall (使用系統工具切割Label比較方便)
-> Custom -> Label -> da0 (只有一個分割區da0s1,對它做一個Label)
-> 選C = Create (建立一個Label) -> 問你大小直接選OK -> type選FS -> mount輸入/mnt
-> 選W = Write (寫入) -> 問你問題選YES -> 完成後離開sysinstall
此時到/dev下面看應該會看到da0, da0s1, da0s1d表示有一個磁碟,上面有一個分區,此分區上有一個Label代號為d,但是我們要掛在根目錄上,所以要把代號d改為a
# umount /mnt (先卸載,否責不能修改)
# bsdlabel -e /dev/da0s1 (對第一分區修改Label)
8 partitions:
# size offset fstype [fsize bsize bps/cpg]
c: 15647247 0 unused 0 0
d: 15647247 0 4.2BSD 0 0 0

將上面的d:改成a:之後存檔離開(上面是出現在vi編輯器中)

* 掛載iso與隨身碟

# mdconfig -a -f 8.0-RELEASE-i386-disc1.iso -u 0
# mount_cd9660 /dev/md0 /media/ (光碟內容)
# mount /dev/da0s1a /mnt (隨身碟內容)

* 複製iso內容到隨身碟中

# cd /media
# cp -afv * /mnt/ (慢慢等它跑完吧!)

* 卸載iso與隨身碟

# umount /mnt /media
# mdconfig -d -u 0 (卸載iso)

※完成以上動作之後你的隨身碟可以拔下來了,並且將有光碟一樣的功能,可以拿來安裝FreeBSD了,非常的方便也不會造成資源的浪費

Network and Routing start restart stop

* Use FreeBSD rc system enable network service

To start FreeBSD network service:
# /etc/rc.d/netif start

To stop FreeBSD network service:
# /etc/rc.d/netif stop

To restart FreeBSD network service:
# /etc/rc.d/netif restart



* Manual method using ifconfig

To stop network card (NIC) on-fly:
# ifconfig network-interface down

To start network card (NIC) on fly:
# ifconfig network-interface up

To list down network interface:
# ifconfig -d

To list up network interface:
# ifconfig -u


* FreeBSD Update / restart routing tables / service

It is also necessary to update routing table after restating networking service, enter:
# /etc/rc.d/routing restart

How do I restart network service over ssh session?

You need to type the commands as follows in order to avoid any problems:
# /etc/rc.d/netif restart && /etc/rc.d/routing restart

make installworld 時錯誤找不到路徑問題

在make installworld 可能會出現btxld not found這是路徑上的問題,可以透過以下方式修正
make installworld PATH=/sbin:/bin:/usr/sbin:/usr/bin

問題就可以解決了

xscreensaver 螢幕保護程式

在偶然的機會下逛到X下的螢幕保護程式,裡面有非常多的選擇,也可以自訂圖片目錄讓它自動在閒置時間就輪流播放,最好玩的是它還可以拿來當成動態的桌面。

* 安裝
# cd /usr/ports/x11/xscreensaver && make install clean
或是用package來裝
# pkg_add -r xscreensaver

* 自動建立設定檔
xscreensaver已經有完善的圖形介面來完成一個設定檔,不過首先要先啟動你的X11環境。
> xscreensaver-demo
啟動這隻程式之後,用圖形介面所修改的設定都會自動寫到~/.xscreensaver檔案裡面,所以不需要手動去改這個檔案,除非要做一些hack才需要去動它。

* X11啟動時自動啟動xscreensaver
其實xscreensaver是一隻在背景執行的程式,它會看目前的閒置時間,當時間到就自動啟動,並覆蓋所有的視窗。因此我們需要在.xinitrc(X啟動最重要的設定檔)裡面加入設定。
> vim ~/.xinitrc
export LANG=zh_TW.UTF-8
export LC_ALL=zh_TW.UTF-8
export XMODIFIERS='@im=SCIM'
xscreensaver -no-splash &
xmodmap ~/.Xmodmap
scim -d &
exec awesome


完成以上的動作,你的環境應該在你所設定的timeout時間後就會自動啟動xscreensaver。

* 使用動態桌面(非常的炫,但你要有足夠的cpu與顯示卡)
> vim ~/.xinitrc
export LANG=zh_TW.UTF-8
export LC_ALL=zh_TW.UTF-8
export XMODIFIERS='@im=SCIM'
/usr/local/bin/xscreensaver-hsacks/glmatrix -root &
xmodmap ~/.Xmodmap
scim -d &
exec awesome

我選擇的是glmatrix這個螢幕保護程式,其實有非常多,在xscreensaver-hacks目錄下看到的全部都可以使用,可以先使用screensaver-demo先看一下喜歡那一個在來修改,而且每個都具有不同的參數可以設定,可以使用man來看有那些設定,如上所示我使用了-root這個參數,表示我要它在Root window執行,其實就是背景啦~ 如此非常簡單就可以完成動態的桌面。
nspluginwrapper是bsd上使用linux的flashplugin的方法之一。雖然它需要安裝一個非常大的linux_base的ports但是還算滿好用的,沒辦法目前許多plugin只有在linux上有,沒有提供source出來,所以不會出現在ports裡面。

* 自動搜尋目錄並自動安裝
> nspluginwrapper -a -v -i

* 自動搜尋目錄並自動移除
> nspluginwrapper -a -v -r

* 指定安裝的plugin
> nspluginwrapper -i /usr/local/lib/npapi/linux-f10-flashplugin/libflashplayer.so

* 安裝之後所在目錄
~/.mozilla/plugins/

※安裝是針對每個使用者,而不是系統層級,所以不要使用Root來執行