Wszystkie wpisy, których autorem jest admin

Gigabit switch Linksys SRW2024 czy warto?

Pierwsze zetknięcie ze switchem SRW2024 powoduje niesmak, zarządzanie przez www pod linuksem wydaje się nie działać w Firefox'ie ani Operze, zarządzanie przez telnet/ssh jest tragicznie ubogie. Ale okazuje się, że to nie wszystko. Po zalogowaniu poprzez telnet/ssh wystarczy wcisnąć CTRL-Z i wpisać lcli i możemy już zarządzać switchem w stylu Cisco:
Tworzenie VLANa:
# configure
(config)# vlan database
(config-vlan)# vlan 4
Sprawdzenie jakie VLANy istnieją:
#show vlan
Dodanie portu do VLANa:
# configure
(config)# interface range ethernet g2-4
(config-if)# switchport access vlan 4
(config-if)# end
Sprawdzenie:
# show interfaces switchport ethernet g2

Dodanie portu tagowanego do VLANa:

(config)# interface range ethernet g2

gigabit(config-if)# switchport mode trunk

gigabit(config-if)# switchport trunk allowed vlan add 3

Kasowanie vlanu nietagowanego:
gigabit# configure
gigabit(config)# interface range ethernet g24
gigabit(config-if)# no switchport access vlan

Debian: apt-get nie może zweryfikować klucza?

Jeśli po przy wykonaniu apt-get update pojawia się:

W: There is no public key available for the following key IDs:
9AA38DCD55BE302B

(może tak być po upgrade dysktrybucji do lenny), należy wykonać:
gpg --keyserver wwwkeys.eu.pgp.net --recv 9AA38DCD55BE302B
gpg --export --armor 9AA38DCD55BE302B | apt-key add -

Na
W: There is no public key available for the following key IDs: 4D270D06F42584E6
pomaga:
# apt-get install debian-keyring debian-archive-keyring
# apt-key update

Instalacja linuksa w katalogu

Nowy system można zainstalować programem debootstrap w danym katalogu, z działającego systemu, bez restartu.

debootstrap --arch i386 lenny /mnt http://ftp.debian.org/debian/

Używa się tego aby móc zrobić chroot i pracować w nowym systemie, np.

chroot /mnt

Aby udostępnić takiemu systemowi /proc czy /dev lub inny katalog, należy do /etc/fstab głównego systemu dodać np.

/proc /mnt/proc proc defaults 0
/dev /mnt/dev none bind 0
/home /mnt/home none bind 0

Jeśli chcemy aby taki system mógł być samodzielny musimy jeszcze zainstalować jądro i bootloader.

Obsługa dwóch monitorów

Ustawienie zewnętrznego monitora na lewo od wbudowanego i ustawienie mu rozdzielczości:

xrandr --output VGA-0 --mode 1280x1024 --left-of LVDS

Dodanie rozdzielczości:

xrandr --addmode VGA-0 1280x1024

Ustawienie wyświetlania na obu monitorach tego samego:

xrandr --output VGA-0 --same-as LVDS

Wyłączenie zewnętrznego monitora:

xrandr --output VGA-0 --off

Włączenie

xrandr --output VGA-0 --auto

Przykłady wykorzystania polecenia find

Skasowanie wszystkich plików starszych niż 15 dni (21600=60*24*15)

find /mnt/backup/backup* -cmin +21600 -exec rm -r {} \;

Pokaż pliki dłuższe od 4096 bajtów
find . -type f -size +4096c
Pokaż pliki dłuższe od 386kB
find . -type f -size +386k
Pokaż pliki krótsze od 100MB
find . -type f -size -100M

Zmiana we wszystkich plikach index.php w podkatalogach $z na _$GET[‚z’] (czyli poprawienie użycia zmiennej przy ustawieniu na serwerze register_globals=off)

find */index\.php -exec sed -i 's/$z/$_GET['z']/' {} \;

find / -type d -exec ls -ld {} \; >plik
cat plik |awk '{print $5 " " $9}'|sort -n

Polskie literki po imporcie

w /etc/mysql/my.ini:

[mysqld]

collation_server=utf8_unicode_ci
character_set_server=utf8
# To powoduje, że serwer wymusza kodowanie

#i nie trzeba w php stosować set names utf8 po każdym połączeniu.
skip-character-set-client-handshake

Konfiguracja połączenia z Internetem przez sieć komórkową

Do połączenia z Internetem przez sieć komórkową potrzebny jest demon pppd.

Uruchamiamy go np. tak:

/usr/sbin/pppd /dev/ttyUSB0 921600 connect "chat -V -f /etc/ppp/chat.plusgsm" crtscts modem -detach noccp noauth defaultroute debug ipcp-accept-remote ipcp-accept-local noipdefault lcp-echo-failure 1000

gdzie plik /etc/ppp/chat.plusgsm zawiera komendy AT wysyłane do modemu:

'' ATZ
OK AT+CGDCONT=1,"IP","www.plusgsm.pl"
OK "ATD*99***1#"
CONNECT ''

Jeśli chcemy aby łącze było podnoszone automatycznie po rozłączeniu możemy wywołanie skryptu z wywołaniem pppd umieścić w /etc/inittab, dodając np. na końcu linię:

PP:123456:respawn:/usr/local/bin/gprs.plus.usb

Jeśli karta SIM ma ustawiony PIN należy ustawić go w skrypcie, np. tak:

'' ATZ
TIMEOUT 10
OK AT+CPIN=3141
ERROR AT+CGDCONT=1,"IP","www.plusgsm.pl"
OK "ATD*99***1#"
CONNECT ''

Łącze zapasowe – automatyczna zmiana bramy domyślnej

Najprostszą metodą sprawdzania, czy działa łącze, w przypadku braku obsługi protokołu dynamicznego routingu, jest pingowanie hosta i podejmowanie decyzji w zależności od wyników tego testu.

Prosty skrypt może wyglądać tak:

czy=0
ping -c2 156.17.8.1 &&
{
# dziala
echo "pinga";
czy=1
/sbin/ip r |/bin/grep default|/bin/grep -v "10.2.2.1" &&
{
echo "zmieniamy na dialog";
/sbin/ip r d default
/sbin/ip r a default via 10.2.2.1
/bin/date >>/var/log/zmiana.log 2>&1
/bin/echo "wstalo" >>/var/log/zmiana.log 2>&1
}

}

if [ $czy -eq 0 ]
then
# nie dziala
echo "nie pinguje";
/sbin/ip r |/bin/grep default|/bin/grep -v ppp &&
{
echo "zmieniamy na iplusa";
/sbin/ip r d default
/sbin/ip r a default dev ppp0
/bin/date >>/var/log/zmiana.log 2>&1
/bin/echo "awaria" >>/var/log/zmiana.log 2>&1
}

fi

Wcześniej musimy routing do badanego hosta (156.17.8.1) ustawić statycznie przez łącze główne.