Obecnie, każdy kto choć trochę interesuje się informatyką może dysponować swoim komputerem decydując nawet o wyborze systemu operacyjnego. Ci którzy aspirują co stania się elitą świata komputerowego, używają systemu Linux – szczególnie jeśli interesują się zabezpieczeniami i administrowaniem. W niniejszym artykule chciałbym zachęcić do pójścia o krok dalej – do uruchomienia własnego serwera.
Do przygotowania serwera zmusiły mnie okoliczności – przygotowując prowadzenie kursu programowania w C++ zdecydowałem się na używanie kompilatora gcc głównie ze względu na jego dostępność i szerokie wsparcie dla najnowszych elementów standardu tego języka, bo ucząc języka obcego – nie warto uczyć archaizmów. Niestety studenci używali swoich komputerów także do innych zadań i nie bardzo mogłem wymagać, by każdy przeszedł na system linuks, a nawet, by zainstalował maszynę wirtualną. Ponadto niektórzy nie dysponowali sprzętem przenośnym i korzystali z pożyczonego. Dlatego jedynym prostym rozwiązaniem – było przygotować serwer na którym wszyscy mogliby pracować zdalnie – edytując teksty źródłowe a także kompilując czy uruchamiając swoje programy.
Twoja, drogi czytelniku, motywacja może być inna. Niewielki serwer może służyć jako domowa centralka wspólnych plików, czy też poligon testowy, do nauki technik sieciowych i testowania sposobów zabezpieczeń sieci, na którym możemy dowolnie eksperymentować doskonaląc się w sztuce odnajdowania luk. Można nawet pokusić się o postawienie niewielkiego klastra – składającego się z kilku czy nawet kilkunastu maszyn – jeśli jesteśmy zainteresowani programowaniem i administrowaniem systemami big-data. Oczywiście wybieramy sprzęt z drugiej ręki – najlepiej poleasingowy. Może nie najnowocześniejszy, ale w miarę dobrej marki.

Całkiem przyzwoity komputer przeznaczony na serwer – kosztował mnie 200 zł. To nie jest literówka. Za 200zł, na Allegro kupiłem niewielki komputerek – Asus Eee Box z procesorem Intel Atom i 300GB dyskiem. Mogłem kupić w sumie coś tańszego i nawet z lepszym procesorem, ale ten mi się p prostu spodobał. Bo komputer przeznaczony na domowy serwer, lub nawet na serwer do niewielkiej pracowni komputerowej – wcale nie musi być demonem prędkości. Nie potrzebujemy na nim środowiska graficznego, bo serwer nie ma być graficzną stacją roboczą, ale ma spełniać inne zadania.
Jako system operacyjny – wybrałem system Linux. System na którym pracują serwery poważnych korporacji, i który warto poznać nie tylko jako coś co zastępuje MS Windows (takie czy inne), ale przede wszystkim na jego niezawodność i uniwersalność. Cóż – nie wszystko co jest darmowe, musi być byle jakie. Ale jaki Linux wybrać? Istnieje ogromna liczba instalacji, różniąca się organizacją drzewa katalogów, wchodzącymi w skład systemu – pakietami (czyli programami) czy sposobem instalacji opcjonalnego oprogramowania. Mi najprostszy i najbardziej logicznie spójny wydawał się Debian i na taki się zdecydowałem.

Mówi się, że do zainstalowania Debiana potrzebne są tylko dwie rzeczy: Dysk instalacyjny, i ktoś kto już raz instalował Debiana. Jest o żart którego korzenie sięgają początków tej dystrybucji, gdyż obecny instalator w zasadzie wszystko krok po kroku wyjaśnia, i zawsze można zdać się na wybór domyślny. Bo pytanie specjalisty o to jak należy podzielić dysk na partycje i dlaczego, na pewno nie rozwiąże problemu. A kilka się niewątpliwie pojawi. Dysk instalacyjny bez problemu znajdziemy w Internecie – może się jedynie pojawić problem – którą z nich wybrać, bo mamy do dyspozycje instalacje różnorakie, zależne od posiadanego procesora oraz dostępności sieci. Od pełnych składających się na pełne 3 płyty DVD, przez bootowalne pendrive-y, po instalacje sieciowe, które wszystko poza podstawowym systemem ściągają bezpośrednio z Internetu. Od wersji stabilnych – polecanych na produkcyjne serwery, po eksperymentalne – w których mamy do czynienia z najnowszymi wersjami oprogramowania. W zależności od potrzeb. Ja wybrałem wersję stabilna na 32-bitowej architektury i386, pomagając sobie informacjami znalezionymi w Wikipedii na temat procesora mojego serwera.
Po zainstalowaniu podstawowego systemu, jest on gotowy do pracy. Możemy na nim pracować korzystając z klawiatury o monitora ekranowego, ale potrzebne będzie to jedynie na początku, wiec nie musimy kupować dla serwer oddzielnego monitora. Po skonfigurowaniu sieci, a w zasadzie po zapoznaniu się z tym jak sieć została przez instalator skonfigurowana, możemy zacząć łączyć się poprzez terminal ssh z dowolnego komputera który będzie widział naszą podsieć. Także z tabletu z zainstalowanym terminalem ssh.
Jeśli jako serwer użyliśmy na prawd niewielkiego komputera – możemy go także zabrać ze sobą na wakacje.