BASH
-
- Za pośrednictwem PuTTy połącz się ze swoim serwerem
- Wykorzystując edytor („mcedit”, „vi”, „nano”, „joe”) utwórz nowy plik w którym umieścimy kod BASH do tworzenia nowych użytkowników.
- Przykładowy kod BASH do czytania parametru do programu oraz danych w programie
#!/bin/bash echo „Podaj dane i zakoncz ENTER: „ read dane echo „Wprowadzono dane: ” $dane
Zmiana uprawnień:
chmod +x nazwa_pliku
Przykład wywołania:
./nazwa_pliku
-
- Przygotuj program pozwalający utworzyć użytkownika w LDAP na podstawie 3 danych:
- Imię
- Nazwisko
- Hasło
- Program musi stworzyć konto użytkownika – powinno zawierać 1 literę imienia i całe nazwisko (np. jkowalski). UWAGA !! nazwa konta powinna być z małych liter.
- UIDNumber to wartość po której system rozpoznaje użytkownika – musi być unikatowe. Dlatego powinno mieć następny numer UIDNumber (następny wolny z powyżej 10000 – ten miał user1)
- Przykład pobierania ostatniego UIDNumber z LDAP (największa wartość)
- Przygotuj program pozwalający utworzyć użytkownika w LDAP na podstawie 3 danych:
zmienna=$(ldapsearch -x -LLL uidnumber | grep "uidNumber" | cut -d" " -f2 | sort -n -r | head -1) echo $zmienna zmienna=$[$zmienna+1] echo $zmienna
-
- Nowe konto powinno mieć przypisany katalog domowy w /home/nazwa_użytkownika , gdzie nazwa_użytkownika jest zmienną z programu (patrz pkt. 5)
- Powinien zostać utworzony taki właśnie katalog na dysku wraz z przypisaniem uprawnień chmod i chown (UWAGA – dopiero po poprawnym wykonaniu zakładania konta w LDAP !!!!!). Do sprawdzenie poprawności wykonania poprzedniej komendy służy zmienna $? I można sprawdzić poleceniem if :
if [ "$?" = "0" ] then polecenie_1 polecenie_2 polecenie_3 fi
- Tworzenie katalogu, zmiana uprawnień i zmiana właściciela:
mkdir /home/katalog_użytkownika chmod 700 /home/katalog_użytkownika chown $zmienna:100 /home/katalog_użytkownika
- Hasło jest w polu LDAP o nazwie „userpassword”
- Kiedy program przygotuje plik z informacją o nowym użytkowniku (podobny plik ja w laboratorium LDAP1 dla użytkownika user1 patrz pkt. 15 laboratorium LDAP1) wtedy można utworzyć go w LDAP przy pomocy poniższego polecenia. Polecenie dodawania użytkownika po utworzeniu danych wsadowych ldif w pliku:
ldapmodify -a -x -D cn=admin,dc=lab,dc=pl -W -f nazwa_pliku
- Przykłady kodów BASH
- Czytanie ze standard IN (wprowadzanie danych do skryptu) z wyświetlaniem ich
read nazwisko echo $nazwisko echo -n "Podaj nazwisko: " read nazwisko echo "Wprowadzono: "$nazwisko
- Zapisanie informacji do pliku w trybie „nadpisywania danych”
echo "dn: $user,dc=lab,dc=pl" > /root/katalog/plik
- Zapisanie informacji do pliku w trybie „doklejania danych”
echo "uid: $LoginName" >> /root/katalog/plik echo "userpassword: $UserPassword" >> /root/katalog/plik
- Zamiana znaków (duże na małe)
zmienna=$(echo $zmienna1 | tr [:upper:] [:lower:])
- Wycięcie jednej litery z ciągu
litera=$(echo $imie | cut -c 1)
- Sklejanie ciągów
konto=$litera_imie$nazwisko
- Pierwsza litera duża z ciągu
imie="marek"
echo ${imie^}
wynik:
Marek
- Pierwsze litery w wyrazach ciągu znaków
ciag="marek kowalski inżynier"
ciag=( $ciag ) # zamiana na wektor 3 elementowy
echo ${ciag[@]^}
wynik:
Marek Kowalski Inżynier
Algorytm programu