sub usage(); ## prototype of usage() function usage() if (! GetOptions( .... )) usage() if ($usage);
Wszystkie wpisy, których autorem jest Krzysztof Jozwiak
Przebieg sesji POP3
Czym jest POP3?
POP3 (Post Office Protocol version 3) jest tekstowym protokołem internetowym z warstwy aplikacji. Umożliwia odbiór poczty elektronicznej ze zdalnego serwera do lokalnego komputera poprzez połączenie TCP/IP. Komunikacja POP3 może zostać zaszyfrowana dzięki wykorzystaniu protokołu SSL, pozwala to na uniknięcie wysyłania hasła otwartym tekstem jak to dzieje się standardowo.
Awk – język do zadań tekstowych
Usunięcie powtórzeń z z listy
Jeżeli mamy posortowaną listę (lub chcemy ją posortować) w jakimś pliku (albo przekażemy ją ze strumienia) możemy w łatwy sposób pozbyć się powtórzeń:
cat przenosiny3.txt | awk 'BEGIN { tmp=""} {if (tmp != $0) print $0; tmp=$0}' > przenosiny4.txt
Opis skryptu: Skrypt jest prosty, tworzymy na początku zmienną tmp która jest pusta. Przy analizie każdego wiersza sprawdzamy, czy zmienna tmp nie jest równa wartości $1, jeżeli nie jest równa, wyświetla ją. Analizę każdego wiersza kończy podstawienie do zmiennej tmp wartości bierzącego wiersza.
vio: padmin i wykonywanie polecen root-a
Czasem przychodzi potrzeba wykonania polecenia w ograniczonej powłoce padmi-na jako root. Najprostszym sposobem jest użycie sztuczki z „print”:
$ whoami padmin $ bootinfo -s hdisk0 rksh: bootinfo: not found. $ print bootinfo -s hdisk0 | oem_setup_env 70006
Bash i zmienne środowiskowe
Dzisiaj bardzo krótka notatka. Zmienne środowiskowe są potężnym sposobem na współdzielenie konfiguracji między skryptami i programami napisanymi w różnych językach. Krok pierwszy jest wspólny dla wszystkich języków i polega na wyeskportowaniu zmiennej środowiskowej. Na przykład wpis poniżej umieszczamy w pliku .bashrc (jeżeli używamy akurat Bash-a):
EXPORT SOFTA_USER="USER1"
Krok drugi to skorzystanie z zmiennej w skrypcie. W przypadku Bash-a to po prostu użycie zmiennej:
user@ubuntu: head -n 3 helper_softa.sh #/bin/bash USER=$SOFTA_USER
Jak widać to proste, jutro napisze jak skorzystać z takich zmiennych w Perl-u.
Mutt i zdalne skrzynki pop oraz imap
Program mutt może zostać użyty do testwania poprawności konfiguracji serwerów pop3 i imap (także w wersji z szyfrowaniem SSL czyli pop3s i imaps). Należy tylko odpowiednio wskazać „plik” w którym znajduje się poczta:
mutt -f pop://user@serwer[:port] mutt -f pops://user@serwer[:port] mutt -f imap://user@serwer[:port] mutt -f imaps://user@serwer[:pop]
gdzie user to oczywiście nazwa użytkownika a serwer to adres serwera pocztowego danej usługi. Jak widać opcjonalnie można podać numer portu usługi.
sprawdzenie nazwy i wersji serwera DNS
Jest takie fajne narzędzie, które pozwala sprawdzić nazwę i wersję serwera DNS, fpdns. Robi to na podstawie odcisków palców (tzn wysyła określone zapytania, które w zależności od różnicach w odpowiedziach określa oprogramowanie).
root@ubuntu:~# fpdns localhost fingerprint (localhost, 127.0.0.1): ISC BIND 9.2.3rc1 -- 9.6.1-P1 [recursion enabled] fingerprint (localhost, 0:0:0:0:0:0:0:1): ISC BIND 9.2.3rc1 -- 9.6.1-P1 [recursion enabled]
Jak sprawdzić wersję serwera DNS zdalnie
Jak chcesz sprawdzić wersję serwera DNS zdalnie, możesz skorzystać z komendy dig -t txt -c chaos VERSION.BIND @DNS_SERVER
Ubuntu: lista pakietów w strawnej dla skryptów postaci
Czasami potrzeba pobrać listę pakietów w przyjaznej dla skryptów postaci. W takim przypadku możemy skorzystać z polecenia dkpg-query z opcją -W i -f, które pozwalają określić format wyjścia, przykładowa komenta:
dpkg-query -W -f='${Package};${Version};${Status};${Maintainer};\n'
Więcej można uzyskać dzięki man dpkg-query
Linux i DSL Dialog-u
W moim rodzinnym domu mamy łącze DSL z dialogu, jako że potrzebowałem podłączyć się z mojego linuksowego lapka do firmowej sieci musiałem skonfigurować to połączenie. Sprawa wygląda prosto:
- odpalamy program: pppoeconfig, który konfiguruje nam połączenie,
- połączenie uruchamiamy poleceniem pon nazwa_polaczenia, podobnie kończymy poff nazwa_polaczenia (jeżeli jest tylko jedno wystarczy samo poff),
- plog pozwala przejrzeć logi demona pppd
I tyle…