Korisne komande za kreiranje servera za ćaskanje na komandnoj liniji i uklanjanje neželjenih paketa u Linuxu


Evo nas sa sljedećim dijelom Linux Command Line savjeta i trikova. Ako ste propustili naš prethodni post o Linux trikovima, možete ga pronaći ovdje.

  1. 5 trikova Linux komandne linije

U ovom postu ćemo vam predstaviti 6 savjeta za komandnu liniju odnosno kreirajte razgovor na Linux komandnoj liniji koristeći naredbu Netcat, izvršite dodavanje kolone u hodu iz izlaza naredbe, uklonite siroče pakete iz Debiana i CentOS-a, nabavite lokalni i udaljeni IP iz naredbene linije, dobijete obojeni izlaz u terminalu i dekodirajte različite kodove boja i posljednju, ali ne najmanje važnu implementaciju hash oznaka u Linux naredbenoj liniji. Provjerimo ih jednu po jednu.

1. Kreirajte Linux Commandline Chat Server

Svi mi koristimo chat uslugu već duže vrijeme. Poznajemo Google chat, Hangout, Facebook chat, Whatsapp, Hike i nekoliko drugih aplikacija i integriranih chat servisa. Da li znate da Linux nc komanda može učiniti vaš Linux kutiju serverom za razgovor sa samo jednom linijom komande.

Šta je nc naredba u Linuxu i čemu služi?

nc je deprecijacija Linux netcat komande. Uslužni program nc se često naziva švicarskim nožem na osnovu broja njegovih ugrađenih mogućnosti. Koristi se kao alat za otklanjanje grešaka, alat za istraživanje, čitanje i pisanje na mrežnu vezu koristeći TCP/UDP, DNS provjeru naprijed/nazad.

Uočljivo se koristi za skeniranje portova, prijenos datoteka, backdoor i slušanje portova. nc ima mogućnost da koristi bilo koji lokalni neiskorišteni port i bilo koju lokalnu mrežnu izvornu adresu.

Koristite naredbu nc (Na serveru sa IP adresom: 192.168.0.7) da trenutno kreirate server za razmjenu poruka na komandnoj liniji.

nc -l -vv -p 11119

Objašnjenje gornjih komandnih prekidača.

  1. -v : znači Opširno
  2. -vv : opširnije
  3. -p : Broj lokalnog porta

Možete zamijeniti 11119 s bilo kojim drugim brojem lokalnog porta.

Zatim na klijentskoj mašini (IP adresa: 192.168.0.15) pokrenite sljedeću naredbu da inicijalizirate sesiju ćaskanja na stroju (gdje je pokrenut server za razmjenu poruka).

nc 192.168.0.7 11119

Napomena: Možete prekinuti sesiju ćaskanja pritiskom na tipku ctrl+c, a nc chat je usluga jedan na jedan.

2. Kako zbrojiti vrijednosti u koloni u Linuxu

Kako zbrojiti numeričke vrijednosti kolone, generirane kao izlaz naredbe, u hodu u terminalu.

Izlaz naredbe 'ls -l'.

ls -l

Obratite pažnju da je druga kolona numerička koja predstavlja broj simboličkih veza, a 5. kolona je numerička koja predstavlja veličinu datoteke. Recimo da moramo u hodu zbrojiti vrijednosti petog stupca.

Navedite sadržaj 5. kolone bez štampanja bilo čega drugog. Za ovo ćemo koristiti naredbu „awk“. „$5“ predstavlja 5. kolonu.

ls -l | awk '{print $5}'

Sada koristite awk da odštampate zbir izlaza 5. kolone tako što ćete ga razmjenjivati.

ls -l | awk '{print $5}' | awk '{total = total + $1}END{print total}'

Kako ukloniti siroče pakete u Linuxu?

Orphan paketi su oni paketi koji su instalirani kao zavisnost od drugog paketa i više nisu potrebni kada se originalni paket ukloni.

Recimo da smo instalirali paket gtprogram koji je ovisio o gtdependency. Ne možemo instalirati gtprogram osim ako nije instaliran gtdependency.

Kada uklonimo gtprogram on neće ukloniti gtdependency prema zadanim postavkama. A ako ne uklonimo gtdependency, ostat će kao Orpahn paket bez veze s bilo kojim drugim paketom.

yum autoremove                [On RedHat Systems]

apt-get autoremove                [On Debian Systems]

Uvijek biste trebali ukloniti Orphan pakete da bi Linux kutija bila napunjena samo potrebnim stvarima i ničim drugim.

4. Kako dobiti lokalnu i javnu IP adresu Linux servera

Da biste dobili lokalnu IP adresu, pokrenite skriptu ispod jedne linije.

ifconfig | grep "inet addr:" | awk '{print $2}' | grep -v '127.0.0.1' | cut -f2 -d:

Morate imati instaliran ifconfig, ako ne, apt ili yum potrebne pakete. Ovdje ćemo slati izlaz ifconfig sa naredbom grep da pronađemo string “intel addr: ”.

Znamo da je komanda ifconfig dovoljna za izlaz lokalne IP adrese. Ali ifconfig generiše mnogo drugih izlaza i naša briga je da generišemo samo lokalnu IP adresu i ništa drugo.

ifconfig | grep "inet addr:"

Iako je izlaz sada više prilagođen, ali moramo filtrirati samo našu lokalnu IP adresu i ništa više. Za ovo ćemo koristiti awk da ispišemo drugu kolonu samo tako što ćemo je poslati gornjom skriptom.

ifconfig | grep “inet addr:” | awk '{print $2}'

Iz gornje slike je jasno da smo jako prilagodili izlaz, ali još uvijek ne ono što želimo. Adresa povratne petlje 127.0.0.1 je još uvijek tu u rezultatu.

Koristimo -v zastavicu sa grep koja će ispisati samo one redove koji se ne podudaraju s onim navedenim u argumentu. Svaka mašina ima istu adresu povratne petlje 127.0.0.1, pa koristite grep -v da odštampate one redove koji nemaju ovaj string, tako što ćete ga dopremati sa gornjim izlazom.

ifconfig | grep "inet addr" | awk '{print $2}' | grep -v '127.0.0.1'

Gotovo smo generirali željeni izlaz, samo zamijenite string (addr:) od početka. Koristićemo naredbu cut za štampanje samo kolone dva. kolona 1 i kolona 2 nisu odvojene tabulatorom već (:), tako da moramo koristiti graničnik (-d ) slanjem gornjeg izlaza.

ifconfig | grep "inet addr:" | awk '{print $2}' | grep -v '127.0.0.1' | cut -f2 -d:

Konačno! Željeni rezultat je generiran.

5. Kako obojiti Linux terminal

Možda ste vidjeli obojeni izlaz u terminalu. Također biste znali da omogućite/onemogućite izlaz u boji u terminalu. Ako ne, možete slijediti dolje navedene korake.

U Linuxu svaki korisnik ima datoteku '.bashrc', ova datoteka se koristi za rukovanje izlazom vašeg terminala. Otvorite i uredite ovu datoteku po svom izboru. Imajte na umu da je ova datoteka skrivena (tačka na početku datoteke znači skrivena).

vi /home/$USER/.bashrc

Uvjerite se da su sljedeći redovi ispod bez komentara. tj. ne počinje sa #.

if [ -x /usr/bin/dircolors ]; then
    test -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dirc$
    alias ls='ls --color=auto'
    #alias dir='dir --color=auto'
    #alias vdir='vdir --color=auto'

    alias grep='grep --color=auto'
    alias fgrep='fgrep --color=auto'
    alias egrep='egrep --color=auto'
fi

Jednom gotovo! Sačuvaj i izađi. Da bi promjene stupile na snagu, odjavite se i ponovo se prijavite.

Sada ćete vidjeti da su datoteke i mape navedene u različitim bojama ovisno o vrsti datoteke. Za dekodiranje koda boje pokrenite naredbu ispod.

dircolors -p

Pošto je izlaz predugačak, dopuštamo cevovodu izlaz sa manje komande tako da dobijemo izlaz jedan po jedan ekran.

dircolors -p | less

6. Kako heširati Linux komande i skripte

Koristimo hash oznake na Twitteru, Facebooku i Google Plus (možda na nekim drugim mjestima, nisam primijetio). Ove hash oznake olakšavaju drugima da traže hash tag. Vrlo malo njih zna da možemo koristiti hash tag u Linux komandnoj liniji.

Već znamo da se # u konfiguracijskim datotekama i većini programskih jezika tretira kao red za komentare i isključen je iz izvršavanja.

Pokrenite naredbu, a zatim kreirajte hash oznaku naredbe kako bismo je kasnije mogli pronaći. Recimo da imamo dugačku skriptu koja je izvršena u tački 4 iznad. Sada kreirajte hash tag za ovo. Znamo da ifconfig može pokrenuti sudo ili root korisnik, stoga djeluje kao root.

ifconfig | grep "inet addr:" | awk '{print $2}' | grep -v '127.0.0.1' | cut -f2 -d: #myip

Gornja skripta je hash označena sa "myip". Sada potražite hash oznaku u reverse-i-serach (pritisnite ctrl+r), u terminalu i upišite ‘myip’. Možete ga izvršiti i odatle.

Možete kreirati onoliko hash oznaka za svaku komandu i pronaći ih kasnije koristeći reverse-i-search.

To je sve za sada. Naporno smo radili na stvaranju zanimljivih i edukativnih sadržaja za vas. Šta mislite kako nam ide? Svaki prijedlog je dobrodošao. Možete komentirati u polju ispod. Ostanite povezani! Svaka čast.