Blog (107)
Komentarze (2.3k)
Recenzje (0)

cz. 1 | Siła konsoli w systemach Uniksowych

@webnullcz. 1 | Siła konsoli w systemach Uniksowych13.11.2010 14:34

Witam, słyszałem wiele negatywnych opinii odnośnie konsoli dlatego postaram się wytłumaczyć, że jest ona naprawdę użyteczna i wręcz niezbędna w każdym systemie.

Czym jest konsola i do czego służy

Konsola to uniwersalne narzędzie do wykonywania najbardziej przeróżnych czynności zaczynając od sterowania systemem operacyjnym, przez słuchanie muzyki do grania w gry tekstowe.

Jednak konsola to coś więcej niż tylko wpisywanie poleceń przez użytkownika, i tutaj chciałbym podkreślić inne bardzo ważne i niezastąpione zastosowania konsoli w tym ogromnym świecie informatycznym.

[color=#FF0000]Ważna informacja: Żadne okienko terminala nie musi być otwarte aby polecenie zostało wykonane, to wszystko może chodzić i chodzi w tle bez przerwy - bo cokolwiek robimy to system wywołuje różne polecenia.

[color=#FF0000]Jaka jest idea?

99% programów Uniksowych, tak tych graficznych, tekstowych czy słuchowych?(dla niewidzących) umożliwia sterowanie przez konsolę. To nie windows, tutaj tworzymy wszystko według takiego modelu i każdemu jest wygodnie i na rękę.

Ale można zadać pytanie; po co Mi to?

Wyobraź Sobie, że masz w programie odtwarzającym wideo opcję "Po zakończeniu oglądania wykonaj polecenie" (całkiem realne), dzięki takiej opcji możesz ustawić, że po zakończeniu oglądania filmu wyłączy się komputer, załączy wygaszacz ekranu, pobierze plik z internetu, otworzy się przeglądarka, zamknie się program odtwarzający filmy czy co tylko sobie wymyślisz.

To proste, jeden program umożliwa wykonanie danego polecenia poprzez dane zdarzenie.

Dzięki temu możemy stworzyć co Nam wyobraźnia przyniesie do głowy.

[color=#DAA520]Przykładowe zastosowanie pierwsze - odtwarzacz muzyki

Powiedzmy, że chcemy ustawić na klawiszu F12 jakąś nietypową czynność, np. ustawienie naszego ulubionego utworu w odtwarzaczu muzyki

W tym celu wyszukujemy odpowiednią opcję w odtwarzaczu muzyki np. rhythmbox

webnull@webnull-desktop:~$ rhythmbox-client --help
Użycie:
  rhythmbox-client [OPCJA...]

Opcje pomocy:
  -h, --help                                Wyświetla opcje pomocy

Opcje programu:
  --debug                                   
  --no-start                                Bez uruchamiania nowej instancji programu Rhythmbox
  --quit                                    Kończy działanie programu Rhythmbox
  --no-present                              Bez wyświetlania istniejącego okna programu Rhythmbox
  --hide                                    Ukrywa okno programu Rhythmbox
  --next                                    Przechodzi do następnego utworu
  --previous                                Przechodzi do poprzedniego utworu
  --seek                                    Przewija bieżącą ścieżkę
  --notify                                  Wyświetlanie powiadamiania o odtwarzanym utworze
  --play                                    Wznawia odtwarzanie, jeśli jest wstrzymane
  --pause                                   Pauzuje odtwarzanie, jeśli jest uruchomione
  --play-pause                              Przełącza tryby odtwarzania/wstrzymania
  --play-uri=Adres URI do odtworzenia       Odtwarza podany adres URI, importując go, jeśli to konieczne
  --enqueue                                 Dodaje podane ścieżki do kolejki odtwarzania
  --clear-queue                             Opróżnia kolejkę odtwarzania przed dodawaniem nowych ścieżek
  --print-playing                           Wyświetla tytuł i wykonawcę odtwarzanego utworu
  --print-playing-format                    Wyświetla sformatowane szczegóły utworu
  --select-source=Źródło do wybrania        Wybiera źródło pasujące do podanego adresu URI
  --activate-source=Źródło do aktywacji     Aktywuje źródło pasujące do podanego adresu URI
  --play-source=Źródło do odtworzenia       Odtwarza ze źródła pasujące do podanego adresu URI
  --set-volume                              Ustawia głośność odtwarzania
  --volume-up                               Zwiększa głośność odtwarzania
  --volume-down                             Zmniejsza głośność odtwarzania
  --print-volume                            Wyświetla bieżącą głośność odtwarzania
  --mute                                    Wycisza dźwięk
  --unmute                                  Wyłącza wyciszenie dźwięku
  --set-rating                              Ustawia ocenę bieżącego utworu

Skoro już znaleźliśmy naszą "funkcję" programu (argument) to teraz użyjemy go w praktyce.

rhythmbox-client --play-uri="/home/webnull/Muzyka/Utwor.ogg"

Teraz odtwarzacz muzyki Rhythmbox powinien nam zagrać utwór /home/webnull/Muzyka/Utwor.ogg

Ale dlaczego by nie ustawić Sobie ten utwór na klawisz F12?

To bardzo proste, ustawiamy sobie to powyższe polecenie do wykonania po naciśnięciu klawisza F12 w programie do bindowania klawiszy (xbindkeys, fluxbox, lub jakiś z pakietu GNOME graficzny ładny i prosty konfigurator).

[color=#1E90FF]Przykładowe zastosowanie drugie - aktualizacje serwera

Przede wszystkim zaletą systemów Uniksowych jest to, że administrator może być jeden na bardzo wiele komputerów, a dobrze skonfigurowany system potrafi sam o Siebie zadbać.

Podstawą systemów Uniksowych są aktualizacje czyli świeże, stabilne (możemy wybrać również niestabilne - testowe), załatane oprogramowanie na bieżąco.

Aby system sam się aktualizował bez problemów zaleca się używania repozytorium stabilnego które gwarantuje, że nic się nie stanie po aktualizacji.

No więc do rzeczy, jako użytkownik uprzywilejowany - root wpisujemy do fcrontaba lub crontaba zaplanowane zadanie, np. codziennie o 00:00 będzie wykonywane polecenie /root/zaaktualizuj-system.

W pliku /root/zaaktualizuj-system dodajemy polecenie aktualizujące system, ewentualny raport wysyłany na e-mail w razie wykrycia niepowodzenia (status błędu zwrócony przez proces aktualizacji - da się wykryć).


#!/bin/bash
. /root/funkcje-mailowe # dołącza plik z funkcjami mailowymi
apt-get update &> /dev/null
apt-get upgrade &> /dev/null

if [ "$1" == "Błąd" ]
then
      wyslij_mail_do_admina
fi

[color=#DAA520]Przykładowe zastosowanie trzecie - serwer czuwający nad zasypiającymi użytkownikami

Jeżeli mamy w domu serwer, albo router z Linuksem bądź taki router na którym jest możliwa instalacja systemu opartego o Linuksa np. OpenWRT to możemy wykonywać na nim dowolne zaplanowane zadania.

Przykładowo dodajemy zadanie do fcrontaba bądź crontaba w serwerze/routerze aby o godzinie 03:00 w nocy sprawdzał czy komputer jest przez dłuższy czas bezczynny. Po półgodziny bezczynności komputera w nocy serwer/router wysyła do komputera sygnał wyłączania np. shutdown -h now

Oczywiście możemy rozbudować nasze rozwiązanie o obsługę wyjątków. Możemy napisać bardzo prostą aplikację serwerową np. w Pythonie która będzie komunikować się z routerem i podawać informacje, czy pobieramy dany plik przez noc, czy automatyczne wyłączanie komputera jest zablokowane itp.

Istnieje alternatywa, nie musimy mieć serwera, ale wtedy musimy czuwać i serwisować każdy komputer z osobna, dlatego polecam serwer.

[color=#DAA520]Przykładowe zastosowanie czwarte - instalacja oprogramowania

Windows: Ile możemy czasu spędzić na szukaniu instalatora? Nie raz trzeba dojść do 20 strony w wyszukiwarce Google/Yahoo/Innej aby odnaleźć szukany instalator. Czasami także trzeba wysłać SMS, zarejestrować się i dostawać kupę spamu, albo kliknąć w banner i zagłosować aby dostać instalator - no cóż..

No dobrze, udało się pobrać, pierwszy sukces! Ale teraz rozczarowanie, instalator wysypuje nielogiczne błędy typu "Włóż płytę do napędu CD zawierającą plik X", i chociaż wskazujemy Mu położenie pliku to on nadal go szuka, no cóż ostatnio miałem taki błąd, siedziałem przy nim całą godzinę kiedy instalowałem komuś świeżo zakupioną grę.

W systemach Uniksowych mamy całkowicie inną sytuację, nie tolerujemy reklam, spamu, ani innego "chamstwa" potocznie mówiąc.

Mamy Swoje ogromne bazy danych z oprogramowaniem, liczące tysiące serwerów lustrzanych (zawierających tą samą treść) w każdym kraju.

Wystarczy małe, proste, i wygodne polecenie aby zainstalować program.

W systemach opartych o Debiana robimy to tak:

sudo apt-get install audacity

W systemach z rodziny Gentoo:

emerge audacity

Arch Linux:

pacman -S audacity

Gdzie audacity to nasz program który instalujemy. Po wykonaniu tego polecenia program jest zainstalowany, uruchamiamy go z graficznego menu bądź z polecenia w terminalu.

- Czytaj dalej...

Szanowna Użytkowniczko! Szanowny Użytkowniku!
×
Aby dalej móc dostarczać coraz lepsze materiały redakcyjne i udostępniać coraz lepsze usługi, potrzebujemy zgody na dopasowanie treści marketingowych do Twojego zachowania. Twoje dane są u nas bezpieczne, a zgodę możesz wycofać w każdej chwili na podstronie polityka prywatności.

Kliknij "PRZECHODZĘ DO SERWISU" lub na symbol "X" w górnym rogu tej planszy, jeżeli zgadzasz się na przetwarzanie przez Wirtualną Polskę i naszych Zaufanych Partnerów Twoich danych osobowych, zbieranych w ramach korzystania przez Ciebie z usług, portali i serwisów internetowych Wirtualnej Polski (w tym danych zapisywanych w plikach cookies) w celach marketingowych realizowanych na zlecenie naszych Zaufanych Partnerów. Jeśli nie zgadzasz się na przetwarzanie Twoich danych osobowych skorzystaj z ustawień w polityce prywatności. Zgoda jest dobrowolna i możesz ją w dowolnym momencie wycofać zmieniając ustawienia w polityce prywatności (w której znajdziesz odpowiedzi na wszystkie pytania związane z przetwarzaniem Twoich danych osobowych).

Od 25 maja 2018 roku obowiązuje Rozporządzenie Parlamentu Europejskiego i Rady (UE) 2016/679 (określane jako "RODO"). W związku z tym chcielibyśmy poinformować o przetwarzaniu Twoich danych oraz zasadach, na jakich odbywa się to po dniu 25 maja 2018 roku.

Kto będzie administratorem Twoich danych?

Administratorami Twoich danych będzie Wirtualna Polska Media Spółka Akcyjna z siedzibą w Warszawie, oraz pozostałe spółki z grupy Wirtualna Polska, jak również nasi Zaufani Partnerzy, z którymi stale współpracujemy. Szczegółowe informacje dotyczące administratorów znajdują się w polityce prywatności.

O jakich danych mówimy?

Chodzi o dane osobowe, które są zbierane w ramach korzystania przez Ciebie z naszych usług, portali i serwisów internetowych udostępnianych przez Wirtualną Polskę, w tym zapisywanych w plikach cookies, które są instalowane na naszych stronach przez Wirtualną Polskę oraz naszych Zaufanych Partnerów.

Dlaczego chcemy przetwarzać Twoje dane?

Przetwarzamy je dostarczać coraz lepsze materiały redakcyjne, dopasować ich tematykę do Twoich zainteresowań, tworzyć portale i serwisy internetowe, z których będziesz korzystać z przyjemnością, zapewniać większe bezpieczeństwo usług, udoskonalać nasze usługi i maksymalnie dopasować je do Twoich zainteresowań, pokazywać reklamy dopasowane do Twoich potrzeb. Szczegółowe informacje dotyczące celów przetwarzania Twoich danych znajdują się w polityce prywatności.

Komu możemy przekazać dane?

Twoje dane możemy przekazywać podmiotom przetwarzającym je na nasze zlecenie oraz podmiotom uprawnionym do uzyskania danych na podstawie obowiązującego prawa – oczywiście tylko, gdy wystąpią z żądaniem w oparciu o stosowną podstawę prawną.

Jakie masz prawa w stosunku do Twoich danych?

Masz prawo żądania dostępu, sprostowania, usunięcia lub ograniczenia przetwarzania danych. Możesz wycofać zgodę na przetwarzanie, zgłosić sprzeciw oraz skorzystać z innych praw wymienionych szczegółowo w polityce prywatności.

Jakie są podstawy prawne przetwarzania Twoich danych?

Podstawą prawną przetwarzania Twoich danych w celu świadczenia usług jest niezbędność do wykonania umów o ich świadczenie (tymi umowami są zazwyczaj regulaminy). Podstawą prawną przetwarzania danych w celu pomiarów statystycznych i marketingu własnego administratorów jest tzw. uzasadniony interes administratora. Przetwarzanie Twoich danych w celach marketingowych realizowanych przez Wirtualną Polskę na zlecenie Zaufanych Partnerów i bezpośrednio przez Zaufanych Partnerów będzie odbywać się na podstawie Twojej dobrowolnej zgody.