Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
notes:lpic-1_notes [2014/03/02 18:22]
smthng [102 Installation and Package Management 18%]
notes:lpic-1_notes [2014/03/03 01:49] (current)
smthng [102 Installation and Package Management 18%]
Line 122: Line 122:
  
 ==Notes== ==Notes==
- +  * BIOS looks for and runs boot loader from first specified boot device. 
-  * Bootloader (LInux LOader or GRUB passes kernel parameters as specified in config file to Linux kernel. +  * Boot loader find and loads specified kernel (with specified kernel options) which loads required modules and starts system processes
-  * Can also interrupt boot to pass overriding kernel parameters e.groot=/dev/hda2 +  * LILO is a 2-stage program 
-  LILO uses /etc/lilo.conf. GRUB uses /boot/grub/menu.lst or /boot/grub/grub.conf +    * First stage is in 512-byte MBR or in the boot sector of a partition (if it is a secondary boot loader). 
 +    * Second stage is in /boot/boot.b . 
 +    * Map file locating kernel is in /boot/map 
 +    //lilo// command reads /etc/lilo.conf which contains kernel image locations, kernel options, the default boot disk etcIt encodes this information along with physical disk information and writes it into the boot files (MBR/boot-sector, boot.b and map). 
 +  * GRUB is a multi-stage boot loader, more flexible than LILO. 
 +    * Changes take effect immediately. 
 +    * (hd0,1) -> 2nd partition on the 1st hard disk. Refers only to the order of the disks as seen by the BIOS so order may change if BIOS boot order is changed. 
 +    * //grub-install// writes to MBR/boot sectorUses/boot/grub/device.map to map BIOS drives to Linux devices e.g. "(hd0)   /dev/sda"
 +    * Grub command-line expects a specific order of commands to boot kernel <code>grub> root (hd0,0) 
 +grub> kernel /vmlinuz-2.4.18-14 ro root=/dev/hda2 
 +grub> initrd /initrd-2.4.18-14.img  [optional] 
 +grub> boot</code>
  
 === 102.3 Manage shared libraries (LCN-5 CTL-2) === === 102.3 Manage shared libraries (LCN-5 CTL-2) ===
Line 133: Line 143:
   * Load shared libraries   * Load shared libraries
   * Terms: ldd, ldconfig, /etc/ld.so.conf, LD_LIBRARY_PATH   * Terms: ldd, ldconfig, /etc/ld.so.conf, LD_LIBRARY_PATH
 +
 +==Notes==
 +  * Most programs on Linux use common system libraries.
 +  * These can be statically linked into the program at compile-time - more disk, more memory, slower.
 +  * Or can be dynamically loaded at runtime (shared libraries) - shared memory, smaller disksize, faster.
 +  * //ldd// can be used to display required shared libraries for an executable
 +  * Dynamically linked executables are examined at runtime by the shared object dynamic linker, //ld.so//
 +  * //ldconfig// reloads shared library paths from /etc/ld.so.conf to update binary cache /etc/ld.so.cache
 +  * $LD_LIBRARY_PATH env variable can also be used
  
 === 102.4 Use Debian package management (LCN-5 CTL-2) === === 102.4 Use Debian package management (LCN-5 CTL-2) ===
Line 139: Line 158:
   * Obtain package information like version, content, dependencies, package integrity and installation status (whether or not the package is installed)   * Obtain package information like version, content, dependencies, package integrity and installation status (whether or not the package is installed)
   * Terms: /etc/apt/sources.list, dpkg, dpkg-reconfigure, apt-get, apt-cache, aptitude   * Terms: /etc/apt/sources.list, dpkg, dpkg-reconfigure, apt-get, apt-cache, aptitude
 +
 +==Notes==
 +  * .deb package names - pkgname_version-revision_arch.deb . version is typically major.minor.patchlevel e.g ncurses4_4.2.3-9_i386.deb
 +  * //dpkg// operates directly on //.deb// packages
 +    * uses /var/lib/dpkg/[available|status] files to store metadata
 +    * -i=install -r=remove --purge=purge
 +    * -E=do not overwrite with same version or older
 +    * -G=do not overwrite with older package version
 +    * -l=list matching installed packages -L=list files from package
 +    * -s=status of package -S=search for file in installed packages
 +  * //apt-get// uses package names and sources and resolves dependencies
 +    * -d=download only -s=simulate -y=assume yes
 +    * install, remove, update (sources), upgrade (all packages), dist-upgrade (to new OS version)
 +    * uses /etc/apt/sources.list. Lines look like <code> deb http://http.us.debian.org/debian stable main contrib non-free</code>
 +  * //dselect// is a menu-based interface to //dpkg//
 +  * //alien// converts other package types to .deb packages (or to rpm with -r) e.g. Slackware/generic tarball, RPM . //alien -i x.rpm//
  
 === 102.5 Use RPM and YUM package management (LCN-5 CTL-2) === === 102.5 Use RPM and YUM package management (LCN-5 CTL-2) ===
Recent changes RSS feed Creative Commons License Donate Minima Template by Wikidesign Driven by DokuWiki