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>