#title Switching to Ubuntu from Red Hat Enterprise Linux or Fedora ||<>|| It is easy to apply your existing knowledge of ''Red Hat Enterprise Linux'' or ''Fedora'' to Ubuntu. The key differences between them are covered in this article. == Administrative Tasks == In Red Hat Enterprise Linux and Fedora by default, each administrative user needs to know the root password, in addition to their own password. In Ubuntu, each user only has one password. Users in the '''admin''' group can run command line and graphical applications with elevated privileges. Graphical admin tools prompt for this password when run, and command line tools can be run with root-privileges using [[RootSudo|sudo]]. == Package Management == Ubuntu has more packages available than Fedora, so you'll have a better chance of finding what you want in the repositories. As with Fedora, graphical applications will put a link into the '''Applications''' menu. === Graphical Tools === The '''Synaptic package Manager''' is an excellent tool for finding, fetching and installing packages. Press '''System -> Administration -> Synaptic Package Manager''' to start Synaptic. === Command Line Tools === Ubuntu uses ''apt-get'' instead of ''yum'', ''up2date'' and so on to find, download, and install packages and their dependencies. Note that, unlike yum, apt-get is only for packages available in repositories - it cannot handle packages you have already downloaded. The dpkg command is used instead. === Table of Equivalent Commands === Below is a table of equivalent commands for package management on both Ubuntu/Debian and Red Hat/Fedora systems. || '''Task''' || '''Red Hat/Fedora''' || '''Ubuntu''' || ||||||'''Adding, Removing and Upgrading Packages'''|| || Refresh list of available packages || Yum refreshes each time it's used || apt-get update || || Install a package from a repository || yum install ''package_name'' || apt-get install ''package_name'' || || Install a package file || yum install ''package.rpm'' <
> rpm -i ''package.rpm'' || dpkg --install ''package.deb'' || || Remove a package || rpm -e ''package_name'' || apt-get remove ''package_name'' || || Remove a package with configuration files || yum remove ''package_name'' || apt-get purge ''package_name'' || || Check for package upgrades || yum check-update || apt-get -s upgrade <
> apt-get -s dist-upgrade || || Upgrade packages || yum update <
> rpm -Uvh [args] || apt-get upgrade || || Upgrade the entire system || yum upgrade || apt-get dist-upgrade || ||||||'''Package Information'''|| || Get information about an available package || yum search ''package_name'' || apt-cache search ''package_name'' || || Show available packages || yum list available || apt-cache dumpavail || || List all installed packages || yum list installed <
> rpm -qa || dpkg --list || || Get information about a package || yum info ''package_name'' || apt-cache show ''package_name'' || || Get information about an installed package || rpm -qi ''package_name'' || dpkg --status ''package_name'' || || List files in an installed package || rpm -ql ''package_name'' || dpkg --listfiles ''package_name'' || || List documentation files in an installed package || rpm -qd ''package_name'' || - || || List configuration files in an installed package || rpm -qc ''package_name'' || dpkg-query --show -f '${Conffiles}\n' ''package_name'' || || Show the packages a given package depends on || rpm -qR ''package_name'' || apt-cache depends || || Show other packages that depend on a <
> given package (reverse dependency) || rpm -q --whatrequires [args] || apt-cache rdepends || ||||||'''Package File Information'''|| || Get information about a package file || rpm -qpi ''package.rpm'' || dpkg --info ''package.deb'' || || List files in a package file || rpm -qpl ''package.rpm'' || dpkg --contents ''package.deb'' || || List documentation files in a package file || rpm -qpd ''package.rpm'' || - || || List configuration files in a package file || rpm -qpc ''package.rpm'' || - || || Extract files in a package || rpm2cpio ''package.rpm'' | cpio -vid || dpkg-deb --extract ''package.deb'' dir-to-extract-to || || Find package that installed a file || rpm -qf ''filename'' || dpkg --search ''filename'' || || Find package that provides a particular file || yum provides ''filename'' || apt-file search ''filename'' || ||||||'''Misc. Packaging System Tools'''|| || Show stats about the package cache || - || apt-cache stats || || Verify all installed packages || rpm -Va || debsums || || Remove packages from the local cache directory || yum clean packages || apt-get clean || || Remove only obsolete packages from the local cache directory || - || apt-get autoclean || || Remove header files from the local cache directory <
> (forcing a new download of same on next use) || yum clean headers || apt-file purge || ||||||'''General Packaging System Information'''|| || Package file extension || *.rpm || *.deb || || Repository location configuration || /etc/yum.conf || /etc/apt/sources.list || Some of the information in this table was derived (with permission) from [[http://www.jpsdomain.org/linux/apt.html|APT and RPM Packager Lookup Tables]]. ### Permission was given here: https://lists.ubuntu.com/archives/ubuntu-doc/2007-November/009927.html More technical information about Debian-style packaging can be found in [[http://www.debian.org/doc/FAQ/ch-pkg_basics.en.html|Basics of the Debian package management system]] and the [[http://www.debian.org/doc/manuals/maint-guide/index.en.html|Debian New Maintainers' Guide]]. == Services == Services on Ubuntu are managed in a broadly similar way to those on Red Hat. === Graphical Tools === Services can be configured by clicking '''System''' -> '''Administration''' -> '''Services'''. A tool called [[http://www.marzocca.net/linux/bum.html|Boot-Up Manager]] is also available. === Command Line Tools === Below is a table of example commands for managing services. The ''apache''/''httpd'' service is used as an example. || '''Task''' || '''Red Hat / Fedora''' || '''Ubuntu''' || '''Ubuntu''' <
> (with sysv-rc-conf or sysvconfig) || || '''Starting/stopping services immediately''' || service httpd start || invoke-rc.d apache start || service apache start || || '''Enabling a service at boot''' || chkconfig httpd on || update-rc.d apache defaults || sysv-rc-conf apache on || || '''Disabling a service at boot''' || chkconfig httpd off || update-rc.d apache purge || sysv-rc-conf apache off || '''Note:''' Whereas Red Hat and Fedora servers boot into runlevel 3 by default, Ubuntu servers default to runlevel 2. '''Note:''' The `service` and `invoke-rc.d` commands call init scripts to do the actual work. You can also start and stop services by doing e.g. `/etc/init.d/apache start` on Ubuntu, or `/etc/init.d/httpd start` on Red Hat/Fedora. == Network == === Graphical Tools === Fedora/RHEL have system-config-network, ubuntu pre 10.04 had [[http://www.debianadmin.com/ubuntu-networking-for-basic-and-advanced-users.html| gnome-nettool]] to edit static ip address, since 10.04 nm-connection-editor is the best choice. For Ubuntu 10.04 Studio there is only manual editing of files [[https://bugs.launchpad.net/ubuntu/+source/gnome-system-tools/+bug/570828| since NetworkMontor is not included ]] === Command Line Tools === * [[http://www.debianadmin.com/ubuntu-networking-for-basic-and-advanced-users.html | ubuntu networking for basic and advanced users ]]