我眼中的Fedora 18:体验手记
【51CTO原创稿件】一直以来Ubuntu、Fedora和Mint三大Linux桌面操作系统发行版一直稳居排名前三。2013年1月15日,Fedora项目有一款力作:Fedora 18正式版发布。Fedora 18除了桌面版之外,还提供了KDE定制版、LXDE定制版等,有兴趣的网友可以在其官网上下载试用。 据了解Fedora 18正式版一方面做了常规的软件版本更新,另外一方面加入一些新功能。如GNOME 3.6.2 和KDE 4.9,Cinnamon, MATE 和 Xfce 4.10。
Fedora 18 带来的新特性有:
- 引入了跨版本升级工具 fedUp。
- 多种最新的桌面环境包括 GNOME 3.6,KDE 4.9,Cinnamon, MATE 和 Xfce 4.10。
- 另外,为GNOME 桌面环境提供了离线系统更新的支持。
- 为 lvm, raid 和 btrfs 文件系统提供了统一化的存储管理工具 SSM。
提供了 Eucalyptus 3.2 版本,一个可以方便将现有 IT 基础设施转化成私有 IaaS 云计算的套件。动态防火墙 firewalld,并默认开启 mDNS 服务,方便局域网远程设备的配置。最新的 Rails 3.2,Python 3.3 和 Perl 5.16 编程环境。 GCC 提供 DragonEgg 插件,允许使用 LLVM 的优化过程并实现交叉编译。 OpenStack 升级到 Folsom 版本,继续提供领先的开放或私有 IaaS 云计算方案。 虚拟化引擎 oVirt 升级至 3.1 版本,进一步扩展了集中式虚拟化管理功能,允许实现远程快照和虚拟机克隆操作。 为 KVM 虚拟机增加了挂起和唤醒功能。
1、安装Fedora 18
Fedora 18整个安装过程也是非常的简单, Fedora 18可以选择把文件系统设置为BTRFS。如图1 (在Fedora 17中 btrfs 不会在安装过程中做为目标文件系统提供。)
图1 可以选择把文件系统设置为BTRFS
另外安装过程的一个小功能比较好(回收空间)如图2 。
图2 回收空间功能
这个功能可以让用户设置磁盘时更加灵活。需要说明的是Fedora 18的安装过程中无法细化定制软件。如图3:
图3 Fedora 18的安装过程中无法细化定制软件
用户可能要安装一些自己不需要的功能,这个比较遗憾,其他方面Fedora 18的安装过程没有什么特别的 。
2、安装后的一些工作
(1)安装添加第三方源
# rpm -ivh http://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-stable.noarch.rpm
(2)安装yum-plugin-fastestmirror
很多人都在埋怨 Fedora 连接软件源的速度慢,其实还是有办法可以解决的。那就是安装 yum-plugin-fastestmirror 打开终端,键入以下命令:
$sudo yum install yum-plugin-fastestmirror
安装结束以后,以后每一次运行 yum 的时候,都会先寻找一个最快的源。现在中国大陆 163 和搜狐都做了完整的 Fedora 镜像,速度自然提升了很多。 如果觉得这样还不够方便,那么可以试试 ailurus 的最快的源这个特性吧,它能够帮助你寻找速度最优的软件源,方便程度不逊于 Ubuntu 的。下面更新系统:
$sudo yum -y update
(3)安装些开源字体 避免一些字体乱码
$sudo yum install wqy-bitmap-fonts wqy-zenhei-fonts wqy-unibit-fonts wqy-microhei-fonts
(4) grub2 启动时进入inite3 或者是命令行模式的方法
开机进入多用户模式,终端下键入:
ln -si /lib/systemd/system/multi-user.target /etc/systemd/system/default.target
提示是否覆盖default.target,键入 y
重启即可进入多用户模式
如果希望开机进入桌面环境:
终端下键入:
ln -si /lib/systemd/system/graphical.target /etc/systemd/system/default.target
提示是否覆盖default.target,键入 y
重启即可进入桌面环境 。
(5)修改启动顺序
对于使用Windows + linux 双系统的用户可以使用如下方法修改启动顺序
1. 首先找到Windows的菜单menuentry.
# cat /boot/grub2/grub.cfg | grep Windows
结果: menuentry "Windows 7 (loader) (on /dev/sda1)" --class windows --class os {
2. 设置Windows 作为默认的启动项(这儿只能使用上面命令输出中双引号 " " 或 者单引号 '' 中的内容)。
# grub2-set-default "Windows 7 (loader) (on /dev/sda1)"
3. 验证默认启动项 # grub2-editenv list
输出:
saved_entry=Windows 7 (loader) (on /dev/sda1)
(6) 大家要熟悉两个服务管理工具systemctl 和Manage System Services
systemctl
fedora大概是从15开始吧,开始用管理系统进程的systemctl 逐渐替换掉原来的chkconfig/service/upstart。不过chkconfig/service这两个命令依然可用。下面是几个例子:
显示所有服务
#systemctl -t service
显示 sshd 服务的详细信息:
#systemctl status sshd.service
管理服务
启动一个服务:systemctl enable service_name.service 例如:systemctl enable sshd.service
停止一个服务:systemctl disable service_name.service 例如:systemctl disable sshd.service
另外老版本ntsysv 工具还有可以使用,不过只能管理很少的服务了。如图4。
图4 老版本ntsysv 工具还有可以使用,不过只能管理很少的服务了
图形化服务管理工具Manage System Services
systemd 是 Linux 下一个与 SysV 和 LSB 初始化脚本兼容的系统和服务管理器。systemd 使用 socket 和 D-Bus 来开启服务,提供基于守护进程的按需启动策略,保留了 Linux cgroups 的进程追踪功能,支持快照和系统状态恢复,维护挂载和自挂载点,实现了各服务间基于从属关系的一个更为精细的逻辑控制,拥有前卫的并行性能。 systemd 无需经过任何修改便可以替代 sysvinit 。systemd 有一个小的图形前端 systemdadm 。通过它可以开启/停止/内省服务。它是 systemd软件包的一部分。作为调试工具还是有用的。它是用 Vala 编写的。
首先安装一下:#yum install systemd-ui
使用Manage System Services 可以快捷直观的对系统服务完成 启动,停止等操作 。Manage System Services的主要操作选项。如图5 。
图5 Manage System Services的主要操作选项
说明:软件包名称 和Fedora 18 Beta 有一点变化,由systemd-gtk 变为systemd-ui 。
(7)设置NTP时间服务
#yum -y install ntp #vi /etc/ntp.conf
在第19行添加允许接收请求的网络范围
#restrict 10.0.0.0 mask 255.255.255.0 nomodify notrap
设置服务器进行同步
#server ntp1.jst.mfeed.ad.cn #server ntp2.jst.mfeed.ad.cn #server ntp3.jst.mfeed.ad.cn
启动服务
#systemctl start ntpd.service #systemctl enable ntpd.service
查询一下
#ntpq -p
3、桌面应用
(1)安装和配置GNOME-tweak-tool
#yum install gnome-tweak-tool
大家可以通过安装gnome-tweak-tool来设置。打开gnome-tweak-tool,"让桌面显示文件,激活右键功能,打开gnome-tweak-tool,进行图6设置即可:
图6 桌面显示文件
安装鼠标右键"在终端中打开"
#yum install nautilus-open-terminal
此时已经激活右键打开功能。如图 7 :
图7 激活右键打开功能
(2)根据需要设置语言环境
如果网友希望显示其他语言的界面,只需简单地设置一下即可实现其他语言界面显示,而无需再去下载和安装语言包。虽然很多人英文水平还算不错,但是无论怎样也没有使用自己的母语方便。单击"活动",在桌面右侧的目录中选择"系统工具",再单击"系统设置",弹出"系统设置"界面,如图8。
图8 设置语言
在"语言"栏中,选中你希望使用的界面语言,例如"简体中文"或"英国英语"。如果列表框里没有你需要的语言,可以单击框左下方的"+"号,添加希望体现的界面语言。选中成功之后,系统重新启动后,界面语言就可以更改了。
(3)GNOME 3.6桌面的解析
Fedora 18采用了GNOME 3.6和KDE 4.9桌面环境。这里笔者简单介绍一下GNOME 3.6桌面如图9,这个界面分为四个部分,左侧的常用应用快捷方式,打开一个应用程序都会在左侧显示出来,没有个数限制;左上方显示"窗口"和"应用 程序",分别显示当前打开的程序和所有的应用程序;右上方则为搜索栏。多应用同时显示在"窗口"内,可以通过"Alt+Tab"组合键进行切换。选择某个应用程序可以通过"搜索"栏直接搜索,也可以通过右侧分类目录定向选择。多应用同时显示在"窗口"内,可以通过"Alt+Tab"组合键进行切换 ,而桌面的右侧竖条则用来呈现多窗口显示,默认最多有六个窗口。Boxes 是 GNOME 3 新增应用。您可以通过 Boxes 访问其它计算机及位于相同或不同计算机上的虚拟机。
图9 GNOME 3.6 桌面
(4)Sugar 桌面环境
另外Fedora 18 集成了 Sugar 0.98.3 桌面环境。Sugar 是 XO 膝上型电脑提供的新的一款用户界面。由于屏幕极小,所以选择采用的是框架而非传统的窗口风格的界面。自始至终,红帽公司和 Fedora 一直和 OLPC 项目紧密合作。目前,在帮助获得更广泛的注意和创新力使用的努力之下,专注于孩子们的 Sugar 桌面环境(孩子们更喜欢,大家都这么说),Fedora 项目的成员努力工作和一些实用的活动打包,因此你能更容易的在你的 Fedora 系统上使用它们。这是一个很不错的方式来参与这个项目的开发工作,更多的活动一直都在打包进来。如果你想试一下,你需要做的就是安装 Sugar桌面群组。安装Sugar桌面环境后可以在登录时选择Sugar,如图 10 。
图10 在登录时选择Sugar
Sugar工作界面如图 11
图11 Sugar工作界面
表 1 是Sugar 中的控制键顺序
说明:Sugar 界面已经可用且相当稳定,但是Sugar桌面环境参与了太多的任务,如电源管理,无线管理,甚至与BIOS直接联系,所以Sugar变得过于杂乱。
4、简单介绍一下网络设置方面
(1)首先安装小工具
#yum -y install net-tools #vi /etc/hostname
添加主机名称
# cjh.net
(2)修改网络接口名称
因为 biosdevname 软件包的关系, 一般 PCI 网卡在 Fedora 18 是以 p2p1 (格式: p<slot>p<ethernet port>) 这样的名称出现, 传统上Linux中的以太网设备都被命名为ethX;问题是这个名称可能无法与该设备在系统中的LOM(主板集成网卡Lan-on-Motherboard )编号相对应。Biosdevname是一款udev辅助应用,它可以将设备原先的ethX名称,映射到该设备基于物理位置的名称上。这在部署多台服务器时用处尤为明显,特别是在要求所有以太网设备都采用相同的名字的情况下。嵌入式插槽设备的名称格式为"eX_vf",而PCI插槽上的NIC名称格式则是"pXpY_vf"。
若要改回熟悉的 eth0, eth1..可以采用下列方式:
方法1 手动编辑 udev rules
# vi /etc/udev/rules.d/70-persistent-net.rules SUBSYSTEM=="net", ATTR{address}=="11:22:33:44:55:66", NAME="eth0"
说明:网卡 mac 地址可以这样查询:
$ cat /sys/class/net/p2p1/address
或者
$ ifconfig p2p1 | grep ether | awk '{print $2}'
或者
$ ip a show p2p1 | grep ether | awk '{print $2}'
方法2 使用 ifrename 工具变更网卡名称
# yum install wireless-tools # vi /etc/iftab newnameA mac 11:22:33:44:55:66 newnameB mac 11:22:33:44:55:66
先停用原来网卡, 再进行更名
# ifconfig p2p1 down # ifrename -i p2p1 -n newnameA # ifconfig newnameA up
可以更名为 /etc/iftab 里所设定的任何一个名称例如
# ifconfig newnameA down # ifrename -i newnameA -n newnameB # ifconfig newnameB up
也可以改回原本的名称
# ifconfig newnameB down # ifrename -i newnameB -n p2p1 # ifconfig p2p1 up
图12 是修改为原来熟悉eth0 后的模样
另外老版本默认的 kudzu 这个识别硬件的服务在Fedora中已经不存在了,基本上所有的硬件管理都通过 Udev 来管理了,如果你加了一个新的硬件,如网卡只需要重新启动 udev 就行了。我们直接修改 udev 有关网络的配置就行了。有关网络的 udev 的具体网卡序号的配置文件是 /etc/udev/rules.d/70-persistent-net.rules 这个文件。只要修改一下 MAC 地址和 网络接口名称 两个参数就都能达到需求。修改完了,我们可以使用 udev 的命令udevadm来测试一下。
#udevadm test /sys/class/net/eth0/
这个命令可以很详细的显示 udev 的识别和处理的过程。
5、说说笔者眼中的Fedora 18的主要变化
(1)文件布局方面
首先用户需要了解一些和之前版本的主要变化,在系统配置方面,位于 /etc/sysconfig 目录下的配置文件已经不再使用,转而使用 /etc 下应用程序独立目录的方式体现。具体变化如下:
- 改用 /etc/localtime 配置时间及时区。
- 使用 /etc/locale.conf 管理区域相关的环境变量。
- 现由 /etc/vconsole.conf 负责虚拟终端的配置。
- 主机名由 /etc/hostname 配置。
- 更改显示管理器只需要 systemctl enable --force DMNAME 即可,不再需要编辑 /etc/sysconfig/desktop 文件。
此外一般用户的关机重启等权限也改由 /usr/share/polkit-1/actions/org.freedesktop.login1.policy 配置,不再使用 /etc/pam.d 中的设置了。
(2)安全方面
这里笔者介绍一个yum的安全插件,首先安装它
# yum install yum-plugin-security
对于系统管理员而言,方便且经常发现安全更新信息十分重要。出于这个目的,yum 提供了 security 插件,它为 yum 扩展了一系列以安全为中心的实用命令、子命令和选项。
其中一个重要的命令是:yum list-sec 它可以显示所有安全相关和bug修复的软件包。下面是举个例子
显示所有安全相关的软件包和bug修复的软件包
#yum list-sec
显示bug修复的软件包列表
#yum list-sec bugzillas
显示安全相关软件包
# yum list-sec security
如果要查看一个具体安全相关软件包的详情,可以使用如下命令如图13 。
#yum info-sec FEDORA-2013-0306