2. Fedora 针对系统管理员所做的变更
通过如 PXE 的内核直接引导方式安装发生了较大变化。从安装介质中进行常规安装不受影响。
高级用户可能会以各种方式进行网络安装,为了安装通常会涉及一些最小化内核环境的设置。该操作在 Fedora 17 中发生了重要改变。
F16 中一般只需要指定内核以及 initrd 的位置,安装便可开始 - kernel/initrd
到 stage1
,然后 stage1
到 stage2
。
如果没有装载器,那这种情况就不再如此:当进行内核直接引导时,必须指定 stage2
的位置。也就是说,要将 repo=
或 stage2=
(或者是 inst.repo=
或 inst.stage2=
, 目前是首选) 指向一个软件库 (repository)。如果 stage2=
的镜像在某个服务器上,而安装软件包在另一个服务器上,那么必须使用 stage2=
。repo=
仅在一个服务器上包括所有安装所需文件 (stage2
镜像以及要安装的所有软件包) 时才使用。请注意 stage2
还需要有“软件库”的目录树,不能只提供到 squashfs.img
文件的路径 (这曾是 stage2=
在 F15 及更早版本中的工作方式)。
例如:
label linux
kernel vmlinuz
append initrd=initrd.img
不再有效。必须指定
repo
:
label linux
kernel vmlinuz
append initrd=initrd.img repo=http://dl.fedoraproject.org/pub/fedora/linux/development/17/x86_64/os/
或
stage2
:
label linux
kernel vmlinuz
append initrd=initrd.img stage2=http://my.internal.server/17/x86_64/os/
(或任何其它有效镜像)。
Fedora 现在具备单独的可配置库,
libpwquality,来检查系统帐户新密码的质量。由该库提供的系统域密码质量检查可通过修改
/etc/security/pwquality.conf
文件来配置。
想要在自己程序中调用该 API 的开发者可以从由 libpwquality-devel 软件包提供的 pwquality.h
文件中找到 API 描述;并提供了 Python 包装 python-pwquality。
2.3.2. SELinux 禁止 Ptrace
增加了一个新的 SELinux 布尔值,deny_ptrace
。推荐没有计划在机器上进行应用程序除错操作的用户打开该布尔值。该布尔值可以防止恶意进程使用如 ptrace 和gdb 除错程序来读取其他程序的内存,甚至施行攻击。
它甚至可以阻止以根用户或者以相同 SELinux 上下文和标签运行的恶意程序施行攻击。要永久启用由
deny_ptrace
布尔值带来的保护,以根用户执行如下命令:
# setsebool -P deny_ptrace 1
要暂时禁用由 deny_ptrace
布尔值带来的保护,以根用户执行如下命令:
# setsebool deny_ptrace 0
一些由 systemd 管理的服务已经过修改,使得服务能够利用它来为服务自身提供一个单独的 /tmp
目录。授权服务使用 /tmp
目录,而 /var/tmp
目录之前曾被发现因其开放,而收到非授权用户的干扰,进而可能导致权限提升的发生。为每个服务提供单独的 /tmp
目录则可以防止该形式的漏洞。
修改后的服务在其
systemd 单元文件内添加的内容是:
[Service]
PrivateTmp=true
增加了一个用来简化创建libvirt安全容器的新工具- sandbox。当提供了sandbox可执行程序来决定在容器中运行程序需要的挂载点和libvirt容器信息。该容器随后会被libvirt在SELinux上下文中加载以防止和系统中的其他进程交互,其中包括其他的容器。同时允许其共享系统数据。
这样可让管理员同时运行一个服务的多个实例,而主机或系统上的其它进程不会因此被打断,即使以 root 运行也是如此。要使用 sandbox,请安装 libvirt-sandbox 软件包。
2.3.4.1. krb5-workstation
Fedora 17 将 Kerberos 验证系统升级至 1.10。该版本增加了本地化以及通过 NAT 修改密码的支持。新增的 kswitch
命令用于在凭据缓存之间切换。另外还为其它命令增加了额外缓存的支持。$HOME/.k5identity
可控制凭据的选择。
Fedora 17 集成了CloudStack 软件包,提供了成熟的基础设施即服务(Iaas)平台。
Fedora 17 中新增的还有 OpenNebula。它是针对数据中心虚拟化的基础设施即服务平台。对这一环境的管理可以通过命令行或者图形界面来完成。而且加入了对 Amazon EC2 开放云计算接口(Open Cloud Computing Interface,或简称 OCCI)的兼容性。
Fedora 17 中集成了最新版本的 OpenStack 套件,项目代号为“Essex”。它包括最新版本的网页管理接口(“Horizon”)和虚拟网络(“Quantum”)。其中做为 AQMP 后端 RabbitMQ 备选的 Qpid 首次引入 Fedora 17。此外,支持多种虚拟磁盘格式的 libguestfs 的引入,使得 Fedora 的 OpenStack 更加灵活。
Fedora 17 中还集成了 Open vSwitch,是一个基于软件的网络交换机,用来向虚拟机提供网络服务。Open vSwitch 支持 OpenFlow,以便于管理。
2.9.1. 针对 GNOME Shell 的软件渲染
GNOME Shell 的体验已经在所有硬件上可用,包括那些使用软件渲染的设备。仍然想要使用 GNOME 后援模式的用户可手动开启。步骤为:访问系统信息控制面板小程序,选择图形,将强制使用后援模式选项设为 开启。
Fedora 17 的 X Server 和库均支持 2.2 版的 XInput 扩展,这其中包括对多点触摸的支持。选择使用的应用程序将能够利用 Fedora 上的多点触摸支持。
更新后的 X server 为支持它的驱动程序及设备提供了平滑滚动特性。滚动数据除了以旧有的按键事件输出外,还以坐标值输出。这让应用程序将速度加入考虑范围,使之能够提供更平滑的滚动体验。像多点触摸一样,要想利用平滑滚动的支持,它必须写入到客户端应用自身当中。
i810、mga、r128、savage、sis、tdfx 以及 unichrome 的 DRI 驱动将不在提供,因为 Mesa 中已不再集成。受影响的硬件包括以下设备及其衍生设备:
Intel i810 和 i815 主板芯片组
Matrox MGA G200, G400, G450 及 G550 卡
ATI Rage 128 卡
S3 Savage 3D 和 Savage 4 卡
SiS 300、540、630 以及 730 芯片组
3dfx Voodoo 3、Voodoo 4、Voodoo 5 卡
VIA Unichrome 及 Unichrome Pro 芯片组
该硬件现在由 llvmpipe 软件 3D 驱动支持。该驱动与以往的 DRI 驱动不同,该驱动提供了 OpenGL 2.x 相关功能。