APT

APT: Installing apps in Debian

Intro

APT (Advanced Packaging Tool) can be used to install applications in Debian and has been the default for several years.Installing applications using APT provides:

Aptitude is yet another alternative.

Debian versions

Stable, Testing and Unstable

Debian Name Version Date
Stable Lenny 5.0 14th February 2009
Testing Squeeze - not yet released
Unstable Sid - not yet released

Because it is a bad guy in the movie Toy Story

It becomes Stable and Unstable becomes Testing

Configuration

Syntax in the config files

Default config file is at /etc/apt/sources.list and has the following syntax:

 tipus_deb oritge://lloc.http.org/distribució versió secció_1 secció2 secció_3

On:

Exercici 3.1.a: Explica cadascuna de les següents línies d’aquest fitxer sources.list:

     # See sources.list(5) for more information, especialy
     # Remember that you can only use http, ftp or file URIs
     # CDROMs are managed through the apt-cdrom tool.
     '' Tots els paquets de la branca estable''
     deb http://http.us.debian.org/debian stable main contrib non-free
     '' Paquets que no son legals dins els estats units''
     deb http://non-us.debian.org/debian-non-US stable/non-US main contrib non-free
     ''Actualitzacions de seguretat ''
     deb http://security.debian.org stable/updates main contrib non-free

Exercici 3.1.b: Explica les línies del teu sources.list

debian-gandalf:~# cat /etc/apt/sources.list deb http://ftp.de.debian.org/debian lenny main contrib non-free

Només hi ha els paquets normals per a lenny concretament

Triant un mirror

Debian i Ubuntu copien el seu programari a diferents servidors d’Internet anomenats mirrors.

Exercici 3.2.a: Sols si tens Debian. Quin mirror ha triat netselect-apt?

``` The fastest server seems to be: http://ftp.rediris.es/debian/

Writing sources.list. Done. ```

Primerament, farem una còpia de sources.list:

cp /etc/apt/sources.list /etc/apt/sources.list.copia

Instal·larem el paquet netselect-apt:apt-get install netselect-apt

Farem que automàticament s’actualitze sources.list: netselect-apt

Cal paciència per a que netselect-apt trie el mirror més ràpid.

APT

Els noms dels paquets

Suposem que voleu reviure l’època daurada de l’Atari 2600. Voleu usar APT per a instal·lar un emulador Atari, i després descarregar-vos alguns jocs. Podeu fer el següent:

     apt-cache search atari
     atari-fdisk-cross - Partition editor for Atari (running on non-Atari)
     circuslinux - The clowns are trying to pop balloons to score points!
     madbomber - A Kaboom! clone
     tcs - Character set translator.
     atari800 - Atari emulator for svgalib/X/curses
     stella - Atari 2600 Emulator for X windows
     xmess-x - X binaries for Multi-Emulator Super System

Heu trobat diversos paquets relacionats amb el que estem cercant, junt amb les seves descripcions curtes. Per aconseguir més informació quant a un paquet específic, podem fer el següent:

     apt-cache show stella
     Package: stella
     Priority: extra
     Section: non-free/otherosfs
     Installed-Size: 830
     Maintainer: Tom Lear <tom@trap.mtview.ca.us>
     Architecture: i386
     Version: 1.1-2
     Depends: libc6 (>= 2.1), libstdc++2.10, xlib6g (>= 3.3.5-1)
     Filename: dists/potato/non-free/binary-i386/otherosfs/stella_1.1-2.deb
     Size: 483430
     MD5sum: 11b3e86a41a60fa1c4b334dd96c1d4b5
     Description: Atari 2600 Emulator for X windows
      Stella is a portable emulator of the old Atari 2600 video-game console
      written in C++.  You can play most Atari 2600 games with it.  The latest
      news, code and binaries for Stella can be found at:
      http://www4.ncsu.edu/~bwmott/2600

Comprovació de la versió d’un paquet

Instal·lem el programa

apt-get install apt-show-versions 

Exercici 4.2.a: Quina és la versió instal·lada de bash?

 debian-gandalf:~# apt-show-versions bash
 bash/lenny uptodate 3.2-4

Veure els fitxers d’un paquet

Instal·lem el programa

apt-get install apt-file

Aquest paquet mostra els fitxers que composen un paquet i les seues dependències.

Les accions amb apt-file són:

Exercici 4.3.a: Quants fitxers té el paquet apache2 i les seues dependències?

 debian-gandalf:~# apt-file list apache | wc -l
 4937

Veure les dependències d’un paquet

Exemple:

     # apt-cache depends penguin-command
     penguin-command
       Depends: libc6
       Depends: libpng2
       Depends: libsdl-mixer1.1
       Depends: libsdl1.1
       Depends: zlib1g

Exercici 4.4.a: Quines dependències té el paquet apache2?

 debian-gandalf:~# apt-cache depends apache2
 apache2
 |Depén: apache2-mpm-worker
 |Depén: apache2-mpm-prefork
  Depén: apache2-mpm-event

Desinstal·lació de paquets

Desinstal·lant un paquet, excepte els fitxers de configuració:

apt-get remove paquet

Desinstal·lant un paquet totalment:

apt-get --purge remove paquet

Actualització de paquets

Actualitzar la llista de paquets:

apt-get update

Actualitzar els paquets:

apt-get upgrade

Exercici 4.6.a: Avantatges i inconvenients de fer un apt-get update;apt-get upgrade -y amb cron.

Avantatges:

Inconvenients:

Actualització a una nova versió de la Distribució

Amb aquesta opció podem passar d’una versió de Debian a altra. Per exemple, de stable a unstable.

Primerament, actualitzarem /etc/apt/sources.list i, després:

apt-get dist-upgrade

Exercici 4.7.a: Com quedaria el fitxer sources.list per a passar de Debian Stable a Sid?

     deb http://http.us.debian.org/debian sid main contrib non-free
     deb http://non-us.debian.org/debian-non-US sid/non-US main contrib non-free
     deb http://security.debian.org sid/updates main contrib non-free

Esborrant la memòria cau de paquets

Quan instal·leu un paquet, APT descarregarà els fitxers necessaris des de les màquines llistades al /etc/apt/sources.list, llavors els desa en la memòria cau (cache) en /var/cache/apt/archives/, i des d’allí procedeix a la seva instal·lació.

Per a buidar la cache d’APT

  # apt-get clean

Exercici 4.8.a: Explica avantatges i inconvenients de la instrucció anterior.

Avantatges:

Inconvenients:

dpkg

Instal·lant paquets .deb des del disc dur

Sintaxi:

dpkg -i fitxer.deb

Reconfigurar un paquet

Sintaxi

dpkg-reconfigure paquet

Exercici 5.2.a: Instal·la ssh i tria les opcions per defecte. Modifica la configuració amb dpkg-reconfigure

 debian-gandalf:~# dpkg-reconfigure openssh-server
 Restarting OpenBSD Secure Shell server: sshd.

El procés no te gaire cosa a reconfigurar …

Compilació de paquets: apt-build

Paquets binaris vs paquets compilats per l’usuari

Debian proporciona els paquets per a l’arquitectura pc compilats en format binari per al microprocessador i386. D’aquesta manera, s’assegura la compatibilitat per a tot tipus de CPU, però es desaprofita la potència de càlcul de la CPU, com pot ser l’ús d’instruccions per a multimèdia. Afortunadament, Debian permet a l’usuari descarregar el codi font dels paquets i compilar-lo amb l’arquitectura del seu processador.

Perquè compilar?

Si compilem un programa i l’optimitzem per a la CPU del nostre ordinador, obtindrem un programa més petit i ràpid. Per contra, optimitzar un programa requereix temps i perdrem l’opció d’actualització automàtica.

Exercici 6.2.a:

Si compilem un programa especificament per a les característiques del nostre ordinador, ens assegurem que les instruccions utilitzades són les específiques i ràpides, no les opcions de compatibilitat. Flame!

És un progrorama prou petit i ràpid, no cal més optimització

Es tracta d’un programa molt gran i per tant val la pena, encara que també s’actualitza molt sovint, fent aquesta opció inviable si es disposa d’un ordinador lent

És un programa que no s’actualitza i que fa un ús excessiu de CPU, per tant necessitarem la màxima optimització disponible

Instal·lació d’apt-build

Executarem:

apt-get install apt-build

Triarem les opcions per defecte.

Configuració

Llegeix http://cronopios.net/Traducciones/apt-build.es.html fins el punt “Con los si, se rehace el mundo, también con apt-build”. Tria una màquina virtual amb Debian Etch i386 i configura apt-build per a optimitzar per a una CPU Pentium 3 o Atlon xp amb la màxima optimització.

Nota: Tant Debian com Ubuntu configuren la tarja de xarxa basant-se en la MAC. Quan descomprimiu la màquina virtual, la MAC de la màquina virtual no coincidirà amb la MAC assignada per VirtualBox o VMware. Per a corregir aquest problema:

rm /etc/udev/rules.d/z25_persistent-net.rules
reboot

Exercici 6.4.a: Quines opcions cal posar a /etc/apt/apt-build.conf

 build-dir = /var/cache/apt-build/build
 repository-dir = /var/cache/apt-build/repository
 Olevel = -O2
 mtune = -mtune=pentium3
 options = " "
 make_options = " "

last updated on April 11, 2015, 7:37 p.m.
Back