Wpisy otagowane ‘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…)

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

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):

Make love, not war!

poniedziałek, 9 Czerwiec 2008

C:\Documents and Settings\Administrator>make love
Nazwa ‘make’ nie jest rozpoznawana jako polecenie wewnętrzne lub zewnętrzne, program wykonywalny lub plik wsadowy.
C:\Documents and Settings\Administrator>ver
Microsoft Windows 2000 [Wersja 5.00.2195]

guzik@abg-ng ~ $ make love
make: *** Brak reguł do wykonania obiektu `love’. Stop.
guzik@abg-ng ~ $ uname -sr
Linux 2.6.25-gentoo-r4

[root@bastard ~]# make love
make: don’t know how to make love. Stop in /root.
[root@bastard ~]# uname -sr
OpenBSD 4.3

[guzik@silent ~]$ make love
Not war.
[guzik@silent ~]$ uname -sr
FreeBSD 7.0-RELEASE