]> &ksysv;-håndbogen Peter Putzer
putzer@kde.org
&erik.kjaer.pedersen.role;
2001-03-21 1.03.06 1998 2000 2001 Peter Putzer &FDLNotice; &ksysv; er en grafisk editor for SysV stil init-indstilling. KDE KSysV Køreniveau Køreniveau-editor System V init
Indledning Velkommen til &kde; System V Init Editor, almindeligt kendt (og der vil vi bruge fra nu af) som &ksysv;. Dette afsnit introducerer nogle få begreber og forklarer hvad du kan gøre med &ksysv;. En kort beskrivelse af System V Init Følgende forklaring er lånt fra tksysv (en inspiration for &ksysv;): System V init er hurtigt ved at blive til standarden i &Linux;-verdenen for at kontrollere opstart af software på boot-tidspunktet. Det er fordi man kan argumentere for at den er nemmere at bruge og mere kraftig og fleksibel end den traditionelle BSD init. Jeg vil ikke gå ind på historien her (hovedsageligt fordi jeg ikke kender den :-). Den init binære fil er placeret i /sbin og ikke /etc. Dette er vigtigt idet man kunne prøve at opgradere en maskine til System V init uden at geninstallere og reformatere. &Linux;-kernen kigger i /etc for dets init først, så du må sørge for at slette din gamle init derfra hvis der er en. SysV init er også forskellig fra BSD-init idet config-filerne er i et underkatalog til /etc i stedet for at være direkte i /etc. Dette katalog hedder rc.d. Deri vil du finde rc.sysinit og følgende kataloger: init.d/ rc0.d/ rc1.d/ rc2.d/ rc3.d/ rc4.d/ rc5.d/ rc6.d init.d indeholder en masse scripter. Basalt set har du brug for et script for hver service du måske vil start på boot-tidspunktet eller når du går ind i et andet køreniveau. Servicer inkluderer ting som netværk, NFS, &Sendmail;, httpd,&etc; Servicer inkluderer ikke sådanne ting som setserial der kun skal køres én gang og så afsluttes. Sådanne ting skal indgå i filen rc.local. rc.local skal være i /etc/rc.d hvis du vil have én. De fleste systemer inkluderer én selvom den ikke gør meget. Du kan også inkludere en rc.serial i /etc/rc.d hvis du har behov for at gøre specifikke ting med den serielle port på boot-tidspunktet. Kæden af begivenheder er følgende: Kernen kigger adskillige steder efter init og kører den første den finder. init kører /etc/rc.d/rc.sysinit. rc.sysinit gør en masse nødvendige ting og kører så rc.serial (hvis den eksisterer) init kører rc.local init kører alle scripterne på standard-køreniveauet Standard-køreniveauet afgøres i /etc/inittab. Du skulle have en linje tæt ved toppen sådan her: id:3:initdefault: Herfra skal du kigge i anden søjle og se at standard-køreniveauet er 3, som skulle være tilfældet for de fleste systemer. Hvis du ønsker at ændre det, kan du redigere /etc/inittab i hånden og ændre 3-tallet. Vær meget forsigtig når du roder med inittab. Hvis du laver kludder, kan du komme ind for at ordne det ved at reboote og gøre: LILO boot: linux single Dette skulle tillade dig at boote til enkeltbruger-tilstand så du kan ordne det. Nå, hvordan kører den alle de rigtige scripter? Hvis du kører en ls i rc3.d, vil du se noget i retning af: lrwxrwxrwx 1 root root 13 13:11 S10network -> ../init.d/network lrwxrwxrwx 1 root root 16 13:11 S30syslog -> ../init.d/syslog lrwxrwxrwx 1 root root 14 13:32 S40cron -> ../init.d/cron lrwxrwxrwx 1 root root 14 13:11 S50inet -> ../init.d/inet lrwxrwxrwx 1 root root 13 13:11 S60nfs -> ../init.d/nfs lrwxrwxrwx 1 root root 15 13:11 S70nfsfs -> ../init.d/nfsfs lrwxrwxrwx 1 root root 18 13:11 S75keytable -> ../init.d/keytable lrwxrwxrwx 1 root root 23 13:11 S80sendmail -> ../init.d/sendmail.init lrwxrwxrwx 1 root root 18 13:11 S90lpd -> ../init.d/lpd.init lrwxrwxrwx 1 root root 11 13:11 S99local -> ../rc.local Hvad du vil bemærke er at der ingen rigtige filer er i kataloget. Alting er et link til et af scripterne i init.d-kataloget. Linkene har også et S og et tal i begyndelsen. S betyder at dette specielle script skal startes og et K ville betyde at det skulle standse. Tallet lige før er blot af hensyn til rækkefølgen. Init vil starte alle de servicer der er baseret på den rækkefølge de kommer i. Du kan duplikere tallene, men det vil kun være forvirrende. Du skal blot bruge et to-ciffer tal, sammen med et stort S eller K til at start eller stop de servicer du behøver. Hvordan starter og stopper den servicer? Simpelt. Hvert af scripterne er skrevet til at acceptere et argument som kan være og . Du kan køre disse scripter manuelt rent faktisk med en kommando som: /etc/rc.d/init.d/httpd.init for at stoppe httpd-serveren. Init læser blot navnet, og hvis det har et K, kaldes scriptet med -argumentet. Hvis den har et kaldes scriptet med et -argument. Hvorfor alle disse køreniveauer? Nogle mennesker ønsker en nem måde at sætte en maskine op til flere formål. Jeg kunne have et server-køreniveau der kun kører httpd, sendmail, netværk, &etc; Så kunne jeg have et bruger-køreniveau der kører tdm, netværk, &etc; Fundamentale ting på skærmen Her lærer du hvordan du skal bruge &ksysv;, hvilket ikke skulle være svært, da den blev designet til at være så brugervenlig som muligt. Mus Brug af &ksysv; med en mus eller anden pegeenhed er nemt: træk blot en indgang fra Tilgængelige servicer-området til et af de seks køreniveauer for at start (henholdsvis stop) den på dette køreniveau. Du kan også flytte scripter mellem køreniveauer, eller ændre position i et givet køreniveau, ved attrække det rundt. Det at gøre dette fjerner indgangen fra dens oprindelige køreniveau (eller position). Dette sker ikke når du trækker en indgang fra Tilgængelige servicer-området. Indgange flyttes når du trækker dem til et nyt område. For at kopiere en service til et andet køreniveau, må du vælge Kopiér fra Redigér eller sammenhængsmenuen og Indsætte den i mål-køreniveauet. Sorteringsnummeret for en indgang kan sommetider ikke beregnes. I sådanne tilfælde skal du redigere sorteringsnumrene for de omgivende indgange før du prøver at indsætte servicen igen. Sorteringsnumre kan gå fra 00 til 99 men ikke højere. Du kan slette indgange ved at trække dem hen på Affaldsspand-området (symboliseret ved en ikon der viser en affaldsspand). For øjeblikket er der ingen måder at få ting tilbage der er trukket hen på Affaldsspanden, så vær omhyggelig! Tastatur Du kan bruge Tab-tasten til at skifte fokus mellem forskellige paneler (Tilgængelige servicer, Køreniveau 1 Start, Køreniveau 1 Stop, &etc;) og markørtasterne til at flytte det valgte op og ned. For at flytte en indgang til et andet køreniveau, Klippes det til klippebordet (ved brug af &Ctrl; X og så Indsættes det i mål-køreniveauet (med &Ctrl; V). For manuelt at ændre en indgangs sorteringsnummer eller navn, trykker du på Enter for at åbne egenskabsdialogen. Brug Tab-tasten til at skifte mellem forskellige felter. Luk dialogen ved at trykke på Enter for at acceptere ændringerne, eller tryk på Esc for at annullere ændringerne. Menuerne En beskrivelse af &ksysv;'s menu en af gangen. <guimenu>Fil</guimenu>-menu På grund af faren for datatab, beder alle menuindgange under Fil om bekræftelse før de udfører deres arbejde. Fil Vend indstillingen tilbage... Glem alle ændringer du har lavet og vend tilbage til den sidst gemte indstilling. &Ctrl; O Fil Åbn... Åbn en tidligere gemt indstilling. &Ctrl; S Fil Gem indstilling Gør dine ændringer permanente. Der genereres ingen sikkerhedskopi, så brug dette med omhu. Fil Gem som... Gemmer en kopi af din nye indstilling. &Ctrl; L Fil Gem log... Gem en log &Ctrl; P Fil Udskriv log... Udskriv en kopi af loggen. &Ctrl; Q Fil Afslut Afslutter &ksysv;. <guimenu>Redigér</guimenu>menuen &Ctrl; Z Redigér Fortryd Fortryd de sidste ikke-gemte ændringer der er lavet. &Ctrl; Shift Z Redigér Annullér fortryd Annullér det sidste fortrudte. &Ctrl; X Redigér Klip Klip den aktuelt valgte service til klippebordet. &Ctrl; C Redigér Kopiér Kopiér den valgte indgang til klippebordet, uden at fjerne den fra dens oprindelige position. &Ctrl; V Redigér Indsæt Indsæt indholdet af klippebordet ved markørens aktuelle position. Redigér Egenskaber Åbn egenskabsdialogen for det valgte punkt. <guimenu>Værktøjer</guimenu>-menuen Værktøjer Start service... Start den valgte service Værktøjer Stop service... Stop den valgte service Værktøjer Genstart service... Genstart den valgte service. Værktøjer Redigér service... Redigér den valgte service <guimenu>Opsætnings</guimenu>menu Opsætning Vis værktøjslinje Slå visning af værktøjslinjen til og fra. Opsætning Vis statuslinje Slå visning af statuslinjen til og fra. Opsætning Vis log Slå visning af logvinduet til og fra. Opsætning Gem indstillinger Gem de aktuelle indstillinger. Opsætning Indstil tastebindinger... Brugerindstil tastebindingerne. Opsætning Indstil værktøjslinjer... Brugerindstil værktøjslinjen. Opsætning Indstil SysV-Init editor... Brugerindstil opførslen af &ksysv; <guimenu>Hjælpe</guimenu>menuen &help.menu.documentation; Indstilling Alle indstillinger gemmes i $TDEHOME/share/config/ksysvrc. Standarder tages fra den globale fil ($TDEDIR/share/config/ksysvrc), hvis den er tilgængelig, ellers genereres den indenfor &ksysv;. Ændringer af standarden gemmes i din lokale ksysvrc. Genkendte afsnit Genkendte afsnit samt deres standardværdier. [Stiopsætning] Nøgleord Standard Beskrivelse ScriptPath /etc/rc.d/init.d Sti til de scripter der bruges til at starte og stoppe tjenester. RunlevelPath /etc/rc.d Sti til undermapper for køreniveau. [Farver] Nøgleord Standard Beskrivelse Ændret red Farve brugt til ændrede indgange Ny blå Farve brugt til nye indgange [Geometri] Nøgleord Standard Beskrivelse Bredde Bredde af &ksysv;'s vindue Højde Højde af &ksysv;'s vindue [Andre indstillinger] Nøgleord Standard Beskrivelse ToolBar true Om værktøjslinjen er aktiveret eller ej StatusBar true Om statuslinjen er aktiveret eller ej ShowLog true Om logvinduet vises eller ej PanningFactor 80 100 - PanningFactor = procent af vinduet reserveret til visning af logfil Spørgsmål og svar Jeg legede bare med standard køreniveauet, og nu rebooter min maskine hele tiden. Hvad kan jeg gøre? Indtast linux single ved LILO-starten og tryk på Enter for at boote til enkeltbrugertilstand. Redigér filen /etc/inittab og lav standard køreniveau om til noget rimeligt. 3 skulle normalt være sikker. Min maskine stopper lige efter den booter Se spørgsmål 1 ovenfor. Jeg har skemalagt nogle servicer til at blive kørt i køreniveau X ved brug af &ksysv;, så hvorfor virker det ikke? Hvis du bruger SuSE eller Delix (DLD), skal du også redigere distributionsspecifik fil i /etc. Kig venligst i manualen for din distribution for detaljer. Metoden til at starte servicer brugt af ovennævnte distributioner gør indstilling af servicer nemt for de lukkede indstillingsværktøjer disse distributioner har, men det er uheldigvis ikke-standard. &ksysv;-forfatterne planlægger at skrive en generisk udvidelse for denne metode engang i fremtiden, men det bliver hverken i dag eller i morgen. Hvis du bruger en anden distribution, så tjek venligst at du har alle config-filerne der behøves for servicen, og om de er på det rigtige sted. Nogle dæmoner for eksempel Apache, (også kendt som httpd) dør blot lige så stille hvis deres indstillingsfiler mangler eller er indstillet forkert. Standard-semantik for køreniveauer Dette varierer efter distribution, så dette er en ufuldstændig liste af de mest almindelige &Linux;-distributioner. Hvis du har en anden distribution, så skriv venligst til forfatteren og få informationen tilføjet il denne manual. &RedHat; Køreniveau 0: halt (lukker maskinen ned) Køreniveau 1: Enkeltbrugertilstand. Køreniveau 2: Multibruger ren tekst, uden NFS. Køreniveau 3: Multibruger ren tekst, med fuldt netværk. Køreniveau 4: Ikke brugt. Køreniveau 5: Multibruger X11 med fuldt netværk. Køreniveau 6: Reboot Medvirkende og licens &ksysv; Ophavsret © 1997-1998 Peter Putzer Peter Putzer, putzer@kde.org - Udvikler Dokumentation: Peter Putzer, putzer@kde.org - Oprindeligt indhold Eric Bischoff, e.bischoff@noos.fr - Editor &erik.kjaer.pedersen.credit; &underFDL; &underGPL; Installation &install.intro.documentation; &install.compile.documentation;