Distro Way: Diferență între versiuni
Amp (Discuție | contribuții) (→Fonturi: - formatări, reformulări) |
Rz (Discuție | contribuții) m (de impartit in mai multe articole) |
||
(Nu s-a afișat o versiune intermediară efectuată de un alt utilizator) | |||
Linia 1: | Linia 1: | ||
+ | {{format:prea lung}} | ||
GNU/Linux este un sistem de operare deosebit de versatil. E un lucru foarte bun, desigur, dar ca orice lucru foarte bun, are şi părţile lui neplăcute. În cazul nostru este vorba de apariţia unei adevarate "babilonii" de [[distribuţii]], care fac aceleaşi lucruri (de exemplu setarea interfeţei de reţea) în fel şi chip, făcând viaţa administratorilor de sisteme un infern. O să încercăm aici să echivalăm (pe cât este posibil) comenzile necesare pentru configurarea diverselor sisteme bazate pe Linux. | GNU/Linux este un sistem de operare deosebit de versatil. E un lucru foarte bun, desigur, dar ca orice lucru foarte bun, are şi părţile lui neplăcute. În cazul nostru este vorba de apariţia unei adevarate "babilonii" de [[distribuţii]], care fac aceleaşi lucruri (de exemplu setarea interfeţei de reţea) în fel şi chip, făcând viaţa administratorilor de sisteme un infern. O să încercăm aici să echivalăm (pe cât este posibil) comenzile necesare pentru configurarea diverselor sisteme bazate pe Linux. | ||
Linia 853: | Linia 854: | ||
==== Debian ==== | ==== Debian ==== | ||
− | Fontul implicit din Debian este DejaVu care conține toate caracterele necesare. ''msttcorefonts'' NU conține caracterele românești, dar puteți folosi în schimb familia Liberation. Pentru consolă puteți alege între fontul (VGA) și Terminus (este instalat ca dependență a pachetului ''console-setup'' și configurat în loc de VGA). Terminus are și o varianta pentru X în pachetul ''xfonts-terminus'', foarte utilă pentru emulatoare de terminal. | + | Fontul implicit din Debian este DejaVu care conține toate caracterele necesare. ''msttcorefonts'' NU conține caracterele românești, dar puteți folosi în schimb familia Liberation. Pentru consolă puteți alege între fontul clasic (VGA) și Terminus (este instalat ca dependență a pachetului ''console-setup'' și configurat în loc de VGA). Terminus are și o varianta pentru X în pachetul ''xfonts-terminus'', foarte utilă pentru emulatoare de terminal. |
Versiunea curentă din 21 septembrie 2010 17:51
GNU/Linux este un sistem de operare deosebit de versatil. E un lucru foarte bun, desigur, dar ca orice lucru foarte bun, are şi părţile lui neplăcute. În cazul nostru este vorba de apariţia unei adevarate "babilonii" de distribuţii, care fac aceleaşi lucruri (de exemplu setarea interfeţei de reţea) în fel şi chip, făcând viaţa administratorilor de sisteme un infern. O să încercăm aici să echivalăm (pe cât este posibil) comenzile necesare pentru configurarea diverselor sisteme bazate pe Linux.
Cuprins
- 1 Documentaţie
- 2 Manager-ul de pachete
- 3 Configurarea reţelei
- 4 Configurarea modulelor
- 5 Limba română
Documentaţie
Generală
Debian
Cel mai important este manualul de referinţă ce poate fi instalat şi ca pachet (debian-reference). Pentru instalare a se vedea manualul de instalare şi notele de lansare pentru versiunea respectivă. Acestea din urmă sunt foarte importante în cazul unei actualizări de la o versiune la alta.
Slackware / Bluewhite64
Manualul de referinta este Slackware Linux Essentials cu traducerea lui in limba romana pe site-ul Comunitatii Slackware Linux din Romania (versiunea PDF la [1]).
În funcţie de pachet/program
Debian
Documentaţia fiecărui pachet poate fi găsită în /usr/share/doc/nume_pachet. Începeţi cu README.Debian care în general va conţine informaţii specifice Debian. Anumite programe conțin documentaţie foarte mare, caz în care aceasta va fi disponibilă într-un pachet separat cu denumire pachet-doc (ex. postfix-doc). Notă: din motive de licenţe anumite documentaţii sunt disponibile doar în non-free.
Orice program din Debian are o pagină de manual (man). Există pagini (în secţiunea 5) şi pentru fişierele de configurare specifice: interfaces, sources.list, apt.conf, apt_preferences, ...
Slackware / Bluewhite64
Documentatia specifica pachetelor se afla pe calea /usr/doc/nume_pachet iar paginile de manual pe /usr/man. Modificati MANPATH in /etc/profile daca instalati compiland surse de pachete pe cai mai neobisnuite (configure --with-prefix=/usr/local/nume_pachet). Exemplu:
export MANPATH=/usr/local/man:/usr/man:/usr/X11R6/man:/usr/local/squid/man
Manager-ul de pachete
Sistemul de management
Debian
Pentru gestionarea pachetelor este folosit sistemul APT (Advanced Package Tool) prin intermediul a diferite interfeţe. APT poate fi folosit pentru instalarea pachetelor din aproape orice sursă (http/ftp, unitati externe, pseudo-arhive locale) dacă aceasta a fost configurată corect în /etc/apt/sources.list. Dependenţele sunt instalate automat. În versiunea veche (4.0 etch) doar aptitude instalează şi pachetele recomandate, dar începând cu versiunea 5.0 (lenny) aceasta este setarea implicită pentru APT. Pachetele recomandate de un alt pachet sunt considerate necesare în toate instalarile normale.
Diverse configurări pentru sistemul APT se pot face în /etc/apt/apt.conf. Pentru utilizatorii care doresc instalarea unor pachete din versiunea testare sau instabil sau din surse alternative este util si fisierul /etc/apt/preferences unde se pot configura preferinţe pentru versiuni, surse, sau chiar pachete individuale.
Pentru utilizare normală se recomanda aptitude, deşi multă lume încă foloseşte apt-get. Acest program poate fi folosit direct în linie de comandă sau, dacă este pornit fara nici o opţiune, în mod interactiv. (Interfaţa a fost inspirată după mutt.) În partea de sus sunt afişate pachetele pe categorii iar în partea de jos descrierea pachetului selectat. Cu Enter se pot obţine informaţii şi mai detaliate, inclusiv ce pachete depind de acest pachet. Cu + se marchează un pachet pentru instalare (install), cu - pentru dezinstalare (remove) iar cu _ spre dezinstalare şi ştergere fisiere de configurare (purge). u (update) actualizează lista de pachete iar U (dist-upgrade/full-upgrade) pregăteşte o actualizare a tuturor pachetelor ce pot fi actualizate.
În linie de comandă mai există şi acţiunea upgrade (sau safe-upgrade în versiunile mai noi) care nu va actualiza pachete dacă este necesară instalarea sau dezinstalarea altor pachete. Cu tasta g (de la „go”) se poate vedea un sumar al acţiunilor ce vor fi efectuate. în acest moment se pot face modificări sau renunţa cu tasta q. Un al doilea g va efectua modificările cerute. Acţiunile se pot executa şi din meniu, care este accesibil cu Ctrl-t (sau F10).
aptitude (și APT începând cu lenny) păstrează evidența pachetelor instalate doar ca dependenţă pentru un alt pachet (ex. pidgin-data depinde de pidgin). Dacă toate pachetele de care depinde acel pachet au fost dezinstalate atunci şi acel pachet va fi dezinstalat automat. Dacă totuşi doriţi să păstraţi acel pachet puteţi oricănd să îl marcaţi ca şi instalat manual cu m. Pentru marcare ca instalat automat se foloseşte M. (Marcarea ca instalat automat este o metodă foarte bună de a scăpa de pachete inutile).
Alte programe de nivel superior utilizate frecvent sunt apt-get (doar linie de comanda) şi synaptic (grafic).
Instalarea directă a unui singur pachet fără dependenţe se poate face cu dpkg, dar dacă pachetul este disponibil dintr-o sursă dedicată (repository) se recomanda folosirea APT care va transmite toate comenzile necesare pentru dpkg. Pachetele Debian au extensia .deb şi sunt de fapt o arhivă de tip ar.
Gentoo
Sistemul de management al pachetelor se numeşte portage. Este inspirat din ports, întâlnit la sistemele de operare BSD-like. Deosebirea majoră faţă de alte managere este că aplicaţiile sunt instalate în general din surse şi nu din binare. Acest lucru permite un control riguros al capabilităţilor dorite de la aplicaţiile instalate, prin folosirea variabilei USE. Un exemplu destul de comun este eliminarea dependenţelor nedorite faţă de pachete care nu ne sunt necesare. Să luăm cazul postfix (un server SMTP). Acest server are posibilitatea să folosească MySQL pentru tabelele de lookup. Să presupunem că nu ne interesează această capabilitate (sau dimpotrivă, ne interesează). În primul caz vom executa "USE=-mysql emerge postfix", în cel de-al doilea "USE=mysql emerge postfix". Managerul de pachete se va adapta şi ne va genera un postfix care nu are ca dependenţă biblioteca libmysqlclient (în primul caz), fie se va asigura că în sistem există şi libmysqlclient. Cum rezolvă un astfel de caz un manager de pachete care foloseşte pachete gata compilate? Ar fi vreo patru cazuri:
- 1) nu ne oferă deloc opţiunea de MySQL (şi atunci trebuie compilat manual)
- 2) ne obligă să avem suport pentru MySQL, chiar dacă nu avem nevoie de el
- 3) sunt furnizate pachete care să acopere toate cazurile posibile (foarte greu de aplicat în cazul în care există multe opţiuni posibile)
- 4) poate avem norocul ca aplicaţia noastră să fie plug-abilă şi atunci managerul de pachete ne va furniza pachete separate cu fiecare plugin în parte (cum este de exemplu PHP)
Criticii spun că acest sistem de management al pachetelor este foarte lent (ceea ce e şi normal, având în vedere că se compilează fiecare pachet în parte).
RedHat
Programul low-level cu care se face managementul pachetelor la RedHat / CentOS / Fedora este numit rpm. Acesta permite instalarea, ştergerea, actualizarea şi interogarea pachetelor (instalate sau nu) asupra informaţiilor despre acestea. Aceste informaţii se referă între altele la nume (evident :) ), data şi locul unde a fost creat pachetul, spaţiul ocupat, packager, vendor, sursa originală, licenţă, o descriere sumară şi una completă, lista completă a resurselor adaugate in sistem la instalare (provides), a celor necesare pt funcţionare (requires), a fişierelor care vor fi adăugate sistemului şi arhitectura de procesor pe care lucrează. Documentaţia şi fişierele de configurare sînt specificate separat şi pot fi accesate direct utilizînd parametri specifici. Toate fisierele sînt însoţite de o sumă de control (MD5) şi atribute precum proprietar, drepturi de acces şi data creării, ceea ce facilitează verificările de securitate şi detectarea alterărilor. In plus la instalare/dezinstalare/upgrade fişierele de configurare pot fi manipulate diferit atunci cînd se detectează că au fost modificate de către utilizator, evitîndu-se astfel suprascrierea accidentală.
In Redhat Enterprise pînă la versiunea 4 inclusiv, managementul high-level al pachetelor se face cu utilitarul up2date (care are şi un frate grafic, bazat pe Gnome). Acest utilitar este conceput să acceseze reţeaua RHN (RedHat Network) prin care RedHat distribuie informaţii către clienţii săi. In Centos si Fedora, precum şi în Redhat Enterprise Linux incepind cu versiunea 5.0, managementul high-level (in mod text) se face cu yum, a cărui denumire vine de la Yellow Dog Updater, Modified. Pentru mai multe informaţii, recomandăm pagina originară a proiectului, [2]. yum are următoarele funcţii de bază:
- listare pachete (instalate / disponibile în repositories) (comanda list)
- afişarea informaţiilor despre unul sau mai multe pachete (comanda info)
- afişarea informaţiilor referitoare la dependenţe (requires, provides, whatprovides, deplist)
- căutarea unui pachet sau a unui cuvint in descrierea pachetelor şi a elementelor oferite de pachete (asa numitele provides) (comanda search)
- instalarea unuia sau mai multor pachete şi a tuturor dependenţelor sale/lor, inclusiv prin specificarea unui element oferit de către pachet fără a fi necesară cunoaşterea în avans a numelui pachetului. Spre pildă se poate cere instalarea unei anumite biblioteci sau a unui program doar prin specificarea numelui fişierului respectiv, fără a fi nevoie să ştim din ce pachet face parte (comenzile install şi localinstall)
- instalarea/actualizarea/dezinstalarea unui set de pachete grupate într-o unitate funcţională (groupinstall, groupupdate, grouperase). De exemplu yum groupinstall XFCE va aduce si instala toate pachetele necesare funcţionarii window-managerului XFCE
- ştergerea unuia sau mai multor pachete simultan cu a tuturor pachetelor care depind de el[e] (comanda delete)
- upgradarea unuia sau mai multor pachete (comenzile update şi localupdate)
Verificarea sumei de control şi a semnăturii pachetelor se fac automat, în afara cazului că această ultimă verificare este explicit dezactivată.
Pentru yum au fost scrise numeroase plugin-uri care permit diverse operaţii suplimentare, precum:
- alocarea de priorităţi diferitelor repository-uri: atunci cind există surse multiple de unde poate fi adus un pachet, cele provenite din repository-uri cu prioritate mai mare fiind preferate (priorities)
- protejarea pachetelor provenite din distribuţie: nu se permite înlocuirea lor de către pachete cu acelaşi nume provenite din alte repo (protectbase)
- alegerea repository-ului de unde se face cel mai rapid download (fastestmirror)
- yum-merge-conf, plugin care permite contopirea fişierelor de configurare existente cu cele nou instalate (.rpm{save /new}); se poate face diff între fisiere, alegerea unei anume versiuni sau lansarea unui shell pentru modificari mai ample
- installonlyn - limitează numărul maxim de kernele care pot coexista la un moment dat la n; implicit se păstrează cele mai recente două versiuni
- yum-changelog - permite vizualizarea Changelog-ului înainte/după update
- yum-plugin-kmdl - încearcă să menţină sincronizarea între pachetele kernel şi modulele de kernel suplimentare instalate din alte repo
- yum-protect-packages protejează de suprascriere anumite pachete importante. Implicit este vorba despre rpm, python, yum, glibc dar se pot adăuga şi altele
- yum-security filtrează pachetele, alegînd şi instalînd doar cele marcate ca fiind update-uri care rezolvă probleme de securitate. Scopul este limitarea numărului de modificări la doar cele esenţiale, pentru a evita astfel eventuale probleme şi instabilităţi
Pentru cei care preferă metode grafice de administrare există
- system-config-packages (cunoscut si ca pirut -- se pronunţa ca şi pirate - în RHEL5, Centos 5 şi versiunile noi de Fedora) -- inclus în distribuţie
- kyum -- disponibil în Fedora EPEL pt RHEL 5/ Centos 5 şi în Fedora Everything
- yumex -- disponibil în Centos Extras pentru RHEL 4 / Centos 4, Fedora EPEL pt RHEL 5/ Centos 5 şi respectiv în Fedora Everything
Menţinerea permanentă de către rpm a unei baze de date (în format BerkeleyDB) cu informaţii complete asupra pachetelor instalate face ca managementul să fie foarte eficient. yum este scris în cea mai mare parte în python, ceea ce ii oferă o mare flexibilitate, dar pînă de curînd viteza cu care se rezolvau dependenţele nu era punctul lui forte (punctul forte era funcţionarea în arhitecturi multi-lib aka mixte 32/64 de biţi). Depsolverul a fost însă rescris iar viteza sa actuală a devenit cu mult mai bună decît era in trecut.
Slackware / Bluewhite64
Pachetele Slackware / Bluewhite64 cuprind aplicaţii binare arhivate tar şi compresate gzip. Ele au extensia .tgz şi se manipulează cu:
- 1) pkgtool - este un program bazat pe meniuri dialog cu o interfaţă intuitivă care permite instalarea, dezinstalarea sau listarea fişierelor unui pachet, precum şi vizualizarea unei scurte descrieri a acestuia
- 2) installpkg - utilitar în linie de comandă care permite instalarea pachetelor noi. Apelat fără nici o opţiune, un pachet instalat anterior va fi suprascris fără atenţionare. Opţiunea -warn vine în ajutor listând fişierele care urmează a fi suprascrise, corespunzator cu pachetul respectiv.
- 3) upgradepkg - asemănător lui installpkg cu diferenţa că dezinstalează mai întâi pachetul vechi după care îl instalează pe cel nou
- 4) explodepkg - extrage conţinutul unui pachet în directorul curent. Este echivalent cu tar -zxf nume_pachet şi este util pentru examinarea fişierelor înainte de instalare
- 5) makepkg - împachetează conţinutul directorului curent în format .tgz
- 6) rpm2tgz şi rpm2targz - utile pentru transformarea pachetelor RPM în pachete native .tgz. Aceste comenzi, dacă sunt combinate cu explode, aduc informaţii despre fişierele conţinute în pachetul RPM
Utilitarele folosesc o bază de date cu înregistrări text pe calea /var/log/packages (pentru pachete instalate) sau /var/log/removed_packages (pentru cele dezinstalate).
Ce e bine să ştiţi:
- 1) Instalarea pachetelor se face orb, fără a se ţine seama de dependenţe şi versiuni de biblioteci. Folosiţi doar pachetele corespunzatoare distributiei! Versiunea o puteţi afla cu:
cat /etc/slackware-version cat /etc/bluewhite64-version
- 2) Actualizarea pachetelor presupune reinstalarea acestora, nu şi a bibliotecilor de care depind.
- 3) Folosiţi -warn înainte de instalare sau --dry-run înainte de actualizare. Faceţi backup mai ales pachetelor venite pe distribuţii vechi, care se găsesc mai greu azi.
Mai multe informaţii găsiţi la http://www.slackware.com.ro/carte/package-management-package-utilities.html.
Repository
O distribuţie vine în general cu o colecţie destul de largă de aplicaţii, care pot fi furnizate pe suport CD (odată cu distribuţia), repository-uri oficiale şi repository-uri de la terţe persoane (aşa numitele 3-rd party). În cele mai multe cazuri repository-urile aflate în Internet sunt disponibile şi pe mirror-uri locale (pentru un acces mai rapid la ele). Majoritatea distribuţiilor permit alegerea explicită a mirror-ului de unde vrem să se descarce pachetele când instalăm vre-un program.
Debian
Arhiva Debian conţine în orice moment 4 versiuni Debian:
- 1) unstable conţine pachetele considerate bune pentru următoarea distribuţie. Dacă nu sunt raportate probleme majore în decurs de 10 zile (sau nu au probleme de dependenţe) acestea vor migra automat în testing. unstable nu este recomandat decât experţilor, dar conţine cele mai noi pachete.
- 2) testing este viitoarea versiune stabilă. Acesta porneşte ca o copie a versiunii stabile şi evoluează pe măsură ce pachete mai noi migrează din unstable. Deşi are suport de securitate nu este recomandat pentru producţie (decât eventual ca desktop) deoarece poate avea probleme de stabilitate şi necesită mai mult efort în administrare/actualizare.
- 3) stable' este versiunea stabilă curentă. Aceasta are suport de securitate (prin intermediul arhivei dedicate de securitate) şi este recomandată pentru sistemele de producţie. O versiune stabilă este lansată o dată la aproximativ 1.5 ani şi nu va primi decăt actualizări de securitate sau pentru probleme foarte serioase (din arhiva proposed-updates sau din arhiva principala la „point-release” (r1, r2, ...). Din acest motiv nu va conţine cele mai noi versiuni de programe. Pentru acele pachete care necesită actualizări frecvente (ex. definiţii pentru programe antivirus) este folosită arhiva volatile.
- 4) oldstable conţine versiunea stabilă precedentă. Aceasta are suport de securitate încă un an după lansarea noii versiuni stabile. Totuşi se recomandă actualizarea la versiunea stabilă. Debian suportă actualizări între versiuni prin sistemul APT (fără reinstalare).
Cele patru versiuni au nume de cod ce pot fi folosite şi în fişierele de configurare. În acest moment (Jul. 2009) oldstable este etch, stable este lenny iar testing este squeeze. Numele sunt inspirate după personaje din filmul Toy Story. unstable este întotdeauna sid, copilul din vecini care strică jucării :)
În anumite cazuri dezvoltatorii Debian vor încărca pachete în experimental pentru a fi testate de o audienţă mai largă. Aceste pachete nu sunt considerate suficient de bune pentru unstable aşa că folosiţi cu grijă!
Arhiva Debian este în acelaşi timp împărţită şi în 3 „componente”, după cât de libere sunt pachetele:
- 1) main conţine doar pachete libere, mai exact a căror licenţă a fost considerată compatibilă cu principiile Debian - DFSG (ex. GPL)
- 2) contrib conţine pachete libere, dar care depind de pachete sau componente mai puţin libere (ex. din non-free).
- 3) non-free conţine pachete pentru care este permisă redistribuirea de către Debian, dar au alte restricţii care le face incompatibile cu DFSG (ex. nu oferă codul sursă, nu pot fi folosite decât în mediu educaţional, etc.).
Un exemplu de linii de surse /etc/apt/sources.list pentru pachete binare şi pachete sursă pentru versiunea etch, toate trei componentele (main, contrib și non-free) folosind metoda http pentru a accesa mirror-ul principal din România:
deb http://ftp.ro.debian.org/debian etch main contrib non-free deb-src http://ftp.ro.debian.org/debian etch main contrib non-free
Arhiva de securitate se poate folosi cu următoarea linie:
deb http://security.debian.org/ etch/updates main contrib non-free
Aceasta n-ar trebui să lipsească din nici o instalare Debian stable (testing are propria arhiva de securitate)!
Pentru adaugarea CD/DVD-urilor de tipul celor de instalare (sau imagini ISO montate în mod loop) în sources.list trebuie folosit programul apt-cdrom.
Arhive neoficiale:
- www.backports.org conţine pachete din testing recompilate pentru stable. A se folosi dacă pe un sistem stabil sunt necesare anumite pachete mai noi.
- www.debian-multimedia.org conţine în general pachete multimedia care nu pot fi redistribuite de Debian nici măcar în non-free (ex. mplayer, mencoder, acroread, libdvdcss2, ...)
Gentoo
La sistemele Gentoo-based există două tipuri de repository-uri:
- 1) tree-ul portage, care conţine informaţii generale (metadata) legate de pachete (cum ar fi dependenţe, patch-uri, locul de unde poate fi descărcat codul sursă, etc)
- 2) distfiles (care sunt sursele propriu-zise)
Ambele repository-uri se configurează modificând corespunzător fişierul /etc/make.conf:
SYNC="rsync://rsync.ro.gentoo.org/gentoo-portage" GENTOO_MIRRORS="http://gentoo.mirrors.lug.ro/gentoo"
Centos
Se recomanda cu multa caldura (a se intelege ca este obligatorie) parcurgerea documentatiei de aici
Slackware / Bluewhite64
Deoarece distributia nu contine instrumente pentru rezolvarea automata a dependentelor si nu pune la dispozitie un sistem automat pentru descarcarea si instalarea acestora, aplicatii terte vin sa completeze aceste lipsuri. Ele sunt impartite in:
- 1) Instrumente bazate pe repozitorii dar care nu satisfac dependente (repository-based tools)
slackpkg - inclus pe al doilea CD al distributiei incepand cu versiunea 9.1, este un instrument automat pentru managementul pachetelor. Poate instala si actualiza pachete prin retea din repozitorii oficiale Slackware.
- 2) Instrumente care satisfac dependente
swaret - ca si slakpkg, este o aplicatie care cauta, instaleaza si actualizeaza pachete prin retea. Poate cauta in repozitorii terte cum ar fi LinuxPackages.net si e capabila sa-si instaleze automat bibliotecile dependente.
slapt-get si versiunea GTK gslapt - aplicatie care incearca sa emuleze apt-get folosind instrumentele native Slackware (installpkg, upgradepkg, removepkg).
- 3) Instrumente bazate pe Portage
portpkg - este o aplicatie similara cu emerge pe sistemele Gentoo - descarca si compileaza sursele unui program, apoi il instaleaza, bazandu-se pe informatiile continute in asa numitele ports tree. In mod traditional, adaugati programe pe un sistem Slackware, fie instaland un pachet gata facut, fie generati codul binar compiland sursele acestora in mod manual. In timp ce prima metoda ar putea sa nu va satisfaca, a doua ofera un deplin control asupra codului rezultat prin aceea ca puteti alege exact optiunile de compilare dorite. Portpkg este undeva la mijloc: are o interfata asemanatoare cu installpkg si in acelasi timp, un sistem de scripturi pe care sistemul le foloseste la compilare si care va ofera mai mult control.
Sincronizare
Unele distribuţii au nevoie de o actualizare periodică a arborelui cu metadate, pentru reîmprospătarea informaţiilor la aplicaţiile nou introduse în repository, update-uri, etc.
Debian
aptitude update
Uneori această comandă trebuie rulată de mai multe ori consecutiv. În mod interactiv se foloseşte tasta „u” (mic).
Gentoo
emerge -v --sync
RedHat Enterprise >=5, Centos, Fedora
Implicit actualizarea metadatelor se face automat la fiecare rulare a lui yum. Se poate forta rularea numai din cache-ul local folosind un parametru specific in linia de comandă.
Actualizarea sistemului
Debian
aptitude update && aptitude safe-upgrade
Pentru actualizarea la o versiune nouă Debian sau în cazul în care se foloseşte versiunea testing sau unstable ar putea fi nevoie de full-upgrade. În versiuni mai vechi aceste comenzi se numeau upgrade respectiv dist-upgrade.
Gentoo
emerge -v --sync && emerge -D --newuse world && etc-update
Cu etc-update se corectează eventualele incompatibilităţi în fişierele de configurare între diferitele versiuni ale unui anumit pachet.
RedHat Enterprise anterior versiunii 5
up2date -u
RedHat Enterprise 5, Centos, Fedora
yum update
Căutare
Debian
aptitude foloseşte căutare inspirată după mutt. Se poate căuta după numele pachetului (chiar şi parţial)
aptitude search nume_pachet
sau în diverse alte câmpuri, ex.
aptitude search !~i~dfoo
va căuta „foo” în descrierea pachetelor care nu sunt instalate.
În mod interactiv „/” este folosit pentru căutare şi „l” pentru „limitarea” afişării după criteriile specificate. Cele două se pot combina.
dpkg poate afişa pachetele instalate (opţiunea -l), toate sau după nume (doar întreg sau regex). Pentru căutarea pachetului care conţine un anumit fişier sau afişarea fişierelor conţinute într-un pachet se foloseşte apt-file (nu este instalat implicit și necesită un update înainte de folosire).
Pentru fişiere existente în sistem sau pachete deja instalate dpkg (opţiunile -S respectiv -L) va fi mai rapid.
Gentoo
La căutare se poate folosi doar un fragment din numele programului. De exemplu:
emerge -s postfix
va returna:
* mail-mta/postfix Latest version available: 2.4.6-r1 Latest version installed: 2.4.6-r1 Size of files: 2,878 kB Homepage: http://www.postfix.org/ Description: A fast and secure drop-in replacement for sendmail. License: IPL-1 * sec-policy/selinux-postfix Latest version available: 20070928 Latest version installed: [ Not Installed ] Size of files: 415 kB Homepage: http://www.gentoo.org/proj/en/hardened/selinux/ Description: SELinux policy for postfix License: GPL-2 * www-apps/postfixadmin Latest version available: 2.1.0 Latest version installed: [ Not Installed ] Size of files: 156 kB Homepage: http://high5.net/postfixadmin/ Description: Postfix Admin is a Web Based Management tool for Postfix [...] License: MPL-1.1
RedHat Enterprise 5, Centos, Fedora
Căutarea propriu-zisă se face cu
yum search <regex>
Se pot face căutari după
- numele unui fisier
- numele unui pachet
- un sir de caractere inclus in descrierile pachetelor
- o anume dependentă
De pildă:
$yum search postfix
va returna
postfix.x86_64 : Postfix Mail Transport Agent pfqueue.i386 : Queue manager for the Postfix/Exim Mail Transport Agents postfix.i386 : Postfix Mail Transport Agent tinyca2.noarch : Simple graphical userinterface to manage a small CA sqlgrey.noarch : Postfix grey-listing policy service postgrey.noarch : Postfix Greylisting Policy Server postfix-pflogsumm.x86_64 : A Log Summarizer/Analyzer for the Postfix MTA pfqueue.x86_64 : Queue manager for the Postfix/Exim Mail Transport Agents mailgraph.noarch : A RRDtool frontend for Mail statistics queuegraph-selinux.noarch : A RRDtool frontend for Mail statistics postfix-pflogsumm.x86_64 : A Log Summarizer/Analyzer for the Postfix MTA mailgraph.noarch : A RRDtool frontend for Mail statistics pop-before-smtp.noarch : Watch log for POP/IMAP auth, notify MTA to allow relay queuegraph.noarch : A RRDtool frontend for Mail statistics postfix.x86_64 : Postfix Mail Transport Agent libnss-mysql.x86_64 : NSS library for MySQL libnss-mysql.i386 : NSS library for MySQL spamassassin.x86_64 : Spam filter for email which can be invoked from mail delivery agents.
pe cind
$ yum provides MTA
va lista toate pachetele urmare instalarii carora devine disponibil serviciul virtual MTA:
postfix.x86_64 : Postfix Mail Transport Agent ssmtp.x86_64 : Extremely simple MTA to get mail off the system to a Mailhub sendmail.x86_64 : A widely used Mail Transport Agent (MTA) exim.x86_64 : The exim mail transfer agent sendmail.i386 : A widely used Mail Transport Agent (MTA) sendmail.x86_64 : A widely used Mail Transport Agent (MTA) postfix.i386 : Postfix Mail Transport Agent postfix.x86_64 : Postfix Mail Transport Agent sendmail.x86_64 : A widely used Mail Transport Agent (MTA)
Daca dorim o anume biblioteca (de pilda libgcc.so) al carei nume il banuim fara a-l sti exact putem folosi:
$ yum provides libgcc\* livna 100% |=========================| 2.1 kB 00:00 fedora 100% |=========================| 2.1 kB 00:00 updates 100% |=========================| 2.3 kB 00:00 filelists.sqlite.bz2 100% |=========================| 77 kB 00:00 libgcc.i386 : GCC version 4.1 shared support library libgcc.x86_64 : GCC version 4.1 shared support library gc.i386 : C++ Garbage Collector gc.x86_64 : C++ Garbage Collector openoffice.org-core.x86_64 : Core modules for openoffice.org openoffice.org-core.x86_64 : Core modules for openoffice.org gc.i386 : A garbage collector for C and C++ libgcc.i386 : GCC version 4.1 shared support library libgcc.x86_64 : GCC version 4.1 shared support library gc.x86_64 : A garbage collector for C and C++ libgcc.i386 : GCC version 4.1 shared support library AdobeReader_enu.i486 : Adobe Reader for Linux. An application that can view, navigate and print PDF documents. libgcc.x86_64 : GCC version 4.1 shared support library
Cu ocazia asta am aflat si ca Adobe Reader vine cu propria varianta a bibliotecii libgcc. Ca orice aplicatie comerciala care se respecta, distribuita in format binar si compilata static.
Sufixul x86_64 atrage atenţia ca pachetul respectiv este compilat pentru arhitecturi pe 64 de biţi. Comanda yum info ne va da detalii despre pachetele de interes. Continuind cu exemplul postfix:
$ yum info postfix livna 100% |=========================| 2.1 kB 00:00 fedora 100% |=========================| 2.1 kB 00:00 updates 100% |=========================| 2.3 kB 00:00 Available Packages Name : postfix Arch : i386 Epoch : 2 Version: 2.4.5 Release: 2.fc7 Size : 3.6 M Repo : updates Summary: Postfix Mail Transport Agent Description: Postfix is a Mail Transport Agent (MTA), supporting LDAP, SMTP AUTH (SASL),TLS Name : postfix Arch : x86_64 Epoch : 2 Version: 2.4.5 Release: 2.fc7 Size : 3.8 M Repo : updates Summary: Postfix Mail Transport Agent Description: Postfix is a Mail Transport Agent (MTA), supporting LDAP, SMTP AUTH (SASL),TLS
Instalare
Debian
aptitude install NUME_PACHET
Dacă trebuie instalate dependenţe acestea vor fi afişate şi se va cere confirmare.
În modul interactiv se apasă + pentru a marca un pachet pentru instalare.
Gentoo
Sintaxa generală este:
emerge NUME_PROGRAM
În cazul în care apare vreo dependenţă nerezolvată, emerge va instala toate pachetele de care are nevoie sau le va actualiza pe cele care sunt prea vechi pentru a putea fi folosite.
Slackware / Bluewhite64
installpkg postfix-2.3.3-i486-1kjz.tgz
Slackware nu rezolva dependente. Asigurati-va ca pachetul este precompilat pentru versiunea corecta si ca aveti instalate toate bibliotecile:
cat /etc/slackware-version ldd $(which postfix)|grep "not found" libpq.so.4 => not found
Actualizare
Debian
aptitude safe-upgrade
va actualiza toate pachetele care au versiuni mai noi. Dacă actualizarea necesită dezinstalarea altor pachete atunci trebuie folosit full-upgrade, dar aceste situaţii nu pot apărea decăt la actualizarea la o versiune nouă Debian sau cănd se folosesc versiunile testing şi unstable. În versiunile mai vechi de aptitude aceste comenzi se numeau upgrade respectiv dist-upgrade.
În mod interactiv tasta „U” (Shift-u) pregăteşte un full-upgrade. Actualizarea unui singur pachet fără dependenţe şi din alte surse decât arhive APT (ex. compilate local) se poate face cu funcţia de instalare (-i) a dpkg.
Gentoo
Actualizarea unui pachet în Gentoo se rezumă la reinstalarea acestuia. emerge va instala noul pachet PESTE cel vechi, după care va şterge fişierele din vechiul pachet a căror timestamp corespunde cu ce informaţii despre vechiul pachet are portage în metadate. De exemplu:
emerge postfix
va suprascrie "/usr/sbin/postfix", care din acest moment are un timestamp mai nou decat ce ştie vechea versiune despre acesta (şi din acest motiv va considera că nu-i aparţine, prin urmare nu-l va şterge la uninstall).
Dezinstalare
Debian
Există două feluri de dezinstalare. remove va dezinstala pachetul dar va păstra fişierele de configurare. purge va şterge inclusiv fişierele de configurare conţinute în pachet. Tastele pentru modul interactiv sunt „-” (minus) respectiv „_” (underscore). În versiunea stabilă curentă (4.0 etch) doar aptitude va dezinstala şi dependenţele care nu mai sunt necesare.
Gentoo
Atenţie, dezinstalarea din Gentoo nu ţine cont de dependenţe. Dacă aveţi un postfix cu suport mysql şi dezinstalaţi mysql sistemul NU VA EMITE NICI UN AVERTISMENT legat de dependenţe. Bineinţeles că postfix va înceta să mai funcţioneze. Sintaxa este:
emerge --unmerge NUME_PROGRAM
RedHat Enterprise >= 5, Centos, Fedora
yum remove NUME_PACHET
Dacă pachetul respectiv este necesar altor pachete din sistem, acestea vor fi si ele propuse automat pentru stergere. Stergerea se poate face si direct cu utilitarul rpm:
rpm -e NUME_PACHET
In acest caz, dacă pachetul respectiv este necesar altor pachete din sistem, acestea vor fi listate iar stergerea este abortata. Cu un parametru special (cititi documentatia ca sa aflati care) puteti forta stergerea, inhibind procesarea dependentelor. Utilizind un alt parametru se poate face o dezinstalare a unui pachet pastrind insa toate fisierele acestuia sub forma de rpm, iar la nevoie acest pachet poate fi reinstalat. Atentie insa, nu se pastreaza informatiile de control ale pachetului initial.
Slackware / Bluewhite64
removepkg postfix
sau
removepkg /var/log/packages/postfix-2.3.3-i486-1kjz
Fisierele de configurare de pe calea "/etc/postfix/" nu vor fi sterse. Daca vreti o dezinstalare curata, stergeti-le manual. La fel daca doriti o reinstalare curata; installpkg nu le va suprascrie.
Cui aparţine acest fişier?
Întrebare grea, mai ales dacă trebuie să afli această informaţie de la un sistem pe care nu-l cunoşti.
Debian
dpkg -S fişier
pentru fişiere din pachete instalate sau
apt-file update && apt-file search fişier
pentru pachete din arhive. apt-file nu este instalat implicit.
Gentoo
E nevoie de un pachet special, numit gentoolkit. După ce îl instalaţi, rulaţi comanda de mai jos:
equery b /usr/sbin/postfix
RedHat
rpm -qf /nume/fisier
Repararea sistemului
În cazul în care ai actualizat/şters anumite pachete/fişiere sistemul poate deveni instabil. Cele mai multe distribuţii pun la dispoziţie diverse utilitare de reparare a sistemului.
Debian
Sistemul APT este foarte robust şi probleme pot apărea doar dacă sunt s-a defectat sistemul de fişiere. O instalare întreruptă se poate continua cu
aptitude install
APT menţine în /var/cache/apt/archives o copie a tuturor pachetelor descărcate. Dacă duceţi lipsă de spaţiu puteţi folosi acţiunea autoclean pentru a şterge pachetele care nu mai sunt dispibile în nici o sursă sau clean pentru a şterge toate pachetele.
Gentoo
revdep-rebuild [-p]
Va căuta dacă există fiecare bibliotecă de care are nevoie fiecare binar în parte şi dacă este versiunea de care are nevoie. În caz contrar, face o listă cu toate pachetele care trebuiesc recompilate pentru a restabili integritatea sistemului. Fără parametrul -p le şi recompilează, nu se rezumă doar la afişearea listei. Deoarece verifică fiecare binar în parte, poate dura destul de mult o astfel de inspectare a sistemului.
Alte utilitare pentru restabilirea integrităţii sistemului, în cazul actualizării pachetului python, respectiv perl:
python-updater perl-cleaner
Configurarea reţelei
Setarea "ad-hoc" a parametrilor
Probabil comună oricarei distribuţii Linux (old way):
ifconfig eth0 192.168.0.1 netmask 255.255.255.0 route add default gw 192.168.0.254 echo "nameserver 80.23.32.1" >> /etc/resolv.conf
Unde:
- - eth0 este numele interfeţei de reţea
- - 192.168.0.1 este IP-ul maşinii pe care o configurăm
- - 192.168.0.254 este default gateway-ul
- - 80.23.32.1 este serverul de nume
O metodă mai nouă este folosirea comenzii ip din pachetul iproute2. Cu această comandă se pot gestiona mai bine adresele IP, deoarece permite adaugarea/ştergerea de adrese IP pe/de pe o interfaţă fără a mai folosi alias-uri (eth0:alias).
De exemplu:
ip address add 192.168.15.1/24 dev eth0 ip address del 192.168.15.1/24 dev eth0 ip route add default via 192.168.15.254
În plus, ip mai permite managementul tabelei ARP ('ip neighbor'), managementul tunelelor IP-IP sau GRE ('ip tunnel'), managementul de "rules" pentru folosirea de tabele de routing multiple ('ip rule'), etc. Mai multe informaţii despre ip aici:, sau Google.
Atenţie, exemplele sunt arbitrare.
Configurarea persistentă
Debian
Pentru configurare reţelei se foloseşte fişierul /etc/network/interfaces cu o sintaxa de felul următor:
auto eth0 iface eth0 inet static address 192.168.0.1 netmask 255.255.255.0 gateway 192.168.0.254
Pentru mai multe detalii vedeţi pagina de manual interfaces(5). Nameservere se pot introduce în /etc/resolv.conf dar se poate instala şi pachetul resolvconf care va gestiona fişierul respectiv. Pentru activarea sau dezactivarea unei interfeţe se folosesc ifup respectiv ifdown.
Gentoo
Fişierul de configurare pentru reţea este /etc/conf.d/net Sintaxa este următoarea:
config_eth0=( "192.168.0.1 netmask 255.255.255.0" ) routes_eth0=( "default via 192.168.0.254" )
Nameserver-ele se introduc în /etc/resolv.conf
Dacă în sistem există o placă de reţea şi nu doriţi să o folosiţi, introduceţi
config_eth1=( "null" )
În caz contrar există riscul să i se aloce un IP prin DHCP.
Exemplu pentru o placă wireless (chipset ATHEROS), cu wpa_supplicant:
modules=( "wpa_supplicant" ) wpa_supplicant_ath0="-Dmadwifi" iwconfig_ath0="mode managed freq 2.412G rate auto rts 250 frag 512 txpower 18" config_ath0=( "192.168.0.1 netmask 255.255.255.0" ) routes_ath0=( "default via 192.168.0.254" )
Crearea unui bridge (util pentru utilizarea cu un virtualbox):
config_eth0=( "null" ) tuntap_tap0="tap" config_tap0=( "null" ) tunctl_tap0="-u serghei" bridge_br0="eth0 tap0" config_br0=( "10.0.2.2/24" ) RC_NEED_br0="net.eth0 net.tap0" brctl_br0=( "setfd 0" "sethello 0" "stp off" ) routes_br0=( "default gw 192.168.0.254" )
În Gentoo interfeţele de reţea sunt "ridicate" ca nişte servicii. De exemplu pentru eth0 trebuie creat un symlink la /etc/init.d/net.lo, după care trebuie adăugat net.eth0 în lista de servicii pornite la boot.
ln -s net.lo /etc/init.d/net.eth0 rc-update add net.eth0 default
Dacă aţi modificat parametri unei interfeţe de reţea (în /etc/conf.d/net), o reîncărcaţi executând:
/etc/init.d/net.eth0 restart
RedHat
Mare parte din fişierele de configurare pentru reţea se găsesc în /etc/sysconfig/network-scripts. Setările plăcilor de reţea sunt în /etc/sysconfig/network-scripts/ifcfg-ethN. Sintaxa este intuitivă:
IPADDR=192.168.0.1 NETMASK=255.255.255.0 HWADDR=00:11:22:33:44:55
Atenţie, trebuie specificate corect adresele de Network si Broadcast (vezi Subnetting [3]). Parametrul HWADDR specifică MAC-ul plăcii de reţea respective, pentru cazul în care există în sistem mai multe plăci de reţea ce folosesc acelaşi driver. Atenţie şi aici, identificarea plăcilor pe baza HWADDR nu functionează prea bine. Pentru mai multe info, Google.
După modificarea acestor fişiere, se reporneşte tot subsistemul de reţea cu comanda service network restart sau /etc/init.d/network restart (cele două variante sunt echivalente).
Hint: de obicei, gateway-ul este păstrat în /etc/sysconfig/network dar poate fi specificat şi în /etc/sysconfig/network-scripts/ifcfg-ethN.
Hint: în /etc/sysconfig/network-scripts/ifcfg-ethN se pot specifica numeroase alte opţiuni, recomandăm citirea documentaţiei
Setările firewall-ului sunt păstrate în /etc/sysconfig/iptables. Nu se recomandă editarea manuală a acestui fişier ci utilizarea comenzilor iptables-save (sau service iptables save ori /etc/init.d/iptables save ) pentru a salva starea curenta a firewall-ului şi respectiv iptables-restore (sinonime fiind service iptables start si /etc/init.d/iptables start) pentru pornirea firewall-ului (citind configuratia de pe disc); se recomandă construirea manuală a firewall-ului cu comenzi iptables, apoi salvarea regulilor cu comanda service iptables save. Oprirea firewall-ului se poate face cu
- service iptables stop (sinonim: /etc/init.d/iptables stop) pentru opriri normale ( toate regulile şi chain-urile utilizator sint şterse, modulele specifice iptables sînt eliminate din memorie, policy-ul devine ACCEPT pentru toate chain-urile implicite) sau cu
- service iptables panic (sinonim: /etc/init.d/iptables panic) pentru cazul în care doriţi o revenire de urgenţă la o stare sigura: toate policy-urile devin REJECT, comunicaţia prin reţea a sistemului cu restul lumii fiind total întreruptă.
Pentru afisarea stării curente exista service iptables status (sinonim: '/etc/init.d/iptables status). Parametri suplimentari pentru iptables se pot specifica în /etc/sysconfig/iptables-config
Slackware / Bluewhite64
netconfig este un script interactiv care detecteaza si configureaza interfetele de retea. Rulati-l si urmati pasii de acolo daca aveti nevoie de o configuratie minima. Atentie, va suprascrie fisierele /etc/rc.d/rc.inet1.conf si /etc/resolv.conf. Daca netconfig nu da rezultate sau daca nu va multumeste, veti fi nevoiti sa editati fisierele de configurare.
Modulele le gasiti in /etc/rc.d/rc.modules. Slackware va uita in acest fisier si va incarca pe kernel orice va gasi acolo. Trebuie doar sa inlaturati comentariul pentru dispozitivul respectiv.
Fisierele de configurare pentru retea sunt /etc/rc.d/rc.inet1 si /etc/rc.d/rc.inet2. Primul configureaza parametrii retelei citind /etc/rc.d/rc.inet1.conf, al doilea porneste diverse servicii (inetd, NFS, bind, ssh, etc). Daca folositi mai mult de 6 interfete modificati MAXNICS in /etc/rc.d/rc.inet1.
Iata un exemplu de configurare pentru rc.inet1.conf:
# Config information for eth0: IPADDR[0]="10.75.16.251" NETMASK[0]="255.255.255.0" USE_DHCP[0]="" DHCP_HOSTNAME[0]="" # Config information for eth1: IPADDR[1]="" NETMASK[1]="" USE_DHCP[1]="yes" DHCP_HOSTNAME[1]="" # Config information for test interface: IFNAME[8]="eth0:test" IPADDR[8]="10.75.17.251" NETMASK[8]="255.255.255.0" USE_DHCP[8]="" DHCP_HOSTNAME[8]="" # Default gateway IP address: GATEWAY="10.75.16.254"
Daca USE_DHCP[interface] este "yes", celelalte setari sunt ignorate. Daca nu doriti sa setati o interfata, lasati campul "" gol.
Intreaga configuratie de retea se controleaza ruland /etc/rc.d/rc.inet1 cu argumentul start|stop|restart, daca aveti nevoie sa reporniti doar o interfata dati scriptului argumentul corespunzator interfetei (exemplu /etc/rc.d/rc.inet1 eth1_restart).
Daca folositi masina Slackware ca router, asigurati-va ca /etc/rc.d/rc.ip_forward are permisiuni de executie:
chmod 755 /etc/rc.d/rc.ip_forward
Daca vreti sa ridicati rute mai speciale, puteti sa le adaugati la sfarsitul fisierului rc.inet1:
echo '/sbin/route add -net 10.75.19.0 netmask 255.255.255.0 dev eth1' >> /etc/rc.d/rc.inet1
Firewall-ul este pornit de rc.inet2 ruland /etc/rc.d/rc.firewall. Acest fisier nu exista in mod implicit, trebuie sa-l faceti si sa-i dati permisiuni la executie:
if [[ -f /etc/iptables.conf && -x /usr/sbin/iptables-restore ]]; then /usr/sbin/iptables-restore < /etc/iptables.conf; fi
Ca si la celelalte distributii, serverele de nume se configureaza in /etc/resolv.conf.
Scripturile de startup
Debian
Specific pentru Debian este că implicit nivelele 2 - 5 sunt configurate identic. Modificări se pot face cu update-rc.d sau diverse alte utilitare pentru editarea systemelor de tip System-V
Slackware / Bluewhite64
Slackware foloseste scripturi de initializare de tip BSD. Asemenea altor distributii, acestea sunt apelate de init in functie de runlevel si pot fi gasite pe calea /etc/rc.d/ dupa cum urmeaza:
rc.S - script pentru initializarea sistemului. Monteaza sistemele de fisiere, incarca modulele si parametrii kernelului, activeaza partitia swap, configureaza porturile seriale si USB, etc
rc.K - mod single user. Opreste toate serviciile si pune sistemul in mod administrativ. Sistemele de fisiere raman montate iar configurarea retelei ramane neschimbata
rc.M - mod multi user. Este apelat de init pentru oricare din nivelele 2, 3, 4, 5. Configureaza numele sistemului, porneste syslogd, hotplug, cups, udev, crond, quota, etc. Apeleaza la randul lui inet1 si inet2 (parametrii si servicii de retea) si in ultimul rand, celebrul si omnipotentul rc.local
rc.4 - mod grafic. Porneste KDM, GDM sau XDM
rc.6 - reboot. Este apelat de oricare din comenzile halt sau reboot. Opreste toate serviciile si procesele si demonteaza sistemele de fisiere
rc.0 - halt. Ca la reboot. Este symlink la rc.6
Pornirea/oprirea manuală a unui serviciu
Debian
/etc/init.d/postfix start /etc/init.d/postfix stop
sau
invoke-rc.d postfix start invoke-rc.d postfix stop
invoke-rc.d va ţine cont de anumite politici locale (ex. anumite servicii nu trebuie pornite într-un chroot)
Gentoo
/etc/init.d/postfix start /etc/init.d/postfix stop
RedHat
service postfix start service postfix stop
Slackware / Bluewhite64
/etc/rc.d/postfix start /etc/rc.d/postfix stop
Adăugarea/eliminarea unui serviciu în/din autostart
Debian
update-rc.d postfix defaults update-rc.d postfix remove
sau
update-rc.d postfix stop 20 3 4 . start 20 5
pentru oprire în nivelele 3 şi 4 şi pornire în 5.
Gentoo
rc-update add postfix default rc-update del postfix
Daemonii care nu au script de service se pot porni/opri la boot/shutdown adaugându-i în "/etc/conf.d/local.start" şi/sau "/etc/conf.d/local.stop".
RedHat
chkconfig --level 35 postfix on chkconfig --level 35 postfix off
Observaţie: "35" înseamnă runlevel-urile 3 şi 5. Vezi [4].
Alternativ, se poate folosi utilitarul ncurses numit ntsysv care permite configurarea tuturor serviciilor din runlevel-ul curent. Iar pentru cei care preferă GUI, există system-config-services care pe lîngă toate funcţiile lui chkconfig oferă şi detalii despre serviciile respective şi permite gestionarea separată a celor care au daemon propriu de cele lansate via xinetd.
Există în continuare şi metoda (complet nerecomandată) a editării manuale a symlinkurilor din /etc/rcN.d. A se folosi numai şi numai în cazul în care nici una dintre metodele standard mai sus descrise nu este disponibilă. Dacă nu ştiţi despre ce e vorba, uitaţi că aţi citit acest paragraf.
openSUSE 10+
chkconfig -s postfix chkconfig -s postfix 35 chkconfig -d postfix
sau
insserv -d postfix insserv -r postfix
Dacă nu se specifică runlevel-ul, se va utiliza runlevels "Default-Start" din scriptul respectiv.
Slackware / Bluewhite64
Pentru a adauga un serviciu in autostart asigurati-va ca scriptul de initializare are permisiuni de executie:
chmod +x /etc/rc.d/rc.postfix
Adaugati in /etc/rc.d/rc.M:
if [ -x /etc/rc.d/rc.postfix ]; then . /etc/rc.d/rc.postfix start fi
Apoi in /etc/rc.d/rc.6:
if [ -x /etc/rc.d/rc.postfix ]; then . /etc/rc.d/rc.postfix stop fi
Note:
- 1) Daca instalarea a fost facuta compiland codul sursa, va trebui sa creati un script de initializare de la zero.
- 2) Daca ati un instalat pachet .tgz, veti gasi scriptul in /etc/rc.d dar tot va trebui sa editati fisierul rc.M.
- 3) Cand editati rc.M aveti grija la ordinea in care sunt pornite serviciile atunci cand acestea depind unele de altele. Logic este sa porniti mai intai clamd, mysqld apoi postfix. Este bine ca fisierul rc.local sa fie rulat ultimul si este elegant sa nu aveti nimic in el.
- 4) Puneti serviciul in background cu ampersand (&) daca acesta nu are optiuni pentru a rula in daemon mode. De exemplu spamd fara optiunea -d va bloca procesul de initializare si nu veti mai ajunge in /bin/login.
Incepand cu versiunea 7.0, Slackware asigura compatibilitate cu sistemul SystemV cu ajutorul scriptului /etc/rc.d/rc.sysvinit. Cei care prefera aventuri "non-distro way" pot incerca:
mkdir -p /etc/init.d/ && mkdir -p /etc/rc.d/rc3.d/ && mkdir -p /etc/rc.d/rc6.d/ ln -s /etc/rc.d/rc.postfix /etc/init.d/postfix ln -s /etc/rc.d/rc.postfix /etc/rc.d/rc3.d/S11postfix ln -s /etc/rc.d/rc.postfix /etc/rc.d/rc6.d/K11postfix
Nota: Nu folositi in acelasi timp rc.M si rc.sysvinit.
Pentru a elimina un serviciu din autostart este suficient sa inlaturati drepturile de executie pentru scriptul respectiv:
chmod -x /etc/rc.d/rc.postfix
Configurarea modulelor
Încărcare automată
Debian
Pentru încărcarea automată a unui modul la fiecare pornire trebuie doar listat în /etc/modules
Gentoo
Fisierul in care sunt anuntate modulele care trebuie incarcate automat la boot este /etc/conf.d/modules. Se pot defini liste de module pentru mai multe versiuni de kernel.
modules_2_6_23_gentoo_r5="ieee1394 ohci1394" modules_2_6_23="tun ieee1394" modules_2_6="tun" modules="ohci1394"
Slackware / Bluewhite64
Modulul trebuie sa existe in /etc/rc.d/rc.modules sau in /etc/rc.d/rc.netdevice pentru dipsozitivele de retea configurate cu netconfig.
Opţiuni
Debian
Pentru a specifica opţiuni pentru un modul (indiferent că se încarcă manual sau automat) creaţi un fişier (ex. 00local) în /etc/modprobe.d/ cu conţinut de genul:
options kqemu major 0
Slackware / Bluewhite64
Optiunile pentru un modul se pun in /etc/modprobe.conf. Aceasta metoda este invechita dar pastrata inca pentru compatibilitate. Procedati exact ca la Debian daca versiunea Slackware este 12.0 sau mai mare.
Prevenirea încărcării automate
Debian
Listaţi modulul într-un fişier (ex. 00local) în /etc/modprobe.d/ cu următoarea sintaxă:
blacklist pcspkr
Slackware / Bluewhite64
Adaugati o linie in fisierul /etc/modprobe.d/blacklist cu urmatoarea sintaxa:
blacklist pcspkr
Limba română
Pașii necesari pentru a configura un sistem Linux care nu a fost instalat în limba română. În general toate distribuțiile vor configura corect sistemul dacă alegeți limba română la instalare.
Locala
Dacă nu aveți motive bine întemeiate folosiți numai locala ro_RO.UTF-8, dar orice locală UTF-8 ar trebui să afișeze limba română corect. Aceasta ar trebui să activeze și traducerile programelor. Dacă NU doriți ca programele să fie traduse configurați $LANGUAGE.
Debian
Cu comanda
dpkg-reconfigure locales
puteți genera și configura locala implicită. Dacă folosiți pachetul localepurge aveți grijă să-l configurați să păstreze toate localele românești altfel s-ar putea să șteargă traduceri necesare.
Anumite programe au pachete separate pentru traduceri. Aceste pachete au în general nume de forma pachet-l10n-romanian (ex. iceweasel-l10n-romanian).
$LANGUAGE se poate configura în ~/.bashrc:
export LANGUAGE=english
Aranjamentul de tastatură
Dacă nu sunteți posesorul unei tastaturi românești (destul de rare) este foarte util aranjamentul „Programmers”. Acesta este la bază un aranjament „us” dar poate genera caracterele speciale folosind combinații de taste cu AltGr (Alt-dreapta) și litera de bază. Deci AltGr+i va genera î. â se generează cu AltGr+q.
Debian
Pentru aranjamentul în consolă folosiți:
dpkg-reconfigure console-setup
iar pentru X:
dpkg-reconfigure xserver-xorg
și alegeți aranjamentul „ro” sau „ro” varianta „comma” pentru etch.
(Notă: Începând cu versiunea 6.0 (squeeze) Xorg va prelua configurația de la console-setup)
Aranjamentul pentru X poate fi modificat oricând și cu utilitarele respective din KDE, Gnome, Xfce, ...
Fonturi
Nu toate fonturile conțin caracterele speciale pentru limba română. Sunt necesare alte fonturi decât cele implicite?
Debian
Fontul implicit din Debian este DejaVu care conține toate caracterele necesare. msttcorefonts NU conține caracterele românești, dar puteți folosi în schimb familia Liberation. Pentru consolă puteți alege între fontul clasic (VGA) și Terminus (este instalat ca dependență a pachetului console-setup și configurat în loc de VGA). Terminus are și o varianta pentru X în pachetul xfonts-terminus, foarte utilă pentru emulatoare de terminal.