Internet

    Update Baculi

    Wykona?em update baculi z wersji 2.4.4 do 3.0.2 z pkgsrc. Restart ca?o?ci spowodowa? brak mozliwo?ci pod??czenia sie do konsoli zarówno na serwerze jak i z klienta. /etc/rc.d/bacula status pokazywa?a jedynie ?e file demon i storage demon dzia?aj? natomiast director nie. ?adnych logów jednak nie ma. Reinstaluj? r?cznie, taka sama sytuacja. Odinstalowuj? i instaluj? jeszcze raz od zera – taka sama sytuacja. Czytam wszystkie komunikaty, mi?dzy innymi ten:

    If you’re upgrading to bacula-3.0.2 from 1.38.x or earlier, you MUST
    recreate your catalog database or upgrade your old database using the
    /usr/pkg/libexec/bacula/update_bacula_tables script. Later updates will
    not require upgrading the database again.

    Jak wida? nie kwalifikuj? si? na update tabel. Na wszelki wypadek jednak odpalam ten skrypt po uprzednim lekkim poprawieniu z:

    #!/bin/sh
    #
    # This routine alters the appropriately configured
    # Bacula tables for PostgreSQL, MySQL, or SQLite.
    #
    if test xsqlite = xmysql -o xsqlite3 = xmysql ; then
    echo "Altering SQLite tables"
    /usr/pkg/libexec/bacula/update_mysql_tables $*
    fi
    if test xmysql = xmysql ; then
    echo "Altering MySQL tables"
    /usr/pkg/libexec/bacula/update_mysql_tables $*
    fi
    if test xpostgresql = xmysql ; then
    echo "Altering PostgreSQL tables"
    /usr/pkg/libexec/bacula/update_postgresql_tables $*
    fi

    aby nie by?o:

    Altering MySQL tables

    This script will update a Bacula MySQL database from version 10 to 11
    which is needed to convert from Bacula version 2.0.x to 3.0.x or higher

    ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
    Update of Bacula MySQL tables failed.

    (Jak wida? komunikat o konieczno?ci udate’u nadal mnie nie dotyczy)

    na

    #!/bin/sh
    #
    # This routine alters the appropriately configured
    # Bacula tables for PostgreSQL, MySQL, or SQLite.
    #
    if test xsqlite = xmysql -o xsqlite3 = xmysql ; then
    echo "Altering SQLite tables"
    /usr/pkg/libexec/bacula/update_mysql_tables $*
    fi
    if test xmysql = xmysql ; then
    echo "Altering MySQL tables"
    /usr/pkg/libexec/bacula/update_mysql_tables -uroot -p bacula$*
    fi
    if test xpostgresql = xmysql ; then
    echo "Altering PostgreSQL tables"
    /usr/pkg/libexec/bacula/update_postgresql_tables $*
    fi

    i w ko?cu po chwili:

    Altering MySQL tables

    This script will update a Bacula MySQL database from version 10 to 11
    which is needed to convert from Bacula version 2.0.x to 3.0.x or higher


    Enter password:

    Update of Bacula MySQL tables succeeded.

    Nast?pnie restart baculi i … tadam ! Wszystko ruszy?o tak jakby sie nic nie dzia?o!

    Wiadomo, ?e telewizja k?amie, ale ?eby dokumentacja?

    © odwiedź stronÄ™ http://maciejewski.org po wiÄ™cej fajnych postów!

    In English

    Dependencies madness

    Time to time comes need to update whole bunch of pkgs in NetBSD. Dealing with pkg_rolling-replace (which is very good script to update packages) I’ve found that sometimes it won’t update package when its dependencies are broken or missing. Unfortunettly I had some of this things like:

    WARNING: No devel/p5-Compress-Zlib/Makefile - package moved or obsolete?
    WARNING: No devel/p5-IO-Compress-Base/Makefile - package moved or obsolete?
    WARNING: No devel/p5-IO-Compress-Bzip2/Makefile - package moved or obsolete?
    WARNING: No devel/p5-IO-Compress-Zlib/Makefile - package moved or obsolete?
    WARNING: No net/p5-INET6/Makefile - package moved or obsolete?

    or:

    security/py-denyhosts - py25-denyhosts-2.6nb2 missing
    textproc/py-xml - py25-xml-0.8.4nb2 missing

    The simplest way to resolve this is pkg_delete it, but when package is depend of other package or other package depend on missing package it’s hard to tell what You can delete first.

    With help may come two packages:

    pkgtools/pkgdepgraph: Visual representation of installed NetBSD packages
    graphics/graphviz: Graph Drawing Programs from AT&T Research and Lucent Bell Labs

    First, You have to generate file with Your installed packages:

    pkgdepgraph > pkg

    Then plot nice graph in png format:

    dot pkg -Tpng -o graph.png

    And here it is, my personall dependencies hell ;) (You have to view it in full size, becouse it’s to detailed to gave nice thumbnail – 2,5 MB PNG:)

    NetBSD's packages dependencies graph
    NetBSD's packages dependencies graph




    © odwiedź stronÄ™ http://maciejewski.org po wiÄ™cej fajnych postów!

    Job / Praca

    Update NetBSD do wersji 4.0_STABLE

    W ko?cu przyszed? czas aby si? ustabilizowa?. W tym krótkim howto postaram si? do?? szczegó?owo opisa? jak to wykona? i nie strzeli? sobie w stop? a jak ju? si? strzeli jak si? po?ata?.

    W moim przypadku upgrade by? przeprowadzony z systemu z ga??zi -current do -stable a konkretnie z 4.99.32 do 4.0_STABLE.

    Zaczynamy od ?ci?gni?cia ?róde? systemu odpowiedniej ga??zi.

    Wchodzimy do /usr

    cd /usr/

    Ustawiamy w jaki sposób b?dziemy ??czy? si? z serwerem cvs

    setenv CVS_RSH ssh
    setenv CVSROOT :ext:anoncvs@anoncvs.NetBSD.org:/cvsroot

    I ?ci?gamy (w katalogu /usr!) ?ród?a

    cvs checkout -r netbsd-4 -P src

    je?li pominiemy -r netbsd-4 ?ci?gniemy ga??? -current, mo?emy si? tak?e cofn?? do netbsd-3 (nie polecane :). Po ca?ej operacji mniej lub bardziej czasoch?onnej w katalogu /usr/src b?dziemy mieli wszystkie ?ród?a potrzebne do budowy systemu. Je?li masz kiepskie po??czenie z Internetem mo?emy doda? po cvs flag? -zx gdzie x to liczba od 1 do 9 okre?laj?ca stopie? kompresji. Pami?ta? nale?y jednak, ?e kompresja po stronie serwera do?? powa?nie go obci??a.

    Mo?emy sprawdzi? czy ?ci?gn?li?my dobr? wersj? wykonuj?c skrypt osrelease.sh w katalogu /usr/src/sys/conf/

    cd /usr/src/sys/conf/
    sh osrelease.sh
    4.0_STABLE

    Wszystko gra.

    Teraz musimy przygotowa? katalogi do budowy systemu, /usr/tools i /usr/obj s? obligatoryjne i kiedy ich nie ma budowa systemu nie zostanie przeprowadzona, build.sh powinien je stworzy? ale dla pewno?ci lepiej zadba? aby by?y dost?pne dla systemu. katalog gdzie faktycznie b?d? przechowywane setsy po budowie jest dowolny w moim przypadku nazywa si? tak jak wersja NetBSD – /usr/4.0_STABLE

    mkdir /usr/tools /usr/obj /usr/4.0_STABLE

    Teraz zbudujemy sobie toolsy czyli narz?dzia do budowy NetBSD. build.sh jest oczywi?cie na tyle sprytny, ?e sprawdza czy w systemie s? odpowiednie narz?dzia i je?li ich nie ma to je buduje i korzysta z nowych, ale oczywi?cie na tym etapie mog? tak?e pojawi? si? nieprzewidywane trudno?ci wi?c dla pewno?ci wska?emy konkretny katalog i powiemy co build.sh ma budowa?:

    cd /usr/src/
    ./build.sh -T /usr/tools/ tools

    Zale?nie od szybko?ci naszej maszyny, mo?e to potrwa? od kilku minut to kilku godzin.

    U mnie na p3 500 Mhz i 256 Mb ram toolsy jak wida? budowa?y si? godzin? z kilkoma minutami.

    ===> Tools built to /usr/tools
    ===> build.sh ended: Fri Dec 21 15:04:39 CET 2007
    ===> Summary of results:
    build.sh command: ./build.sh -T /usr/tools/ tools
    build.sh started: Fri Dec 21 13:58:46 CET 2007
    NetBSD version: 4.0_STABLE
    MACHINE: i386
    MACHINE_ARCH: i386
    Build platform: NetBSD 4.99.32 i386
    HOST_SH: /bin/sh
    No /usr/tools/bin/nbmake, needs building.
    Bootstrapping nbmake
    TOOLDIR path: /usr/tools
    DESTDIR path: /usr/src/destdir.i386
    RELEASEDIR path: /usr/src/releasedir
    Created /usr/tools/bin/nbmake
    makewrapper: /usr/tools/bin/nbmake-i386
    Updated /usr/tools/bin/nbmake-i386
    Tools built to /usr/tools
    build.sh ended: Fri Dec 21 15:04:39 CET 2007
    ===> .

    Po wybudowaniu toolsów mo?emy zbudowa? sobie system:

    ./build.sh -D /usr/4.0_STABLE -O /usr/obj -T /usr/tools -u build

    ===> Successful make build
    ===> build.sh ended: Fri Dec 21 21:53:03 CET 2007
    ===> Summary of results:
    build.sh command: ./build.sh -D /usr/4.0_STABLE -O /usr/obj -T /usr/tools -u build
    build.sh started: Fri Dec 21 15:07:38 CET 2007
    NetBSD version: 4.0_STABLE
    MACHINE: i386
    MACHINE_ARCH: i386
    Build platform: NetBSD 4.99.32 i386
    HOST_SH: /bin/sh
    TOOLDIR path: /usr/tools
    DESTDIR path: /usr/4.0_STABLE
    RELEASEDIR path: /usr/obj/releasedir
    makewrapper: /usr/tools/bin/nbmake-i386
    Updated /usr/tools/bin/nbmake-i386
    Successful make build
    build.sh ended: Fri Dec 21 21:53:03 CET 2007
    ===> .

    A po wybudowaniu systemu potrzebujemy jeszcze kernel zgodny z wersj? naszego NetBSD który b?dziemy instalowa?. Najlepiej jest zbudowa? oczywi?cie GENERIC, ale mo?emy oczywi?cie go troch? zmodyfikowa? (np. poprzez dodanie PF który nie jest domy?lnie kompilowany)

    vim sys/arch/i386/conf/GENERIC
    (oczywi?cie dla innych architektur trzeba zmieni? katalog okre?laj?cy architektur? np amd64, sparc, sparc64 itp.)

    Kernel mo?emy wybudowa? nast?pnie tak jak stara szko?a karze, poprzez config, make depend, make, make install, ale build.sh równie? pozwala nam go budowa? wi?c u?yj? w?a?nie tego narz?dzia:

    ./build.sh -O /usr/obj -T /usr/tools -u kernel=GENERIC
    ===> Kernels built from GENERIC:
    /usr/obj/sys/arch/i386/compile/GENERIC/netbsd
    ===> build.sh ended: Fri Dec 21 23:00:27 CET 2007
    ===> Summary of results:
    build.sh command: ./build.sh -O /usr/obj -T /usr/tools -u kernel=GENERIC
    build.sh started: Fri Dec 21 21:58:15 CET 2007
    NetBSD version: 4.0_STABLE
    MACHINE: i386
    MACHINE_ARCH: i386
    Build platform: NetBSD 4.99.32 i386
    HOST_SH: /bin/sh
    TOOLDIR path: /usr/tools
    DESTDIR path: /usr/obj/destdir.i386
    RELEASEDIR path: /usr/obj/releasedir
    makewrapper: /usr/tools/bin/nbmake-i386
    Updated /usr/tools/bin/nbmake-i386
    Building kernel without building new tools
    Building kernel: GENERIC
    Build directory: /usr/obj/sys/arch/i386/compile/GENERIC
    Kernels built from GENERIC:
    /usr/obj/sys/arch/i386/compile/GENERIC/netbsd
    build.sh ended: Fri Dec 21 23:00:27 CET 2007
    ===> .

    Po wybudowaniu kernela musimy jeszcze tylko go podmieni? backupuj?c nasz stary (i dzia?aj?cy ! ;) kernel.

    mv /netbsd /onetbsd3
    mv /usr/obj/sys/arch/i386/compile/GENERIC/netbsd /

    Teraz jeste?my gotowi na reboot i sprawdzenie czy nowy kernel podniesie nam system (b??dami przy starcie us?ug na razie si? nie przejmujemy)

    Pami?taj, rebootuj system poprzez shutdown -r now a nie reboot, poniewa? shutdown prawid?owo stopuje us?ugi z /etc/rc.conf

    System wsta? (mam nadziej?, ?e u Ciebie te? :). Wi?kszo?? us?ug u mnie nie odpali?o si?, ale np NAT z PF dzia?a?. Mo?emy wi?c zainstalowa? nowy system:

    ./build.sh -D /usr/4.0_STABLE -O /usr/obj -T /usr/tools -u install=/

    make installworld started at: Fri Dec 28 10:12:33 CET 2007
    make installworld finished at: Fri Dec 28 10:17:43 CET 2007
    ===> Successful installworld to /
    ===> build.sh ended: Fri Dec 28 10:17:44 CET 2007
    ===> Summary of results:
    build.sh command: ./build.sh -D /usr/4.0_STABLE/ -O /usr/obj -T /usr/tools -u install=/
    build.sh started: Fri Dec 28 10:12:29 CET 2007
    NetBSD version: 4.0_STABLE
    MACHINE: i386
    MACHINE_ARCH: i386
    Build platform: NetBSD 4.0_STABLE i386
    HOST_SH: /bin/sh
    TOOLDIR path: /usr/tools
    DESTDIR path: /usr/4.0_STABLE
    RELEASEDIR path: /usr/obj/releasedir
    makewrapper: /usr/tools/bin/nbmake-i386
    Updated /usr/tools/bin/nbmake-i386
    Successful installworld to /
    build.sh ended: Fri Dec 28 10:17:44 CET 2007
    ===> .

    Zosta?a jeszcze jedna rzecz, nale?y przeprowadzi? update plików konfiguracyjnych, wydajemy polecenie etcupdate i uwa?nie (bardzo!) sprawdzamy o co nas pyta system. Polecam przekopiowanie /etc w bezpieczne miejsce! Mamy do wyboru kilka opcji przy ka?dym pliku. Najwazniejsze do i – install i d – don’t install. Wszystkie pliki, w których nie przeprwadzali?my zmian mo?emy ?mia?o zainstalowa?, tak samo wszystkie pliki które oznaczone s? jako missing. Nale?y zwróci? szczególn? uwag? na pliki z uzytkownikami i grupami, poniewa? je?li nie opacznie damy install to zostan? zainstalowane czyste pliki tak jak po ?wie?ej instalacji i nie b?dziemy mogli si? zalogowa? poniewa? nasz uzytkownik nie b?dzie istnia?.

    etcupdate

    Po etc update przeleci postinstall i powie co si? uda?o a co nie i podpowie jakie komendy nale?y uruchomi? aby pozby? si? niepotzrebnych rzeczy typu obsolete.

    Po zako?czonej operacji dajemy shutdown -r now i teoretycznie wszystko powinno dzia?a?. Teoria jednak mija si? z praktyk? i np u mnie wymagane by?o przeinstalowanie niektórych aplikacji (perl, mysql). To jest jednak dosy? proste do wykonania gorzej kiedy po etcupdate dostajemy b??d, ?e nie odnaleziono libc.so.12 co skutkuje brakiem mo?liwo?ci zrobienia czegokolwiek ??cznie z zalogowaniem si? lub chocia?by ls. A po restarcie dostajemy kernel pannic z powodu init died…

    man init nie podaje nam weso?ych wiadomo?ci:

    The role of init is so critical that if it dies, the system will reboot
    itself automatically. If, at bootstrap time, the init process cannot be
    located, the system will panic with the message ``panic: init died
    (signal %d, exit %d)''.

    Powodem tego jest to, ?e kernel przy starcie zna jedynie partycj? / i w pierwszej kolejno?ci odpala init który dalej inicjuje pozosta?e partycje, i odpala skrytpty rc.d. Z koleii init do dzia?ania potzrebule /lib/lib.co.12 oraz /libexec/ld.elf_so. Je?li z jakich? powodów nie mo?e ich zlokalizowa? dostejemy init died. Plik /lib/lib.co.12 jest linkiem do innego pliku:

    lrwxr-xr-x 1 root wheel 14 Dec 21 15:53 libc.so.12 -> libc.so.12.149

    Ja upgreaduj?c z ga??zi -current mia?em zamiast libc.so.12.149 plik libc.so.12.150, a libc.so.12 nie zlinkowa? si? prawid?owo z plikiem od 4.0 st?d problem.

    Najprostrzym rozwi?zaniem tego problemu jest wybootowanie z p?yty instalacyjnej NetBSD i z menu narz?dziowego uruchomienie /bin/sh, nastepnie podmontowanie / i stworzenie w?a?ciwego linku, lub te? oprócz podmontowania / podmontowanie /usr (je?li jest na innej partycji) i przekopiowanie ca?ego /usr/4.0_STABLE/lib na miejsce /lib. Po takim zabiegu system wsta? bez ?adnego problemu.

    Koniec stabilizacji, all done, bye bye ;)



    Job / Praca

    Nie masz k?opotu, zrób sobie Gutsy.

    Zachcia?o mi si? podrasowa? moje idealnie dzia?aj?ce Ubuntu Feisty (7.04) do Gutsy (7.10) czyli wersja current (lub development w nazewnictwie Ubuntu), no i mam… Po przesz?o pó?torej godzinie ?ci?gania ponad tysi?ca pakietów (sic!) które zajmowa?y 1006 MB (sic!x2) oraz ostatecznym reboocie, system wsta? i ju? od pocz?tku co? nie pasowa?o. Co prawda ekran logowania do Gnome zosta? oszcz?dzony ale fonty zmniejszy?y si? znacznie i zrobi?y si? po prostu brzydkie. No i nie ma tamtamów na pocz?tku tylko systemowy beep. Po zalogowaniu, d?wi?ku powitalnego równie? brak, radia Internetowe, youtube itd. dzia?aj? bez problemu (wtf?). Oczywi?cie trójwymiarowego desktopu ju? tak?e si? pozby?em, ale by? to jeden z ficzerów Gutsego, ?e ma natywny compiz fusion. Odinstalowa?em zatem nienatywnego, CTRL+ALT+BACKSPACE i… nic, standardowe metacity. Troch? zabawy z pakietami i w ko?cu znalaz?em – GL DESKTOP w menu preferencje. W??czam i oczywi?cie klapa, znikn?? pasek z desktopami i aplikacjami u do?u, wszystkie gad?ety z okien tak ?e w ogóle nie idzie ich przesun??. Obstawi?em emeralda, faktycznie nie posiada? ?adnych thamesów, zgadnijcie co? Przycisk „Fetch GPL’ed themes” oczywi?cie nic nie fetchn??. Wgra?em jakie? pierwsze lepsze theme dla sprawdzenia, no troch? lepiej ma?e okienka maj? obramowanie i gad?ety i mo?na je przesuwa? i w dodatku ?eluj?. Czyli compiz dzia?a, ale dlaczego tak dziwnie? Da?em sobie spokój i chcia?em zosta? przy metacity, ale po zabiegach z emeraldem przy starcie od razu w??cza si? GL Desktop bez pasków , gad?etów itp. Pomaga jedynie odpalenie z terminala emerald –replace, wtedy pojawia mi si? okienko od zarz?dzania GL Desktop gdzie go w ko?cu mog? wy??czy?, aarrgghhh! Nie wiem czy wersja development jest naprawd? tak kiepska jeszcze, czy mój sprz?t co? nie za bardzo chce wspó?gra? z 7.10, ale nie polecam robi? upgrade do niestabilnej wersji je?li oczekujecie bez problemowego dzia?ania. Ja po dwóch dniach dochodzenia do ?adu z samym desktopem nie mówi?c ju? o niektórych aplikacjach (Virtualbox) da?em sobie spokój i czekam na oficjalne wydanie (chyba za 14 dni od teraz) i instaluje od pocz?tku co i tak mia?em zrobi? aby pozby? si? partycji Windowsowych ;)

    Z przydatnych nowo?ci – Gutsy sprawdza stan baterii, wi?c dowiedzia?em si? ze mam j? bardzo rozwalon?, life….

    Zesputa Bateria



    Wordpress

    WordPress 2.3

    Juhu! 2.3 w ko?cu jest i mój blog ju? biega na nowej wersji. Tym razem nie oby?o si? bez ma?ego incydentu. Po wy??czeniu wszystkich pluginów, wgraniu nowej wersji na serwer oraz przeprowadzenia update’u bazy i sukcesywnym w??czaniu pluginów w pewnym momencie ca?e menu wtyczek znikn??o… Oczywi?cie jest taka mo?liwo??, ?e który? plugin nie zadzia?a i po prostu nale?y go wy??czy?, ale tym razem taka mo?liwo?? zosta?a wy??czona wraz z w??czeniem wtyczki, która spowodowa? bia?? stron? w menu dodatków. W pierwszym przyp?ywie paniki próbowa?em wy??czy? plugin bezpo?rednio w MySQL’u niestety nie uda?o mi si?. Nast?pnie przejrza?em logi Apache i znalaz?em:

    PHP Fatal error: Allowed memory size of 8388608 bytes exhausted (tried to allocate 53109 bytes) in /home/cancer/public_html/wp-admin/includes/plugin.php on line 4, referer: http://maciejewski.org/wp-admin/plugins.php?activate=true

    Uff b??d PHP a nie WordPress’a i to trywialny do rozwi?zania, zwi?kszy?em memory_limit = 8M do 32MB i wszystko zacz??o dzia?a? poprawnie. Troch? mnie jednak dziwi, ?e skrypt który zlicza popularno?? postów chcia? u?y? ponad 8 MB. By? mo?e jednak standardowa warto?? jak na dzisiejsze czasy jest troch? za ma?a. Póki co nie zaobserwowa?em ?adnych niedogodno?ci.

    Z fajnych rzeczy, które na pierwszy rzut oka wida? to natywne tagi (chocia? nie wida? ich pod postami – musz? przejrze? opcje czy trzeba je w??czy? czy po prostu skórka nie obs?uguje) i powiadamiacz o nowych pluginach (co prawda sam ich jeszcze nie instaluje tylko przenosi do strony sk?d mo?na pobra? najnowsz? wersj? ale dobre i to :)

    Je?li do?wiadczyli?cie dzisiaj dziwnego zachowania si? strony to teraz ju? wszystko powinno by? w porz?dku. Zapraszam do odwiedzania i subskrybowania :)

    UPDATE: Aaa i w?a?nie podczas pisania tej notki wyst?pi? jeszcze jeden b??d – mo?e si? komu? przyda opis:

    Podczas pisania posta w momencie autosave pojawia si? b??d bazy:

    WordPress database error: [Table 'cancerwp.wp_post2cat' doesn't exist]
    SELECT cat_ID AS ID, MAX(post_modified) AS last_mod FROM `wp_posts` p LEFT JOIN `wp_post2cat` pc ON p.ID = pc.post_id LEFT JOIN `wp_categories` c ON pc.category_id = c.cat_ID WHERE post_status = 'publish' GROUP BY cat_ID

    Co ciekawe google mówi, ?e nie jest to zapytanie WordPressa 2.3 :) Czyli jaki? plugin generuje taki b??d, chwila poszukiwa? i jest winowajca – Google Sitemaps. Chwilow zmuszony jestem go wy??czy? i zaczeka? na poprawion? wersj?.



    Related Posts with Thumbnails
    Add your widget here