No terminal database found

Dan Lukes dan at obluda.cz
Thu Apr 19 14:28:07 CEST 2007


Rudolf Cejka napsal/wrote, On 04/19/07 10:20:
> Miroslav Lachman wrote (2007/04/19):
>> Ano, oddil /usr nebyl pripojen, stacilo by tedy mit zkopirovany 
>> /usr/share/misc/termcap primo do /etc/termcap a pak by melo vse chodit? 
> 
> Melo by, zkuste. Primarne se sice zkousi /usr/share/misc/termcap.db
> a kdyz neni, tak /usr/share/misc/termcap

	Pravda je, ze se vzdy zkousi databazova forma pred textovou (takze to 
uz dal nemudu zminovat). Ale jinak je to trochu slozitejsi:

	Nejprve se zkouma environmentova promenna TERMCAP. Ta muze

1. existovat a obsahovat bud':

1.1. odkaz na soubor s absolutni cestou (zacina /)
1.2. primo definici

nebo muze

2. neexistovat a pak zalezi na promenne TERMPATH, ktera

2.1 existuje a pak obsahuje dvojteckami oddeleny seznam absolutnich cest 
k souborum, pouzije se prvni nalezeny

2.2 neexistuje a pak zalezi na promenne HOME, ktera

2.2.1 existuje a pak se dale postupuje jako by obsah TERMPATH byl 
'$HOME/.termcap /usr/share/misc/termcap'

2.2.2 neexistuje a pak se dale postupuje jako by obsah TERMPATH byl 
'.termcap /usr/share/misc/termcap' (soubor .termcap se hleda v aktualnim 
adresari)

	No, a aby to bylo slozitejsi, tohle cele se neprovadi, pokud je 
spousteny program setuid nebo setgid - v takovem pripade se nepodminene 
hleda /usr/share/misc/termcap


	Nenech se zmast 'man termcap', ktere mluvi o tom, ze se pouziva 
'/etc/termcap /usr/share/misc/termcap' - me se zda, ze to docela 
obycejne neni pravda. IMHO se /etc/temcap nepouziva nikdy (neni-li 
explicitne uzivatelem nastaven do nektere promenne a to program stejne 
nesmi byt [sg]uid).

	Jo - a tohle vsechno plati, pokud mluvime o ncurses (ktere vi pouziva). 
Uplne jiny program by mohl pouziva uplne jinou knihovnu a ta by to mohla 
mit vice ci mene uplne jinak ...

  ----------

	Ono je to totiz tak, ze vi je /usr/bin/vi - a "by desing" se s jeho 
pouzitim v okamziku, kdy /usr neni pritomno proste nepocita (protoze 
neni pritomno ani samo vi). V takove situaci je k dispozici editor 'ed' ...

	Mimochodem, jestli's 'vi' spustil v dobe, kdy nebyl k dispozici /usr, 
tak to sis ho asi nejdriv z toho /usr vykopiroval a nam to v dotazu 
zamlcel, ze ? No, stejne to prasklo ...

						Dan


-- 
Dan Lukes                                               SISAL MFF UK
AKA: dan at obluda.cz, dan at freebsd.cz, dan at (kolej.)mff.cuni.cz



More information about the Users-l mailing list