freebsd從安裝到想要的狀態配置

餘二五發表於2017-11-08

1、前言

筆者出來工作多年,對屬於unix分支的bsd系列freebsd的大名早有耳聞。今天終於下定決心去玩一下,發現與linux的細緻還是有差異的,將常見的配置記錄於此,供往後參閱。

2、系統的安裝

系統下載:

https://www.freebsd.org/zh_CN/where.html

系統的安裝:

https://www.freebsd.org/doc/zh_CN.UTF-8/books/handbook/bsdinstall.html

注:請安裝FreeBSD 10.2-RELEASE

3、服務的管理

3.1、檢視當前安裝的服務

1
ls /etc/rc.d/

3.2、服務的選項

1
/etc/rc.d/moused

顯式如下:

1
Usage: /etc/rc.d/moused [fast|force|one|quiet](start|stop|restart|rcvar|enabled|status|poll)

3.3、服務操作

1
2
3
4
/etc/rc.d/moused start #moused服務的啟動
/etc/rc.d/moused restart #moused服務的重啟
/etc/rc.d/moused status #moused服務的狀態
/etc/rc.d/moused stop #moused服務的關閉

3.4、服務自啟動

1
vi /etc/rc.conf

配置如下:

1
2
moused_enable="YES" #moused服務預設開機啟動
moused_enable="NO" #moused服務預設開機不啟動

3.5、常見的服務清單

1
2
/etc/rc.d/netif #網路介面服務
/etc/rc.d/routing #路由服務

注:使用方式請參考3.3服務的操作

4、網路的配置

4.1、有線網路

4.1.1、dhcp自動獲取IP

1
vi /etc/rc.conf

配置如下:

1
ifconfig_re0="DHCP"

re0為指定的網路卡名稱

4.1.2、靜態IP配置

vi /etc/rc.conf

詳細配置如下

1
2
3
ifconfig_re0="inet 10.168.0.8 netmask 255.255.255.0" #IP地址配置
ifconfig_re0_alias0="inet 10.168.0.9 netmask 255.255.255.0" #多個IP地址配置(可選)
defaultrouter="10.168.0.1" #閘道器配置

重啟服務

1
2
/etc/rc.d/netif restart #重啟網路介面服務使IP配置生效
/etc/rc.d/routing restart #重啟網路介面服務使路由配置生效

4.2、dns配置

vi /etc/resolv.conf

詳細配置如下:

1
2
3
4
nameserver 202.96.128.86
nameserver 202.96.128.166
nameserver 8.8.8.8
nameserver 8.8.4.4

4.3、無線網路

4.3.1、提取windows驅動

1)去一鍵工作室下載個U盤pe製作工具,網址:http://www.upanok.com/

2)從U盤的PE系統啟動

3)啟動PE網路的模式

4)使用PE自帶的驅動提取工具提取無線網路卡的驅動檔案(*.inf,*.sys)

注:以上適用於32位作業系統

4.3.2、製作核心驅動

1)提取的驅動檔案U盤複製到系統

1
mount -t msdos /dev/da1s1 /mnt/ #掛載U盤

注:解除安裝方法

1
unmount /mnt #解除安裝U盤

2)生成核心驅動

1
2
cd /mnt
ndisgen x.inf x.sys

注:以上一路回車即可看到生成的x_sys.ko檔案

4.3.3、載入核心驅動

1)手動載入

1
2
kldload ./x_sys.ko
ifconfig

可發現無線網路卡:

1
2
3
4
5
ndis0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 2290
        ether 00:25:56:77:85:b6
        nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
        media: IEEE 802.11 Wireless Ethernet autoselect mode 11g
        status: associated

2)自動載入核心

1
2
cp ./x_sys.ko /boot/modules/
echo "kldload /boot/modules/x_sys.ko" >> /etc/rc.local

4.3.4、載入無線所需的其他核心

1)核心載入

1
2
3
4
5
6
if_ath_load="YES"
wlan_scan_ap_load="YES"
wlan_scan_sta_load="YES"
wlan_wep_load="YES"
wlan_ccmp_load="YES"
wlan_tkip_load="YES"

2)重啟系統

1
reboot

4.3.5、建立無線

1)手動建立無線

1
ifconfig wlan0 create wlandev ndis0

2)自動建立無線

1
echo "ifconfig wlan0 create wlandev ndis0" >> /etc/rc.local

4.3.6、建立無線認證

1)配置認證

1
vi  /etc/wpa_supplicant.conf

加入如下配置:

1
2
3
4
network={
  ssid="ssid-name"
  psk="password"
}

2)重啟網路服務

1
/etc/rc.d/netif restart

4.3.7、檢查

1
ifconfig

顯示如下:

1
2
3
4
5
6
7
8
9
10
wlan0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
        ether 00:25:56:77:85:b6
        inet 10.168.0.77 netmask 0xffffff00 broadcast 10.168.0.255
        nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
        media: IEEE 802.11 Wireless Ethernet autoselect mode 11g
        status: associated
        ssid will-work channel 6 (2437 MHz 11g) bssid 12:18:d6:8f:b7:f8
        country US authmode WPA2/802.11i privacy OFF powersavemode CAM
        powersavesleep 100 txpower 0 bmiss 7 mcastrate 6 mgmtrate 6
        scanvalid 60 protmode CTS roaming MANUAL bintval 0

4.3.8、圖形wifi管理

1
pkg install wifimgr

5、軟體包安裝

5.1、常用指令

1
2
3
pkg search vim #搜尋vim
pkg install vim #安裝vim
pkg remove vim #刪除vim

5.2、配置檔案

5.2.1 官方的pkg源

1
cat /etc/pkg/FreeBSD.conf

顯示如下:

1
2
3
4
5
6
7
FreeBSD: {
  url: "pkg+http://pkg.FreeBSD.org/${ABI}/quarterly",
  mirror_type: "srv",
  signature_type: "fingerprints",
  fingerprints: "/usr/share/keys/pkg",
  enabled: yes
}

5.2.2 本地自定義pkg源

1
2
mkdir -p /usr/local/etc/pkg/repos
vi /usr/local/etc/pkg/repos/FreeBSD_install_http.conf

定義如下:

1
2
3
4
5
6
7
8
9
FreeBSD_install_http: {
  url: "http://192.168.0.200/FreeBSD-11.0-RELEASE-amd64/packages/${ABI}",
  mirror_type: "none",
  enabled: yes
}
 
FreeBSD: {
  enabled: no
}

6、ssh服務配置

6.1、增加使用者

1
adduser

執行完根據嚮導完成使用者的資訊填寫。

6.2、使用者加入組

vim /etc/group

1
wheel:*:0:root,user1

因為root預設禁止ssh登入,故而將普通使用者user1加入wheel組(可以使用su指令)

6.3、切換至root使用者

1
su -

6.4、啟動服務並

1
/etc/rc.d/sshd start

6.5、設定服務自啟動

1
 vim /etc/rc.conf

配置如下

1
sshd_enable="YES"

7、命令列使用

由於無法使用[end]等鍵,提供如下快捷方式供使用者使用:

1
2
3
4
5
[ctrl]+a  #到達行首
[ctrl]+e  #到達行尾
[ctrl]+u  #向行首清除
[ctrl]+k  #向行尾清除
[ctrl]+w  #向行首清除一個單詞

8、桌面環境安裝

8.1、二進位制包的安裝

1
pkg install xorg gnome3

8.2、配置

8.2.1、配置/proc掛載(GNOME執行需要)

1
vim /etc/fstab

配置如下:

1
proc           /proc       procfs  rw  0   0

儲存並退出後

1
mount -a

8.2.2、配置啟動檔案

1
echo "/usr/local/bin/gnome-session" > ~/.xinitrc

8.2.3、開機啟動桌面環境

1)配置服務

1
vim /etc/rc.conf

配置如下:

1
gnome_enable="YES"

或者這樣寫

1
2
gdm_enable="YES"
dbus_enable="YES"

2)重啟並測試

1
reboot

8.2.4、手動啟動桌面環境

1)配置服務

vim /etc/rc.conf

配置如下:

1
2
3
#gnome_enable="YES"
#gdm_enable="YES"
dbus_enable="YES"

2)重啟並測試

1
2
reboot
startx

8.2.5、中文輸入法

1
pkg install ibus zh-ibus-pinyin

安裝完畢選擇以下選單新增輸入法:

Activities -> Setting -> Region & Language -> Input Sources -> 單擊【+】 -> Chinese(China) -> Chinese(Pinyin) -> Add

8.2.6、辦公軟體

1
pkg install libreoffice xpdf xpdfopen zh-xpdf-zhfont gimp

8.2.7 瀏覽器的安裝

1)安裝firefox-esr瀏覽器

1
pkg install -y  firefox-esr

flash安裝

1
2
3
4
5
6
7
8
9
10
11
pkg install nspluginwrapper
cd /usr/ports/www/linux-f10-flashplugin11
make install
make clean
 
nspluginwrapper -v -a -i
nspluginwrapper -v -a -u
#-v 輸出詳細資訊
#-a 自動探測可用外掛
#-i 安裝外掛
#-u 更新外掛

2)安裝chrome瀏覽器

1
2
3
pkg install -y chromium
sysctl kern.ipc.shm_allow_removed=1
echo "kern.ipc.shm_allow_removed=1" >> /etc/sysctl.conf

flash安裝

1
2
3
4
5
6
7
8
9
10
11
cd ~
wget https://fpdownload.adobe.com/pub/flashplayer/pdc/25.0.0.127/flash_player_ppapi_linux.x86_64.tar.gz
#wget https://fpdownload.adobe.com/pub/flashplayer/pdc/25.0.0.127/flash_player_ppapi_linux.i386.tar.gz
 
tar -xf flash_player_ppapi_linux.x86_64.tar.gz
#tar -xf flash_player_ppapi_linux.i386.tar.gz
mkdir -p /usr/local/share/chromium/RepperFlash
cp libpepflashplayer.so manifest.json /usr/local/share/chromium/RepperFlash
chmod -R 755 /usr/local/share/chromium/RepperFlash
vim /usr/local/share/applications/chromium-browser.desktop
Exec=chome %U --ppapi-flash-path=/usr/local/share/chromium/RepperFlash/libpepflashplayer.so

8.2.8、遠端控制

1
pkg install tigervnc


9、拯救模式

9.1、什麼是拯救模式

拯救模式是用於系統拯救,如當修改核心引數發生錯誤,導致系統無法正常引導,我們需要藉助光碟引導到正常的作業系統,並切換到可以修復原來系統環境的工作模式。

9.2、操作步驟

1)準備一張光碟並從光碟機啟動

2)選擇“boot single user”模式啟動

3)看到如下提示按回車

1
Enter full pathname of shell or RETURN for /bin/sh:

4)掛載檔案系統

1
2
mount /dev/ad0p2 /mnt #掛載系統分割槽到/mnt
ls /mnt #確認系統分割槽

5)切換根到檔案系統

1
chroot /mnt

6)做反向操作修復錯誤配置檔案

7)重新引導進入系統

1
reboot

10、錯誤處理

10.1、錯誤提示1

pkg: cached package xxx: size mismatch, cannot continue

處理命令:

1
pkg update -f

11、設定時區和校正時間

1
2
cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
ntpdate 0.pool.ntp.org

——————————————————————–

本文轉自 tanzhenchao 51CTO部落格,原文連結:http://blog.51cto.com/cmdschool/1728933,如需轉載請自行聯絡原作者


相關文章