簡介,版本,計畫方案,安裝,安裝方式,安裝項目內容,起步,第一步,運行的服務,GOsa<sup class="normal">2</sup>,登錄和綜覽,更新軟體,一般管理,使用示例,調整分區大小,使用ldapvi,圖形界面,命令行工具,volatile,backports,升級,Java,瀏覽器中運行,創建資料夾,輕鬆讀寫,自動清理,自動安裝升級,夜間自動關閉,訪問,服務的機器,設定PXE選單,桌面,KDE,改變KDE,禁用KDE,改進KDE,Flash,DVDs,多媒體倉庫,手寫字型,網路客戶端,簡介,詳細敘述,lts.conf,負載均衡,客戶機的聲音,升級環境,教學,Moodle,監控學生,限制訪問,安裝,
簡介
版本
Skolelinux 是一份由 Debian Edu 項目製作的 Linux 分發版,作為 Debian Pure Blends 分發版,其為 Debian 正式輔助項目,以提供全面配置好的學校網路環境和學校適用方案。
Skolelinux / Debian Edu 以標準結構做到非常容易設定和管理,方便廣大學校安裝。許多服務為預先配置並默認開啟,大量軟體預先安裝以待使用,老舊設備再利用和延長使用期以減少環境影響,並適用於對Linux 和網路知識知之甚少的使用者。
Skolelinux 參與了大量的新 debian-installer 安裝程式的創建測試和 Debian 本地化工作,其項目啟動於挪威,最初主要服務於學校中6-16 歲年齡段的使用者,現在該系統用於幾個國家,安裝最多的是挪威,西班牙,德國和法國。
計畫方案
By Knut Yrvin, Oslo - February 8, 2010
Skolelinux 為百萬學生設計得極其穩定。在大多數國家中教育行業比其他任何政府部門管理著更多的計算機。當支持數萬或百萬使用者時,無所選擇地貢獻尖端軟體。所安裝的軟體是 Skolelinux 精心選擇並處於對穩定性的關注而設定好的。
Skolelinux構建於 Debian,其有 2-3 年的發行周期和針對於安全更新的擴展時期。 Debian 是在業界最全面和嚴格測試的 GNU/Linux發行版。它在德國企業中是最受歡迎的伺服器系統,和基於 Maemo, Nokia 的移動 PC 平台而用於 N900。構建於 Debian 的Skolelinux 提升了穩定性和降低了管理費用。
最新的 Skolelinux具有比選用專利產品更低的硬體需求。升級更換較新硬體那要升級供應商他們的作業系統,而使用 Skolelinux 的學校可以延長硬體使用期 5-8年。Skolelinux 讓學校運行成倍數量的計算機。由於較低的硬體需求和零許可證費用,Skolelinux可以使學校在採購新計算機時得到成倍的大量機器。
由於它的穩定性,規劃的功能和無盤工作站的選擇, Skolelinux在學校中相較任何其他可選的桌面削減半數操作成本。用於教育的軟體是教師和計算機專家精選的。西班牙 Extramedura八萬計算機管理者一致的意見,運行一台工作站的年人工成本低於 50 歐元。我們建議以 Skolelinux 實行中央管理,在一個學校一周可以用4-8 小時對 50-100 台工作站和 320 個用戶進行管理。這可以減少集中維護,由於 Skolelinux 的 scalability。
一些計算機領域內對學校零維護方針的爭論,陳述使用專有系統的計算機無須維護。很可惜,上述學校兩周之後不會有任 何能用的計算機。當有 5-10名不同的學生每天使用一台計算機時,它數周甚至數天內理所當然的情況是直到專屬軟體停止工作 -造成破壞的學生,惡意的軟體或病毒造成無用的機器。人工和計畫設定是要恢復上述機器。一個沒有管理的 Skolelinux系統於一個或兩個月中要做的。我們遇到有學校運行數年未維護的 Skolelinux。
即使如果 Skolelinux 穩定的運行在可靠的網路上時,跳過維護也是不明智的。Skolelinux 需要專業的維護,即使如果它只需少量的維護,也比依照學校專屬方案可靠。當在學校中提供安全的和可接受的計算機服務時,定期的硬體,軟體和服務維護是強制性的。
它在學校中的安裝未獲得足夠的硬體和一個計算機網路。這裡同樣尋求教育的使用。一個城市需要對系統維護和教育培訓兩者投資。教師需要培訓如何在教授數學,自然科學,歷史等課程之時融合使用計算機。Skolelinux的一個重要優越性是它降低獲取設備和管理費用而有更多的預算用於教師的計算機操作能力培訓。
安裝
在安裝 Skolelinux 時,有一些選項供你選擇。不必擔心,那並沒有許多。幸好我們隱藏了Debian 安裝過程中及其後的複雜性。Debian Edu 畢竟是Debian,你如需要,有超過一萬五千個軟體包可從其中選擇,以及億萬的設定選項。為了我們大多數的使用者,我們需要高質量的默認設定。
安裝方式
引導選項選單
- Install 32位計算機默認文本模式安裝
- 64 bit Install 64位機文本模式安裝
- Graphical install 圖形界面安裝模式,可以使用滑鼠
- 64 bit graphical install 64位機圖形界面安裝模式
- Advanced options 這一引導選項增加最少的狀態選擇,並轉換到手工分區
安裝項目內容
– 主伺服器
* 主伺服器為你的學校提供一下服務: file, print, intranet,proxy, DNS, DHCP, LDAP, backup, nagios, sitesummary, and munin.所有服務均為預先配置安裝即可使用。 每一學校僅需安裝一台主伺服器。這一安裝項目不包括圖形界面,如果你需要圖形界面,還需選擇安裝工作站或者瘦客戶端伺服器。
– 工作站
* 從本地硬體引導啟動計算機,運行所有程式,本地設備類似一台普通的計算機,但使用者登錄需要主伺服器來確認,並儲存使用者的檔案和桌面內容。
– 移動工作站
– 瘦客戶機/伺服器
*痩客戶機(和無盤工作站)伺服器同樣呼叫 LTSP伺服器。痩客戶機不以硬體驅動引導而是從該伺服器運行程式。這台計算機需要兩塊網卡和大量的記憶體,適宜更多的處理器。參看關於網路客戶端的章節,獲得這一主題的更多信息。選取該安裝項目同時也開啟工作站項目(即使並沒有選擇“工作站”選項),一台痩客戶機伺服器也一直可以如同工作站使用。
– 獨立主機
* 一台普通計算機,而不依賴主伺服器即可工作。無需進入網路的機器,如筆記本電腦。
– 最小安裝
* 該選項安裝僅獲得使用 ’debian-edu-expert’ 引導選項。其安裝基本軟體包並配置計算機不以任何服務和套用來融入 Debian Edu 網路,是手工自主伺服器轉移簡單服務的套用平台。
前3項內容可以全部安裝到同一台機器上。意味主伺服器與痩客戶機伺服器如同工作站一樣的使用。我們一直假設之後多數人將通過 PXE 安裝。
起步
第一步
這章講述在安裝之後需要開始的第一步。
至少你要做:
1. 以用戶 "localadmin" 登錄伺服器(其密碼同於 "root" 賬戶) - 你不能以 root 登錄圖形界面,作為 localadmin ,你可以使用 sudo變更為 root.
2. 通過 GOsa2 添加用戶
3. 通過 GOsa2 添加工作站
下面講述添加用戶和工作站,請讀整個章節,其涉及怎樣正確做到這些步驟,而且其他材料大概每個人都用得上。
以下 HowTo 章節涉及更多建議和技巧以及一些經常問及的問題。
運行的服務
在主伺服器上運行的若干服務可以通過 web 管理界面進行管理,下面要講述每一種服務。
基於 Web 瀏覽器的管理,使用 GOsa2FIXME: gosa needs to bedocumented properly here, following the structure of the existing lwatinstructions. _Then_ the lwat text should be deleted.
為了訪問 GOsa2 ,要有 Skolelinux 主伺服器和一個安裝了一種 web 瀏覽器的客戶系統。
有一種選擇,作為 localadmin 用戶,你可以在主伺服器上安裝一個微型桌面,在(非圖形) shell 終端執行下列命令:
$ sudo apt-get update
$ sudo apt-get install gnome-session gnome-terminal iceweasel xorg
$ startx安裝之後,以 localadmin 用戶啟動圖形會話
使用一個 web 瀏覽器以 URL 訪問 GOsa2 ,以 super-admin用戶名和主伺服器 root 用戶密碼登錄。
2">GOsa2
GOsa2 是一款基於 web 的管理工具,它將幫你管理你的 Debian Edu 設定的如乾重要部分。你可以管理下列主要歸類(增加,修改,刪除):
用戶管理
組管理
NIS Netgroup 管理
機器管理
DNS 管理
DHCP 管理
以你的 web 瀏覽器指向 www 來訪問 GOsa2。
如果你未使用新 Debian Edu Squeeze 機器,你將收到關於 ssl 證書的錯誤信息,恰當地決定你的瀏覽器接受或忽視。
如果你是使用新 Debian Edu Squeeze 機器,此處已不理會規則,你不必煩擾。
登錄和綜覽
以 super-admin登錄 GOsa2 後你將看到 GOsa2 綜覽頁面。
接下來,你可以在總覽頁面選單選擇任務。 作為導航,我們建議使用螢幕左側的選單,在那可以看到 GOsa2 提供的所有管理頁面。
Debian Edu 帳戶,組,系統信息保存在 LDAP目錄,該數據的使用不僅為主伺服器,同樣在網路中也用於(無盤)工作站,瘦客戶機伺服器和 Windows 機器。有關學生和教師等的 LDAP帳戶信息僅需輸入一次,其後此信息由 LDAP 提供,在整個 Skolelinux 網路中所有系統均可獲取該信息。
更新軟體
這部分講述如何使用 aptitude upgrade和 kde-update-notifier。
使用 aptitude非常簡單。更新系統只需以 root 身份在命令行中執行兩個命令:aptitude update (更新可獲得軟體包的列表)和 aptitude upgrade (升級更新的軟體包)。
替代使用命令行,你也可以使用 kde-update-notifier. FIXME: Explain how to use kde-update-notifier, best with screenshots.
一個好主意是安裝 cron-apt和 apt-listchanges並設定它們向你傳送郵件以便讀取。
cron-apt將每天一次向你傳送郵件,提示那些需要更新的軟體,它不會安裝這些更新的軟體包,但下載它們(通常在夜間),如此你在執行 aptitude upgrade時不必等待下載。
apt-listchanges可以傳送新變更記錄給你。
一般管理
配置檔案歷史:使用 git 版本控制系統跟蹤 /etc/ 以 Debian Edu Squeeze etckeeper 腳本(先前版本使用 etcinsvk,已自Debian 中移除)來介紹使用 git 作為版本控制系統跟蹤 /etc/中所有檔案。
這樣能夠查看一個檔案在何時添加,變更和移除,而且對於文本檔案還可以查看它的變化。git 存儲位置在/etc/.git/。
每小時自動記錄任何變化,允許取出和複查以往的配置檔案。
FIXME: 這裡有一個 bug ,新檔案不能自動跟蹤,請提交 bug 到 Debian BTS!
查看歷史,使用 etckeeper vcs log命令。檢查兩個時間點間的不同,可以使用類似 etcinsvk vcs diff 命令。
參看etckeeper手冊頁可以得到更多信息。
實用命令列表:
etckeeper vcs log
etckeeper vcs status
etckeeper vcs diff
etckeeper vcs add .
etckeeper vcs commit -a
man etckeeper
使用示例
在一個剛安裝的系統上試用,這樣可以看到自系統安裝以來的所有變化:
etckeeper vcs log
查看當前未跟蹤或沒有新變化的檔案:
etckeeper vcs status
因為不想等待一個小時而使用手工處理一個檔案:
etckeeper vcs commit -a /etc/resolv.conf
調整分區大小
在 Debian Edu 中最多的分區是邏輯卷,僅 /boot/ 分區不是。同 Debian/Etch 一起釋出的 Debian Edu 可以在分區掛載時擴展該分區,這一 Linux 核心功能始於 2.6.10 版。靜態縮減分區需要在該分區卸載時完成。
一個好的建議是避免創建非常大的分區,對於大分區,如果需要自備份恢復時,將要很長的時間,同樣對於大分區的檔案系統檢查也需要非常長的時間。一個好的限度在 20 GiB,如果可能,創建幾個小分區比一個非常大的分區更好。
debian-edu-fsautoresize腳本提供很容易地擴展所有分區的工作,屆時它依據從 /usr/share/debian-edu-config/fsautoresizetab, /site/etc/fsautoresizetab和 /etc/fsautoresizetab讀取設定。它在基於這些檔案所提供的規則上也推薦以小的自由空間來擴展分區。 沒有任何理由,它將僅顯示需要擴展檔案系統的命令。根據選項 -n是需要實際執行命令來擴展檔案系統。
該腳本於 fsautoresize-hosts網路組上在每個客戶清單內每小時自動執行。
調整 Squid proxy 所使用的分區大小時,在 etc/squid/squid.conf中的倉庫大小還需要更新。助手腳本 /usr/share/debian-edu-config/tools/squid-update-cachedir提供這一工作的自動化,檢查 /var/spool/squid/分區當前的大小並設定 Squid 使用其分區容量的 80% 作為它的倉庫容量。邏輯卷管理
邏輯卷管理 (LVM) 允許在分區掛載和使用期間調整其大小。你可以在 LVM HowTo中學習更多關於邏輯卷的知識。
手工擴展邏輯卷你簡單地告訴 lvextend命令你想要它變得多大。例如,擴展 home0 到 30GB 你用如下命令:
lvextend -L30G /dev/vg_system/skole+tjener+home0
resize2fs /dev/vg_system/skole+tjener+home0
向home0 擴展30G ,你在命令中插入一個 '+' (-L+30G)。
使用ldapvi
ldapvi是一個以常規文本編輯器編輯 LDAP 資料庫的命令行工具。
以下要執行:
ldapvi --ldap-conf -ZD '(cn=admin)'
ldapvi -ZD 'uid=super-admin,ou=People,dc=skole,dc=skolelinux,dc=no'
注意: ldapvi使用任何預設的編輯器。在 shell 中執行 export EDITOR=vim可以快速設定環境以 vi 作為編輯器。
警告: ldapvi是一個非常強大的工具。謹慎不要弄亂 LDAP 資料庫。
圖形界面
如果你選擇一個工作於 LDAP 資料庫上的圖形界面,查看有無 luma軟體包存在。
命令行工具
ldap-createuser-krb 是一個小的在 kerberos 創建 LDAP 用戶和設定他們密碼的命令行工具,雖然在測試中大體實用。
volatile
自從 Squeeze 發行, Debian 在新建的 stable-updates 套件中包含以前維護在 volatile 中的軟體包。
FIXME: 在這增加更多有關 stable-updates 的信息。
backports
你運行 Debian Edu,是因為你選擇 Debian Edu 的穩定性。它極佳的運行,也正是一個難題:一些你所喜愛的軟體略微過時。這裡步入 backports。
Backports 是從 Debian 測試版(大多數)和不穩定版(僅少數情況,如安全更新)中預編譯的軟體包,它們運行在如 Debian Edu 那樣的 Debian 穩定發布版上而無需新的庫檔案(個方面)。 我們建議你選擇所需的單一 backports 而不要使用所有可用的 backports。
簡單地使用 backports :
編輯 /etc/apt/sources.list 檔案
# apt-get update
屆時你可以使用 aptitude -t squeeze-backports install <packagename>來安裝或更新一次軟體包,或者你可以在/etc/apt/preferences 中設定一個軟體包一直從backports 安裝。
最後在這裡介紹具有的優勢,在 backports 得到更新時,會自動安裝。
升級
如果你想從一個版本升級到另一個版本(例如從 Squeeze 5.0.4 到 5.0.6)但你沒有網際網路連線,僅有實物媒體,以下是升級步驟:
插入 CD/DVD-ROM 到光碟機並掛載光碟,使用 apt-cdrom 命令:
$ mount /cdrom
# apt-cdrom add -m
引用 apt-cdrom(8) 手冊頁:
它必須使用 apt-cdrom 來添加 CDs 到 APT 系統,而不能手工完成。此外多片 CD 集中的每一片需要分別插入和檢測以報告可能存在的燒錄錯誤。
屆時運行這兩個命令來升級系統:
# apt-get update
# apt-get upgrade
Java
運行 standalone Java applications
Standalone Java applications 是支持開箱即用的 OpenJDK Java runtime。
瀏覽器中運行
FIXME: 更新在 squeeze 中與 web 瀏覽器有關 java 的信息。
可以在 Debian Edu Lenny 中獲得這個版本的 OpenJDK Java runtime,但不支持在 web 瀏覽器中運行,這將在下一個發布中修正。在 Lenny 中,自 Sun 的非自由(但可免費獲得)Java 需要安裝。
安裝源自 Sun 的 Java 你需要編輯 /etc/apt/sources.list,首先確定將從 non-free安裝軟體包。這裡需要類似這樣的一行:
deb 鏡像源 lenny main contrib non-free
然後:
# apt-get update
現在你準備好運行這個命令:
# apt-get install sun-java6-plugin sun-java6-jre sun-java6-fonts
創建資料夾
以這一腳本管理者可以在每個用戶主目錄內創建資料夾並設定訪問許可和許可權。
在下面的例子中顯示作為 group=teachers 和 permissions=2770 的一個用戶可以上交一份作業保存在資料夾 "assignments" ,那裡教師具有寫許可權能夠批改它。
home_path="/skole/tjener/home0";
shared_folder="assignments";
permissions="2770";
created_dir=0;
for home in $(ls $home_path);do
. if [ ! -d "$home_path/$home/$shared_folder" ]; then
. mkdir $home_path/$home/$shared_folder
chmod $permissions $home_path/$home/$shared_folder
. #set the right owner and group
#"username" = "group name" = "folder name"
user=$home
group=teachers
chown $user:$group $home_path/$home/$shared_folder
((created_dir+=1))
else
. echo -e "the folder $home_path/$home/$shared_folder already exists.\n"
. fi
done
echo "$created_dir folders has been created"
輕鬆讀寫
當使用者在(無盤)工作站插入 USB 驅動器或 DVD/CDROM ,會出現一個以何種方式操作的詢問視窗,就像在任何其他常規安裝的機器上。
當使用者在瘦客戶機插入 USB 驅動器或 DVD/CDROM 自他們通常使用的桌面並不顯示視窗,而是自動掛載並在 /media/$user 資料夾對其瀏覽和讀寫。這對於大多數沒有經驗的使用者是相當困難的。
作為下面的腳本,為所有使用者輕鬆訪問 USB 驅動器,CDROMs 或任何媒體連線到瘦客戶機而在用戶主資料夾創建 "Media" 符號連線。
home_path="/skole/tjener/home0"; shared_folder="Media"; permissions="775" \ created_dir=0;
for home in $(ls $home_path); do
if [ ! -d "$home_path/$home/$shared_folder" ]; then
ln -s /media/$home $home_path/$home/$shared_folder ((created_dir+=1))
else
echo -e "the folder $home_path/$home/$shared_folder already exists.\n"
fi
done
echo "$created_dir folders has been created"
有關在 LTSP 伺服器上可移除媒體的提醒
提醒:當在 LTSP 伺服器上插入 USB 驅動器和其他可移除媒體引起在遠程 LTSP 客戶端顯示訊息。
當遠程用戶收到這個訊息或使用從控制台pmount,一個遠程用戶甚至可以掛載可移除驅動器並存取其上的檔案。
這個作為 Debian Edu bug #1376進行跟蹤。
自動清理
安裝它以 root 用戶身份運行以下命令:
apt-get install killer
自動安裝升級
unattended-upgrades是一個 Debian 軟體包,用以自動安裝安全(和其他)更新。如果你計畫使用它,你要有一些方法監控你的系統,例如,同時安裝 apt-listchanges軟體包並設定它給你傳送有關更新的郵件。那裡一直是 /var/log/dpkg.log。
安裝這些軟體包以 root 用戶身份運行如下命令:
apt-get install unattended-upgrades apt-listchanges
夜間自動關閉
在夜晚關閉客戶機來節約能源和費用,並在早晨自動開機。這個軟體包將嘗試從午後四點每個小時關閉機器,但不關閉似乎有用戶在使用的機器。它將嘗試告訴 BIOS 在早晨七點左右開機,主伺服器將嘗試使用wake-on-lan 包從六點半開機。這些時間可以在個別機器crontabs改變。
這裡的一些考慮:
客戶機在有人使用時將不會關機。這是自那裡檢測到輸出,作為例外情況,對於 LTSP 瘦客戶機 LDM ssh 連線命令進行檢測。
避免保險絲熔斷,一個有把握的好主意是不要同時啟動所有客戶機。
這裡可有兩種不同的方法來喚醒客戶機。其一是需要使用 BIOS 的功能和準確的硬體時間,而且主機板和 BIOS 版本支持 nvram-wakeup。其他需要伺服器通告各處所有客戶機喚醒,並且對於所有客戶機要支持 wake-on-lan。
如何設定夜間關機
能在伺服器上開啟 wake-on-lan,添加客戶機到 /etc/shutdown-at-night/clients,作為每個客戶機的連線,首先是 IP 地址,接下來是 MAC 地址(網卡地址),以空格分隔它們,或者創建一個腳本 /etc/shutdown-at-night/clients-generator來生成客戶機清單。
對於使用 sitesummary,這裡是一個 /etc/shutdown-at-night/clients-generator範例:
#!/bin/sh
PATH=/usr/sbin:$PATH
export PATH
sitesummary-nodes -w
另一個選擇是如果網路組在客戶機上使用 shutdown-at-night ,這個腳本使用 ng-utils軟體包中的網路組工具:
#!/bin/sh
PATH=/usr/sbin:$PATH
export PATH
netgroup -h shutdown-at-night-hosts
這部分文本最初從 README獲得。
訪問
從網際網路上透過防火牆訪問機器,考慮安裝 autossh-package。它可以使用設定一個 SSH-tunnel 到網際網路上的一台機器由你訪問。從那台機器,你可以通過 SSH-tunnel 透過防火牆訪問伺服器。
服務的機器
FIXME: 它幾乎屬於無效
使用 debian-edu-expert 引導選項安裝minimal項目
為服務安裝軟體包
設定服務
禁止主伺服器上的相關服務
在主伺服器上更新 DNS
設定PXE選單
PXE 設定的生成使用 debian-edu-pxeinstall腳本。它允許不理會一些設定而由添加一個 /etc/debian-edu/pxeinstall.conf檔案以取代準則。
設定 PXE 安裝
PXE 預設所得的安裝選項能讓任何人以 PXE 引導一台機器。密碼保護 PXE 安裝選項,可以類似這樣的內容創建 /var/lib/tftpboot/menupassword.cfg檔案:
MENU PASSWD $4$NDk0OTUzNTQ1NTQ5$7d6KvAlVCJKRKcijtVSPfveuWPM$
密碼 hash 需要以一個想要的密碼 MD5 hash 來取代。
PXE 安裝將從設定那裡接受語言,鍵盤布局和鏡像設定的套用,當安裝主伺服器時,將在安裝期間詢問其他問題(項目,參與調查,分區和 root 密碼)。避免這些問題,檔案 /etc/debian-edu/www/debian-edu-install.dat可以提供預先選出的答案來改善 debconf 標準。可在 /etc/debian-edu/www/debian-edu-install.dat獲得已經解釋過的 debconf 準則的若干示例。你所做的改變將同 debian-edu-pxeinstall一樣在不久後用於重建 PXE-安裝環境。用以 debian-edu-pxeinstall重建期間增補 debconf 準則到 /etc/debian-edu/www/debian-edu-install.dat,以你增加的 debconf 準則添加 /etc/debian-edu/www/debian-edu-install.dat.local檔案。
FIXME: 以 DebianEdu/Documentation/Squeeze/HowTo/NetworkClients做比較,去除多餘的信息。
桌面
KDE
包含兩個預設內容:
debian_edu_pupils(對學生團組成員的授權)
在學生桌面顯示定製的頭像
保證桌面頭像後面的程式也出現在 kde 面板中
不啟動專家模式
確保學生不能開啟另一個 kde 會話
禁止學生可能獲得 root 會話
debian_edu_root(對 root 用戶和管理者團組成員的授權)
添加桌面頭像連線到 tjener 本地 web 伺服器提供容易訪問所有管理程式
注釋:可以使用 kiosktool修改項目。然而,除非你之後step below,你的變更將因升級覆蓋寫入。FIXME: 這是中斷和錯誤要提交:kiosktool 升級恢復預設桌面頭像。
如果你想要改進 kiosk 剪影,你可以複製保存的並改進它們,或者在(作為示例) /etc/kde3/kioskprofiles/創建新 kiosk 剪影並在 /etc/kde-user-profile啟用它們。kiosk 工具在你點擊“所屬剪影”和瀏覽新資料夾而為你工作。
改變KDE
你在以上面 kiosktool 之類講解更改 kioskmode 設定之後,你要為使用無盤工作站複製一些檔案到 chroot 內部。
假設無盤工作站是運行 i386,下面的命令必須在工作站伺服器上執行:
export LTSPCHROOT=/opt/ltsp/i386/
cp -rv /etc/kde-profile/ $LTSPCHROOT/etc/
cp -v /etc/kderc $LTSPCHROOT/etc/
cp -v /etc/kde-user-profile $LTSPCHROOT/etc/
unset LTSPCHROOT
此外以 amd64取代 i386來套用。
禁用KDE
如果你不想使用 kioskmode,恰當地移除either just remove the file /etc/kderc 檔案。或者,如果你只想暫時禁用kioskmode,這裡的意見關閉所有項目。
改進KDE
在 Debian/Etch,定製 kde 登錄螢幕的方法已改變。現在,它通過在 /etc/default/kdm.d/加入一個檔案,明確規定變更而不使用預設設定。
這裡示例使 desktop-base軟體包中的主題生效:
USETHEME="true"
THEME="/usr/share/apps/kdm/themes/debian-moreblue"
對於如何使用這些變化的資料,參看在 /etc/init.d/kdm的代碼。
== 使 KDE, Gnome 和 LXDE 結合
如果你想使用 Gnome 或 LXDE 替換 KDE,以下是 安裝指南。
安裝後再安裝其他桌面環境,簡單地使用 apt-get:
apt-get install gnome lxde
FIXME: 講解如何並行安裝和使用它們以及在“常規登錄”使用 $desktop_environment on "normal logins" 和瘦客戶機登錄 lxde。大概在 DebianEdu/Documentation/Squeeze/HowTo/NetworkClients中介紹。
Flash
自由軟體 flash-player gnash是預設安裝的,但改用 Adobe Flash 是一種選擇。安裝(非自由) Adobe Flash Player web 瀏覽器外掛程式,從 contrib安裝 flashplugin-nonfreedebian 軟體包。因此你需要在 /etc/apt/sources.list里允許使用contrib 軟體庫。
DVDs
libdvdcss 是為娛樂的最多數商業 DVDs 所需要的。出於法律的原因,它不包含在 Debian(Edu) 中。如果法律允許你使用它,你可以使用來自 debian-multimedia的軟體包。添加多媒體倉庫(下面的段落作恰當的講解)並安裝多媒體和 dvd 庫:
apt-get install libdvdcss2 w32codecs
多媒體倉庫
下面是使用 debian-multimedia
手寫字型
軟體包 ttf-linex(預設安裝)安裝字型 "Abecedario" ,它對於小孩子是好字型。字型有以小孩使用的若干形式:點並以線條。
網路客戶端
簡介
瘦客戶機和無盤工作站二者通稱 LTSP 客戶端。LTSP is the Linux Terminal Server Project.
瘦客戶機
瘦客戶機可以設定普通個人電腦具有 (X-)終端功能,那裡的所有程式運行在 LTSP 伺服器上。這一方法是機器從軟碟或直接從伺服器使用 network-PROM (或 PXE) 引導,而不使用本地客戶機的硬碟驅動器。
無盤工作站
無盤工作站在本地運行所有軟體。客戶機直接從 LTSP 伺服器引導而不是本地硬碟驅動器。軟體在 LTSP 伺服器上管理和維護,但它運行在無盤工作站上。主目錄和系統設定也保存在伺服器上。無盤工作站是一個類似於瘦客戶機的低維護成本再利用較新硬體的極好方法。
根據網路選擇機器種類
每個 LTSP 伺服器有兩個網卡,一個設定在 10.0.0.0/8 子網(共享主伺服器),另一個構成本地 192.168.0.0/24 子網(對於每個 LTSP 伺服器的單獨子網)。
在 LTSP 伺服器上改變 PXE 選單
PXE 選單讓 LTSP 客戶機可選擇網路引導,安裝和其他可能的選項。預設使用 /var/lib/tftpboot/pxelinux.cfg/default檔案,如果在該目錄內沒有其他檔案與客戶機匹配,開箱即用的設定連線到 /var/lib/tftpboot/debian-edu/default-menu.cfg。
如果想要所有客戶機引導為無盤工作站取代全部 PXE 選單設定,可以實施改變這個符號連線:
ln -s /var/lib/tftpboot/debian-edu/default-diskless.cfg /var/lib/tftpboot/\
pxelinux.cfg/default
如果希望所有客戶機作為瘦客戶機引導來代替,改變符號連線類似這樣:
ln -s /var/lib/tftpboot/debian-edu/default-thin.cfg /var/lib/tftpboot/pxelinux.\
cfg/default
也可參看在 pxelinux 文檔。
/var/lib/tftpboot/ltsp/i386/pxelinux.cfg/default
增添一個 '3' (沒有引號)到行尾。那裡不需要在 GOsa 里添加這些工作站,保存你的工作和一個 "staticxx" IP 地址(看下面)。
分離的主伺服器和 LTSP 伺服器
出於性能和安全的考慮,需要設定分離的主伺服器而不作為諸如 LTSP 伺服器。
在主網路上 (10.0.x.x) 有 ltspserver00 服務於無盤工作站,在那裡 tjener 不是組合伺服器,這需要如下步驟:
自ltspserver00 複製 /var/lib/tftpboot 的 ltsp 目錄到 tjener 上的一個目錄。
複製/var/lib/tftpboot/debian-edu/default-diskless.cfg到 tjener 的一個目錄。
編輯/var/lib/tftpboot/debian-edu/default-diskless.cfg使用 ltspserver00 的 IP 地址,下面的示例使用 10.0.2.10 (預設的):
DEFAULT ltsp/i386/vmlinuz initrd=ltsp/i386/initrd.img nfsroot=10.0.2.10:/opt\
/ltsp/i386 boot=nfs ro quiet 3
在 tjener 上設定符號連線 /var/lib/tftpboot/pxelinux.cfg指向 /var/lib/tftpboot/debian-edu/default-diskless.cfg。
詳細敘述
lts.conf
對於瘦客戶機所作的專門的改制和配置,你可以編輯檔案 /opt/ltsp/i386/etc/lts.conf。安裝 ltsp-docs 軟體包並運行 "man lts.conf" 查看可用的配置選項。
默認值是定義下面 [default],配置一個客戶機,明確規定那個客戶機使用客戶機網卡硬體地址或類似這個 IP 地址 [192.168.0.10]。
示例:確定瘦客戶機 ltsp010 使用 1280x1024 解析度,添加類似這樣的內容:
[192.168.0.10]
X_MODE_0 = 1280x1024
X_HORZSYNC = "60-70"
X_VERTREFRESH = "59-62"
其下面某些地方為預設設定。
確定你所作的更改,這需要重啟客戶機。
負載均衡
第一部分
它能為了負載均衡而設定客戶機連線到若干伺服器中的一個。這以供/opt/ltsp/i386/usr/share/ltsp/get_hosts 這一腳本為 LDM 連線在一個或更多伺服器做記號。在這添加每一ltsp chroot 所需包含的對於每一個伺服器的 ssh 主鍵。
首先,你需要選擇一個 LTSP 伺服器為負載均衡伺服器。所有客戶機將以 PXE 從這個伺服器引導和載入 Skolelinux 鏡像。鏡像載入之後, LDM 使用 "get_hosts" 腳本選擇哪一個伺服器來連線。這是你之後如何做的。
現在你要移動你的客戶機從 192.168.1.0 網路到 10.0.0.0網路。這是因為那時你使用負載均衡,客戶機將要直接訪問 LDM 選擇的伺服器。如果你讓你的客戶機在 192.168.1.0網路,所有客戶機在與選擇 LDM 伺服器取得聯繫之前的流量將通過那個伺服器。
設定客戶機工作在 10.0.0.0 網路上,你要編輯在主伺服器(tjener)上的 /etc/dhcp3/dhcpd.conf。在那表明:
FIXME: 這需要在 LDAP 改變 DHCP 設定。
subnet 10.0.0.0 netmask 255.0.0.0 {
range 10.0.2.100 10.0.3.242;
}
你要在 "range" 之下增加這些:
filename "/var/lib/tftpboot/ltsp/i386/pxelinux.0";
next-server xxx;
option root-path "/opt/ltsp/i386";
option log-servers ltspserver01;
use-host-decl-names on;
第二部分
現在你來做一個 "get_hosts" 腳本為 LDM 聯接標記一個伺服器。LDM_SERVER參數比這個腳本重要。因而,這個參數應該不定義,如果已經使用 get_hosts。get_hosts 腳本按隨意順序在標準輸出上填寫每個伺服器的IP 地址或主機名。
編輯"/opt/ltsp/i386/etc/lts.conf" 添加諸如這樣的內容:
MY_SERVER_LIST = "xxxx xxxx xxxx"
以主伺服器的 IP 或主機名兩者之一取代 xxxx,清單以空格分隔。那時,置下面的腳本於你所選擇的負載均衡伺服器的 /opt/ltsp/i386/usr/lib/ltsp/get_hosts 目錄中。
# Randomize the server list contained in MY_SERVER_LIST parameter
TMP_LIST=""
SHUFFLED_LIST=""
for i in $MY_SERVER_LIST; do
rank=$RANDOM
let "rank %= 100"
TMP_LIST="$TMP_LIST\n${rank}_$i"
done
TMP_LIST=$(echo -e $TMP_LIST | sort)
for i in $TMP_LIST; do
SHUFFLED_LIST="$SHUFFLED_LIST $(echo $i | cut -d_ -f2)"
done
echo $SHUFFLED_LIST
第三部分
那裡現在有你製作的 "get_hosts" 腳本,他擇時對 ltsp chroot 做 ssh主鍵。這可以製作一個檔案包含自所有那些將是負載均衡伺服器的 /opt/ltsp/i386/etc/ssh/ssh_known_hosts的內容。在所有負載均衡伺服器上保存這個檔案為/etc/ltsp/ssh_known_hosts.extra。最後的步驟非常重要,因為每次伺服器引導運行ltsp-update-sshkeys 並且如果它存在,就包含於 /etc/ltsp/ssh_known_hosts.extra。
如果你保存你的新主機檔案作為 /opt/ltsp/i386/etc/ssh/ssh_known_hosts,它將在你重啟動伺服器時清除。
對於這個設定有一些明顯的缺點。所有客戶機從一個伺服器獲取它們的鏡像,這樣如果大量客戶機在同一時間引導會導致伺服器的高負載。客戶機也有賴於那個伺服器總是可用的,沒有它客戶機不能引導或獲得 LDM 伺服器。因此這一設定極其依賴此伺服器,這不是很好。
你的客戶機現在應該負載均衡!
客戶機的聲音
LTSP 瘦客戶機支持三種不同的聲音系統以套用, ESD, PulseAudio和 ALSA。 ESD 和 PulseAudio支持網路聲音和使用從伺服器到客戶機穿行的聲音。ALSA 是設定通過 PulseAudio修改它的聲音來源。 對於選擇僅使用支持 OSS 聲音系統,通過 /usr/sbin/debian-edu-ltsp-audiodivert 生成一個包裝來修改它們的聲音源自 PulseAudio。運行這個腳本無爭議地獲得這樣可重定向施用清單。
LTSP 無盤工作站可用本地聲音並對網路聲音無須特殊設定。
升級環境
經常適當以新軟體包對 LTSP 環境做有益的升級,明晰安全處境和可用的改進。在每個 LTSP 伺服器以 root 用戶運行這些命令進行更新:
ltsp-chroot # this does "chroot /opt/ltsp/i386" and more, ie it also prevents
# daemons from being started
aptitude update
aptitude upgrade
aptitude dist-upgrade
exit
在 LTSP 環境中安裝另外的軟體
為 LTSP 客戶機安裝外加的軟體,你需要在 LTSP 伺服器的 chroot 內部執行安裝。
ltsp-chroot
## optionally, edit the sources.list:
#vim /etc/apt/sources.list
aptitude update
aptitude install $new_package
exit
教學
Moodle
以 root 身份運行命令 aptitude install moodle來安裝 moodle。
Moodle 是一套課程管理系統 (CMS) -一個自由,開源軟體,設計使用合理的教學原則,幫助教育工作者建設有效的線上學習社區。你可以下載並在任何電腦上方便使用(包括 web主機),當前它的規模可以從單一教師站點到二十萬學生的大學。在法國一些學校使用 moodle 保留學生動態蹤跡。
監控學生
一些學校使用 Controlaula 或 Italc 一類的管理工具來督導他們的學生。
參看 Italc 的 wiki
FIXME: 說明如何安裝和使用 italc - 511387講述確實相當令人滿意。
apt-get install italc-client italc-master
警告:監控者可能在其許可權內違背原則和觸犯法律。
限制訪問
一些學校使用 squidguard 或 dansguardian 來限制網際網路的訪問。 FIXME: 講解如何安裝和使用 squidguard 和/或 dansguardian
警告:限制訪問信息或言論自由可能在你的許可權內違背原則和觸犯法律。
安裝
如同在 Lenny 中, Squeeze 也提供 swi-prolog軟體包。執行命令 apt-get install swi-prolog即可
FIXME: 預設設定 swi-prolog ?