Poniższe punkty omawiają 40-ci najczęściej występujących problemów w Linuxie. Nie wszystkie rozwiązują i wyczerpują te zagadnienia w 100%, a mają jedynie na celu naprowadzenie użytkownika na odpowiednie rozwiązania. Dzieje się tak ze względu na różnorodność dystrybucji linuxa, w których te same czynności zwyczajnie wykonuje się inaczej.

1. Migracja z Windowsa.
Dla wielu użytkowników przesiadka z Windowsa na Linuxa może spędzić sen z powiek. Doradzając komuś podczas zmiany jego systemu, dobrze abyś wiedział w jaki sposób przejść przez ten proces najłagodniejszą drogą. Po pierwsze upewnij się że wszystkie jego pliki oraz aplikacje będą działać pod nowo wybraną dystrybucją. Czasami producent oprogramowania nie wspiera wersji Linuxowe. W większośći przypadków możemy jednak odnaleźć odpowiedniki tych aplikacji. Np gdy ktoś korzystał do tej pory z oprogramowania biurowego Microsoftu(MS Office) może go zupełnie zastąpić bezpłatną wersją Libre Office. W większości przypadków migracja z Windowsa będzie jedynie wykonaniem backupu danych oraz dokumentów. Jeśli jednak jakieś oprogramowanie nie będzie posiadać odpowiedników oraz zamienników w takim przypadku jedynym ratunkiem może być emulator WINE lub wirtualizacja za pomocą Virtual Box’a.

2. Prawa dostępu dla plików oraz folderów.
Czasem może się zdarzyć, że nie będziesz mógł wyedytować, usunąć lub utworzyć jakiegoś pliku bez wcześniejszego zalogowania się na konto root lub za pomocą sudo. W terminalu może to działać dobrze, natomiast gdy będziesz chciał uruchomić skrypt lub aplikację może okazać się to problemem. Jeśli potrzebujesz utworzyć folder lub plik przy użyciu sudo, gdy nie potrzebują one dostępu do praw administratora, najlepszym rozwiązaniem jest modyfikacja praw dostępu. Dla plików i folderów służy do tego ta sama komenda chmod. Np:

$ sudo chmod nazwa_folderu 666

sprawi,że każdy będzie mógł zapisywać oraz odczytywać wszystko wewnątrz tego folderu. Jeżeli natomiast użyjemy parametr 777 dla pliku, wszyscy będą mogli go wykonywać(uruchamiać).

3. Problemy sprzętowe.
Nie każde urządzenie w Linuxie będzie działało zaraz po jego podłączeniu. Zazwyczaj trzeba będzie je uruchomić manualnie. Używając sudo lspci i sudo lsusb będziesz mógł sprawdzić urządzenia podłączone do Twojego systemu. Każde urządzenie będzie posiadać swój kod adresu. Coś na wzór tego 01:00.1 dla lspci. Zanotuj adres problematycznego urządzenia, a następnie za pomocą poniższej komendy możesz sprawdzić więcej informacji na jego temat:

sudo lspci/lsusb -s [adres] -v

To powinno wskazać urządzenia, których moduły zostały załadowane. Jeżeli dane moduły nie działają poprawnie lub nie są przeznaczone dla tego urządzenia możesz uruchomić LIVE CD(w moim przypadku wersja LIVE ładowała odpowiednie moduły dla urządzeń)
i sprawdzić ich nazwy. Jeżeli są różne niż te zainstalowane w Twoim systemie, możesz skorzystać z polecenia:

modprobe -v [nazwa_modułu]

Jeżeli były już załadowane, nie pojawi się żadna informacja. Natomiast jeśli dopiero polecenie go załadowało, powinna pojawić się informacja na standardowym wyjściu.

4. Brakujące oprogramowanie w Fedorze.
Fedora jest fantastyczną dystrybucją. Jej fundamentalnym założeniem jest korzystanie tylko z wolnego oprogramowania. To znaczy, że nie będziemy mogli zainstalować Chromium lub odtwarzać takich plików jak MP3. Dla tych, dla których oprogramowanie bez otwartego kodu nie stanowi problemu repozytorium RPM Fusion może umożliwić instalację dodatkowego oprogramowania. Większość użytkowników mogłoby zwyczajnie wejśc na stronę rpmfusion.org, wyszukać odpowiednie aplikacje, a następnie je ściągnąć. Z racji tego, że nie jesteśmy „większością użytkowników” i lubimy instalować wszystko z konsoli(xD), za pomocą poniższej komendy możemy dodać repozytorium do naszej fedory:

su -c ‚yum localinstall –nogpgcheck http://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm http://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm’

5. Zabijanie procesów.
Program może zużywać więcej zasobów niż zwykle lub po prostu nie możesz zamknąć go w normalny sposób. Właśnie wtedy z pomoc przychodzi nam polecenie KILL w terminalu. Na początek musimy znaleźć PID (numer identyfikacyjny procesu). Możemy tego dokonać wykonując np. polecenie TOP lub PS -aux. Następnie wystarczy wprowadzić komendę:

sudo kill [PID]

6. Dostęp do logów w celu poszukiwania problemów.
Dobrym sposobem na rozpoznanie problemu w Linuxie jest przeglądanie plików z logami systemowymi. Błędy mogą się ukazywać w ogólnym pliku z logami lub w plikach logów poszczególnych programów. Wszystkie pliki znajdują się w katalogu /var/log. Można go podglądnąć przemieszczając się komendami (cd lub ls) poprzez terminal oraz korzystając z graficznego menagera plików.

7. Brak środowiska graficznego Cinnamon.
Cinnamon ostatnimi czasy bardzo szybko zyskuje na popularności. Najnowsza wersja dystrybucji Ubuntu posiada możliwość wybrania Cinnamon’u jako głównego środowiska graficznego podczas procesu instalacji. Użytkownicy poprzednich wersji tej popularnej dystrybucji nie mieli tyle szczęścia i muszą wciąż manualnie zainstalować to środowisko. Otwórz terminal i dodaj PPA za pomocą komendy:

sudo add-apt repository ppa:lestcape/cinnamon

Następnie zaktualizuj pakiety:

apt-get update

by ostatecznie zainstatloawać cinnamon:

apt-get install cinnamon

8. Nieodpowiednia mapa lub język klawiatury.
Czasami podczas instalacji, instalator wybierze złe ustawienia języka lub mapy klawiatury. W takim wypadku wystarczy zmienić ją w ustawieniach systemu-> klawiatura(zależne od dystrybucji). Sytuacja wygląda nawet bardziej banalnie w środowisku graficznym LXDE, gdzie wystarczy wcisnąć kombinację klawiszy Ctrl+Spacja aby przemieszczać się pomiędzy ustawieniami języka klawiatury.

9. Identyfikacja menagera pakietów.
Nie każda dystrybucja korzysta z apt czy yum w celu zarządzania pakietami. Fedora oraz RedHat korzystają z yum. Debian oraz dystrybucje bazujące na Ubuntu korzystają z apt oraz dpkg. OpenSUSE posiada kombinację YaST, zypper i packman do zarządzania pakietami. Gentoo wykorzystuje portage i emerge. Arch natomiast posiada packman’a.

10. Temperatura processora z terminala.
Jeśli chciałbyś sprawdzić temperaturę procesora, potrzebny będzie Ci pakiet ACPI. Tak więc otwórz terminal i wpisz aby zainstalować:

sudo atp-get install acpi

następnie aby sprawdzić temperaturę wystarczy wpisać:

acpi -t

Pakiet ten posiada więcej funkcji takich jak np. sprawdzanie statusu baterii w laptopie (-b) czy wyświetlanie temperatury procesora w fahrenheit’ah (-f).

11. Lokalizacja dysku do uruchomienia systemu.
Jeśli Twój komputer nie chce uruchomić się z dysku CD/DVD lub USB będziesz musiał poszukać Boot Menu lub Biosu. Zazwyczaj podczas uruchomienia można uruchomić menu BIOS’u za pomocą klawisza F2, F8 lub którykolwiek inny z serii Fów. W Biosie należy przejść do sekcji BOOT, a następnie tam zmienić kolejność aby dysk, z którego planujemy uruchomić nasz komputer znajdował się na pierwszej pozycji.

12. Uruchomienie systemu po instalacji Windowsa.
Po instalacji Windowsa nie będziesz mógł uruchomić Linuxa(grub’a). Po instalacji obu systemów będziesz musiał odzyskać gruba w taki sam sposób jak zrobiliśmy to w podpunkcie 16-tym(patrz poniżej). Potem wystarczy już tylko wpisać komendę grup-update,a następnie grub-install /dev/sda by móc uruchomić również Windowsa.

13. Zmiana kolejności systemu w GRUB.
Są na to dwa sposoby. Jeśli korzystasz z dwóch systemów możesz zmienić nazwę pliku /etc/grub.d ,a następnie zrobić grub-update lub wyedytować liczby sekwencyjne w pliku /boot/grub/grub.cfg.

14. Usunięcia splash screenu w GRUB’ie.
Splash Screen podczas bootowania systemu to ten ładny obrazek pokazujący poziom postępu podczas ładowania systemu. Możesz chcieć go usunąć by zobaczyć co faktycznie dzieje się podczas jego uruchamiania i zidentyfikować problemy. Dokonać można tego za pomocą edycji /etc/default/GRUB i usunięcia opcji „quite splash” przy opcji GRUB_CMDLINE_DEFAULT_LINUX.

15. Dodanie kolejnych systemów do listy.
Grub daje nam możliwość dodania kolejnych systemów na listę jeżeli zdecydujemy w przyszłości,że chcemy doinstalować jeszcze kilka dystrybucji. Najszybszym sposobem na dokonanie tego jest skorzystanie z zainstalowanego pakietu os-prober(operating system prober) w Grubie. Wystarczy uruchomić polecenie update-grub ,aby sprawdzić jakie jeszcze systemy są zainstalowane i dodać do grub.cfg. Innym sposobem jest stworzenie niestandardowego wpisu w pliku /etc/grub.d oraz zaznaczenie kiedy chcemy aby ten system został uruchomiony.

16. Grub nie został odnaleziony.
To akurat nie zdarza się zbyt często. Jak już się przytrafia to znaczy,że musi być tego jakiś powód. Np może być to spowodowane instalacją innej dystrybucji linuxa. Uruchomiliśmy naszego PCta i naszym oczom ukazał się na ekranie ten błąd. Należy zachować spokój. W takim przypadku najlepiej jest posłużyć się płytą lub dyskiem USB z dystrybucją LIVE(np Ubuntu, Fedora etc). Wsadzamy płytę do problematycznej maszyny i uruchamiamy system LIVE. Gdy już naszym oczom ukazał się pulpit należy zamontować dysk z naszym dotychczasowym grubem. Jeżeli grub nie został zainstalowany, należy wykonać polecenie apt-get install gub lub w fedorze yum install grub. Wciąż z poziomu terminala wpisujemy fdisk -l aby sprawdzić lokalizację naszego dysku(np: /dev/sda). Gdy już to mamy wpisujemy:

grub-install -root-directory=[lokalizacja zamontowanego przez nas wcześniej dysku] /dev/sda

Po tej czynności możemy zresetować komputer i uruchomić go z wcześniej zainstalowaną dystrybucją.

17. Ręczne uruchomienie systemu.
Ta czynność nie należy do najłatwiejszych. Może się zdarzyć, że podczas uruchamiania komputera grub zapyta nas o manualne wprowadzenie komendy uruchamiającej system. Jeżeli z jakiegoś powodu nie będziesz mógł reinstalować gruba będziesz potrzebował informacji dotyczącej wersji kernela z jakiej korzystasz oraz UUID Twojego dysku(może to być dłuższy ciąg znaków więc warto go gdzieś zapisać). Gdy już posiadasz te informacje wpisz:

linux /boot/vmlinuz-[wersja jajka]-generic root=UUID=[tu wpisujemy UUID]

następnie:

initrd /boot/initrd.img-[wersja jajka]-generic

Po tych komendach system powinien się zacząć uruchamiać.

18. Statyczny adres IP.
Gdy z jakiegoś powodu Twój router nie przypisał Ci adresu poprzez DHCP,albo za każdym razem przypisuje Ci inny gdy wcześniej ustawiłeś przekierowanie portów na konkretny adres IP, będziesz musiał ustawić adres IP manualnie. Większość dostępnych dystrybucji posiada w tym celu graficzne oprogramowanie(network managery), dzięki którym szybko wyedytujesz aktualne ustawienia. Gdy jednak z jakiegoś powodu będziesz musiał wykonać te czynność z poziomu terminala, wystarczy otworzyć plik /etc/network/interfaces i wpisać pożądane przez nas wartości(pamiętajmy o zapisaniu zmian przed zamknięciem pliku).

19. Test połączenia ze stroną www.
Jeśli masz problem z otworzeniem strony, może się okazać, że masz problemy z Twoim połączeniem internetowym. Problem może posiadać również serwer, na którym znajduje się dana strona. Z pomocą w takim wypadku przychodzi nam komenda PING. Wystarczy otworzyć terminal i wpisać:

ping [nazwa strony]

Polecenie wyśle zestaw pakietów ICMP w celu przetestowania połączenia z serwerem, na którym znajduje się strona.

20. Sprawdzenie serwerów DNS.
Załóżmy, że przeglądasz internet i niektóre strony wyświetlają się bezproblemowo, a inne wręcz przeciwnie. Przyczyn tego może być wiele. Większość z nich nie będzie spowodowane Twoimi działaniami. Jednak w takim przypadku możemy sprawdzić czy nasze DNSy są aktualne. Do tego zadania wykorzystamy polecenie DIG. Wpisujemy:

dig www.google.com

i sprawdzamy sekcję dotyczącą DNSów.

21. Testowanie połączenia sieciowego.
Identycznie jak w przypadku punktu 19-go posłużyć do tego może nam narzędzie PING. Z tą różnicą, że tym razem zamiast adresu strony podamy np. adres IP naszej bramki(gateway)lub routera(w większości przypadków jest to jeden i ten sam adres).

ping [adres Ip routera]

22. Ustawianie DNSów.
Czasami będziemy musieli ustawić serwery DNS samemu. Jest kilka publicznych i darmowych serwerów DNS, z których możemy skorzystać. Jednym z nich są serwery DNS od Google. Zazwyczaj ich serwery DNS są najbardziej aktualne. Z poziomu terminala aby dokonać modyfikacji DNSów należy wyedytować plik resolve.conf. Zamieńmy obie wartości,a następnie zapisz plik i zrestartuj połączenie aby zakończyć ten proces.

23. Gdy wszystko inne zawiedzie – TRACEROUTE.
Gdy wciąż nie masz pojęcia co może powodować problemy z Twoim połączeniem sieciowym, należy spojrzeć głębiej w to co dzieje się gdy następuje inicjalizacja połączenia oraz gdzie pakiety są wysyłane. Można to szybko zweryfikować przy pomocy narzędzia TRACEROUTE, które posiada sporą gamę dostępnych opcji. Aby otrzymać podstawowy obraz tego co kryje się przy ustanawianiu połączenia wystarczy w terminalu wykonać poniższe polecenie:

traceroute [nazwa_strony lub adres IP]

24. Konfiguracja połączenia interfejsu WIFI.
Jeśli korzystasz z połączenia bezprzewodowego, w terminalu jego konfiguracja może okazać się skomplikowana, ponieważ zawiera więcej detali niż zazwyczaj ma to miejsce przy konfigurowaniu połączenia przewodowego. Informacje te jednak znajdują się w tym samym pliku /etc/network/interfaces. Oto przykład takiej konfiguracji:

auto wlan0
iface wlan0 inet dhcp
wpa-essid [SSID sieci bezprzewodowej]
wpa-psk [hasło sieci bezprzewodowej]

25. Ubuntu LTS nie aktualizuje się do wyższej wersji.
Korzystasz z Ubuntu LTS tylko dlatego, że to najświeższy system jaki zainstalowałeś, ale chciałbyś być na bieżąco z innymi wydaniami? Możesz się zorientować ,że system nie powiadomi Cię o nowych wersjach. Dzieje się tak dlatego, że LTS przy standardowych ustawieniach zaktualizuje się dopiero gdy ukaże się kolejna wersja LTS. Aby zmienić tę opcję należy uruchomić SOFTWARE CENTRE -> EDIT -> Software Sources. W zakładce UPDATES znajduje się opcja informująca kiedy mają pojawiać się powiadomienia o nowych wersjach. Zaznacz ANY NEW VERSION ,aby przy następnym sprawdzeniu zaktualizował się do najnowszego wydania. Nigdy więcej nie musisz trzymać się wydania, którego nie chcesz.

26. Niezbędna narzędzia do kompilacji.
Aby instalować dodatkowe oprogramowanie Twoja dystrybucja potrzebuje niezbędnego zestawu, aby móc go skompilować. Pakiety typu GCC oraz powiązane z nim narzędzia nie zawsze są instalowane wraz z systemem. Również nie we wszystkich dystrybucjach instaluje się je w ten sam sposób. W Debianie oraz dystrybucjach Ubuntu-podobnych możesz zainstalować pakiet o nazwie build-essential. W fedorze wygląda to nieco inaczej. Trzeba zainstalować grupę pakietów za pomocą yum:

yum groupinstall „Development Tools”

27. Powrót do poprzedniej wersji pakietu.
Powszechnie wiadomo, iż powinno się aktualizować oprogramowanie, ponieważ zazwyczaj zawiera ważne poprawki błędów lub bezpieczeństwa. Czasami jednak aktualizacja niektórych pakietów może sprawiać problemy i będziesz potrzebował cofnąć się do starszego wydania. Nie każdy menager pakietów posiada taką możliwość. APT wymaga aby odinstalować najpierw taki pakiet. Skorzystaj wtedy z apt-cache showpkg [pakiet],aby zweryfikować dostępną wersję ,a następnie zainstaluj przy pomocy apt-get install pakiet=wersja. W Fedorze wystarczy w terminalu wpisać:

yum downgrade [pakiet]-[wersja]

28. Brakujące zależności pakietów.
Często się zdarza przy próbie instalacji nowego oprogramowania, że zależności pomiędzy pakietami nie zostały spełnione. Innymi słowy brakuje oprogramowania, które jest niezbędne do poprawnej jego instalacji lub działania. W dystrybucjach opartych na Debianie(w tym Ubuntu) możesz zainstalować pakiet o nazwie auto-apt, który zatrzyma kompilator w momencie wykrycia brakujących zależności abyś mógł je zainstalować ze źródeł. Aby uruchomić konfigurację przy pomocy auto-apt wystarczy,że rozpoczniesz konfigurację przy użyciu polecenia:

sudo auto-apt ./configure

29. Usuwanie repozytoriów.
Po doinstalowaniu nieoficjalnych repozytorów, z czasem jedne przestają działać, inne zaczynają tworzyć konflikty z już istniejącymi. Nie mamy wyjścia i musimy zrobić porządki. W przypadku Debiana i Ubuntu posłuży nam do tego proste polecenie:

apt-remove [nazwa ppa]

30. Zawieszenie instalacji oprogramowania.
Kiedy coś takiego ma miejsce wiemy,że albo mamy do czynienia z wadliwym oprogramowaniem lub zwyczajnie instalacja trwa nieco dłużej niż zakładaliśmy. Aby to zweryfikować możemy spojrzeć w logi systemowe, poczekać na ukończenie instalacji lub zabić proces instalacji przy pomocy komendy KILL.

31. Weryfikacja ściągniętych plików.
Czasem problemy z instalacją mogą wynikać z niekompletnego pliku, który wcześniej ściągnęliśmy. W wielu przypadkach newralgiczne na spójność pliki takie jak obrazy ISO na stronach posiadają hashe MD5, które można porównać z naszymi ściągniętymi plikami.
Tak więc korzystając z polecenia:

md5sum [nazwa pliku]

możemy zweryfikować jego spójność.

32. Nie odnaleziono pakietu.
Jeśli dodałeś niedawno repozytorium i nie możesz odnaleźć oprogramowania, które powinno się w nim znajdować, prawdopodobnie lista oprogramowania nie została zaktualizowana poprawnie. W przypadku Ubuntu wystarczy skorzystać z polecenia apt-get update. Natomiast w Fedorze odpowiednikiem będzie yum update.

33. Wymuszanie aktualizacji programu lub pakietu.
Z różnych niewiadomych Ci powodów Twoja instalacja jest przerywana ze względu na brak spełnionych zależności? Jednak wiesz,że należy zainstalować dany pakiet pomijając te zależności? Musimy zatem wymusić aktualiację. W Ubuntu najpierw pobieramy pakiet apt-get download [nazwa pakietu],a po ściągnięciu pakietu instalujemy przy pomocy dpkg -i [nazwa pakietu]. To samo w Fedorze osiągniemy dzięki komendzie:

rpm -ivh -force [nazwa pakietu]

34. Upgrade dystrybucji z terminala.
Zdarzyć się może,że nie będziesz posiadał dostępu do graficznego narzędzie aktualizującego dystrybucję. W pierwszej kolejności pamiętajmy,aby zaktualizować listę oprogramowania z repozytorium(apt-get update) po czym wykonujemy polecenie:

sudo apt-get dist-upgrade

35. Problemy z partycjami.
Niektóre dystrybucje linuxa posiadają bardzo proste opcje dotyczące partycjonowania, gdy inne wręcz przeciwnie. Gdy skończyło nam się miejsce na dysku i np. potrzebujemy podłączyć dysk,aby rozszerzyć miejsce w naszym folderze, zmuszeni będziemy dokonać modyfikacji tablicy partycji. Z graficznych narzędzi GParted nie ma sobie równych. Wystarczy uruchomić komputer z dysku LIVE CD a następnie w dowolny sposób zmodyfikować partycje. Jeżeli z jakiegoś powodu będziesz musiał dokonać zmian z poziomu linii komend posłuży nam do tego narzędzie FDISK.

36. Zatrzymanie software’owej macierzy dysków.
Jeśli z jakiegoś powodu potrzebujesz zatrzymać działanie programowalnej macierzy dysków(mdadm) najpierw upewnij się,że zrobiłeś kopię wszystkich plików( 😉 ). Kiedy już zarchiwizowałeś wszystkie dokumenty oraz zakładając,że Twoja macierz nazywa się md0 a dyski sda oraz sdb możesz przystąpić do wyłączenia macierzy następującymi poleceniami:

mdadm –stop /dev/md0
mdadm –remove /dev/md0
mdadm –zero-superblock /dev/sda
sfdisk -d /dev/sda | sfdisk /dev/sdb

37. Fragmentacja plików i dysków.
System plików Ext jak i sam linux posiadają wewnętrzne mechanizmy zapobiegające fragmentacji plików. Czasem jednak i tak do niej dochodzi. Nie ma wielu narzędzi dla linuxa do defragmentacji. Jeżeli czujemy,że potrzebna jest defragmentacja dysku, z pewnością narzędzie defrags wykona to zadanie znakomicie(http://sourceforge.net/projects/defrags).

38. Instalacja sterowników urządzeń.
Instalacja sterowników kart graficznych może czasem spędzić sen z powiek niejednego doświadczonego użytkownika linuxa. Sterowniki te występują w kilku odmianach. Pierwszy (podstawowy sterownik graficzny) dostarczany jest z dystrybucją linuxa. Kolejne to sterowniki dostarczone przez producenta oraz takie wytworzone przy pomocy inżynierii wstecznej(w przypadku kart NVIDII jest to Nouveau). Dystrybucje takie jak Ubuntu czy LinuxMint posiadają oprogramowanie aby maksymalnie umilić ten cały proces konfiguracji X’ów. Wystarczy wykryć urządzenia,a następnie wybrać sterowniki dostępne z listy.

39. Przełączenie do trybu tekstowego.
Gdy przykładowo serwer Xów zawiesił się lub uniemożliwia Ci wykonanie jakichkolwiek czynności możesz chcieć przełączyć się do trybu tekstowego bez niepotrzebnego resetowania komputera. W każdej chwili możesz się przełączyć używając kombinacji klawiszy CTRL+ALT+F2 ,a następnie zalogować się na swoje konto.

40. Powrót do trybu graficznego.
Kiedy naprawimy już usterki za pomocą linii komend, bez problemu przełączymy się do środowiska graficznego dzięki kombinacji CTRL+ALT+F7. Gdyby jednak stało się ,iż ten skrót nie zadziała, wtedy należy spróbować F7 zastąpić jednym z Fów pomiędzy F3-F6.