ubuntu 13.04 (代号 raring ringtail)正式版于上個月底釋出,很多對 ubuntu 情有獨鐘的網友已經迫不及待嘗鮮了,51cto系統頻道也體驗了一下,大家可以通過《ubuntu 13.04 來襲:鉚勁浣熊酷炫體驗》檢視。本篇文章将從系統管理方面入手,繼續探究ubuntu 13.04 的奧秘。
1 設定shell版本
/bin/sh 是 /bin/dash,的符号連結。ubuntu為了加速開機的速度使用了dash來取代傳統的bash,/bin/sh -> /bin/bash改成了/bin/sh -> /bin/dash。雖然說dash體積有比較小開機時速度也比較快,但是在開機之後使用某些原本在bash環境可以正常使用的腳本,換到了dash之後 反而會出現一些莫名其妙的問題,這裡筆者要改回去。
#dpkg-reconfigure dash(選擇否即可)

圖 1 dpkg-reconfigure 工作界面
再次檢查一下, ls /bin/sh -al 發現軟連結指向/bin/bash就可以了。
說明:dpkg-reconfigure用來重新配制一個已經安裝的軟體包,通常把什麼軟體“弄壞了”,都可以通國dpkg- reconfigure來重新配置。例如dpkg-reconfigure xserver-xfree86 配置顯示卡,顯示器滑鼠,鍵盤.,dpkg-reconfigure locales 産生locale及default locale,dpkg-reconfigure etherconf 配置以太網參數。
debian almquist shell,縮寫為dash,一種 unix shell,相容于posix标準。它比 bash 小,隻需要較少的磁盤空間,但是它的對話性功能也較少。它由 netbsd版本的almquist shell (ash)發展而來,于1997年,由赫伯特·許(herbert xu)移植到linux上,于2002年改名為 dash。
2 介紹一下檢視ubuntu版本的幾個方法
對于桌面系統檢視系統設定中詳細資訊中的即可如圖1
https://dn-linuxcn.qbox.me/data/attachment/album/201305/09/165614f87oc677ak5k8lka.jpg
對于伺服器版本,如果沒有安裝x window可以使用如下幾個指令:
方法一:#lsb_release -a
方法二:#uname -a
方法三:#cat /etc/issue
方法四:#cat /etc/lsb-release
以上幾個指令的輸出略有不同如圖3。
https://dn-linuxcn.qbox.me/data/attachment/album/201305/09/165615hqdbb33j34zl4dbf.jpg
圖3 檢視ubuntu版本
3 伺服器版本語言設定
#apt-get -y install language-pack-cn-base language-pack-cn
更新中文utf的本地環境:
sudo locale-gen zh_cn.utf-8 sudo update-locale lang=zh_cn.utf-8
伺服器版本時選擇語言為english的原因。如果設定了中文,可以通過下面的方法修改系統語言為英文:
sudo nano /var/lib/locales/supported.d/local 改成 en_us.utf-8 utf-8 sudo vim /etc/default/locale 将 lang=”zh_cn.utf-8″ language=”zh_cn:zh”
修改為:lang=”en_us.utf-8″ language=”en_us:en”
sudo locale-gen
reboot 重新開機系統之後,ubuntu server 系統語言顯示英文,也就不再出現亂碼中文了。
如果出現warning: setlocale: lc_ctype: cannot change locale (en_us)
執行下列指令:
sudo locale-gen en_us.utf-8 sudo update-locale lang=en_us.utf-8
4 使用tasksel架建lamp
本來ubuntu下架建lamp,需要apt安裝很多包,記住那些包的名字比較麻煩,可以使用tasksel安裝lamp套件。先說說什麼是 tasksel,它是一個debian下的安裝任務套件,如果你為了使你的系統完成某一種正常功能,而需要安裝多個軟體包時,我們就可以使用它了。這句話 是什麼意思呢?比如說,我們需要安裝lamp架設一個web伺服器,為了完成這個功能,我們一般需要安裝很多個軟體包,用apt的話,我們就需要分别安裝 這些包(包含apache2、php5等等),以便構成一個完整的(符合我們要求的)lamp系統。而如果使用tasksel的話,就可以用它友善的給我 們安裝一個完整的lamp套件,而無須我們去關心具體需要由哪些包來構成這個統一的套件。需要指出的是,通過tasksel軟體包不僅可以安裝lamp組 件,還可以安裝其他伺服器元件,比如dns伺服器,mail伺服器,列印伺服器等。其實使用tasksel安裝lamp套件的方法很簡單:
sudo tasksel install lamp-server
然後:
sudo tasksel
然後在tasksel界面中選lamp-server就ok了如圖4。
https://dn-linuxcn.qbox.me/data/attachment/album/201305/09/165615yioo1o8kipuxa1a1.jpg
圖4 工作界面
安裝過程中會提示你輸入mysql的root密碼。
$sudo vi /var/www/info.php
phpinfo(); ?>
$sudo /etc/init.d/apache2 restart
安裝完成了,現在你可以運作apache2來啟動apache了,然後在浏覽器裡輸入127.0.0.1/info.php,看看是不是已經顯示測試頁面了如圖5:
圖5
下面通過指令:sudo apt-get install phpmyadmin,安裝mysql管理工具phpmyadmin。
下面使用浏覽器通路http://ip/phpmyadmin或者http://localhost/phpmyadmin,如圖6:
圖6
5 簡單設定samba服務
(1)使用指令行方式配置samba服務
使用指令行方式配置samba服務比較簡單,通常隻有幾個步驟:
安裝軟體包:
#apt-get install libcups2 samba samba-common
修改配置檔案:
#vi /etc/samba/smb.conf [...] security = user [allusers] comment = all users path = /home/shares/allusers valid users = @users force group = users create mask = 0660 directory mask = 0771 writable = yes [homes] comment = home directories browseable = no valid users = %s create mask = 0700 directory mask = 0700
3 設定共享權限
mkdir -p /home/shares/allusers chown -r root:users /home/shares/allusers/ chmod -r ug+rwx,o+rx-w /home/shares/allusers/ /etc/init.d/smbd restart
4 添加使用者
useradd pirat9 -m -g users passwd tom smbpasswd -a pirat9
(2)使用圖形化工具設定samba
#apt-get install system-config-samba
這裡可以使用使用圖形化工具system-config-samba設定samba 工作界面如圖7、圖8 :
https://dn-linuxcn.qbox.me/data/attachment/album/201305/09/1656179mab3r3a897z0538.jpg
圖7 system-config-samba工作界面
https://dn-linuxcn.qbox.me/data/attachment/album/201305/09/165617w06lg968rl18yz5w.jpg
圖8 system-config-samba工作界面
6 使用lynis 檢查系統是否夠安全
lynis是一個為系統管理者提供的 linux和unix的審計工具 。 lynis掃描系統的配置,并建立概述系統資訊與安全問題所使用的專業審計。當使用者啟動該軟體後,lynis會會逐次掃描系統的核心、使用者目錄、軟體資訊 等,并最後生成一個全面的報告。需要說明的是,該工具隻能生成一個掃描檢測後的報告,對使用者起到提醒作用,本身并不能提高系統的安全性。但是該工具卻可以 成為其他安全軟體、系統測評軟體的子產品。使用方法:
安裝:
#apt-get install lynis
使用例子
全部檢查(最常用如圖9):
#lynis --check-all -q
圖9 工作界面
采用crontab自動檢查:
#lynis -c --auditor "automated" --cronjob > /var/log/lynis/report.txt
檢查某項目:
#lynis --tests file-6354 –quick
檢查告内容:
# grep warning /var/log/lynis.log
檢查建議内容:
# grep suggestion /var/log/lynis.log
lynis 是一套适用于各種 unix based system 的系統安全檢測工具, 程式以 shell script 建構而成。它能找出系統安全需要補強的地方, 同時提供許多提升系統安全的作法與建議, 對于系統管理者來說是一套既實用, 又能從中學習 (或複習) 到許多系統安全觀念的好工具。不足之處:該款工具比較全面的涵蓋了系統安全的審計内容,但每個審計項都不深入,需要具體的擴充,例如php、 apache,mysql的安全配置,就需要細化。
7 虛拟化工具配置
#apt- get -y install kvm qemu-kvm libvirt-bin virtinst bridge-utils
配置:
#modprobe vhost_net #lsmod | grep vhost #echo vhost_net >> /etc/modules
設定網絡接口:
#vi /etc/network/interfaces auto lo iface lo inet loopback # the primary network interface auto eth0 iface eth0 inet manual #iface eth0 inet static #address 10.0.0.50 #network 10.0.0.0 #netmask 255.255.255.0 #broadcast 10.0.0.255 #gateway 10.0.0.1 #dns-nameservers 10.0.0.30 iface br0 inet static address 10.0.0.30 network 10.0.0.0 netmask 255.255.255.0 broadcast 10.0.0.255 gateway 10.0.0.1 dns-nameservers 10.0.0.30 bridge_ports eth0 bridge_stp off auto br0 #initctl restart networking
安裝圖形化工具:
#apt- get -y install virt-manager qemu-system hal
下面使用kvm安裝一個centos 6.4 作業系統。
圖10 和圖11是安裝過程截圖:
https://dn-linuxcn.qbox.me/data/attachment/album/201305/09/1656187r07qiz8n7uzer0u.jpg
圖10 virt-manager工作界面
https://dn-linuxcn.qbox.me/data/attachment/album/201305/09/165618m7nhb2bmmvt0bmtl.jpg
圖11 virt-manager安裝centos 6.4 過程截圖
8 使用htop
htop它是一個 linux 下的互動式的程序浏覽器,可以用來替換linux下的top指令。與linux傳統的top相比,htop更加人性化包括如下特點:
可以進行水準或豎直滾動
可以跟蹤程序 (通過內建strace實作)
殺程序時不需要輸入程序号。
首頁面上顯示常用功能項,很友善。top要'h'一下。
支援程序樹狀顯示
可以按名稱查找程序
支援滑鼠操作
在啟動上,比 top 更快
可以通過 sudo apt-get install htop 來安裝它。
htop 常用指令選項:
-c –no-color 使用一個單色的配色方案。 -d –delay=delay 設定延遲更新時間,機關秒。 -h –help 顯示htop指令幫助資訊。 -u –user=username 隻顯示一個給定的使用者的過程。 -v –version 顯示版本資訊
建議檢視下man手冊頁,很詳細。
另外,還在使用時互動參數:
/:搜尋字元 h:顯示某個使用者的程序,在左側可以選項 t:顯示樹形結構 h : 顯示/隐藏使用者線程 k : 顯示/隐藏核心線程 選擇某一程序,按s:用strace追蹤程序的系統調用 p、t、m和top下是一樣的,按cpu,time+、memory使用排序。
工作界面,如圖12:
https://dn-linuxcn.qbox.me/data/attachment/album/201305/09/165619q5oqt5th8whfqzco.jpg
圖12 htop的工作界面
下面是f1到f10的功能和對應的字母快捷鍵。
https://dn-linuxcn.qbox.me/data/attachment/album/201305/09/165619fzelt11eh1uu0wot.jpg
9 安裝反病毒工具clamav
#aptitude -y install clamav
更新病毒庫:
#freshclam #clamav update process started at fri apr 27 14:52:15 2012 main.cvd is up to date (version: 54, sigs: 1044387, f-level: 60, builder: sven) daily.cvd is up to date (version: 14854, sigs: 162423, f-level: 63, builder: mcichosz) bytecode.cvd is up to date (version: 168, sigs: 38, f-level: 63, builder: edwin)
掃描目錄:
#clamscan --infected --remove --recursive /home ----------- scan summary ----------- known viruses: 2204737 engine version: 0.97.7 scanned directories: 169 scanned files: 215 infected files: 0 data scanned: 5.59 mb data read: 8.72 mb (ratio 0.64:1) time: 4.716 sec (0 m 4 s)
10 dhcp伺服器的簡單設定
#apt -get -y install dhcp3-server
#vi /etc/dhcp/dhcpd.conf
#第16行:設定ip或者域名:
option domain-name "cjh.net" ;
#第17行:
option domain-name-servers www.cjh.net
# 第24行,取消注釋:
authoritative; subnet 10.0.0.0 netmask 255.255.255.0 { option routers 10.0.0.1; option subnet-mask 255.255.255.0; range dynamic-bootp 10.0.0.200 10.0.0.254; } #initctl start isc-dhcp-server
說明:initctl(init control,即init控制程式)指令工具可以讓系統管理者以root特權身份與upstart init守護程序通信。這個實用工具能夠啟動、關閉作業,并可以報告作業的狀态。舉例來說,指令initctl list可以列出作業及其狀态:
如果想要了解其他initctl指令,請将list替換成該指令的名稱。實用工具start、stop和status分别是initctl執行相應 的同名指令的連結。更多資訊請參見initctl的手冊頁和本節的示例。輸入指令initctl help(help前面沒有連字元)可以顯示initctl指令清單。
<b> 原文釋出時間為:2013-05-10</b>
<b>本文來自雲栖社群合作夥伴“linux中國”</b>