Child pages
  • Important packages
Skip to end of metadata
Go to start of metadata

Szükséges csomagok

A FreeBSD ports adatbázisában jelenleg 19 ezer csomag található, ezek mindegyikére természetesen nincs szükségünk, s elsőképp érdemes feltelepíteni olyan csomagokat, amelyek megkönnyítik a csomagkezelést – mint folyamatot.

A ports adatbázis kezelése

A FreeBSD csomagkezelése eléggé rendhagyónak tekinthető, mivel alapvetően forrás alapú – vagyis a csomagok nagy részét le kell fordítanunk, ha használni szeretnénk – innen a port név, amely a FreeBSD alaprendszerre portolt alkalmazásokat jelenti. Természetesen létezik szinte az összes ports programnak bináris terjesztése, ezeket is használhatjuk, de a ports alapvetően a forrásból való fordításra készült, minden egyes könyvtárban van egy Makefile, amelyet fel tudunk használni a fordításhoz a klasszikus make használatával:

Parancssor
[root@freebsd:/usr/ports/ports-mgmt/portaudit]$ make
===>  Vulnerability check disabled, database not found
===>  Extracting for portaudit-0.5.12
===>  Patching for portaudit-0.5.12
===>  Configuring for portaudit-0.5.12
===>  Building for portaudit-0.5.12
[root@freebsd:/usr/ports/ports-mgmt/portaudit]$ make install
===>  Installing for portaudit-0.5.12
===>   Generating temporary packing list
===>  Checking if ports-mgmt/portaudit already installed

===>  To check your installed ports for known vulnerabilities now, do:

      /usr/local/sbin/portaudit -Fda

===>   Compressing manual pages for portaudit-0.5.12
===>   Registering installation for portaudit-0.5.12
[root@freebsd:/usr/ports/ports-mgmt/portaudit]$ make clean
===>  Cleaning for portaudit-0.5.12

A művelet nem túl nehéz, de minek szenvedni, amikor használhatjuk erre a portupgrade programot is, amit már feltelepítettünk:

Parancssor
[root@freebsd:/usr/ports/ports-mgmt/portaudit]$ portinstall -i portsearch
--->  Session started at: Fri, 08 Aug 2008 21:44:13 +0200
[Updating the pkgdb <format:bdb_btree> in /var/db/pkg ... - 22 packages found (-1 +1) (...). done]
Install 'ports-mgmt/portsearch'? [yes]
[Gathering depends for ports-mgmt/portsearch  done]
--->  Fresh installation of ports-mgmt/portsearch started at: Fri, 08 Aug 2008 21:44:15 +0200
[...]
--->  Listing the results (+:done / -:ignored / *:skipped / !:failed)
        + ports-mgmt/portsearch
--->  Packages processed: 1 done, 0 ignored, 0 skipped and 0 failed
--->  Session ended at: Fri, 08 Aug 2008 21:44:34 +0200 (consumed 00:00:20)

Gondolom már éppen felmerült a kérdés, hogy mivel tudunk keresni a 19 ezer csomag között... a válasz a portsearch, amely ezen probléma megoldására született, használata egyszerű, bár az első használat eltart egy ideig, ugyanis beindexeli a ports adatbázist:

Parancssor
[root@freebsd:/usr/ports/ports-mgmt/portaudit]$ portsearch -u -vv
Creating store
Previous store does not exist, creating from scratch
==> accessibility/accerciser
==> accessibility/at-poke
[...]
==> x11-wm/xmonad
==> x11-wm/xmonad-contrib

Amíg dolgozik, addig térjünk vissza a make parancs segítségével feltelepített portsaudit programra, amely a feltelepített csomagok biztonsági hibáit figyeli napi rendszerességgel, és erről a napi összefoglaló levélben olvashatunk, amelyet a root felhasználó kap meg az éjjel három órakor induló karbantartási műveletek eredményeképp. A portaudit másik feladata, hogy egy program feltelepítése előtt figyelmeztessen annak - még nem javított - biztonsági hibájára.

Ha a portsearch végzett a csomagok feldolgozásával, akkor nézzük, mire képes (a részletes használati útmutató a program man oldalán):

Parancssor
[root@freebsd:/usr/ports/ports-mgmt/portaudit]$ portsearch -n apache-2.2
Port:   apache-2.2.9
Path:   /usr/ports/www/apache22
Info:   Version 2.2 of Apache web server with prefork MPM.
Maint:  clement@FreeBSD.org
B-deps: autoconf-2.61_2 autoconf-wrapper-20071109 expat-2.0.1 libiconv-1.11_1 libtool-1.5.26 m4-1.4.11,1 perl-5.8.8_1
R-deps: expat-2.0.1 libiconv-1.11_1 perl-5.8.8_1
WWW:    http://httpd.apache.org/

1 ports

A kapott eredmény minden lényeges információt megad, ami zavaró lehet, az a B-deps és az R-deps, amelyek a ports két függőségét mutatja:

  • a B-deps azokat a csomagokat, amelyek a fordításhoz szükségesek
  • az R-deps pedig azokat, amelyek a program futásakor szükségesek

A leglényegesebb dolog mindig a port neve, amely jelen esetben az apache-2.2.9, ezt a nevet megadva tudjuk feltelepíteni.

      
      
Page viewed times
#trackbackRdf ($trackbackUtils.getContentIdentifier($page) $page.title $trackbackUtils.getPingUrl($page))
  • No labels