SlideShare ist ein Scribd-Unternehmen logo
1 von 36
Downloaden Sie, um offline zu lesen
Debian, za kulisami
 Adam Byrtek <alpha@debian.org>
Wstęp
O czym wykład nie będzie
    Instalacja, konfiguracja, obsługa, administracja
●


         http://www.debian.org
     –

         http://www.debianusers.pl
     –

         http://debian.linux.org.pl
     –

O czym wykład będzie (z grubsza)
    Historia, sprawy techniczne, filozofia, struktura,
●

    społeczność
    Pytania
●
Wstęp, c.d.
Czym jest Projekt Debian?
    quot;Projekt Debian to grupa osób, które wspólnie
●

    zdecydowały się stworzyć wolny system operacyjnyquot;


Zasadnicze różnice
    Członkami społeczność ochotników
●



    Projekt niekomercyjny
●



    Tylko otwarte narzędzia
●



    Wspiera różnorodność
●
Początki Debiana
Rys historyczny
    Ian Murdock, manifest w roku 1993
●



    Motywacja
●



        dystrybucja quot;w duchu Linuksaquot;
    –

        zły stan ówczesnych dystrybucji
    –

    Wsparcie FSF przez pierwszy rok (GNU/Linux)
●



    Nazewnictwo dystrybucji, wersji
●



    Prawidłowa wymowa: quot;deb ee nquot;
●



    Pierwszt system pakietów (z zależnościami)
●



    Powołanie SPI
●
Fakty
    Edycja stablina: Woody 3.0, wydana w lipcu 2002r.
●



    10 lat istnienia, silna pozycja wśród dystrybucji
●



    11 wspieranych architektur
●

    alpha, arm, hppa, i386, ia64, m68k, mips, mipsel, powerpc, s390, sparc

    Jedyna dystrybucja wspierająca różne jądra
●

    Linux, Hurd, BSD

    1134 osób, 7264 pakietów źródłowych, 11758
●

    binarnych, 318 serwerów lustrzanych
    Polska na piątym miejscu w (nieoficjalnym) rankingu
●

    ilości użytkowników
Organizacje
    Linux International
●



    Linux Professional Institute
●



    Linux Magazine advisory council
●



    Linux Standards Base
●



    Free Standards Group
●



    SchoolForge
●



    GNOME Foundation advisory board
●



    OASIS: Organization for the Advancement of Structured
●

    Information Standards
    Desktop Linux Consortium
●
Oparte na Debianie
    Xandros (dawniej Corel)
●



    Progeny (instalator)
●



    Lindows
●



    Knoppix
●



    i inne...
●
FILOZOFIA
Zasady stanowiące fundament
    Debian Free Software Guidelines
●



    Umowa społeczna Debiana
●



    Debian Policies
●
Kontrakt społeczny
    Debian pozostanie w pełni wolny (patrz DFSG)
●



    Spłacimy dług społeczności oprogramowania
●

    wolnodostępnego
    Nie będziemy ukrywać problemów
●



    Naszymi priorytetami są nasi użytkownicy i wolne
●

    oprogramowanie
    Wsparcie dla programów nie spełniających standardów
●

    DFSG (archiwum non-free)
Debian Free Software Guidelines
    Wolna redystrybucja
●



    Dołączony kod źródłowy (i możliwość jego
●

    redystrybucji)
    Dzieła pochodne, możliwość ich tworzenia i dystrybucji
●

    na tej samej licencji
    Brak ograniczeń integralności kodu
●



    Nie dyskryminuje żadnych osób bądź grup
●
Debian Free Software Guidelines, c.d.
    Nie ogranicza zakresu użytkowania
●



    Licencja musi dotyczyć wszystkich
●



    Licencja nie może dotyczyć wyłącznie Debiana
●



    Licencja nie może 'zanieczyszczać' innego
●

    oprogramowania

    Przykłady: GPL, BSD, Artistic
●



    Bruce Perens i manifest Open Source
●
Debian Policy
    Wytyczne techniczne: najważniejsze zasady
●

    gwarantujące spójność pakietów w dystrybucji
    Pełna zgodność z FHS
●



    Niektóre dodatkowe policies
●



        Perl
    –

        Java
    –

        Menu
    –

        Emacs
    –

        ...
    –
Konstytucja
    Konstytucja: podstawa formalna
●



    Głosowania
●



    Decyzje podejmuje
●



        Zgromadzenie Ogólne Deweloperów
    –

        Lider Projektu
    –

        Komitet Techniczny i/lub jego Przewodniczący
    –

        deweloper odpowiedzialny za dane zadanie
    –

        delegaci wyznaczeni przez Lidera do danego zadania
    –

        Sekretarz Projektu
    –
Gałęzie
    stable (obecnie woody)
●

    gałąź do zastosowań produkcyjnych, zamrożona i gruntowanie
    przetestowana, do niej pojawiają się poprawki bezpieczeństwa

    testing (obecnie sarge)
●

    gałąź najprawdopodobniej pozbawiona ciężkich błędów, ale nie jest to
    gwarantowane

    unstable (zawsze sid)
●

    najświeższe pakiety prosto z pieca, bywają z nimi kłopoty

    experimental
●

    użycie wysoce niewskazane

    Archiwa: main, non-free, contrib
●
System pakietów
    dpkg: nadzór nad bazą pakietów, manipulacja
●

    pakietami
         zależności
     –

         pliki konfiguracyjne
     –

         szablony debconf
     –

    APT: zarządzanie pakietami pochodzącymi z
●

    różnych źródeł
         repozytoria oficjalne, nieoficjalne
     –

         priortety, pinning
     –

    Liczne nakładki (dselect, aptitude, synaptic, ...)
●
Struktura pakietu źródłowego
    Oficjalne źródła: foo_x.y.orig.tar.gz
●



    Debianowa łata: foo_x.y-z.diff.gz
●



         katalog ./debian/*
     –

         debian/rules: makefile budujący pakiet
     –

    Z pakietu źródłowego powstaje jeden lub więcej
●

    pakietów binarnych:
         foo_x.y-z_i386.deb
     –

         foo-doc_x.y-z_all.deb
     –
Struktura pakietu binarnego

                  plik DEB



                              data.tar.gz
 control.tar.gz


control                      /etc/...
conffiles                    /usr/...
md5sums                      /var/...
preinst                      ...
postinst
prerm
postrm
...
Droga pakietu
                               x.y
                                          nowa wersja upstream
                pakiet

                    upload (podpisany), x.y-z

               incoming                    NMU

                     max 1 dzień (chyba że pakiet nowy)

experimental   unstable                                          stable
                                           testing
                                                     brak RC,
                          10 dni (low),
                                                     wydanie
                          brak
                          “excuses”

                mirror                                           mirror
                                           mirror
Edycja stabilna
    quot;Release when readyquot;, rządzi Release Manager
●



    Zamrożenie testing gdy nie ma już poważniejszych
●

    problemów (RC)
    Dokładne testowanie
●



    Wydanie nowej edycji stabilnej
●



    Co jakiś czas edycje poprawiające (najnowsza 3.0r1)
●



    Około roczne wsparcie starej wersji stabilnej
●
Portowanie
    i386 to nie cały świat, deweloper odpowiedzialny za inne
●

    architektury
    Ekipa odpowiedzialna za porty
●



    Dobra praktyka programistyczna
●



    Problemy usprawiedliwione w rzadkich przypadkach
●



    System auto-builderów
●



    Non-Maintainer Upload (NMU)
●
Walka z błędami
    BTS: informacje zgłaszane przez email (reportbug
●

    preferowanym sposobem)
        informacje dostępne publicznie
    –

        flagi i waga błędu (RC)
    –

        deweloper manipuluje stanem błędu
    –

        deweloper ma obowiązek przesyłać wszystkie
    –
        poprawki do upstreamu
        nie tylko dla pakietów (np. WNPP, debian-policy)
    –

    Od niedawna PTS
●



    Lintian: pomoc dla deweloperów
●
Bezpieczeństwo
    Jeden z priorytetów, Security Team
●



    Publiczne informacje, otwartość (DFSG)
●



    Najlepiej korzystać ze stable
●



    Advisories
●



         debian-security-announce@lists.debian.org
     –

         http://www.debian.org
     –

    Automatyczny upgrade dla stable przez APT
●

    deb http://security.debian.org/ woody/updates main contrib non-free
Pozostałe cechy Debiana
    Instalator
●



    Inicjalizacja systemu (update-rc.d)
●



    Budowanie własnego jądra (make-kpkg)
●



    System menu
●



    System alternatyw
●



    ...
●
Lokalizacja
    Strona WWW
●



    Task quot;polishquot;, pakiety z polską dokumentacją
●



    Wsparcie locales (teraz już standard)
●



    Instalator
●



    Mapy klawiatury, czcionki
●



    Opisy pakietów
●



    Szablony debconf
●



    DWN (na 7thguard.net oraz stronach Debiana)
●
LUDZIE
    Rdzeń projektu
●



    Baza danych informacji o
●

    deweloperach (vacation)
    Od rodziny do społeczności
●



    Od dłuższego czasu (mniej więcej)
●

    liniowy wzrost
    Różne cele, spojrzenia, poglądy, równe prawo głosu
●



    Podział na podgrupy, podprojekty
●



    Specjaliści z danych dziedzin (porty, instalator)
●
Mapa lokalizacji deweloperów




   źródło: http://www.debian.org/devel/developers.loc
POLSCY DEWELOPERZY
Krzysztof Krzyżaniak
Pawel Więcek
Grzegorz Prokopski
Marcin Owsiany
                       Marek Habersack
Piotr Roszatycki
                       Łukasz Jachowicz
Robert Luberda
                       Mirosław Baran
Janusz A. Urbanowicz
                       Adam Byrtek
Ryszard Lach
Kontakt
    Przede wszystkim email (nick@debian.org)
●



        wykorzystanie PGP, keyring Debiana
    –

    IRC: dyskusje robocze, BSP (serwer freenode)
●



    Listy dyskusyjne (ponad 100 różnych)
●



        debian-devel, debian-private
    –

    Listy ogłoszeniowe
●



        debian-announce, debian-devel-announce
    –

        debian-security-announce
    –

    Debian Weekly News
●
Praca grupowa
    CVS
●



        np. strona WWW
    –

    Alioth, klon SourceForge
●



        projekty których założycielem jest deweloper
    –
        Debiana
Jak pomóc
    Nie trzeba być deweloperem aby pomagać (sponsoring)
●



    Promować Debiana (i Linuksa jako takiego)
●



    Zgłaszać informacje o błedach i sugestie, korzystać z
●

    testing/unstable
    Przeglądać zgłoszenia, przesyłać patche, komentować
●

    bugreporty (PTS)
    Pomagać przy tłumaczeniu i tworzeniu dokumentacji
●
Jak wstąpić
    Uwaga na 1 kwietnia!
●



    Proces NM (New Maintainer), lista debian-mentors
●



        adwokat
    –

        przydzielenie AM (Application Manager)
    –

        pierwszy kontakt
    –

        potwierdzenie tożsamości
    –

        filozofia i procedury
    –

        zadania i umiejętności
    –

        ankieta i podumowanie
    –
Jak taki projekt może działać?
    Wartościowi ludzie, quot;karmaquot; deweloperów
●



    Władze formalne ingerujące jedynie gdy jest to
●

    konieczne
    Współpraca i wymiana poglądów przez Internet
●



    Ścisłe reguły i procedury, ale minimum formalizmu
●



    Narzędzia, szczegółowa dokumentacja
●



    Infrastruktura fundowana przez sponsorów
●
Przyszłość
    Sarge (“release when ready”)
●



        GCC 3.2
    –

        KDE 3.1
    –

        Gnome 2
    –

    Nowy instalator (stary największą zmorą)
●



        pełna integracja z debconf
    –

        zróżnicowany interface
    –

    Jeszcze większy nacisk na wielonarodowość
●



    Pełna zgodność z LSB (Linux Software Base)
●
To tylko wierzchołek góry lodowej.


Dziękuję za wysłuchanie wykładu.
        Proszę o pytania.


    W razie czego mój adres:
        alpha@debian.org

Weitere ähnliche Inhalte

Was ist angesagt?

Podążając śladami użytkownika Windows – elementy informatyki śledczej
Podążając śladami użytkownika Windows –elementy informatyki śledczejPodążając śladami użytkownika Windows –elementy informatyki śledczej
Podążając śladami użytkownika Windows – elementy informatyki śledczejKrzysztof Binkowski
 
Linux. Rozwiązywanie problemów. Biblia
Linux. Rozwiązywanie problemów. BibliaLinux. Rozwiązywanie problemów. Biblia
Linux. Rozwiązywanie problemów. BibliaWydawnictwo Helion
 
Windows XP. Komendy i polecenia. Praktyczne przykłady
Windows XP. Komendy i polecenia. Praktyczne przykładyWindows XP. Komendy i polecenia. Praktyczne przykłady
Windows XP. Komendy i polecenia. Praktyczne przykładyWydawnictwo Helion
 
PHP i memcached, zaawansowane przypadki użycia
PHP i memcached, zaawansowane przypadki użyciaPHP i memcached, zaawansowane przypadki użycia
PHP i memcached, zaawansowane przypadki użyciaPHPCon Poland
 
Mts2009 krzysztof binkowski - metody pozyskiwania i zabezpieczania danych w...
Mts2009   krzysztof binkowski - metody pozyskiwania i zabezpieczania danych w...Mts2009   krzysztof binkowski - metody pozyskiwania i zabezpieczania danych w...
Mts2009 krzysztof binkowski - metody pozyskiwania i zabezpieczania danych w...Krzysztof Binkowski
 
Fedora Core 2. Księga eksperta
Fedora Core 2. Księga ekspertaFedora Core 2. Księga eksperta
Fedora Core 2. Księga ekspertaWydawnictwo Helion
 
Sekrety magicznego ogrodu Docker
Sekrety magicznego ogrodu DockerSekrety magicznego ogrodu Docker
Sekrety magicznego ogrodu DockerKamil Grabowski
 
PLNOG 8: Tomasz Paszkowski - Wirtualne systemy dyskowe na platformie OpenStac...
PLNOG 8: Tomasz Paszkowski - Wirtualne systemy dyskowe na platformie OpenStac...PLNOG 8: Tomasz Paszkowski - Wirtualne systemy dyskowe na platformie OpenStac...
PLNOG 8: Tomasz Paszkowski - Wirtualne systemy dyskowe na platformie OpenStac...PROIDEA
 
HTTP od zera do bohatera
HTTP od zera do bohateraHTTP od zera do bohatera
HTTP od zera do bohateraHordeTechnology
 
Serwer internetowy w systemie Linux
Serwer internetowy w systemie LinuxSerwer internetowy w systemie Linux
Serwer internetowy w systemie Linuxbm9ib2r5
 
Windows XP PL. Księga eksperta
Windows XP PL. Księga ekspertaWindows XP PL. Księga eksperta
Windows XP PL. Księga ekspertaWydawnictwo Helion
 

Was ist angesagt? (19)

Red Hat Linux 8. Biblia
Red Hat Linux 8. BibliaRed Hat Linux 8. Biblia
Red Hat Linux 8. Biblia
 
JDBC. Leksykon kieszonkowy
JDBC. Leksykon kieszonkowyJDBC. Leksykon kieszonkowy
JDBC. Leksykon kieszonkowy
 
Podążając śladami użytkownika Windows – elementy informatyki śledczej
Podążając śladami użytkownika Windows –elementy informatyki śledczejPodążając śladami użytkownika Windows –elementy informatyki śledczej
Podążając śladami użytkownika Windows – elementy informatyki śledczej
 
Linux. Rozwiązywanie problemów. Biblia
Linux. Rozwiązywanie problemów. BibliaLinux. Rozwiązywanie problemów. Biblia
Linux. Rozwiązywanie problemów. Biblia
 
Windows XP. Komendy i polecenia. Praktyczne przykłady
Windows XP. Komendy i polecenia. Praktyczne przykładyWindows XP. Komendy i polecenia. Praktyczne przykłady
Windows XP. Komendy i polecenia. Praktyczne przykłady
 
PHP i memcached, zaawansowane przypadki użycia
PHP i memcached, zaawansowane przypadki użyciaPHP i memcached, zaawansowane przypadki użycia
PHP i memcached, zaawansowane przypadki użycia
 
Mts2009 krzysztof binkowski - metody pozyskiwania i zabezpieczania danych w...
Mts2009   krzysztof binkowski - metody pozyskiwania i zabezpieczania danych w...Mts2009   krzysztof binkowski - metody pozyskiwania i zabezpieczania danych w...
Mts2009 krzysztof binkowski - metody pozyskiwania i zabezpieczania danych w...
 
Jest Git!
Jest Git!Jest Git!
Jest Git!
 
University day 2
University day 2University day 2
University day 2
 
Be12short
Be12shortBe12short
Be12short
 
Fedora Core 2. Księga eksperta
Fedora Core 2. Księga ekspertaFedora Core 2. Księga eksperta
Fedora Core 2. Księga eksperta
 
GlusterFS
GlusterFSGlusterFS
GlusterFS
 
Sekrety magicznego ogrodu Docker
Sekrety magicznego ogrodu DockerSekrety magicznego ogrodu Docker
Sekrety magicznego ogrodu Docker
 
PLNOG 8: Tomasz Paszkowski - Wirtualne systemy dyskowe na platformie OpenStac...
PLNOG 8: Tomasz Paszkowski - Wirtualne systemy dyskowe na platformie OpenStac...PLNOG 8: Tomasz Paszkowski - Wirtualne systemy dyskowe na platformie OpenStac...
PLNOG 8: Tomasz Paszkowski - Wirtualne systemy dyskowe na platformie OpenStac...
 
Debian GNU/Linux 3.1. Biblia
Debian GNU/Linux 3.1. BibliaDebian GNU/Linux 3.1. Biblia
Debian GNU/Linux 3.1. Biblia
 
HTTP od zera do bohatera
HTTP od zera do bohateraHTTP od zera do bohatera
HTTP od zera do bohatera
 
Barcamp 08/06/2010
Barcamp 08/06/2010Barcamp 08/06/2010
Barcamp 08/06/2010
 
Serwer internetowy w systemie Linux
Serwer internetowy w systemie LinuxSerwer internetowy w systemie Linux
Serwer internetowy w systemie Linux
 
Windows XP PL. Księga eksperta
Windows XP PL. Księga ekspertaWindows XP PL. Księga eksperta
Windows XP PL. Księga eksperta
 

Ähnlich wie Debian za kulisami

“Dziesięć serwerów poproszę!“, czyli co może Ci zaoferować definiowanie infra...
“Dziesięć serwerów poproszę!“, czyli co może Ci zaoferować definiowanie infra...“Dziesięć serwerów poproszę!“, czyli co może Ci zaoferować definiowanie infra...
“Dziesięć serwerów poproszę!“, czyli co może Ci zaoferować definiowanie infra...The Software House
 
Full Stack JavaScript case study na podstawie Maracuya Jukebox audio player
Full Stack JavaScript case study na podstawie Maracuya Jukebox audio playerFull Stack JavaScript case study na podstawie Maracuya Jukebox audio player
Full Stack JavaScript case study na podstawie Maracuya Jukebox audio playerMarek Będkowski
 
Red Hat Linux 7.3. Księga eksperta
Red Hat Linux 7.3. Księga ekspertaRed Hat Linux 7.3. Księga eksperta
Red Hat Linux 7.3. Księga ekspertaWydawnictwo Helion
 
PHP@Docker - w produkcji
PHP@Docker - w produkcjiPHP@Docker - w produkcji
PHP@Docker - w produkcjiMarcin Kurzyna
 
Ganymede - nowoczesne technologie w grach przeglądarkowych i mobilnych
Ganymede - nowoczesne technologie w grach przeglądarkowych i mobilnychGanymede - nowoczesne technologie w grach przeglądarkowych i mobilnych
Ganymede - nowoczesne technologie w grach przeglądarkowych i mobilnychSKN Shader
 
ansible kmonticolo bezlogo
ansible kmonticolo bezlogoansible kmonticolo bezlogo
ansible kmonticolo bezlogoKamil Monticolo
 
Skalowanie PostgreSQL @ DBConf.PL 2014
Skalowanie PostgreSQL @ DBConf.PL 2014Skalowanie PostgreSQL @ DBConf.PL 2014
Skalowanie PostgreSQL @ DBConf.PL 2014Filip Rembialkowski
 
Ruby, Ruby on Rails 2010
Ruby, Ruby on Rails 2010Ruby, Ruby on Rails 2010
Ruby, Ruby on Rails 2010Natalia Stanko
 
100 M pakietów na sekundę dla każdego.
100 M pakietów na sekundę dla każdego. 100 M pakietów na sekundę dla każdego.
100 M pakietów na sekundę dla każdego. Redge Technologies
 
PLNOG16: Integracja Ceph w OpenStack - status i przyszłość, Paweł Stefański
PLNOG16: Integracja Ceph w OpenStack - status i przyszłość, Paweł StefańskiPLNOG16: Integracja Ceph w OpenStack - status i przyszłość, Paweł Stefański
PLNOG16: Integracja Ceph w OpenStack - status i przyszłość, Paweł StefańskiPROIDEA
 
Automatyzacja utrzymania jakości w środowisku PHP
Automatyzacja utrzymania jakości w środowisku PHPAutomatyzacja utrzymania jakości w środowisku PHP
Automatyzacja utrzymania jakości w środowisku PHPLaravel Poland MeetUp
 
Wersjonowanie kodu. Dobre praktyki na przykładzie przejścia z CVS na GITa
Wersjonowanie kodu. Dobre praktyki na przykładzie przejścia z CVS na GITaWersjonowanie kodu. Dobre praktyki na przykładzie przejścia z CVS na GITa
Wersjonowanie kodu. Dobre praktyki na przykładzie przejścia z CVS na GITamarekmisztal
 
Przekierowanie strumienia danych
Przekierowanie strumienia danychPrzekierowanie strumienia danych
Przekierowanie strumienia danychJacek Tomczak
 
[Quality Meetup #9] TestOps, QAOps - czy ktoś taki istnieje? - Aleksandra Kor...
[Quality Meetup #9] TestOps, QAOps - czy ktoś taki istnieje? - Aleksandra Kor...[Quality Meetup #9] TestOps, QAOps - czy ktoś taki istnieje? - Aleksandra Kor...
[Quality Meetup #9] TestOps, QAOps - czy ktoś taki istnieje? - Aleksandra Kor...Future Processing
 
Gluster FS
Gluster FSGluster FS
Gluster FS3camp
 
Pocałunek śmierci
Pocałunek śmierciPocałunek śmierci
Pocałunek śmierciDivante
 
Stosy sieciowe w przestrzeni użytkownika.
Stosy sieciowe w przestrzeni użytkownika.Stosy sieciowe w przestrzeni użytkownika.
Stosy sieciowe w przestrzeni użytkownika.Semihalf
 
SUSE Linux 10. Księga eksperta
SUSE Linux 10. Księga ekspertaSUSE Linux 10. Księga eksperta
SUSE Linux 10. Księga ekspertaWydawnictwo Helion
 

Ähnlich wie Debian za kulisami (20)

“Dziesięć serwerów poproszę!“, czyli co może Ci zaoferować definiowanie infra...
“Dziesięć serwerów poproszę!“, czyli co może Ci zaoferować definiowanie infra...“Dziesięć serwerów poproszę!“, czyli co może Ci zaoferować definiowanie infra...
“Dziesięć serwerów poproszę!“, czyli co może Ci zaoferować definiowanie infra...
 
Full Stack JavaScript case study na podstawie Maracuya Jukebox audio player
Full Stack JavaScript case study na podstawie Maracuya Jukebox audio playerFull Stack JavaScript case study na podstawie Maracuya Jukebox audio player
Full Stack JavaScript case study na podstawie Maracuya Jukebox audio player
 
Wyklad2
Wyklad2Wyklad2
Wyklad2
 
DTrace
DTraceDTrace
DTrace
 
Red Hat Linux 7.3. Księga eksperta
Red Hat Linux 7.3. Księga ekspertaRed Hat Linux 7.3. Księga eksperta
Red Hat Linux 7.3. Księga eksperta
 
PHP@Docker - w produkcji
PHP@Docker - w produkcjiPHP@Docker - w produkcji
PHP@Docker - w produkcji
 
Ganymede - nowoczesne technologie w grach przeglądarkowych i mobilnych
Ganymede - nowoczesne technologie w grach przeglądarkowych i mobilnychGanymede - nowoczesne technologie w grach przeglądarkowych i mobilnych
Ganymede - nowoczesne technologie w grach przeglądarkowych i mobilnych
 
ansible kmonticolo bezlogo
ansible kmonticolo bezlogoansible kmonticolo bezlogo
ansible kmonticolo bezlogo
 
Skalowanie PostgreSQL @ DBConf.PL 2014
Skalowanie PostgreSQL @ DBConf.PL 2014Skalowanie PostgreSQL @ DBConf.PL 2014
Skalowanie PostgreSQL @ DBConf.PL 2014
 
Ruby, Ruby on Rails 2010
Ruby, Ruby on Rails 2010Ruby, Ruby on Rails 2010
Ruby, Ruby on Rails 2010
 
100 M pakietów na sekundę dla każdego.
100 M pakietów na sekundę dla każdego. 100 M pakietów na sekundę dla każdego.
100 M pakietów na sekundę dla każdego.
 
PLNOG16: Integracja Ceph w OpenStack - status i przyszłość, Paweł Stefański
PLNOG16: Integracja Ceph w OpenStack - status i przyszłość, Paweł StefańskiPLNOG16: Integracja Ceph w OpenStack - status i przyszłość, Paweł Stefański
PLNOG16: Integracja Ceph w OpenStack - status i przyszłość, Paweł Stefański
 
Automatyzacja utrzymania jakości w środowisku PHP
Automatyzacja utrzymania jakości w środowisku PHPAutomatyzacja utrzymania jakości w środowisku PHP
Automatyzacja utrzymania jakości w środowisku PHP
 
Wersjonowanie kodu. Dobre praktyki na przykładzie przejścia z CVS na GITa
Wersjonowanie kodu. Dobre praktyki na przykładzie przejścia z CVS na GITaWersjonowanie kodu. Dobre praktyki na przykładzie przejścia z CVS na GITa
Wersjonowanie kodu. Dobre praktyki na przykładzie przejścia z CVS na GITa
 
Przekierowanie strumienia danych
Przekierowanie strumienia danychPrzekierowanie strumienia danych
Przekierowanie strumienia danych
 
[Quality Meetup #9] TestOps, QAOps - czy ktoś taki istnieje? - Aleksandra Kor...
[Quality Meetup #9] TestOps, QAOps - czy ktoś taki istnieje? - Aleksandra Kor...[Quality Meetup #9] TestOps, QAOps - czy ktoś taki istnieje? - Aleksandra Kor...
[Quality Meetup #9] TestOps, QAOps - czy ktoś taki istnieje? - Aleksandra Kor...
 
Gluster FS
Gluster FSGluster FS
Gluster FS
 
Pocałunek śmierci
Pocałunek śmierciPocałunek śmierci
Pocałunek śmierci
 
Stosy sieciowe w przestrzeni użytkownika.
Stosy sieciowe w przestrzeni użytkownika.Stosy sieciowe w przestrzeni użytkownika.
Stosy sieciowe w przestrzeni użytkownika.
 
SUSE Linux 10. Księga eksperta
SUSE Linux 10. Księga ekspertaSUSE Linux 10. Księga eksperta
SUSE Linux 10. Księga eksperta
 

Debian za kulisami

  • 1. Debian, za kulisami Adam Byrtek <alpha@debian.org>
  • 2. Wstęp O czym wykład nie będzie Instalacja, konfiguracja, obsługa, administracja ● http://www.debian.org – http://www.debianusers.pl – http://debian.linux.org.pl – O czym wykład będzie (z grubsza) Historia, sprawy techniczne, filozofia, struktura, ● społeczność Pytania ●
  • 3. Wstęp, c.d. Czym jest Projekt Debian? quot;Projekt Debian to grupa osób, które wspólnie ● zdecydowały się stworzyć wolny system operacyjnyquot; Zasadnicze różnice Członkami społeczność ochotników ● Projekt niekomercyjny ● Tylko otwarte narzędzia ● Wspiera różnorodność ●
  • 5. Rys historyczny Ian Murdock, manifest w roku 1993 ● Motywacja ● dystrybucja quot;w duchu Linuksaquot; – zły stan ówczesnych dystrybucji – Wsparcie FSF przez pierwszy rok (GNU/Linux) ● Nazewnictwo dystrybucji, wersji ● Prawidłowa wymowa: quot;deb ee nquot; ● Pierwszt system pakietów (z zależnościami) ● Powołanie SPI ●
  • 6. Fakty Edycja stablina: Woody 3.0, wydana w lipcu 2002r. ● 10 lat istnienia, silna pozycja wśród dystrybucji ● 11 wspieranych architektur ● alpha, arm, hppa, i386, ia64, m68k, mips, mipsel, powerpc, s390, sparc Jedyna dystrybucja wspierająca różne jądra ● Linux, Hurd, BSD 1134 osób, 7264 pakietów źródłowych, 11758 ● binarnych, 318 serwerów lustrzanych Polska na piątym miejscu w (nieoficjalnym) rankingu ● ilości użytkowników
  • 7. Organizacje Linux International ● Linux Professional Institute ● Linux Magazine advisory council ● Linux Standards Base ● Free Standards Group ● SchoolForge ● GNOME Foundation advisory board ● OASIS: Organization for the Advancement of Structured ● Information Standards Desktop Linux Consortium ●
  • 8. Oparte na Debianie Xandros (dawniej Corel) ● Progeny (instalator) ● Lindows ● Knoppix ● i inne... ●
  • 9. FILOZOFIA Zasady stanowiące fundament Debian Free Software Guidelines ● Umowa społeczna Debiana ● Debian Policies ●
  • 10. Kontrakt społeczny Debian pozostanie w pełni wolny (patrz DFSG) ● Spłacimy dług społeczności oprogramowania ● wolnodostępnego Nie będziemy ukrywać problemów ● Naszymi priorytetami są nasi użytkownicy i wolne ● oprogramowanie Wsparcie dla programów nie spełniających standardów ● DFSG (archiwum non-free)
  • 11. Debian Free Software Guidelines Wolna redystrybucja ● Dołączony kod źródłowy (i możliwość jego ● redystrybucji) Dzieła pochodne, możliwość ich tworzenia i dystrybucji ● na tej samej licencji Brak ograniczeń integralności kodu ● Nie dyskryminuje żadnych osób bądź grup ●
  • 12. Debian Free Software Guidelines, c.d. Nie ogranicza zakresu użytkowania ● Licencja musi dotyczyć wszystkich ● Licencja nie może dotyczyć wyłącznie Debiana ● Licencja nie może 'zanieczyszczać' innego ● oprogramowania Przykłady: GPL, BSD, Artistic ● Bruce Perens i manifest Open Source ●
  • 13. Debian Policy Wytyczne techniczne: najważniejsze zasady ● gwarantujące spójność pakietów w dystrybucji Pełna zgodność z FHS ● Niektóre dodatkowe policies ● Perl – Java – Menu – Emacs – ... –
  • 14. Konstytucja Konstytucja: podstawa formalna ● Głosowania ● Decyzje podejmuje ● Zgromadzenie Ogólne Deweloperów – Lider Projektu – Komitet Techniczny i/lub jego Przewodniczący – deweloper odpowiedzialny za dane zadanie – delegaci wyznaczeni przez Lidera do danego zadania – Sekretarz Projektu –
  • 15.
  • 16. Gałęzie stable (obecnie woody) ● gałąź do zastosowań produkcyjnych, zamrożona i gruntowanie przetestowana, do niej pojawiają się poprawki bezpieczeństwa testing (obecnie sarge) ● gałąź najprawdopodobniej pozbawiona ciężkich błędów, ale nie jest to gwarantowane unstable (zawsze sid) ● najświeższe pakiety prosto z pieca, bywają z nimi kłopoty experimental ● użycie wysoce niewskazane Archiwa: main, non-free, contrib ●
  • 17. System pakietów dpkg: nadzór nad bazą pakietów, manipulacja ● pakietami zależności – pliki konfiguracyjne – szablony debconf – APT: zarządzanie pakietami pochodzącymi z ● różnych źródeł repozytoria oficjalne, nieoficjalne – priortety, pinning – Liczne nakładki (dselect, aptitude, synaptic, ...) ●
  • 18. Struktura pakietu źródłowego Oficjalne źródła: foo_x.y.orig.tar.gz ● Debianowa łata: foo_x.y-z.diff.gz ● katalog ./debian/* – debian/rules: makefile budujący pakiet – Z pakietu źródłowego powstaje jeden lub więcej ● pakietów binarnych: foo_x.y-z_i386.deb – foo-doc_x.y-z_all.deb –
  • 19. Struktura pakietu binarnego plik DEB data.tar.gz control.tar.gz control /etc/... conffiles /usr/... md5sums /var/... preinst ... postinst prerm postrm ...
  • 20. Droga pakietu x.y nowa wersja upstream pakiet upload (podpisany), x.y-z incoming NMU max 1 dzień (chyba że pakiet nowy) experimental unstable stable testing brak RC, 10 dni (low), wydanie brak “excuses” mirror mirror mirror
  • 21. Edycja stabilna quot;Release when readyquot;, rządzi Release Manager ● Zamrożenie testing gdy nie ma już poważniejszych ● problemów (RC) Dokładne testowanie ● Wydanie nowej edycji stabilnej ● Co jakiś czas edycje poprawiające (najnowsza 3.0r1) ● Około roczne wsparcie starej wersji stabilnej ●
  • 22. Portowanie i386 to nie cały świat, deweloper odpowiedzialny za inne ● architektury Ekipa odpowiedzialna za porty ● Dobra praktyka programistyczna ● Problemy usprawiedliwione w rzadkich przypadkach ● System auto-builderów ● Non-Maintainer Upload (NMU) ●
  • 23. Walka z błędami BTS: informacje zgłaszane przez email (reportbug ● preferowanym sposobem) informacje dostępne publicznie – flagi i waga błędu (RC) – deweloper manipuluje stanem błędu – deweloper ma obowiązek przesyłać wszystkie – poprawki do upstreamu nie tylko dla pakietów (np. WNPP, debian-policy) – Od niedawna PTS ● Lintian: pomoc dla deweloperów ●
  • 24. Bezpieczeństwo Jeden z priorytetów, Security Team ● Publiczne informacje, otwartość (DFSG) ● Najlepiej korzystać ze stable ● Advisories ● debian-security-announce@lists.debian.org – http://www.debian.org – Automatyczny upgrade dla stable przez APT ● deb http://security.debian.org/ woody/updates main contrib non-free
  • 25. Pozostałe cechy Debiana Instalator ● Inicjalizacja systemu (update-rc.d) ● Budowanie własnego jądra (make-kpkg) ● System menu ● System alternatyw ● ... ●
  • 26. Lokalizacja Strona WWW ● Task quot;polishquot;, pakiety z polską dokumentacją ● Wsparcie locales (teraz już standard) ● Instalator ● Mapy klawiatury, czcionki ● Opisy pakietów ● Szablony debconf ● DWN (na 7thguard.net oraz stronach Debiana) ●
  • 27. LUDZIE Rdzeń projektu ● Baza danych informacji o ● deweloperach (vacation) Od rodziny do społeczności ● Od dłuższego czasu (mniej więcej) ● liniowy wzrost Różne cele, spojrzenia, poglądy, równe prawo głosu ● Podział na podgrupy, podprojekty ● Specjaliści z danych dziedzin (porty, instalator) ●
  • 28. Mapa lokalizacji deweloperów źródło: http://www.debian.org/devel/developers.loc
  • 29. POLSCY DEWELOPERZY Krzysztof Krzyżaniak Pawel Więcek Grzegorz Prokopski Marcin Owsiany Marek Habersack Piotr Roszatycki Łukasz Jachowicz Robert Luberda Mirosław Baran Janusz A. Urbanowicz Adam Byrtek Ryszard Lach
  • 30. Kontakt Przede wszystkim email (nick@debian.org) ● wykorzystanie PGP, keyring Debiana – IRC: dyskusje robocze, BSP (serwer freenode) ● Listy dyskusyjne (ponad 100 różnych) ● debian-devel, debian-private – Listy ogłoszeniowe ● debian-announce, debian-devel-announce – debian-security-announce – Debian Weekly News ●
  • 31. Praca grupowa CVS ● np. strona WWW – Alioth, klon SourceForge ● projekty których założycielem jest deweloper – Debiana
  • 32. Jak pomóc Nie trzeba być deweloperem aby pomagać (sponsoring) ● Promować Debiana (i Linuksa jako takiego) ● Zgłaszać informacje o błedach i sugestie, korzystać z ● testing/unstable Przeglądać zgłoszenia, przesyłać patche, komentować ● bugreporty (PTS) Pomagać przy tłumaczeniu i tworzeniu dokumentacji ●
  • 33. Jak wstąpić Uwaga na 1 kwietnia! ● Proces NM (New Maintainer), lista debian-mentors ● adwokat – przydzielenie AM (Application Manager) – pierwszy kontakt – potwierdzenie tożsamości – filozofia i procedury – zadania i umiejętności – ankieta i podumowanie –
  • 34. Jak taki projekt może działać? Wartościowi ludzie, quot;karmaquot; deweloperów ● Władze formalne ingerujące jedynie gdy jest to ● konieczne Współpraca i wymiana poglądów przez Internet ● Ścisłe reguły i procedury, ale minimum formalizmu ● Narzędzia, szczegółowa dokumentacja ● Infrastruktura fundowana przez sponsorów ●
  • 35. Przyszłość Sarge (“release when ready”) ● GCC 3.2 – KDE 3.1 – Gnome 2 – Nowy instalator (stary największą zmorą) ● pełna integracja z debconf – zróżnicowany interface – Jeszcze większy nacisk na wielonarodowość ● Pełna zgodność z LSB (Linux Software Base) ●
  • 36. To tylko wierzchołek góry lodowej. Dziękuję za wysłuchanie wykładu. Proszę o pytania. W razie czego mój adres: alpha@debian.org