Skocz do zawartości

Skrypt W Bashu


skwarosz

Rekomendowane odpowiedzi

Witam mam do napisania pewien skrypcik w bashu i brakuje mi takiej opcji tzn skryptu, który by wyszukiwał pliki przekraczające określoną wielkość wiem, że chyba trzeba użyć find.

Oraz mam coś takiego

 

function zabijanieProcesow 
{ 
echo "Aktualnie zalogowany uzytkownik to:" `whoami` 

ps aux | grep `whoami` 

echo "Podaj numer procesu który chcesz zabić" 

read a 

kill -9 $a 
}

i teraz mam problem w jaki sposób zrobić żeby osoba która by była rootem mogła zabijać procesy innych użytkowników

 

Oraz ostatnie osoba która jest zalogowana żeby sprawdzało czy jest rootem jeżeli tak to żeby się pokazywały opcje w kodzie a jeżeli nie jest rootem to te opcje w menu byłyby ukryte

 

oto cały skrypt

 

#!/bin/bash 

function addUzytkownik 
{ 
echo "Podaj nazwe uzytkownika" 
read a 
sudo adduser $a 

echo "Podaj hasło dla użytkownika" 
sudo passwd $a 
} 


function delUzytkownik 
{ 
echo "Podaj nazwe uzytkownika do usuniecia" 
read a 

sudo deluser $a 

} 


function zabijanieProcesow 
{ 
echo "Aktualnie zalogowany użytkownik to:" `whoami` 

ps aux | grep `whoami` 

echo "Podaj numer procesu ktory chcesz zabic" 

read a 
kill -9 $a 
} 

function wyszukiwanie 
{ 
echo "test" 
} 

function sprawdzanieMiejsca 
{ 
echo "Dostepne miejsce na dysku" 
df -h 

echo "Wcisnij 1 jezeli chcesz wyszukac plikow przekraczajacych dany rozmiar lub 2 aby zakonczyc program" 


select b in Wyszukiwanie Wyjscie 
do 
case $b in 
"Wyszukiwanie") wyszukiwanie;; 
"Wyjscie") exit;; 
*) echo "Wybierz jeszcze raz" 
esac 
break 
done 
} 


function konfiguracjaSieciowa 
{ 
echo "Konfiguracja sieciowa" 
ifconfig 
} 

function wyszukiwaniePlikow 
{ 
echo "Podaj katalog w jakim chcesz szukac pliku" 

read kat 

echo "Podaj nazwe pliku" 

read plik 

find $kat | grep $plik 

} 

function konfiguracjaSieciReczna 
{ 

echo "Podaj urzadzenie sieciowe" 

read a 

echo "Podaj adres ip jaki chcesz dodac do sieci" 

read b 

echo "Podaj maske sieci" 

read c 

echo "Podaj adres rozgloszeniowy" 

read d 


sudo ifconfig $a $b netmask $c broadcast $d up 

ifconfig 

} 

function sledzenieSieci 
{ 

echo "Podaj urzadzenie sieciowe" 

read a 

sudo tcpdump -i $a 
} 

function tabelaRoutingu 
{ 

netstat -arpa 

} 

function dodanieDoRoutingu 
{ 
echo "Podaj adres sieci jaki chcesz dodac" 

read a 

echo "Podaj maske tej sieci" 

read b 

echo "Podaj gateway" 

read c 

echo "Podaj urzadzenie sieciowe" 

read d 

route add -net $a netmask $b gw $c $d 
netstat -arpa 
} 

function blokowanieRuchuSieciowego 
{ 

sudo iptables -P INPUT DROP 
sudo iptables -P OUTPUT DROP 
sudo iptables -P FORWARD DROP 
} 

i=1 

while [ $i ] 
do 
echo " " 
echo "Aktualnie zalogowany uzytkownik to: `whoami`" 
echo " " 
echo "Wybierz program, którego chcesz użyć" 

select b in DodajUzytkownika UsunUzytkownika ZabijanieProcesu \
                SprawdzanieDostepnegoMiejscaNaDysku KonfiguracjaSieciowa \
                WyszukiwaniePlikow ReczneKonfigurowanieSieci SledzenieSieci \
                TabelaRoutingu BlokowanieRuchuSieciowego DodawanieDoRoutingu \
                Wyjscie 
do 
case $b in 
"DodajUzytkownika") addUzytkownik;; 
"UsunUzytkownika") delUzytkownik;; 
"ZabijanieProcesu") zabijanieProcesow;; 
"SprawdzanieDostepnegoMiejscaNaDysku") sprawdzanieMiejsca;; 
"KonfiguracjaSieciowa") konfiguracjaSieciowa;; 
"WyszukiwaniePlikow") wyszukiwaniePlikow;; 
"ReczneKonfigurowanieSieci") konfiguracjaSieciReczna;; 
"SledzenieSieci") sledzenieSieci;; 
"TabelaRoutingu") tabelaRoutingu;; 
"BlokowanieRuchuSieciowego") blokowanieRuchuSieciowego;; 
"DodawanieDoRoutingu") dodanieDoRoutingu;; 
"Wyjscie") exit;; 
*) echo "źle wybrałeś" 

esac 
break 
done 
clear 
done

Odnośnik do komentarza
Udostępnij na innych stronach

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
×
×
  • Dodaj nową pozycję...