Archiwum z Lipiec 2008

No i mamy listopad

środa, 30 Lipiec 2008

Zbudowałem OpenBSD ze źródeł z CVS i miast -current (przyzwyczajenie z FreeBSD) zobaczyłem to:

[root@bastard-bis ~]# uname -a
OpenBSD bastard-bis.expro.lan 4.4 GENERIC#0 amd64

Co najmniej dziwne… Przynajmniej w /etc/motd jest zrozumiale:

[root@bastard-bis ~]# cat /etc/motd
OpenBSD 4.4-beta (GENERIC) #0: Wed Jul 30 11:14:33 CEST 2008

Welcome to OpenBSD: The proactively secure Unix-like operating system.

Please use the sendbug(1) utility to report bugs in the system.
Before reporting a bug, please try to reproduce it with the latest
version of the code.  With bug reports, please try to ensure that
enough information to reproduce the problem is enclosed, and if a
known fix for it exists, include that as well.

Ważna zmiana w OpenBSD -current (10 czerwca br.). Tabele w pf wymagają opcji counters, aby bajty i pakiety były zliczane. Dotychczas było to domyślnie włączone, z czego korzystałem generując wykresy rrdtool‘em.

Gentoo Linux runscript depend loop

wtorek, 29 Lipiec 2008

Nie wiem co przeciętny człowiek myśli pod prysznicem, ale mi wpadł do głowy pomysł zapętlenia skryptów startowych (sprawdzenia czy to w ogóle możliwe i jak zabezpieczyli się przed tym wydawcy danej dystrybucji / systemu).
Na początek Gentoo Linux (leży najbliżej prysznica). Prosty skrypt dummy-1 wygląda tak:

depend() {
need dummy-2
}

start() {
echo "dummy-1 on"
}

stop() {
echo "dummy-1 off"
}

Do tego jest jeszcze dummy-2 i dummy-3 różniące się od siebie wymaganiami (depend() -> need), tak, aby każdy z nich wymagał kolejnego, a ostatni – pierwszego. W ten sposób powstaje teoretycznie zapętlenie. Co uzyskamy po próbie uruchomienia? Poniżej wynik:

abg-ng ~ # /etc/init.d/dummy-1 start
* ERROR:  cannot start dummy-3 as dummy-1 could not start
* ERROR:  cannot start dummy-2 as dummy-3 could not start
* ERROR:  cannot start dummy-1 as dummy-2 could not start

Czyli nie da się. Najpierw dummy-1 wymaga, by dummy-2 się uruchomił, ten z kolei chce dummy-3, który ostatecznie ‘psuje zabawę’, bo wymaga dummy-1, który nie potrafił się uruchomić, więc jako pierwszy zgłasza błąd. Później dwa kolejne.

Na drugi ogień pójdzie FreeBSD z PROVIDE i REQUIRE.

Offline NT Password & Registry Editor

wtorek, 29 Lipiec 2008

Dziś kolejne wyzwanie – zapomniane hasło do Windows XP na konto Administrator (lokalne).
Przechodziłem przez wiele programów w przeszłości, ale żaden nie zyskał uznania bo albo nie działał w ogóle, albo rozwalał rejestr czy bazę (pliki SAM). Dziś trafiłem na Offline NT Password & Registry Editor. Działa dobrze, nie mam pytań.

Malowanie mieszkania [3]

poniedziałek, 28 Lipiec 2008

Ściany mają kolor: karmazynowy przypływ i piasek pustyni. Sufit – UWAGAbiały (dziw bierze, że z tą nazwą się w ogóle sprzedaje).
Te pierwsze dwa to wg mnie odpowiednio: czerwony i żółty.

Dla wszystkich, którzy mają problem z rozpoznaniem koloru po nazwie polecam: female»male color converter

SQLgrey support for DBCluster

poniedziałek, 28 Lipiec 2008

Próbowałem uruchomić SQLgrey w połączeniu z wieloma (>1) bazami danych MySQL, ale nie wyszło. Niemniej poniżej moje doświadczenia:

  • bazy tylko do odczytu (read_hosts) muszą nasłuchiwać na domyślnym porcie (3306), nie ma innej możliwości konfiguracji,
  • $DBIx::DBCluster::CLUSTERS = {
    "$self->{sqlgrey}{db_host}" => {
    'WRITE_HOSTS'  => [$self->{sqlgrey}{db_host}],
    'READ_HOSTS'   => [@read_hosts],
    },
    };
  • połączenie na takiego samego użytkownika i to samo hasło jak baza podstawowa (db_host)
$self->{sqlgrey}{dbh} = DBIx::DBCluster->connect($self->cnctinfo(),
$self->{sqlgrey}{db_user},
$self->{sqlgrey}{db_pass},
{ PrintError => 0,
AutoCommit => 1,
InactiveDestroy => 1 }
)
or $self->mylog('dbaccess', 0, "can't connect to DB: $DBI::errstr");

O ile z użytkownikiem i hasłem nie ma problemu (baza mysql również się replikuje na serwer zapasowy), to z portem jak najbardziej jest, no ale można się dostosować.

  • pożyteczną opcją może być db_cleanup_hostname, która zapewnia, że tylko jeden serwer z SQLgrey będzie wykonywał okresowe czyszczenie tabel. W przypadku, gdy mamy spory ruch (dużo rekordów w bazie) i wiele frontend‘owych serwerów pocztowych powinno to zmniejszyć obciążenie bazy, a negatywnego wpływu na pracę raczej nie ma.

Uruchomienie SQLgrey z DBCluster kończy się mniej więcej tak:

Jul 28 11:28:01 mailin-ng1 sqlgrey: dbaccess: Using DBIx:DBCluster
Jul 28 11:28:01 mailin-ng1 sqlgrey: dbaccess: Read_hosts: 10.0.27.176
Jul 28 11:28:01 mailin-ng1 sqlgrey: fatal: Can't locate object method "connect" via
 package "DBIx::DBCluster" at /usr/sbin/sqlgrey line 829.

DBIx::DBCluster w wersji 0.01. SQLgrey – 1.7.4. Perl 5.8.8.

Komiksowo

niedziela, 27 Lipiec 2008

Kiedyś dla Mojej Krwi postanowiłem nauczyć się rysować. Trochę wyszło :> Wzorowałem się na „Sztuce rysowania komiksów” Bena Caldwell’a. Nie mam porównania, bo sporo podobnych pozycji nie miałem w rękach. Jak zdigitalizuję swoje rysunki, to je kiedyś upublicznię.
Tymczasem polecam: Copper – Step-by-Step

http://www.boltcity.com/workshop/copper_tutorial/copper_032_panel.jpg

http://www.boltcity.com/workshop/copper_tutorial/

Malowanie mieszkania [2]

sobota, 26 Lipiec 2008

…i nie zadzwoniła.

Po malowaniu

Po malowaniu