|
Pátek, 5. května 2006, 17:50
Poprvé, když jsem zavítal na stránky Igora
Češka, byl tam návod na opravdu jednoduché IR dálkové ovládání počítače,
kde veškerou inteligenci obstaral driver... Podruhé mě opravdu šokoval, když
do mikrokontroléru Atmel AVR, který stojí cca. 80 Kč, implementoval celé Low
Speed USB přesto, že mikrokontrolér pro něj nemá žádnou HW podporu. No a teď
zašel ještě dál a implementoval v procesoru ATmega ethernetové rozhraní. Tedy
ve skutečnosti se jedná jen o vysílání UDP/IP paketů, příjem procesor nemůže
stihnout - je taktován na 20 Mhz a provádí jednu instrukci na jeden takt hodin
- takže při vysílání paketu obsahuje zdrojový text pouze samé instrukce
out, není možné ani použít cyklu.
Tak jsem zvědav, co vymyslí dalšího.
[ zobrazit záznam ] ( 817 zobrazení ) trvalý odkaz související odkaz     ( 3 / 23563 )
Viděl jsem udírnu
Čtvrtek, 4. května 2006, 10:30 Doprava
Tak jsem konečně viděl "udírnu," neboli soupravu typu 81-71M v úpravě pro
trať B se zabezpečovačem ARS. Protože jsem tento týden onemocněl, přijel jsem
do Prahy až dnes a když dojedu Metrem na Karlovo náměstí, zjistím, že co
nevidět by z druhého směru měla přijet zkušební souprava MARS (pořád ta samá
- už čtvrtý název . A taky že jo, po cca. pěti minutách čekání a se ozvalo
hlášení, že vlak, co přijede na druhou kolej není určen k přepravě
cestujících a za chvilku už slyším charakteristický pískavý zvuk, do té doby
na Béčku neslýchaný a MARSka si to řítí ke mě. V kabině strojvedoucího
jeden sedí a řídí (nebo spíš vede), a další čtyři nad ním stojí . No a v
prostoru pro cestující mladý pár na prvních sedačkách hned vedle pověstné
udírny - zřejmě rodinní příslušníci... Už se těším, až se bude jezdit i se
substrátem . Více info viz Diskusní
fórum Metrowebu.
[ zobrazit záznam ] ( 727 zobrazení ) trvalý odkaz související odkaz     ( 3 / 12480 )
Jak tisknout knihu pod Linuxem
Úterý, 2. května 2006, 13:57 Linux
Na všem se musí šetřit. A to včetně papíru a inkoustu, resp. toneru v
tiskárnách. Proto se běžně používá oboustranný tisk, někdy i v režimu více
stránek na jedné. Bohužel, takový způsob tisku je dost nepraktický, stránky se
nepříjemně čtou. Proto jsem si na Windows oblíbil Fineprint. Bylo to
sice jenom demo, ale umožňovalo tisk v režimu booklet, to znamená, že stránky
byly na listě seskládány tak, aby je stačilo veprostřed sešít, a byla z toho
kniha.
Po migraci na linux jsem začal hledat obdobný program a zjistil jsem, že
existuje celý balík programů s názvem psutils. Přesně ve stylu Unixu
nejde o žádný superprogram, ale o sadu drobných utilitek, jejichž zřetězením
lze dosáhnout požadovaného efektu. Pro můj účel se hodili zejména dva,
psbook a psnup. První dokáže přeskládat stránky do takového
pořadí, aby z nich byla kniha a bere přitom v úvahu velikost jednoho svazku,
aby to vůbec šlo přehnout - já to nastavuji na dvacet stránek - 5 listů. Ten
druhý se zase postará o vytištění dvou stránek na jedné.
Všechny utilitky samozřejmě pracují s PostScriptem, tak se ke zpracování
jejich výstupu ještě hodí utilitky a2ps, ps2pdf, pdf2ps.
Na jeden příkazový řadek se to dá shrnout zhruba takto:
cat vstup | a2ps | psbook -s20 | psnup -2 | ps2pdf > vystup.pdf
Jediným problémem, který u mne několikrát nastal, je to, že psnup
umístí druhou stránku poněkud mimo tisknutelnou oblast stránky, a tak mě stojí
spoustu práce přemluvit ho, aby ji dal jinam.
[ zobrazit záznam ] ( 1237 zobrazení ) trvalý odkaz související odkaz     ( 3 / 12458 )
Tři způsoby, jak změnit název síťového rozhraní
Sobota, 29. dubna 2006, 14:35 Linux
Pokud je v počítači více než jedno rozhraní, které se hlásí jménem ethX,
máme zaděláno na problémy. Pokud se jednotlivá rozhraní liší například
čipsetem, není to ještě tak špatné, i když po upgradu na novou verzi kernelu
se docela klidně může stát, že se ovladače zavedou v jiném pořadí. Ještě horší
situace nastává, pokud je v systému několik identických síťových karet. Pak o
jejich očíslování totiž rozhoduje i pořadí v PCI slotu a to se může změnit
například resetem CMOS paměti.
Proto je vhodné, zachovat si trvalé jméno karty podle její MAC adresy.
Objevil jsem hned tři způsoby, jak na to:
- Pomocí udev. Přestože síťová rozhraní nemají speciální
soubor v adresáři /dev, udev s nimi dokáže také pracovat.
Vcelku pěkný návod, jak na to, je například zde.
Jen je potřeba zadávat MAC adresu malými písmeny, jinak jí to nenajde.
- Pomocí utilitky nameif. Tak to používám já, protože v
době, kdy jsem tenhle problém řešil, ještě udev nebyl a já migroval z
Fedory, kde to dělal initskript automaticky, na Gentoo, které
to samozřemě neumělo. Tak jsem pročetl initskript Fedory, zjistil, že na to
používá právě nameif a přepsal jednodušší initskript pro Gentoo:
#!/sbin/runscript
# Copyright 1999-2004 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# Changing names of network interfaces, according to /etc/mactab
# Author: Ondrej Caletka
NAMEIF=/sbin/nameif
MACTAB=/etc/mactab
#Temporary mactab, to allow eg. swapping between eth0 & eth1
MACTMP=/etc/mactab.tmp
# Example: Swaping between eth0 (MAC 000000000000) and eth1 (MAC 001122334455)
#/etc/mactab:
# # Formerly eth0:
# eth1 00:00:00:00:00:00
# # Formerly eth1:
# eth0 00:11:22:33:44:55
#EOF
#/etc/mactab.tmp:
# # Formerly eth0:
# tmp1 00:00:00:00:00:00
# # Formerly eth1:
# tmp0 00:11:22:33:44:55
#EOF
depend() {
before net
}
start() {
[ -a ${MACTAB} ] || return
ebegin "Renaming network interfaces"
[ -a ${MACTMP} ] && ${NAMEIF} -c ${MACTMP}
${NAMEIF} -c ${MACTAB}
eend $?
}
Jak je vidět, řešení je to poněkud těžkopádné, zejména v případě, kdy chceme
názvy jen prohodit, protože není možné jedné kartě přiřadit název, který už má
jiná karta.
- Pomocí iproute2. To se spíš hodí pro dočasné změny,
protože moc dobře nejde měnit na základě MAC adresy, ale na základě
předchozího názvu. Syntaxe je taková:
ip link set eth0 name lan0
Všechny způsoby vyžadují, aby bylo rozraní, které se má přejmenovat, ve
stavu down a aby nedošlo ke konfliktu s jiným síťovým zařízením (snad
kromě udev, kde by mělo prohození názvů fungovat - ještě jsem to
nezkoušel).
[ zobrazit záznam ] ( 1110 zobrazení ) trvalý odkaz     ( 3 / 28938 )
Skript pro update portage
Středa, 26. dubna 2006, 17:23 Linux
Používám Gentoo Linux a vždycky, když jsem chtěl něco nainstalovat, zjistil
jsem, že mám staré portage... Tak jsem si udělal skript pro crona, který
portage jednou denně updatuje. Používá program esync - součást balíku
esearch - ten ebuildy oindexuje, takže se dají rychle hledat.
Tady je ten skript. Je dobré ho umístit do /etc/cron.daily.
#!/bin/sh
if [ -x /usr/sbin/esync ]
then
date > /tmp/esync.log
nice /usr/sbin/esync -v >> /tmp/esync.log
fi
[ zobrazit záznam ] ( 2618 zobrazení ) trvalý odkaz související odkaz     ( 3 / 33889 )
<<První <Zpět | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | Další> Poslední>>
|
|