czwartek, 29 listopada 2012

Wyłączenie sprawdzania aktualizacji w Fedora

Zdarza się, że mamy limitowany dostęp do internetu i nie koniecznie występuje potrzeba regularnego sprawdzania dostępności aktualizacji. Jako, że pliki z informacjami o podstawowych repozytoriach ważą w sumie 15MB, a domyślnie aktualizacje sprawdzane są co 2 - 3 dni, to walczymy o miesięczny transfer rzędu 200MB.
Aby wyłączyć sprawdzanie aktualizacji należy wyedytować plik: /etc/yum/pluginconf.d/refresh-packagekit.conf zmieniając: enalbled=1 na enabled=0

Uruchamiamy program: pkg-prefs i wprowadzamy stosowne poprawki.

UPDATE:
W Fedora 18 narzędzie pkg-prefs nie jest już dostępne. Skuteczną metodą rozwiązania problemu automatycznego odświeżania bazy pakietów będzie usunięcie paczki, będącej źródłem całego kłopotu:
yum remove PackageKit-yum-plugin

poniedziałek, 12 listopada 2012

ClockworkMod Tether (no root) dla Linuksa - Fedora way

Zdarza się, że zainstalujemy eksperymentalną wersję ROMu, bez działającego tetheringu, lub wersja branodwana Androida nie dostarcza takiej funkcjonalności, a nie bardzo chcemy się z nią rozstać. Cóż wówczas zrobić aby móc skorzystać z dobrodziejstwa zakupionego z telefonem pakietu internetowego?
Z pomocą przychodzi ClockworkMod Tether (no root), na który składa się część kliencka na komputer oraz aplikacja instalowana na telefonie.

Wszystko pięknie tylko na Linksa nie otrzymujemy gotowej apki, ale paczkę z kodem źródłowym. Ciśnie się wówczas na myśl znane wszystkim hasło: "Linuks - u mnie działa". No i faktycznie działa, tyle, że z małymi przeszkodami.

Kompilujemy standartowo: ./configure
make
ale w trkacie kompilacji wychodzi, że brakuje nam pliku stropts.h. Krótkie poszukiwania: yum whatprovides */stropts.h i już wiemy, że gdzieś coś takiego jest i dalej zmierzamy już prosto do działającego programu: yum install gcc-c++ arm-gp2x-linux-glibc
ln -s /usr/arm-gp2x-linux/include/stropts.h /usr/include/bits/
ln -s /usr/arm-gp2x-linux/include/stropts.h /usr/include/
ln -s /usr/arm-gp2x-linux/include/bits/xtitypes.h /usr/include/bits/


Póki co aplikacja sprawdza się znakomicie i uratuje mi studia ;).

sobota, 10 listopada 2012

Katalog tymczasowy dla Vim'a

Zdarza się, że nie chcemy przechowywać plików tymczasowych w katalogu roboczym projektu. Niewiele edytorów po za Vimem pozostawia nam inny wybór niż zupełnie z nich zrezygnować i robić kopie ręcznie... wyłączyć pliki wymiany (.swp) w Vim można poleceniem: :set noswapfile jednak po co tak robić, jeśli dopisując kilka wierszy w vimrc jesteśmy w stanie zachować "czystość" katalogu roboczego i kopie tymczasowe edytowanych plików:
"ustaw katalog swap dla plików tymczasowych
if has("win32") || has("win64")
   set directory=$TMP
else
   set directory=/tmp
end
Oczywiście katalog /tmp można wymienić na dowolny katalog, np. $HOME/.vim_tmp, itp.

czwartek, 8 listopada 2012

Tryb wsadowy MySQL

Często trzeba odpalić skrypt i czekać dłuuugie minuty, aż prompt się "namyśli" - gorzej zapuszczać co chwilę wiele interaktywnych procesów ładowania danych do bazy. Można by w ten czas spożytkować lepiej... herbata, blog, albo poczytać literaturę fachową ;). Niezmiernie przydatny w tym celu okazuje się tryb wsadowy, który umożliwia podanie danych logowania w wierszu poleceń: mysql "bazaDanych" --user="login" --password="hasło" < plik.sql

poniedziałek, 5 listopada 2012

Usuwanie wszystkich tabel w bazie MySQL

Usuwanie tabel w bazie bez jej drop'owania, może być kłopotliwe, ze względu na więzy integralności pomiędzy rekordami w tabelach.

Na szczęście usuwanie można wykonać szybko i bezboleśnie. Jedyne co trzeba zrobić to włączyć na chwilę ignorowanie sprawdzania więzów integralności pomiędzy kluczami obcymi. Robimy to następującym poleceniem:


SET FOREIGN_KEY_CHECKS = 0;
DROP TABLE IF EXISTS tabela1, tabela2, ..., tabelaN;


Easy peasy :).

sobota, 3 listopada 2012

Przywracanie ustawień fabrycznych w OpenWrt

Oto kolejny wpis z cyklu OpenWrt i moje zabawki :)

A więc namieszaliśmy w ustawieniach albo zapełniliśmy już pamięć routera do granic możliwości i nie bardzo wiemy co dalej zrobić... a może mały reset?
Z resetem bywa różnie... czasem się uda, a potem nie wiadomo co dalej... bo co zrobić gdy router nie chce się uruchomić? Flashować ponownie? A może da się jakoś łatwiej?
A no da się :).

Co będzie potrzebne?
  1. Komputer z:
    • kartą sieciową ethernet
    • zainstalowanym klientem telnet oraz ssh
    • nasz ulubiony kabelek RJ45
  2. Router z oprogramowaniem OpenWrt
Opis metody:
  1. Logujemy przez ssh do routera
  2. Wpisujemy polecenia:
    firstboot
    reboot
  3. Podłączamy kabel ehernet w komputerze oraz portu LAN 1 na routerze
  4. Ustawiamy adres karty ethernet, używanej do łączenia się z routerem na statyczny adres 192.168.1.11 z maską podsieci 255.255.255.0
  5. Po uruchomieniu logujemy się do routera poleceniem:
    telnet 192.168.1.1login: root
    hasło: (puste)
  6. Od tej pory możemy dalej mieszać :)

piątek, 2 listopada 2012

Linksys wrt54g3gv2-vf unbricking


Jest to początek serii wpisów dotyczących konfiguracji OpenWrt na routerze Liksys wrt54g3gv2-vf.
Jako, że każda przygoda zaczyna się od flashowania ROM/firmware tudzież częstego jego "ratowania" po wykonaniu nieprzewidywalnych modyfikacji, postanowiłem rozpocząć cykl od niezawodnej (dla tego urządzenia) metody flashowania firmware'u. Zupełnie jak w przypadku nauki jazdy na nartach - trzeba nauczyć się prawidłowo upadać i wstawać ;).
W wymieniony tutaj sposób można sflashować każdy soft (również oryginalny), nawet w przypadku braku dostępu do panelu administracyjnego w urządzeniu (reset urządzenia z powikłaniami, zapomniane hasło czy też nieudane flashowanie).

Co będzie potrzebne?

  1. Komputer z:
    • kartą sieciową ethernet
    • zainstalowanym klientem telnet oraz ssh
    • zainstalowanym klientem tftp (trivial FTP) - np tftp na linuksa
  2. Oprogramowanie routera (np. OpenWrt) ze strony openwrt.org
  3. Router pasujący do oprogramowania
  4. Przewód RJ45 również będzie przydatny
Opis metody: Sposobem na przywrócenie do życia naszego routera jest słynna metoda 30/30/30. Zalecam przeczytanie tego artykułu do końca przed rozpoczęciem unbrickingu celem nie zmarnowania czasu (po prostu uda się za pierwszym razem). Dodam tylko, że nie jest to oficjalna metoda, a autor tego poradnika (tudzież ja) nie ponosi żadnej odpowiedzialności za dalsze szkody (pośrednie bądź bezpośrednie) wynikłe z zastosowania tej metody.Kroki konieczne do sflashowania firmare:

  1. Ustaw adres karty ethernet, której użyjesz do łączenia się z routerem na statyczny adres 192.168.1.11 z maską podsieci 255.255.255.0
  2. Podłącz kabel ehernet w komputerze oraz portu LAN 1 na routerze
  3. Włącz router
  4. Wciśnij przycisk reset i trzymaj tak przez 30 sekund
  5. Nie puszczając przycisku reset odłącz zasilanie i poczekaj 30 sekund nieprzerwanie trzymając wciśnięty przycisk reset
  6. Nadal trzymając wciśnięty przycisk reset podłącz zasilanie do routera i poczekaj 30 sekund
  7. Trzymając wciśnięty przycisk reset rozpocznij flashowanie firmware poleceniem:tftp -l -m octet 192.168.1.1 -c put openwrt-wrt54g3gv2-vf-squashfs.bin
  8. Zaraz po wydaniu polecenia puść przycisk reset i czekaj
  9. Po dłuższej chwili powinna zacząć mrugać niebieska dioda, po ustaniu mrugania można uruchomić router ponownie.
W tym momencie mamy już zainstalowane na naszym routerze oprogramowanie. Jeśli jest to OpenWrt należy teraz zalogować się klientem telnet na router: telnet 192.168.1.1 użytkownik: root
hasło: (puste)
Oraz zmienić hasło poleceniem: passwd
Po wykonanej pracy można przywrócić ustawienia karty sieciowej oraz logować się przez ssh na portach LAN.