LTSP 為 Linux Terminal Server Project 的縮寫. 安裝的目的是為了提供 多個工作站環境使用的伺服器 (也叫做 thin-clients). 伺服器的套件都可以 都可以使用在比較老舊的機器上為 XTerminal 的用途. 這個方法將減少成本 以及維修的費用. 特別是一些需要此項作法的廠所, 如, 公司或是學校.
這份文件所有的範例將假定您的伺服器 IP 為 192.168.0.254, 您的網域名稱 為 yourdomain.com 和網路為 192.168.0.0/24
首先, 您需要有一台完好的 Gentoo 系統. 請參考 Gentoo 文件網站 的 Gentoo 安裝指南.
我們將由最簡單的步驟開始, 安裝 ltsp 套件:
原始碼 2.1: 安裝 LTSP |
# emerge ltsp |
這將會依照依賴性安裝以下套件:
- XFree: 他們也叫做 XTerminals, 猜猜看 :)
- DHCP: DHCP 是一個自動設定電腦 TCP/IP 的通訊協定, ltsp 將使用它來分配工作站所需要的 IP.
- NFS: NFS 是一種允許透過網路使用硬碟的通訊協定, ltsp 將使用他來幫工作站掛載基礎系統.
- TFTP: TFTP 是一個簡單的檔案轉移的通訊協定, ltsp 將需要使用它來傳送核心(Kernel) 給工作站.
- XINETD: Xinetd 是一個替換 inetd 的強大而且擁有許多高 階功能的套件, 我們將需要使用它來啟動 tftp.
注意: 如果您有在 USE 參數內設定 kde/gnome, 它也會安裝完整的 kde/gnome 到系統內. |
安裝完成後, 所有的系統服務將需要進行設定:
為了要更方便地分析問題,系統記錄器一定要允許遠端連線。 請參考您的系統記錄器文件完成此項設定。舉例來說,如果你使用的是 sysklogd, 你只需要編輯 /etc/conf.d/sysklogd 然後在 SYSKLOGD 那行加入 "-r":
原始碼 3.1: /etc/conf.d/sysklogd |
SYSLOGD="-m 0 -r" |
下一個步驟就是編輯您的 /etc/exports 檔案, 這是為了要讓 其他工作站可以掛在根(root)檔案系統. 這個檔案一定要兩最少以下的兩行:
原始碼 3.2: /etc/exports |
/opt/ltsp-4.1/i386 192.168.0.0/255.255.255.0(ro,no_root_squash,async) |
注意: 您應該要將網路/網路遮罩改為您適用的設定. |
啟動 NFS.
原始碼 3.3: 啟動 nfs |
# rc-update add nfs default |
要使用 TFPT 之前需要先編輯一點他的設定檔。首先,編輯 /etc/conf.d/in.tftpd 設定 tfptd 正確的目錄和選項:
原始碼 3.4: /etc/conf.d/in.tftpd |
INTFTPD_PATH="/tftpboot" |
-s 旗標指定 TFTP 以安全的 chroot 模式執行(建議你這麼做)。這代表你不用在 DHCP 設 定範例中包含 /tftpboot 路徑。
接著,設定 xinetd 讓 TFPT 可以接受遠端連線。首先,先檢查 /etc/xinetd.d/tftp 的檔案是否存在。預設的情況來說,xinetd 不會自動 啟動 TFTP,所以你將需要編輯 /etc/xinetd.d/tfpt 然後將 disable=yes 改為 disable=no。
原始碼 3.5: /etc/xinetd.d/tftp |
service tftp |
編輯 /etc/xinetd.conf 然後使用 # 將 only_from = localhost 註解使起來。最後,啟動 xinetd。
原始碼 3.6: 啟動 xinetd |
# rc-update add xinetd default |
為了要讓所有的工作站使用各方面的資源, 您需要設定一個正確的網域解析. 其中一個簡單的方法就是為區域網路設定一個網域名稱(DNS)伺服器, 另一個更簡單的方法就是在 /etc/hosts 放入所有的系統. 這也是我們待會會用的方式.
所有的工作站都需要被列入 /etc/hosts. 請查看下面的範例:
原始碼 3.7: /etc/hosts |
127.0.0.1 localhost |
這個步驟是這份文件中最難的部份, 您將需要建立一個有效的 DHCP 設定. (/etc/dhcp/dhcpd.conf). 以下為範例:
原始碼 3.8: dhcpd.conf |
一些通用選項 |
如果您的工作站支援 PXE,您應該按照以上的 host ws001 的方式 將每個都編寫進去 (別忘記拿掉註解)。記得不要分配動態型的 IP 給它們, 這是為了防止 IP 重複。請注意,如果你複製以上的範例,記得將任何 "//" 的 註解方式更改為 "##",不然 dhcp 將無法啟用。
關於更多官方 dhcp 的文件可以到 http://www.dhcp-handbook.com/ 找到.
現在啟動 DHCP:
原始碼 3.9: 啟動 dhcp |
# rc-update add dhcp default |
注意: DHCPD 需要啟動核心(kernel) 內的 CONFIG_PACKET 和 CONFIG_FILTER. |
關於更多的工作站設定, 請參考 http://www.ltsp.org/documentation/ltsp-3.0-4-en.html#AEN903 和 /opt/ltsp/i386/etc/lts.conf 內的詳細說明
在你開始前我們有幾建議,你將需要先 /opt/ltsp/i386/etc/lts.conf.example 複製到 /opt/ltsp/i386/etc/lts.conf 然後從那邊開始編輯。或許你也需要將 SCREEN_01 的選項設定為 SCREEN_01 = startx。要在遠端的用戶端使用 USB 華數,請加入類似以下的模組:
原始碼 3.10: /opt/ltsp/i386/etc/lts.conf |
MODULE_01 = usb-uhci |
現在您將需要將您設定顯示管理員讓它接受遠端連線.
首先, 將您的 /etc/X11/xdm/Xaccess 檔案內的幾行註解按照以下拿掉:
原始碼 3.11: /etc/X11/xdm/Xaccess |
#* #任何主機都可以取得登入視窗 |
現在請設定您所選擇的顯示管理員:
XDM: 在 /etc/X11/xdm/xdm-config 拿掉 DisplayManager.requestPort: 0 的註解.
KDM: 在 /usr/kde/3.1/share/config/kdm/kdmrc 尋找 [Xdmcp] 然後將 Enable = false 改為 Enable = true.
GDM: 在 /etc/X11/gdm/gdm.conf 尋找 [xdmcp] 然後將 Enable = false 改為 Enable = True.
接著啟動顯示管理員 (displaymanager):
原始碼 3.12: Starting xdm |
# rc-update add xdm default |
警告: 目前的 XDM 和 GDM 會有問題. 作者使用 KDM 來取代. |
請注意,如果你的顯示管理員已經執行了,使用 CTRL-ALT-BACKSPACE 不會重新啟動 顯示管理員。
如果您的工作站沒有支援 PXE 開機, 您可以建立一個開機磁片 來啟動您的工作站並且連上終端機。請到 http://www.rom-o-matic.net/5.0.9/ 選擇您的網路卡, 然後按下 Get ROM 來建立磁片的印象.
原始碼 3.13: 寫入磁碟映像檔 |
# cat nicfile.zdsk > /dev/fd0 |
各種狀況都會為問題的來源, 但是也有一些可以幫助您解決問題的資源:
- 官方文件: http://www.ltsp.org/documentation/, 特別是 Troubleshooting 的部份.
- Gentoo IRC 聊天室: irc.freenode.org #gentoo
- ltsp irc 聊天室: irc.freenode.org #ltsp
- ltsp 郵件討論 http://ltsp.org/mailinglists.php 包含著一些很有用的資源.
Q: 我的工作站是用 Pentium II 處理器, 但是我的伺服器是編譯為 march=athlon-xp 這樣可行嗎?
A: 沒問題, 因為所有的程式都是在伺服器上執行.
Q: 伺服器應該要使用那種處理器和多少記憶體才夠呢?
A: 在 http://ltsp.org/documentation/server_suggestions.html 內有很好的建議.
Q: 有更多關於 PXE 的資料嗎?
A: 有的, 請查看 http://ltsp.org/documentation/eproms.txt 和 http://ltsp.org/documentation/pxe.howto.html.
Q: 有辦法在工作蘸上使用 3D加速軟體嗎?
A: 如果您使用 NVidia 的顯示卡, 請參考: http://ltsp.org/documentation/nvidia.txt.
Q: 有些軟體的字型看起來很醜, 該怎麼辦呢?
A: You have to setup the XFontServer, 您將需要設定 XFontServer, 將 USE_XFS=Y 加到 lts.conf, 編輯 /etc/X11/fs/config 將 no-listen: tcp 註解起來, 在 /etc/conf.d/xfs 將 XFS_PORT="-1" 更換為 XFS_PORT="7100" 然後啟動 xfs: /etc/init.d/xfs start。然後請確定 /etc/X11/XF86Config (或是 /etc/X11/xorg.conf) 內的 Files 部份包含著 FontPath "unix/:7100"
Q: 我如何在我的工作站使用音效卡?
A: Gentoo 有提供 ltsp-sound 的套間,關於更多步驟請參考裡面的 README 檔。
Q: 我如何使用我的工作站上的音效卡呢?
A: Gentoo 內有 ltsp-sound 的套件, 關於詳細資料, 請參考裡面的 README 檔.
LTSP "LTSP 提供了一個讓低成本的工作站可以透過 GNU/Linux 伺服器 使用圖形和特別的基礎終端機."
PXE "PXE 為 Pre-Boot Execution Environment 的縮寫. 發音為 pixie. PXE 為 Intel 的 WfM 規格. 此規格可以讓一個工作站透過網路開機, 然後使用伺服器 的資源. 一個可以使用 PXE 開機的工作站利用它的網路卡連到區域網路然後 會在機器啟動時一直連接著伺服器."