summaryrefslogtreecommitdiffstats
path: root/man/sv/start-stop-daemon.pod
blob: f8231a76e511a0224de6ce262046098570ac585f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
        *****************************************************
        *           GENERATED FILE, DO NOT EDIT             *
        * THIS IS NO SOURCE FILE, BUT RESULT OF COMPILATION *
        *****************************************************

This file was generated by po4a(7). Do not store it (in VCS, for example),
but store the PO file used as source file by po4a-translate.

In fact, consider this as a binary, and the PO file as a regular .c file:
If the PO get lost, keeping this translation up-to-date will be harder.

=encoding UTF-8

=head1 NAMN

start-stop-daemon - startar och stoppar bakgrundsprocesser

=head1 SYNOPS

B<start-stop-daemon> [I<flagga>...] I<åtgärd>

=head1 BESKRIVNING

B<start-stop-daemon> används för att styra hur processer på systemnivå skapas och avslutas. Med hjälp av en av sökflaggorna kan B<start-stop-daemon> ställas in att hitta befintliga instanser av en körande process.

B<Observera:> Om inte B<--pid> eller B<--pidfile> anges kommer B<start-stop-daemon> att jobba på ett sätt som liknar B<killall(1).> B<start-stop-daemon> kommer att söka i processtabellen efter processer med motsvarande namn på processen, användar-id och/eller grupp-id (om sådant anges). Alla processer som stämmer överens kommer tillsändas signalen TERM (eller den som anges med B<--signal> eller B<--retry>) om B<--stop> anges. För processer som har långlivade barn som måste överleva en B<--stop>, måste du ange en pidfil.

=head1 KOMMANDON

=over 

=item B<-S>, B<--start> [B<-->] I<argument>

Se om en angiven process existerar, och om så är fallet gör B<start-stop-daemon> ingenting och avslutar med status 1 (0 om B<--oknodo> anges). Om en sådan process inte existerar startas en instans, antingen med programfilen som anges med B<--exec> eller, om den anges, med B<--startas>. Eventuella argument som ges efter B<--> på kommandoraden skickas utan ändring till programmet som startas.

=item B<-K>, B<--stop>

Testa om den angivna processen existerar. Om så är fallet sänder B<start-stop-daemon> den signal som anges av B<--signal> till processen, och avslutar med status 0. Om processen inte finns avslutar B<start-stop-daemon> med status 1 (0 om B<--oknodo> anges). Om B<--retry> anges kommer B<start-stop-daemon> kontrollera att processen har avslutats.

=item B<-T>, B<--status>

Se om den angivna processen existerar, och returnerar en statuskod i enlighet med LBS Init Script Actions (sedan version 1.16.1).

=item B<-H>, B<--help>

Visa hjälpskärm och avsluta.

=item B<-V>, B<--version>

Visa programversion och avsluta.

=back

=head1 FLAGGOR

=head2 Matchingsflaggor

=over 

=item B<--pid> I<pid>

Se efter en process med angiven I<pid> (sedan version 1.17.6). I<pid> måste vara ett tal större än 0.

=item B<--ppid> I<ppid>

Se efter en process med angiven föräldra-pid I<ppid> (sedan version 1.17.7). I<ppid> måste vara ett tal större än 0.

=item B<-p>, B<--pidfile> I<pidfil>

Kontrollera om en process har skapat filen I<pidfil>.

B<Observera:> Om flaggan används på egen hand kan den orsaka att oönskade processer berörs, om den gamla processen avslutats utan att kunna ta bort I<pidfil>.

B<Varning:> Om flaggan används med en pidfil som kan skrivas av alla eller om den används ensam tillsammans med en serverprocess som skriver pidfilen som en icke-privilegierad användare (icke-root) kommer det att avvisas med ett felmeddelande (sedan version 1.19.3) eftersom det är en säkerhetsrisk, då antingen alla användare kan skriva filen, eller om serverprocessen komprometteras och inte innehållet i pidfilen inte är betrott, så kan en privilegiserad körprocess (till exempel ett init-skript som körs som root) kunna arbeta mot vilken som helst systemprocess. I</dev/null> är undantaget från dessa kontroller.

=item B<-x>, B<--exec> I<programfil>

Se efter processer som är instanser av I<programfil>. Flaggan I<programfil> bör vara en absolut sökväg.

B<Observera:> Detta fungerar kanske inte som det ska för tolkade skript eftersom programfilen kommer peka på tolken. Notera att processer som körs inuti en chroot också kommer att träffas, så andra begränsningar kan behövas.

=item B<-n>, B<--name> I<processnamn>

Se efter processer med namnet I<processnamn>. I<Processnamn> är vanligtvis processens filnamn, men kan ha ändrats av processen själv.

B<Observera:> På de flesta system hämtas informationen från processens comm-namn från kärnan, vilket ofta har en relativt kort längdbegränsning (det är inte portablet att anta fler än 15 tecken).

=item B<-u>, B<--user> I<användarnamn>|I<användar-id>

Sök efter processer som ägs av den användare som anges med I<användarnamn> eller I<användar-id>.

B<Observera:> Om den här flaggan används på egen hand träffas alla processer som motsvarar användaren.

=back

=head2 Generiska flaggor

=over 

=item B<-g>, B<--group> I<grupp>|I<grupp-id>

Byt till I<grupp> eller I<grupp-id> när processen startas.

=item B<-s>, B<--signal> I<signal>

Tillsammans med B<--stop> anger detta den signal som ska sändas till processen som stoppas (förval är TERM).

=item B<-R>, B<--retry> I<tidsgräns>|I<schema>

Tillsammans med B<--stop> anger detta att B<start-stop-daemon> ska kontrollera att processen avslutas. Den testar flera gånger efter matchande processer som körs, tills ingen längre finns kvar. Om processerna inte avslutar kommer programmet utföra ytterligare kommandon enligt schemat.

Om I<tidsgräns> anges istället för I<schema> kommer schemat I<signal>B</>I<timeout>B</KILL/>I<timeout> att användas, där I<signal> är den signal som anges med B<--signal>.

I<schema> är den lista med åtminstone två poster avdelade med snedstreck (B</>); varje post är antingen B<->I<signalnummer> eller [B<->]I<signalnamn>, vilket betyder att signalen ska sändas, eller I<timeout>, vilket anger det antal sekunder programmet ska vänta på att processen avslutar, eller B<forever>, vilket betyder att resten av schemat ska repetera för evigt om så behövs.

Om slutet på schemat nås och B<forever> inte anges kommer B<start-stop-daemon> avslutas med felkod 2. Om ett schema anges kommer eventuell signal angiven med B<--signal> att ignoreras.

=item B<-a>, B<--startas> I<sökväg>

Tillsammans med B<--start> anger detta att processen som anges med I<sökväg> ska startas. Om den inte anges används argumentet som gavs till B<--exec>.

=item B<-t>, B<--test>

Skriver ut vad som skulle ha utförts och sätter returvärdet, men utför ingenting.

=item B<-o>, B<--oknodo>

Returnerar felstatus 0 i stället för 1 om ingen åtgärd utförs/skulle utförts.

=item B<-q>, B<--quiet>

Skriv inte informationsmeddelanden; visa endast felmeddelanden.

=item B<-c>, B<--chuid> I<användarnamn>|I<användar-id>[B<:>I<grupp>|I<grupp-id>]

Byt till användarnamnet/användar-id:t innan processen startas. Du kan även ange en grupp genom att lägga till ett kolontecken, B<:>, följt av gruppnamnet eller grupp-id på samma sätt som du skull gjort till kommandot B<chown>(1) (I<användare>B<:>I<grupp>). Om du anger en användare utan att ange en grupp kommer användarens primära grupp-id att användas. När du använder alternativet måste du ha i åtanke att även både primär- och tilläggsgrupp sätts, även om B<--group>-flaggan inte anges. B<--group>-flaggan är bara till för grupper som användaren normalt inte är en medlem i (t.ex för att lägga till gruppmedlemskap för enskilda processer för standardanvändare såsom B<nobody>).

=item B<-r>, B<--chroot> I<rot>

Byt katalog och rot till B<rot> innan processen startas. Observera att även pidfilen skrivs efter chroot har utförts.

=item B<-d>, B<--chdir> I<sökväg>

Byt katalog till I<sökväg> innan processen startas. Detta görs efter byte av rot om B<-r>|B<--chroot>-flaggan anges. Om flaggan inte anges kommer B<start-stop-daemon> byta till rotkatalogen innan processen startas.

=item B<-b>, B<--background>

Används typiskt med program som inte kopplar loss sig av sig själva. Flaggan tvingar B<start-stop-daemon> att förgrena sig (fork) innan processen startar, och tvinga den grenen att köra i bakgrunden.

B<Varning: start-stop-daemon> kan inte kontrollera felstatus för processer som av B<någon som helst> anledning misslyckas med att exekvera. Detta är en sista utväg, och är endast avsett för program som det antingen inte är någon mening att förgrena på egen hand, eller där det inte är möjligt att lägga till kod för det på egen hand.

=item B<--notify-await>

Vänta på att bakgrundsprocessen sänder en bekräftelse på att den är redo innan tjänsten anses vara startad (sedan version 1.19.3). Detta implementar delar av systemd:s beredskapsprotokoll, så som det anges i manualsidan B<sd_notify>(3). Följande variabler stöds:

=over 

=item B<READY=1>

Programmet är redo att tillhandahålla sin tjänst, så vi kan avsluta på ett säkert sätt.

=item B<EXTEND_TIMEOUT_USEC=>I<antal>

Programmet ber om att utöka tidsgränsen med I<antal> mikrosekunder. Detta kommer återställa den aktuella tidsgränsen till det angivna värdet.

=item B<ERRNO=>I<värde>

Programmet avslutar med en felkod. Gör detsamma och skriv ut den användarvänliga strängen för B<errno>-värdet.

=back

=item B<--notify-timeout> I<tidsgräns>

Sätt en tidsgräns för flaggan B<--notify-await> (sedan version 1.19.3). När tidsgränsen nås kommer B<start-stop-daemon> avslutas med en felkod, och ingen beredskapsinformation kommer väntas på. Förvalet är B<60> sekunder.

=item B<-C>, B<--no-close>

Stäng inte filbeskrivare när serverprocessen tvingas till bakgrunden (sedan version 1.16.5). Använd för felsöknignssyften för att se processutdata, eller för att omdirigera filbeskrivare för att logga processutdata. Endast relevant när B<--background> används.

=item B<-O>, B<--output> I<sökväg>

Omdirigera B<standard ut> och B<standard fel> till I<sökväg> när serverprocessen tvingas till bakgrunden (sedan version 1.20.6). Endast relevant när B<--background> används.

=item B<-N>, B<--nicelevel> I<heltal>

Ändrar prioriteten på processen innan den startas.

=item B<-P>, B<--procsched> I<policy>B<:>I<prioritet>

Ändrar processschemaläggarens policy och prioritet för processen innan den startas (sedan version 1.15.0). Prioriteten är valfri och anges genom att lägga till ett B<:> följt av värdet. Standardvärdet för I<prioritet> är 0. För närvarande stöds värdena B<other>, B<fifo> och B<rr> för I<policy>.

Det är möjligt att flaggan inte gör något på system där POSIX-processschemaläggning inte stöds.

=item B<-I>, B<--iosched> I<klass>B<:>I<prioritet>

Ändrar I/O-schemaläggarens klass och -prioritet för processen innan den startas (sedan version 1.15.0). Prioriteten är valfri och anges genom att lägga till ett B<:> följt av värdet. Standardvärdet för I<prioritet> är 4, såvida inte I<klass> är B<idle>, då är I<prioritet> alltid 7. För närvarande stöds värdena B<idle>, B<best-effort> och B<real-time> för I<klass>.

Det är möjligt att flaggan inte gör något på system där Linux-I/O-schemaläggning inte stöds.

=item B<-k>, B<--umask> I<maskvärde>

Ställer in umaskvärdet på processen innan den startas (sedan version 1.13.22).

=item B<-m>, B<--make-pidfile>

Används när ett program som inte skapar sin egen pidfil startas. Flaggan kommer att få B<start-stop-daemon> att skapa filen som anges med B<--pidfile> och lägga process-id i den precis innan processen startas. Observera att den endast kommer att tas bort när programmet stoppas om B<--remove-pidfile> används.

B<Observera:> Funktionen kanske inte alltid fungerar. Framförallt inte när programmet som startas förgrenar sig (fork) från sin huvudprocess. Därför är flaggan oftast bara användbar i samband med flaggan B<--background>.

=item B<--remove-pidfile>

Används när ett program som inte tar bort sin egen pid-fil stoppas (sedan version 1.17.19). Flaggan gör att B<start-stop-daemon> tar bort filen som anges med B<--pidfile> efter att processen stoppats.

=item B<-v>, B<--verbose>

Skriv ut pratsamma informationsmeddelanden.

=back

=head1 RETURVÄRDE

=over 

=item B<0>

Efterfrågad åtgärd utfördes. Om B<--oknodo> angavs är det även möjligt att ingenting behövde utföras. Det kan hända när B<--start> angavs och en motsvarande process redan körde, eller när B<--stop> angavs och det inte fanns någon motsvarande process.

=item B<1>

Om B<--oknodo> inte angavs och ingenting gjordes.

=item B<2>

Om B<--stop> och B<--retry> angavs, men slutet på tidtabellen nåddes och processen fortfarande kördes.

=item B<3>

Alla andra fel.

=back

Med B<--status>-åtgärden returneras följande statuskoder:

=over 

=item B<0>

Programmet kör.

=item B<1>

Programmet kör inte och pid-filen finns.

=item B<3>

Programmet kör inte.

=item B<4>

Kan inte ta reda på programmets status.

=back

=head1 EXEMPEL

Starta serverprocessen B<food>, såvida inte en redan kör (en process med namnet food, som körs som användaren food, med process-id i food.pid):

=over 

 start-stop-daemon --start --oknodo --user food --name food \
   --pidfile %RUNSTATEDIR%/food.pid --startas /usr/sbin/food \
   --chuid food -- --daemon

=back

Sänd B<SIGTERM> till B<food> och vänta upp till fem sekunder på att den ska avslutas:

=over 

 start-stop-daemon --stop --oknodo --user food --name food \
   --pidfile %RUNSTATEDIR%/food.pid --retry 5

=back

Demonstration av ett skräddarsytt schema för att avsluta B<food>:

=over 

 start-stop-daemon --stop --oknodo --user food --name food \
   --pidfile %RUNSTATEDIR%/food.pid --retry=TERM/30/KILL/5

=back


=head1 ÖVERSÄTTNING

Peter Krefting och Daniel Nylander.