]> &ktalkd;-håndbogen David Faure
faure@kde.org
&erik.kjaer.pedersen.role;
&FDLNotice; 2001 David Faure 2001-05-02 1.05.02 &ktalkd; er en forbedret talk-dæmon, et program til at håndtere indkommende forespørgsler fra talk, annoncere dem og lade dig svare på dem med en talk-klient. KTALKD talk talkd otalk ntalk ktalkdlg kcmktalkd
Indledning &ktalkd; er en forbedret talk-dæmon, et program til at håndtere indkommende forespørgsler fra talk, annoncere dem og lade dig svare på dem med en talk-klient. Bemærk at &ktalkd; er beregnet at køre på en arbejdsstation med én bruger, og skal ikke køres på en flerbrugermaskine: eftersom den læser brugernes konfigurationsfiler, kan brugere få talk-dæmonen til at køre en hvilken som helst kommando, noget som er yderst farligt. Brug ikke &ktalkd; hvis du laver konti på din maskine for personer som du ikke stoler fuldstændigt på. I dette dokument kaldes du modtageren, hvis nogen vil tale med dig. &ktalkd; har følgende funktioner: Svarmaskine Hvis modtageren ikke er logget på, eller ikke svarer efter det andet forsøg, startes automatisk en telefonsvarer som modtager meddelelsen, og sender den som en e-mail til modtageren. Lyd Hvis det ønskes, afspilles en lyd ved annonceringen. Annoncering via X Hvis &ktalkd; kompileres med &kde; installeret, bruger den ktalkdlg, en &kde;-dialog, til annonceringer. Hvis &ktalk; kører, bliver den bedt om selv at gøre annonceringen (Nyt siden 0.8.8). Annoncering på flere skærme Hvis du er logget på fra en anden maskine (f.eks. med kommandoen export DISPLAY=...), gøres annonceringen via X også på denne skærm. Svar på hvilken du vil! Hvis du også er logget på en tekstterminal, og hvis du ikke bruger xterms (intern begrænsning), så ser du også en tekstannoncering, hvis du anvender tekstterminalen når annonceringen skal gøres. Videresending (Nyt siden 0.8.0) Du kan videresende til en anden brugere, eller til og med til en anden værtsmaskine hvis du er væk. Der er tre forskellige viderebefordringsmetoder. Se afsnittet Brug. Indstilling Hvis &ktalkd; er kompileret for &kde;, læser den indstillingerne fra &kde;s konfigurationsfil for hele systemet, ($KDEDIR/share/config/ktalkdrc) og fra brugerens fil i hjemmemappen. Den for hele systemet skal redigeres manuelt af systemadministratoren, men nu findes der en indstillingsdialog for brugerens fil. Den hedder kcmktalkd og findes i kontrolcentret efter &ktalkd; er installeret. På andre systemer end &kde;, læser &ktalkd; /etc/talkd.conf. Sprog Med &kde; vises annonceringen på dit sprog under forudsætning af at du indstiller det i &kde;'s menuer, og at nogen har oversat ktalkdlg til dit sprog. Det samme gælder indstillingsdialogen, kcmktalkd. Støtte for otalk og ntalk (Nyt siden 0.8.1) &ktalkd; understøtter nu begge protokoller til og med ved videresending. &ktalk; understøtter også begge protokoller. Jeg håber at du vil nyde denne talk-dæmon. David Faure faure@kde.org Brug For at bruge &ktalkd;, behøver du en talk-klient. Den tekstbaserede talk findes på de fleste &UNIX;-systemer. Forsøg med talk dit_brugernavn for at se hvad der sker når du modtager en forespørgsel fra talk. Du kan også prøve telefonsvareren på samme måde: start talk til dig selv, ignorér annonceringen to gange så ser du telefonsvareren. Der er en talk-klient med en grafisk grænseflade for &kde;, som hedder &ktalk;. Den levereres ikke med &kde;-pakken, men du kan finde den på ftp://ftp.kde.org. Den skulle være i ftp://ftp.kde.org/pub/kde/stable/latest/apps/network Annonceringsdialogen er triviel: svar eller ignorér. Indstillingsdialogen skulle være helt ligetil, bortset fra når det gælder at indstille videresending til en anden bruger (eller til og med en anden værtsmaskine). Vælg metode for videresending Ingen er perfekt, men alle har fordele (+) og bagdele (-). FWA - Videresend kun annonceringer. Direkte forbindelse. Anbefales ikke. (+) Du ved hvem opringeren er, men (-) Den som kalder skal svare på en annoncering fra dig. Irriterende. (-) Brug det ikke hvis du har en telefonsvarer på stedet hvor du er borte fra. (Telefonsvareren kan få en annoncering til at dukke op, og det ville være forvirrende!) FWR - Videresend hver forespørgsel, og ændr information om nødvendigt Direkte forbindelse (+) Den som kalder bliver ikke klar over at du er borte, men (-) Du véd ikke egentlig hvem den som kalder er, kun brugernavnet (så du kan komme til at se samtale fra Winsamtale@min_værtsmaskine) FWT - Videresend hver forespørgsel og acceptér samtalen. Ingen direkte forbindelse. (+) Samme som ovenfor, men virker også hvis du og den som kalder ikke kan være i direkte kontakt med hinanden (f.eks. en brandmur). (+) Du får at vide hvem som virkelig taler med dig når du accepterer samtalen. (-) Men som med FWR, kommer du ikke til at se hans maskinenavn i annonceringen. I korthed, brug FWT hvis du vil bruge det bagved en brandmur (og hvis &ktalkd; kan komme til begge netværk), ellers brug FWR. Spørgsmål og svar Hvorfor tager root ikke imod &kde;-annonceringer? Eftersom det ville være et sikkerhedshul med den nuværende brugeridentifikation. Du kan komme forbi denne begrænsning ved at tilføje to linjer til konfigurationsfilerne for xdm (som er den samme som for &kdm;). S.u.S.E &Linux;-distributionen inkluderer disse linjer som standard. Disse konfigurationsfiler findes normalt i en mappe såsom /etc/X11/xdm, eller /usr/X11R6/lib/X11/xdm på andre systemer. I det følgende antages at de findes i /etc/X11/xdm, så du kan behøve at oversætte det til en anden mappe. Her er hvad du skal gøre: Redigér filen Xstartup, eller opret den (i xdm konfigurationsmappen) så den lyder: #!/bin/sh /etc/X11/xdm/GiveConsole sessreg -a -l $DISPLAY -x /etc/X11/xdm/Xservers $USER og filen Xreset så at den lyder: #!/bin/sh /etc/X11/xdm/TakeConsole sessreg -d -l $DISPLAY $USER Sørg for at xdm-config refererer til følgende to filer: DisplayManager._0.startup: /etc/X11/xdm/Xstartup DisplayManager._0.reset: /etc/X11/xdm/Xreset Dette gør at &kdm; (eller xdm) logger brugeren i utmp, som er det rigtige at gøre. Det er ikke &konsole;s eller xterms sag at logge brugeren, men xdms eller &kdm;s sag, efter min mening. Dette logger dog ikke brugeren som en X-bruger når startx bruges... Noget vink om dette? Hvorfor kan jeg ikke, som normal bruger, modtage &kde;-annonceringer? Hvis du kører et &Linux;-system (med /proc aktiveret), er denne opførsel en fejl. Send en beskrivelse til mig så jeg kan rette det. Hvis du kører &Linux; 2.0.35, er dette en kendt fejl i kernen, som ikke lader root læse /proc. Løsningen er den samme som i foregående spørgsmål, under forudsætning af at du kører &kdm; eller xdm til at logge ind til X. Eller opgradér! Ellers er dette normalt. &ktalkd; kan ikke finde brugeren, eftersom &kde; ikke logger brugeren i utmp og den &Linux;-baserede (/proc) identifikation er lukket. Løsningen er den samme som i foregående spørgsmål, under forudsætning af at du kører kdm eller xdm for at logge på til X. En anden løsning er at sørge for at du altid har en xterm i gang. Hvordan får jeg fejlsøgningsudskrifter fra &ktalkd;? Eftersom den er en dæmon, er der ingen fejlsøgningsudskrift på standardudskriften. For at få fejlsøgningsudskrift (for eksempel inden du indsender en fejlrapport), opdateres linjerne i inetd.conf som starter &ktalkd; og &kotalkd; til: talk dgram udp wait root /usr/sbin/tcpd /opt/kde/bin/ktalkd -d ntalk dgram udp wait root /usr/sbin/tcpd /opt/kde/bin/ktalkd -d Bemærk flaget . Redigér derefter /etc/syslog.conf for at tilføje følgende linje: *.* /var/log/all_messages For at få det til at virke, skal du derefter genstarte inetd og syslogd: % killall % killall Kør til sidst en talk-session og se resultatet i /var/log/all_messages Når du indsender en fejlrapport, glem aldrig at indsætte fejlsøgningsudskriften, men også versionsnummeret for &ktalkd; og udskriften fra ./configure. Tak. Medvirkende og licens &ktalkd; vedligeholdes og forbedres af David Faure, faure@kde.org Originalprogrammet blev skrevet af Robert Cimrman, cimrman3@students.zcu.cz &erik.kjaer.pedersen.credit; &underFDL; &underGPL; Installation Hvordan får man fat på &ktalkd; &ktalkd; er nu et af kerneprogrammerne i &kde;-projektet http://www.kde.org, og en del af kdenetwork-pakken. Du kan altid hente den seneste &ktalkd; fra &kde;-projektets hoved-&FTP;-sted, ftp://ftp.kde.org/pub/kde og fra dets spejle. Den er sædvanligvis på ftp://ftp.kde.org/pub/kde/stable/latest/apps/network Krav For at kunne kompilere &ktalkd; med heldigt resultat, har du brug for den nyeste udgave af &kde;-bibliotekerne samt &Qt; C++ biblioteket. Alle biblioteker som kræves samt ktalkd selv findes på ftp://ftp.kde.org/pub/kde/. Kompilering og installation For at kompilere og installere &ktalkd; på dit system, skriv følgende i basismappen i distributionen for &ktalkd;: % ./configure % make % make Eftersom &ktalkd; er en dæmon, kræver make root-rettigheder. Glem ikke at opdatere /etc/inetd.conf. På for eksempel et &Linux;-system, hvis &kde; findes i /opt/kde, ændr linjerne som angår talk og ntalk til: talk dgram udp wait root /usr/sbin/tcpd /opt/kde/bin/ktalkd ntalk dgram udp wait root /usr/sbin/tcpd /opt/kde/bin/ktalkd Der er et script til at lave de nødvendige ændringer automatisk. Opdatér filen inetd.conf ved blot at køre % ./post-install.sh Under alle omstændigheder skal du genstarte inetd efter dette. På de fleste &Linux;-systemer, skrives: % killall På nyere systemer som bruger xinetd, findes filen /etc/inetd.conf ikke længere, og du skal redigere eller oprette /etc/xinetd.d/talk i stedet, med følgende linjer: service talk { socket_type = dgram wait = yes user = root server = /usr/bin/ktalkd } service ntalk { socket_type = dgram wait = yes user = root server = /usr/bin/ktalkd } og derefter genstarte xinetd. Informér mig gerne om ændringer som du behøvede indføre for at få &ktalkd; til at kompilere eller virke på din platform.