Product SiteDocumentation Site

3. Changes in Fedora for System Administrators

3.1. Kernel

Fedora 16 features the new 3.1.0 kernel. In spite of the dramatic number change, there are no dramatic feature changes. Even Linus says you shouldn't care about it:
 I decided to just bite the bullet, and call the next version 3.0. It will get released close enough to the 20-year mark, which is excuse enough for me, although honestly, the real reason is just that I can no longer comfortably count as high as 40.

3.2. Boot

Fedora 16 takes advantage of several new technologies to improve the speed, security and efficiency of the boot process:

3.2.1. GPT Disk Labels

New Disk Labels

Manually partitioned installations may require additional steps
Starting in Fedora 16, on non-EFI x86 (32 and 64 bit) systems, anaconda will default to creating GPT disklabels (partition tables) instead of MSDOS disklabels. On these systems, when booting from a GPT-labelled disk, it is strongly recommended (not necessarily required in all cases, depending on the system's BIOS/firmware) to create a small (1MiB) BIOS boot partition. This partition will be used by the bootloader (GRUB2) for storage.
Automatic partitioning will create the partition when appropriate, but users who choose custom partitioning will have to create this partition for themselves.
This BIOS boot partition is only necessary on non-EFI x86 systems whose boot device is a GPT-labelled disk.

3.2.2. GRUB 2

The GNU Grand Unified Bootloader (GRUB) receives a major update in Fedora 16. GRUB 2 allows better configuration options, better support for non x86 architectures, scripting and localization support. GRUB 2 has new configuration formats and files — please consult the GRUB manual for more information.

GRUB user required

Anaconda allows for setting a GRUB password during installation. With the original GRUB, only the password was requested. With GRUB 2, the user is also prompted for a user name. The user root may be used.

3.2.3. SysVinit scripts ported to systemd

Fedora 15 saw the introduction of systemd, a new system and service manager for Linux. The integration of systemd continues in Verne, with many more SysV init scripts converted to native systemd service files. The result is a faster, more efficient boot process and simpler service management.

3.2.4. rc.local no longer packaged

The /etc/rc.d/rc.local local customization script is no longer included by default. Administrators who need this functionality merely have to create this file, make it executable, and it will run on boot.
Upgrades are not affected by this change.

3.3. UID Range Change

New UID and GID ranges

UID and GID values for user accounts now start at 1000 instead of 500 as in previous versions.
Fedora 16 changes the UID and GID allocation policy: user accounts now start from value 1000 instead of the previous value 500. This policy is now globally set in /etc/login.defs variables GID_MIN and UID_MIN, refer to login.defs(5) for more details. Upgrades from earlier Fedora releases will keep their configuration, starting user accounts from 500.
If you need to install a new system from scratch, while starting user accounts from 500 (to connect the system to a network with globally-defined UIDs), install using a kickstart script that places /etc/login.defs on the file system before package installation starts.

3.4. Virtualization

3.4.1. USB Emulation

  • Support for USB 2.0 (EHCI) devices has been added.

3.4.2. CDROM Emulation

  • Many fixes to comply with the ATAPI specification
  • GET_EVENT_STATUS_NOTIFICATION: Implement 'media' subcommand that helps report tray open/close, media present/absent states to guests. Newer Linux guests (kernels 2.6.38+) rely on this command to revalidate discs.
  • Major code refactoring and cleanup

3.4.3. Security

The qemu-kvm package has been compiled with full RELRO and PIE support which can help mitigate certain types of attacks. Exploiting the host system or other VMs running on the same host is more difficult with these compilation options.

3.4.4. Upstream release notes

3.4.5. Xen

  • Xen support merged into QEMU

3.4.6. x86

  • Stable guest TSC across migration
  • Support for VIA CPU features

3.4.7. General

  • Several memory leak fixes in all virtio devices

3.4.8. qemu-img

  • The performance of qemu-img convert has been improved
  • qemu-img convert and rebase now support the -p option which enables progress display

3.4.9. qcow2

  • Improved the performance of creating/deleting internal snapshots

3.4.10. Guest Agent

  • Added the guest agent that supports snapshotting,

3.5. Web Servers

httpd was updated from 2.2.17 to 2.2.19. This version is principally a security and bugfix release. This release also corrects a versioning incompatibility in 2.2.18; users are advised that 2.2.19 now restores compatibility with modules compiled against earlier versions of 2.2 (other than 2.2.18 which is considered abandoned).
  • Revert ABI breakage in 2.2.18 caused by the function signature change of ap_unescape_url_keep2f(). This release restores the signature from 2.2.17 and prior, and introduces ap_unescape_url_keep2f_ex().

3.6. Cloud

3.6.1. Aeolus Conductor

The Aeolus Conductor is a web UI and tools to create and manage cloud instances across a wide variety of cloud types, all from the same UI. More information about the UI and what is supported is available at the Aeolus home page.

3.6.2. Condor Cloud

Condor Cloud is an Infrastructure as a Service (IaaS) cloud implementation. It allows you to create as many VMs from an image or images as you wish, distributing them across a pool of configured hosts. The user interface is the Deltacloud API (http://deltacloud.org). The backend is implemented using Condor (http://www.cs.wisc.edu/condor/) which in turn starts VMs using libvirt and KVM.

3.6.3. HekaFS

HekaFS 0.7 enhances the feature set of GlusterFS with multi-tenancy, security, and management features.
HekaFS deployment requires knowledge of how to set up OpenSSL keys and certificates to facilitate authentication at both the management and I/O levels.
Network and storage encryption are both optional, and incur a significant performance penalty if used.
Quota/billing support is under active development within GlusterFS, and will not be available for this release of HekaFS.
Enhanced local file distribution/replication and wide-area replication are planned as eventual features of HekaFS, but are not in this release.

3.6.4. Matahari

Fedora 16 features Matahari, a collection of APIs accessible over remote and local interfaces for system monitoring and management. Matahari APIs are served via a collection of Agents. Matahari also includes a framework for adding new Agents and APIs.
The available agents are:
  • Host - An agent for viewing and controlling hosts
  • Networking - An agent for viewing and controlling network devices
  • Services - An agent for viewing and controlling system services

3.6.5. pacemaker-cloud

Pacemaker-Cloud provides high availability for application services inside virtual machines on a single node. This feature provides a shell for creating virtual machine images, associating resources with the virtual machines, and combining these images into a deployable. A deployable can then be launched and monitored for high availability. If virtual machines or applications fail, these components will be restarted reducing MTTR (mean time to repair) improving availability over manual operator restart.
Fedora guest virtual machines using systemd are currently non-functional until the following bugzilla is merged into rawhide: See systemd defect 702621 discussion.

3.7. Database Servers

3.7.1. systemd

MySQL and PostgreSQL have been updated to use native systemd unit files for startup, in place of the SysV-style init scripts. This should eliminate various unfortunate problems that occurred in Fedora 15 due to systemd's rather poor handling of SysV scripts. Also, handling of cases where the database server is slow to start up is significantly better than it ever was in the SysV scripts, since systemd can just wait until the server is really ready without slowing the boot down.

3.7.2. PostgreSQL

The service postgresql initdb and service postgresql upgrade actions that were supported by the SysV init script cannot be provided by the systemd unit file. There is a new standalone script, postgresql-setup that provides these functions. For example, to initialize a new postgresql database, do something like
sudo postgresql-setup initdb
If you need to run more than one postgresql server on the same machine, you can duplicate and modify the postgresql.service file, as is customary with systemd services. (Remember that custom service files should go into /etc/systemd/system/ not /lib/systemd/system/.) Notice that PGDATA and PGPORT settings for alternate servers must now be specified in the custom service files.
Copy /lib/systemd/postgresl.service to /etc/systemd/myservice.service, adjust PGDATA and PGPORT in the new file. To set it up, run
sudo postgresql-setup initdb myservice
postgresql-setup will then extract the PGDATA setting from that service file instead of postgresql.service.
The files in /etc/sysconfig/pgsql/ are no longer used.

3.8. System Daemons

3.8.1. systemd

Many service names have changed

Under systemd, the systemctl command replaces many operations previously performed by chkconfig, service, and ntsysv. In addition, the names of a number of services have changed.
In Fedora 16, most services are controlled by systemd. Refer to the Fedora System Administrators Guide, "Services and Daemons" for information on how to manage system services under systemd.

3.8.2. Chrony

Fedora 16 uses Chrony as the default Network Time Protocol (NTP) client. Chrony is designed to work well even on systems with no permanent network connection (such as laptops), and is capable of much faster time synchronisation than standard ntp. Chrony has several advantages when used in systems running on virtual machines, such as a larger range for frequency correction to help correct quickly drifting clocks, and better response to rapid changes in the clock frequency. It also has a smaller memory footprint and no unnecessary process wakeups, improving power efficiency.

3.8.3. HAL Removal

Fedora 16 does not ship with the HAL daemon and libhal, which have been replaced with udisks, upower and libudev. If a specific application requires libhal to function, please file a bug against it to be ported to the new technology.