Prezentowane materiały są przeznaczone dla uczniów szkół ponadgimnazjalnych Autor artykułu: mgr Jerzy Wałaszek |
©2014 mgr
Jerzy Wałaszek
|
W tym artykule zawarte są procedury instalacji dodatkowych elementów systemu Linux na stanowiskach uczniowskich.
Aby usługa ta działała, należy na każdym komputerze zainstalować serwer ssh i uruchomić go. W tym celu otwieramy terminal (lewy Ctrl + lewy Alt + T) i wpisujemy:
su konto_administratora sudo apt-get update sudo apt-get install openssh-server
Po operacji serwer ssh zostaje zainstalowany na danym komputerze i można się z nim połączyć z innego komputera za pomocą polecenia:
ssh nazwa_konta@adres_IP
lub
ssh nazwa_konta@nazwa_domenowa
Ten drugi sposób jest przydatny, gdy dany komputer jest widoczny w sieci Internet. Po zalogowaniu się na podane konto możemy rozpocząć zdalną pracę na docelowym komputerze.
sudo apt-get install wine
wine --version
Uruchamiamy terminal na komputerze nauczycielskim (lewy Ctrl + lewy Shift + T) i wpisujemy polecenia tworzące katalogi, które będą później udostępniane.
sudo mkdir /home/klasa
sudo mkdir /home/klasa/n
sudo mkdir /home/klasa/k0{1..9}
sudo mkdir /home/klasa/k1{0..8}
Pierwsze polecenie tworzy katalog klasa wewnątrz katalogu home. Następne polecenia tworzą w tym katalogu następujące katalogi:
n – katalog wspólny dla wszystkich
k01
k02
...
k18 – katalogi robocze stanowisk uczniowskich
Gdy mamy już strukturę katalogów, instalujemy serwer NFS:
sudo apt-get install nfs-kernel-server nfs-common portmap
Edytujemy plik /etc/exports:
sudo nano /etc/exports
i umieszczamy w nim wpisy:
/home/klasa/n adres_IP_k01(ro) adres_IP_k02(ro) ...
adres_IP_k18(ro)
/home/klasa/k01 adres_IP_k01(rw)
/home/klasa/k02 adres_IP_k02(rw)
...
/home/klasa/k18
adres_IP_k18(rw)
Oczywiście, adres_IP_k01 to adres internetowy komputera uczniowskiego K01, np. 168.192.18.5 i zależy on od konkretnej sieci szkolnej.
Gdy skończymy wprowadzanie, naciskamy Ctrl+O, co w edytorze nano odpowiada zapisowi pliku na dysk, potwierdzamy zapis i wychodzimy z nano kombinacją klawiszy Ctrl+X. Aby wprowadzone zmiany zaczęły być widoczne, musimy zresetować serwer NFS lub uruchomić ponownie komputer. Reset serwera dokonujemy poleceniami:
sudo /etc/init.d/nfs-kernel-server restart
sudo exportfs -a
Od tego momentu serwer NFS powinien już pracować. Przystępujemy zatem do instalacji klientów NFS. Proces ten w całości przeprowadzamy zdalnie za pomocą połączeń SSH. Uruchamiamy terminal i logujemy się zdalnie na komputerze ucznia za pomocą polecenia
administrator to konto administracyjne na komputerze uczniowskim, a adres_IP jest adresem IP danego komputera uczniowskiego. Po podaniu hasła administratora przechodzimy do instalacji oprogramowania:
sudo apt-get install nfs-common portmap
sudo mkdir /mnt/pub
sudo mkdir /mnt/uczen
Teraz edytujemy plik fstab, który zawiera informację o zamontowanych w systemie plików wolumenach.
sudo nano /etc/fstab
Na końcu pliku dopisujemy dwie linijki:
adres_IP_serwera_NFS:/home/klasa/n /mnt/pub nfs ro,hard,intr 0 0
adres_IP_serwera_NFS:/home/klasa/kxx /mnt/uczen nfs rw,hard,intr 0 0
adres_IP_serwera_NFS jest adresem IP naszego komputera nauczycielskiego, na którym został uruchomiony serwer NFS. Katalog kxx odpowiada katalogowi danego ucznia na serwerze NFS, czyli odpowiednio K01, K02, itd.
Plik zapisujemy na dysku (w edytorze nano naciskamy Ctrl+O) i wracamy do terminala (Ctrl + X). Pozostaje jedynie uruchomić ponownie komputer ucznia:
sudo reboot
W katalogu /mnt/pub będzie widoczna zawartość katalogu /home/klasa/n na serwerze NFS. Zawartość tego katalogu uczeń może jedynie odczytywać, nie może nic w nim zmienić. Katalog /mnt/uczen słuzy do zapisu danych. Wszystko, co uczeń w nim zapisze, pojawi się w odpowiednim katalogu /home/klasa/kxx na serwerze NFS. Każdy uczeń posiada dostęp tylko do swojego katalogu kxx.
Uwaga: przy uruchamianiu komputerów w pracowni najpierw powinien być uruchamiany serwer NFS, aby usługa ta była dostępna w momencie startu komputerów uczniowskich. Po prostu zawsze po wejściu do pracowni najpierw uruchamiam swój komputer nauczycielski, wpuszczam uczniów, a oni z kolei uruchamiają swoje komputery.
sudo apt-get install libatk1.0-0 libc6 libcairo2 libfontconfig1 libfreetype6 libgdk-pixbuf2.0-0
sudo apt-get install libglib2.0-0 libgtk2.0-0 libidl0 libnspr4 libnss3 libpango1.0-0 libpng12-0
sudo apt-get install libstdc++6 libx11-6 libxft2 libxinerama1 libxrender1 libxt6 zlib1g
Teraz ładujemy dwa pakiety instalacyjne za pomocą poleceń
wget -c https://launchpad.net/ubuntu/+archive/primary/+files/kompozer-data_0.8~b3.dfsg.1-0.1ubuntu2_all.deb
wget -c https://launchpad.net/ubuntu/+archive/primary/+files/kompozer-dev_0.8~b3.dfsg.1-0.1ubuntu2_all.deb
Dla systemów 32-bitowych doładowujemy pakiet:
wget -c
https://launchpad.net/ubuntu/+archive/primary/+files/kompozer_0.8~b3.dfsg.1-0.1ubuntu2_i386.deb
A dla 64-bitowych doładowujemy pakiet
wget -c https://launchpad.net/ubuntu/+archive/primary/+files/kompozer_0.8~b3.dfsg.1-0.1ubuntu2_amd64.deb
Na koniec wydajemy polecenia instalacyjne:
sudo dpkg -i kompozer*.deb
sudo apt-get install -f
3 załadowane pakiety możemy usunąć z dysku. Kompozer jest zainstalowany. Program uruchamiamy poprzez menu startowe:
Logujemy się zdalnie poprzez ssh na komputerze uczniowskim jako administrator i wydajemy polecenia:
sudo apt-get install avr-libc
sudo apt-get install gcc-avr
sudo apt-get install binutils-avr
sudo apt-get install uisp
sudo apt-get install gdb-avr
sudo apt-get install avrdude
sudo apt-get install eclipse-cdt
Polecenia instalują niezbędne składniki. Następne polecenie dodaje ucznia do grupy plugdev, którą wykorzystamy do dostępu do portów USB:
sudo adduser uczen plugdev
Tworzymy plik reguł dostępu do portów USB. Najpierw uruchamiamy edytor nano z odpowiednią nazwą pliku:
sudo nano
/etc/udev/rules.d/81-avr-programator.rules
Zostanie otwarty pusty plik. Wklejamy do niego poniższy tekst (uwaga: dotyczy tylko programatorów usbasp!!!):
ATTRS{idVendor}=="16c0",
ATTRS{idProduct}=="05dc", MODE="0666", GROUP="plugdev"
Wpis ten określa regułę dostępu do urządzenia USB, którym jest nasz programator. Plik zapisujemy, naciskając kombinację klawiszy Ctrl+O, po czym wychodzimy z edytora nano kombinacją Ctrl+X.
Teraz musimy zrestartować podsystem USB oraz reguły dostępu, aby nasz plik został uwzględniony (można również zrestartować komputer). Wydajemy polecenia:
sudo service udev restart
sudo udevadm control --reload-rules
W kolejnym kroku musimy zalogować się okienkowo na koncie ucznia. Uruchamiamy program Eclipse i z menu wybieramy opcję:
Klikamy przycisk Add i w polu Location wprowadzamy adres:
http://avr-eclipse.sourceforge.net/updatesite/
W oknie dialogowym powinna pojawić się opcja AVR Eclipse Plugin. Zaznaczamy ją i klikamy przycisk Next. Następnie zatwierdzamy instalację dodatku.
Pozostaje nam jeszcze zainstalować programator. Wybieramy opcję:
W oknie dialogowym Preferences otwieramy sekcję AVR i AVRDude. Klikamy przycisk Add. Otworzy się dosyć rozległe okno wyboru programatora.
W polu Configuration Name wpisujemy USBasp.
Na liście Programmer hardware wyszukujemy i wybieramy opcję USBasp, http://www.fischl.de/usbasp/.
Klikamy przycisk Next. Okno zostanie zamknięte. Teraz wystarczy kliknąć przycisk Apply.
Konfiguracja Eclipse jest zakończona. Sposób korzystania z tego środowiska będzie opisany w materiałach dla koła informatyczno-elektronicznego.
Logujemy się zdalnie jako administrator na komputer uczniowski za pomocą ssh i wydajemy polecenie:
sudo apt-get install apache2 php5 mysql-client-5.5
mysql-server-5.5 php5-mysql
Poprawność instalacji sprawdzamy przeglądarką WWW, którą uruchamiamy na komputerze nauczycielskim. W pasku adresowym wpisujemy adres IP komputera, na którym został zainstalowany serwer Apache. Jeśli instalacja się powiodła, to otrzymamy stronę informacyjną.
Apache standardowo prezentuje pliki z katalogu /var/www/html. Jeśli uczniowie mają posiadać lokalny dostęp do tego katalogu, to należy zmienić mu uprawnienia:
sudo chmod -R 0777
/var/www/html
Teraz sprawdzamy konfigurację php. Usuwamy z katalogu /var/www/html plik index.html:
rm
/var/www/html/index.html
Uruchamiamy edytor nano i każemy mu utworzyć pusty plik index.php:
nano /var/www/html/index.php
W edytorze nano wpisujemy tekst:
<?php
phpinfo();
?>
Naciskamy klawisze Ctrl+O, aby zapisać plik na dysku; Ctrl-X, aby wyjść z edytora nano. Odświeżamy stronę w przeglądarce. Jeśli obsługa php jest włączona, to zobaczymy stronę z informacjami o konfiguracji php:
Plik index.php usuwamy, aby uczniowie mogli zapisywać swoje pliki html i php:
rm /var/www/html/index.php
Teraz przystępujemy do konfiguracji obsługi baz danych przez mysql. Jeśli nie określałeś haseł w trakcie instalacji, to teraz należy utworzyć hasło do konta administracyjnego dla mysql. Wydajemy polecenie:
mysqladmin -u root password twoje_hasło
Hasło należy zachować i chronić przed ujawnieniem uczniom. Gdy hasło administratora zostanie utworzone, logujemy się do serwera sql przez wydanie polecenia:
mysql -u root -ptwoje_hasło
Jeśli wszystko jest skonfigurowane poprawnie, to pojawi się napis:
Teraz należy utworzyć bazy danych, z których będą korzystali uczniowie na zajęciach. Ponieważ terminal lubuntu pracuje w systemie latin2, musimy ustawić w każdej tworzonej bazie danych ten właśnie system kodowania polskich znaków. Za monitem mysql> wpisujemy polecenia:
CREATE DATABASE baza1 DEFAULT CHARACTER SET latin2
COLLATE latin2_general_ci;
CREATE DATABASE baza2 DEFAULT CHARACTER SET latin2 COLLATE
latin2_general_ci;
...
CREATE DATABASE bazan DEFAULT CHARACTER SET latin2 COLLATE
latin2_general_ci;
Poleceń nie musimy przepisywać. Naciśnięcie strzałki w górę przywołuje ostatnio wydane polecenie, w którym zmieniamy jedynie nazwę bazy danych. Tworzymy tyle baz danych, ile będzie nam potrzebne. Należy zapamiętać sobie ich nazwy. Po utworzeniu baz danych tworzymy konta użytkowników i każdemu z nich przydzielamy odpowiednią bazę danych. Dla każdego użytkownika wpisujemy polecenie:
GRANT ALL ON
baza.* TO konto
IDENTIFIED BY 'hasło';
baza |
– | nazwa utworzonej wcześniej bazy danych |
konto |
– | nazwa konta użytkownika, pod którą będzie się on logował do serwera sql |
hasło |
– | hasło dla tworzonego konta |
Polecenie to utworzy konto o podanej nazwie i haśle dostępu oraz udostępni na tym koncie podaną bazę danych. Nazwy kont i hasła należy zapamiętać i udostępnić uczniom przed zajęciami. Dodatkowo wpisujemy:
GRANT FILE ON *.* TO konto IDENTIFIED BY
'hasło';
Dzięki temu uczeń będzie mógł wczytywać dane z plików
(potrzebne np. przy zadaniach maturalnych).
Wylogowujemy się z konta administracyjnego:
quit
Edytujemy plik:
sudo nano
/etc/apparmor.d/usr.sbin.mysqld
Na końcu przed klamrą zamykającą dopisujemy:
/tmp/ r,
/tmp/* rw,
Umożliwi to serwerowi mysql lokalny dostęp do plików w katalogi /tmp. Plik zapisujemy (Ctrl+O) i wychodzimy z edytora nano (Ctrl+X). Wydajemy polecenia:
sudo /etc/init.d/apparmor reload
service mysql restart
Konfiguracja serwera mysql jest zakończona.
I Liceum Ogólnokształcące |
Pytania proszę przesyłać na adres email: i-lo@eduinf.waw.pl
W artykułach serwisu są używane cookies. Jeśli nie chcesz ich otrzymywać,
zablokuj je w swojej przeglądarce.
Informacje dodatkowe