Managing Software Flashcards
library
- software component that can be used by many different programs
- reduce disk space and memory requirements of complex programs
package management
relates to managing programs as files on disk
foundational library upon which all other programs in the OS depend
linux kernel
purpose of package mangement tools
maintain a database of installed files
software package
self-contained module with tracking for all modules/software on which it depends
package database
- info about every file installed via package system
- name of package to which it belongs
- dependencies
- checksums
- upgrades and uninstallation
checksum
signature of a file to ensure:
- a package hasn’t been manipulated
- to ensure installation is correct
two main package managers
- rpm
- debian
True or False: RPM and Debian package management systems provide tools to help create binary packages
True
binary packages are installed from…
source code
advantage of installing from source rather than compiling
- track dependencies
rpm and debian compatibility
two don’t work together
Suse package management
use RPM but are different enough
main Red Hat distributions
- Red Hat Enterprise Linux, favored by servers
- Fedora, favord by high level users desktop
- Centos, enterprise users
RPM cross-platform capability
- source RPMs are transportable across architectures (i.e. x86, AMD64)
- some programs need no recompilation due to architecture-independed scripts
RPM package nomenclature
packageName-version.Number-buildNumber.architecture.packagemanager
(i.e. Samba-server-3.0.25b-4.5mdv2008.0.x86_64.rpm)
version information for package
can query the rpm bc information is retained within package
distribution-specific scripts
- sometimes startup scripts are included, but one may need to make their own
rpm switches
- i installs package, system must not contain a package of same name
- u installs new package or upgrades an existing pkg
- f or -freshen: upgrades a pkg only if earlier version exists
- q: queries a pkg, finds if installed, what it contains, and more
- v or -verify: verifies a pkg, checks files are present and unmodified
- e: uninstalls pkg
- b: builds a binary pkg given source code and config files (moved to rpmbuild as of rpm4.2)
- -rebuild: buils binary pkg (moved to rpmbuild as of rpm4.2)
- -rebuilddb: rebuilds rpm db to fix errors
- -root dir: modifies linux system having a root directory located at dir. Can be used to maintain one linux installation separate from another. Can be used during OS installation or emergency maintenance.
- force complete action without prompt
- i, -U, -F: forces install of a pkg even when it means overwriting existing files or pkgs
command rpm
- tool for red hat package management
- syntax: rpm [operation][options][pkg files | pkg names]
cpio
tool to extract from rpm package
command rpm2cpio
- transform rpm archive to cpio
- rpm2cpio [rpmFile] > [cpio file]
cpio switches
- i extract to archive
- -make-directories to create directories
(i. e. cpio -i –make-directories < [cpioFfile]
yum tool
- yum enables easy installation of pkgs and dependencies
- meta-packager
- locates all files for us by searching in a repository
- syntax: yum [options] [command] [package…]
yum commands
- install
- update, will update all if no pkg is specified
- check-update discovers available updates
- upgrade like update but will also check for obsolete software
- remove or erase deletes pkg and dependencies from system
- list displays info about a package such as version and available updates
- provides or whatprovides displays info for a specified program or feature
- search finds package names, summaries, packagers, descriptions
- info displays information about a pkg
- clean delets cache of downloaded packages
- shell enters shell mode so you can enter multiple comamnds one after another
- resolvedep displays pkgs matching specified dependency
- localinstall isntalls specified local rpm file using yum repositories to resolve dependencies
- localupdate updates system using specified local rpm files and yum repositories to resolve dependencies
- deplist displays dependencies of specified pkg
rpm config file
/usr/lib/rpm/rpmrc
popular repositories
- livna
- kde red hat
- fresh rpms
main debian distributions
- ubuntu
- libranet
- xandros