Archiwum kategorii ‘FreeBSD’

Konflikty w portach

piątek, 19 Luty 2010

Nie dalej jak wczoraj przysłuchiwałem się rozmowie s1m0n‘a z n1x0n‘em na #dragonfly odnośnie mod_exec w ProFTPd. Generalnie chodziło o źródła samego modułu, który od wersji 1.3.3 serwera nie jest już zewnętrznym modułem. Ale stabilną wersją serwera jest wciąż 1.3.2d, a 1.3.3 to ciągle release candidate (na dzień dzisiejszy rc4).
Niemniej chcielibyśmy sprawdzić czy się buduje bez błędów. Załóżmy, że mamy FreeBSD, korzystamy z ftp/proftpd, a chcemy wykonać tylko make build dla ftp/proftpd-devel. Standardowo próba zakończy się niepowodzeniem (dla jakiegokolwiek celu):

[root@ /usr/ports/ftp/proftpd-devel]# make fetch
===>  proftpd-devel-1.3.3.r4_1,1 conflicts with installed package(s):
proftpd-1.3.2d

They install files into the same place.
Please remove them first with pkg_delete(1).
*** Error code 1

Stop in /usr/ports/ftp/proftpd-devel.

(więcej…)

FreeBSD w domU

piątek, 14 Sierpień 2009

FreeBSD 8.0 (BETA2) współgra z Xen! Na razie pracuje jako gość, ale do uruchomienia go nie trzeba niczego przerabiać.

FreeBSD-domUStrasznie się nudzę…

ZFS vs. LVM

piątek, 14 Listopad 2008

Jestem w trakcie szkolenia „Sun Solaris 10 & Sun Cluster” (autorskie szkolenie ITL Polska). Dobrze prowadzone przez Piotra Brańka – w zasadzie to bardziej warsztaty niż teoretyczny wykład i na pewno dalekie od marketingowego bełkotu. Jestem zadowolony. Mam pojęcie ogólne o samym systemie, Sun Cluster, Solaris Zones i ZFS.

No właśnie. ZFS! Wielu ludzi zaczynając wywód na temat „Dlaczego Solaris” mówi o ZFS upatrując w tym systemie plików największej zalety systemu i miażdżącego argumentu do dyskusji „A może inny system?”.

Słuchając na temat ZFS cały czas odnosiłem się do jedynego znanego mi podobnego rozwiązania (to czego używałem kiedyś w AIX nawet nie wiem jak się nazywa :/) – mianowicie LVM. Wiem, że nie powinno się nawet porównywać tych dwóch pojęć, bo LVM jedynie zarządza wolumenami, a ZFS to, uogólniając, system plików. Niemniej warstwa abstrakcji, która oddziela dane od fizycznych dysków, w ZFS, to dużo podobieństw (z punktu widzenia użytkownika końcowego) z LVM. I dlatego nie spadłem z krzesła na części teoretycznej :>
Przyznaję, ZFS zrobiłby na mnie ogromne wrażenie, gdybym wcześniej nie znał LVM. Na szczęście już przeszedłem pvmove (do obejrzenia jakiś mój test, później wielokrotnie powtarzany w produkcyjnych środowiskach, zawsze zakończony sukcesem) i temu podobne, toteż łatwo przyswoiłem sobie wszystko co usłyszałem na temat ZFS.

Przy okazji – ZFS jest we FreeBSD (m. in. dzięki staraniom pjd). Podobno nie będzie w Linuksie ze względu na licencję (CDDL nie podchodzi pod GPL, więcej do poczytania na kernelTRAP).

Tutaj porównanie ZFS z LVM (nie rekomenduję, po prostu znalazłem):

Intel Entry Server Board SE7230NH1-E + Linux + RAID

czwartek, 4 Wrzesień 2008

Jakoś w poprzedniej firmie chciałem zrobić RAID 10 (4 x SATA) sprzętowy na płycie Intel Entry Server Board SE7230NH1-E. Chyba nie skończyłem, a w drafcie został mi kawałek artykułu. Udostępniam parę informacji, może komuś się przydadzą.

Chyba stanęło na tym, że Intel udostępnia tylko binarne sterowniki (dla RedHat i SuSE) i RAID nie był widoczny pod ‘świeżym’ jądrem – jedynie dyski fizyczne.
FreeBSD 7 natomiast widział dysk logiczny (oprócz tego wszystkie fizyczne), ale nie potrafił nic na nim zapisać.

Skończyło się na instalacji Linux Gentoo (zazwyczaj tak się kończą takie historie) i RAID ‘programowym’. Oprócz tego LVS.

Do poczytania:

VLAN we FreeBSD

czwartek, 10 Lipiec 2008

Nie znalazłem (może słabo szukałem) w Handbook‘u strony pokazującej jak konfigurować VLAN w rc.conf, co prawda istnieje vlan(4), niemniej tutaj krótka instrukcja:

cloned_interfaces=”vlan0″

powoduje stworzenie interfejsu (podobnie jak przy innych nie-fizycznych interfejsach, np. carp).

ifconfig_vlan0=”inet A.B.C.D/E vlan 0 vlandev fxp0″

czyli konfiguracja sieciowa, przypisanie vlan_tag (802.1Q VLAN header) oraz przyporządkowanie interfejsu fizycznego.

Ważne jest, że gdy fizyczny interfejs, do którego przypisany jest vlan nie ma adresu, musi zostać ‘podniesiony’ za pomocą:

ifconfig_fxp0=”up”

mail/tpop3d 1.5.4

czwartek, 3 Lipiec 2008

Dzięki mojemu staraniu port mail/tpop3d dla FreeBSD został zaktualizowany do wersji 1.5.4.

W przeszłości nawet napisałem jakąś poprawkę do samego tpop3d i próbowałem rozwijać statystyki w SQL. Uważam, że to dobre oprogramowanie, szkoda, że Chris Lightfoot odszedł. Miejmy nadzieję, że Arkadiusz Miśkiewicz godnie go zastąpi i projekt będzie żył nadal.

Inne moje zgłoszenia (FreeBSD):

Zliczanie ruchu do i z jail’a na FreeBSD

piątek, 27 Czerwiec 2008

Rozwiązanie mało eleganckie. Wersja bardzo wczesna, potrzeba sporych poprawek i warunków (sprawdzanie modułu ipfw(8), sprawdzanie czy ipfw włączone, itp.).

Łata na plik uruchamiający jail’e(8) (/etc/rc.d/jail)

— /etc/rc.d/jail Tue Sep 11 18:44:44 2007
+++ /tmp/jail Tue Jul 1 08:14:11 2008
@@ -37,6 +37,8 @@ init_variables()
eval _exec=\”\$jail_${_j}_exec\”
eval _exec_start=\”\${jail_${_j}_exec_start:-${jail_exec_start}}\”
eval _exec_stop=\”\${jail_${_j}_exec_stop:-${jail_exec_stop}}\”
+ eval _ipfwrulenoin=\”\$jail_${_j}_ipfwrulenoin\”
+ eval _ipfwrulenoout=\”\$jail_${_j}_ipfwrulenoout\”
if [ -n "${_exec}" ]; then
# simple/backward-compatible execution
_exec_start=”${_exec}”
@@ -329,6 +331,14 @@ jail_start()
_jail_id=$(head -1 ${_tmp_jail})
tail +2 ${_tmp_jail} >${_consolelog}
echo ${_jail_id} > /var/run/jail_${_jail}.id
+ if [ -n "${_ipfwrulenoin}" ]; then
+ /sbin/ipfw -q delete ${_ipfwrulenoin}
+ /sbin/ipfw add ${_ipfwrulenoin} count all from any to ${_ip} jail ${_jail_id}
+ fi
+ if [ -n "${_ipfwrulenoout}" ]; then
+ /sbin/ipfw -q delete ${_ipfwrulenoout}
+ /sbin/ipfw add ${_ipfwrulenoout} count all from ${_ip} to any jail ${_jail_id}
+ fi
else
jail_umount_fs
if [ -n "${_interface}" ]; then

Do /etc/rc.conf dodać następujące linie:

jail_example_ipfwrulenoin (int): Numer reguły dla ruchu przychodzącego
jail_example_ipfwrulenoout (int): Numer reguły dla ruchu wychodzącego

…i jeszcze tylko testy. Powyższe, to rozważania czysto teoretyczne ;-)