Archiwum kategorii ‘Linux’

Magiczny udev

piątek, 16 Lipiec 2010

Kto nie wie w ogóle co to udev, kiedy pojawił się w Linuksie i dlaczego zastąpił devfs, niech poczyta dokumentację systemu, Wikipedię czy inne źródło. Poniżej opiszę udev tylko w zakresie, w jakim postanowiłem go ja wykorzystać.

Od jakiegoś czasu bawię się cienkimi klientami. Teraz najczęściej U700 firmy Clientron. Brakuje mi tam możliwości podłączenia do konsoli za pomocą portu szeregowego, bo najzwyczajniej w świecie go nie ma. Jest USB i można wpiąć adapter. Niemniej uruchamiając getty przez inittab bez portu dostajemy masę śmieci na konsoli (respawning too fast: disabled for 5 minutes). Co zrobić, żeby getty uruchamiał się tylko wtedy, gdy port jest (czytaj: gdy wsadzimy adapter USB)? Z pomocą przychodzi udev. (więcej…)

Licencje na oprogramowanie w Gentoo

piątek, 5 Luty 2010

Zgodnie z tym, co można wyczytać w Gentoo wiki, począwszy od wersji 2.1.7 portage (10 października 2009 r.) jest możliwość zarządzania licencjami na oprogramowanie. Tzn. blokować paczki na podstawie licencji, np. instalować tylko te zupełnie wolne (czyli zaakceptowane przez Free Software Foundation).
(więcej…)

Zarządzanie urządzeniami w domU

czwartek, 17 Grudzień 2009

Ostatnio opisałem jak zmieniać CD w domU (za pomocą xenstore-write), ale było to mało wyczerpujące. Uzupełnić by trzeba było jak dodawać nowe urządzenie blokowe gdy maszyna wirtualna uruchamiana była bez odpowiedniej konfiguracji. Co też czynię poniżej.
(więcej…)

USB (PCI) w domU

czwartek, 8 Październik 2009

W wirtualnej maszynie uruchamiam Nagios. Jako, że powiadomienia o anomaliach za pomocą poczty elektronicznej nie są najlepszym rozwiązaniem, postanowiłem (blisko rok temu) wykorzystać bramkę GSM (EasyGate firmy 2N) do wysyłania wiadomości tekstowych. Sprawa dojrzała (znalazłem czas) i wziąłem się za konfigurację tego systemu.
(więcej…)

Border Gateway Protocol 4

czwartek, 24 Wrzesień 2009

Jakiś czas temu przejąłem serwer, który korzysta z BGP. Jako, że wcześniej z braku czasu ten temat zawsze spychałem gdzieś dalej, to teraz musiałem się w niego co najmniej lekko wgryźć. Dałem radę!

Oprócz tego, że zarządzam produkcyjnym serwerem, zrobiłem sobie poligon, gdzie testuję różne rzeczy. Poniżej schemat dla mojego przyszłego pracodawcy ;-)

BGP-dev
(więcej…)

Xen i GPL PV

środa, 17 Czerwiec 2009

Mam kilka zwirtualizowanych systemów Windows na jednej maszynie (MS Windows XP Professional + MS Windows 2003 Server). Użytkownicy narzekają na szybkość działania programów. Programy – w skrócie, przelatują kilkadziesiąt katalogów (na mapowanym dysku sieciowym), szukają w nich nowych plików, przerzucają je do katalogu roboczego (lokalnie), a potem za pomocą FTP wrzucają na serwer. Być może wirtualizowane urządzenia przez qemu są tu wąskim gardłem. Postanowiłem użyć sterowników GPL PV (gplpv_fre_wxp_x86_0.10.0.69.msi). Jak czytamy na Xen Wiki:

These drivers allow Windows to make use of the network and block backend drivers in Dom0, instead of the virtual PCI devices provided by QEMU. This gives Windows (in theory) a substantial performance boost, and most of the testing that has been done confirms that.

Mój pierwszy test (MS Windows XP SP2) za pomocą diskspeed nie wypadł dobrze:

DISKSPEED (C) Alexander Grigoriev, alegr@aha.ru
Test File: "c:\$$test$$.tst"
Test File Size: 64 MB
Testing Uncached New File Write Speed....
Data Transfer:  6.50 MB/s, CPU Load: 68.2%
Testing Uncached Write Speed....
Data Transfer: 15.41 MB/s, CPU Load: 56.4%
Testing Uncached Read Speed....
Data Transfer: 28.26 MB/s, CPU Load: 82.0%
Testing Cached Write Speed....
Data Transfer: 12.42 MB/s, CPU Load: 60.7%
Testing Cached Read Speed....
Data Transfer: 43.57 MB/s, CPU Load: 100.0%

DISKSPEED (C) Alexander Grigoriev, alegr@aha.ru
Test File: "c:\$$test$$.tst"
Test File Size: 64 MB
Testing Uncached New File Write Speed....
Data Transfer:  0.94 MB/s, CPU Load:  7.0%
Testing Uncached Write Speed....
Data Transfer:  1.64 MB/s, CPU Load: 10.2%
Testing Uncached Read Speed....
Data Transfer: 27.67 MB/s, CPU Load: 51.9%
Testing Cached Write Speed....
Data Transfer:  2.35 MB/s, CPU Load: 12.8%
Testing Cached Read Speed....
Data Transfer: 58.51 MB/s, CPU Load: 100.0%

WTF?

QLogic 2312 + Linux

środa, 18 Marzec 2009

Jako, że zacząłem budowę SAN i podłączam do niej wszystko co możliwe, padło też na serwer z Linux. Zainstalowana jest w nim karta, która przedstawia się następująco:

08:03.0 Fibre Channel: QLogic Corp. ISP2312-based 2Gb Fibre Channel to PCI-X HBA (rev 02)
Subsystem: QLogic Corp. Device 0100
Flags: 66MHz, medium devsel, IRQ 21
I/O ports at 2000 [disabled] [size=256]
Memory at b8a00000 (64-bit, non-prefetchable) [disabled] [size=4K]
Expansion ROM at b8b00000 [disabled] [size=128K]
Capabilities: [44] Power Management version 2
Capabilities: [4c] PCI-X non-bridge device
Capabilities: [54] Message Signalled Interrupts: Mask- 64bit+ Count=1/8 Enable-
Capabilities: [64] CompactPCI hot-swap <?>
Kernel modules: qla2xxx

W jądrze:

Symbol: SCSI_QLA_FC [=m]
Prompt: QLogic QLA2XXX Fibre Channel Support
Defined at drivers/scsi/qla2xxx/Kconfig:1
Depends on: PCI && SCSI
Location:
-> Device Drivers
-> SCSI device support
-> SCSI device support (SCSI [=y])
-> SCSI low-level drivers
Selects: SCSI_FC_ATTRS && FW_LOADER

Załadowanie samego modułu (jądro > 2.6.18) jeszcze nie zmusi karty do pracy, w dmesg powinien pojawić się taki komunikat:

QLogic Fibre Channel HBA Driver
GSI 21 sharing vector 0xC8 and IRQ 21
ACPI: PCI Interrupt 0000:08:03.0[A] -> GSI 24 (level, low) -> IRQ 21
qla2xxx 0000:08:03.0: Found an ISP2312, irq 21, iobase 0xffffc20000016000
qla2xxx 0000:08:03.0: Configuring PCI space...
qla2xxx 0000:08:03.0: Configure NVRAM parameters...
qla2xxx 0000:08:03.0: Verifying loaded RISC code...
qla2xxx 0000:08:03.0: Firmware image unavailable.
qla2xxx 0000:08:03.0: Firmware images can be retrieved from: ftp://ftp.qlogic.com/outgoing/linux/firmware/.
qla2xxx 0000:08:03.0: Failed to initialize adapter

Po zastosowaniu się do wskazówek (pobraniu z podanej lokalizacji odpowiedniego pliku, w moim przypadku ql2300_fw.bin i skopiowaniu go do /lib/firmware) powinno zadziałać jak należy (Firmware Loader zrobi wszystko za nas):

QLogic Fibre Channel HBA Driver
PCI: Enabling device 0000:08:03.0 (0150 -> 0153)
ACPI: PCI Interrupt 0000:08:03.0[A] -> GSI 24 (level, low) -> IRQ 21
qla2xxx 0000:08:03.0: Found an ISP2312, irq 21, iobase 0xffffc20010098000
qla2xxx 0000:08:03.0: Configuring PCI space...
qla2xxx 0000:08:03.0: Configure NVRAM parameters...
qla2xxx 0000:08:03.0: Verifying loaded RISC code...
qla2xxx 0000:08:03.0: Allocated (412 KB) for firmware dump...
qla2xxx 0000:08:03.0: Waiting for LIP to complete...
qla2xxx 0000:08:03.0: Cable is unplugged...
scsi2 : qla2xxx
qla2xxx 0000:08:03.0:
QLogic Fibre Channel HBA Driver: 8.01.07-k1
QLogic QLA2340 -
ISP2312: PCI-X (133 MHz) @ 0000:08:03.0 hdma+, host#=2, fw=3.03.27 IPX