summaryrefslogtreecommitdiffstats
path: root/man/pt/start-stop-daemon.pod
blob: 05950d26b512fdde30b4c6460b7eec234d1aea22 (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
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
        *****************************************************
        *           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 NOME

start-stop-daemon - inicia e pára programas daemon do sistema

=head1 SINOPSE

B<start-stop-daemon> [I<option>...] I<command>

=head1 DESCRIÇÃO

B<start-stop-daemon> é usado para a criação e término de processos de
nível-de-sistema. Usando uma destas opções de correspondência, o
B<start-stop-daemon> pode ser configurado para procurar instâncias
existentes de processos a correr.

B<Nota:> A menos que B<--pid> ou B<--pidfile> sejam especificados,
B<start-stop-daemon> comporta-se de modo semelhante a
B<killall>(1). B<start-stop-daemon> irá sondar a tabela de processos em
busca de qualquer processo que coincida com o nome de processo, pid parente,
uid, e/u gid (se especificado). Quaisquer processos correspondentes irá
prevenir um B<--start> de iniciar o daemon. A todos os processos
correspondentes será enviado o sinal TERM (ou aquele especificado via
B<--signal> ou B<--retry>) se for especificado B<--stop>.Para daemons que
têm filhos de vida-longa que precisam sobreviver a um B<--stop>, você tem de
especificar um pidfile.

=head1 COMANDOS

=over 

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

Verifica a existência de um processo especificado. Se tal processo existir,
o B<start-stop-daemon> não faz nada, e termina com um estado de erro 1 (0 se
B<--oknodo> for especificado). Se tal processo não existir, inicia uma
instância, usando ou o executável especificado por B<--exec> ou, se
especificado, por B<--startas>. Quaisquer argumentos dados após B<--> na
linha de comandos são passados sem modificação ao programa que está a ser
iniciado.

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

Verifica a existência de um processo especificado. Se tal processo existir,
B<start-stop-daemon> envia o sinal especificado por B<--signal>, e termina
com estado de erro 0. Se tal processo não existir, B<start-stop-daemon>
termina com estado de erro 1 (0 se B<--oknodo> for especificado). Se for
especificado B<--retry> então o B<start-stop-daemon> irá verificar se os
processo(s) terminaram.

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

Verifica a existência de um processo especificado, e devolve um código de
estado de saída, de acordo com as Acções do Script Init do LSB (desde versão
1.16.1).

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

Mostra informação de utilização e termina.

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

Mostra a versão do programa e termina.

=back

=head1 OPÇÕES

=head2 Opções de correspondência

=over 

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

Verifica por um processo com o I<pid> especificado (desde versão 1.17.6). O
I<pid> tem de ser um número maior que 0.

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

Verifica por um processo com o I<ppid> (pid pai) especificado (desde versão
1.17.7). O I<ppid> tem de ser um número maior que 0.

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

Verifica se um processo criou o ficheiro I<pidfile>.

B<Nota:> Usar esta opção de correspondência sozinha pode causar que se actue
em processos intencionalmente, se o processo antigo terminou sem ser capaz
de remover o seu I<pidfile>.

B<Aviso:> Usar esta opção de correspondência com um pidfile gravável
mundialmente ou usá-la sozinha com um daemon que escreve o pidfile como um
utilizador sem privilégios (não-root) irá ser recusada com um erro (desde
versão 1.19.3) pois isto é um risco de segurança, porque ou o utilizador
consegue escrever nele, ou se o daemon ficar comprometido, não se pode
confiar no conteúdo do pidfile, e depois um programa privilegiado (tal como
um script de init corrido como root) acabaria a actuar em qualquer processo
do sistema. Usar I</dev/null> está isento destas verificações.

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

Verifica por processos que são instâncias deste I<executable>. O argumento
I<executable> deve ser um nome de caminho absoluto.

B<Nota:> Isto pode não funcionar como pretendido com com scripts de
interpretação, pois o executável irá apontar para o interpretador. Tendo em
conta que processos que correm dentro de uma chroot também irão
corresponder, então poderão ser necessárias outras restrições de
correspondência.

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

Verifica por processos com o nome I<process-name>. O I<process-name> é
geralmente o nome de ficheiro do processo, mas pode ter sido modificado pelo
próprio processo.

B<Nota:> Na maioria dos sistemas esta informação é obtida a partir do nome
de comunicação do processo a partir do kernel, o que tem tendência a ter um
limite de comprimento relativamente curto (assumir mais de 15 caracteres é
não-portável).

=item B<-u>, B<--user> I<username>|I<uid>

Verifica por processos cujo dono é o utilizador especificado por I<username>
ou I<uid>.

B<Nota:> usar só esta opção de correspondência irá causar com que seja
actuado em todos os processos que correspondem ao utilizador.

=back

=head2 Opções genéricas

=over 

=item B<-g>, B<--group> I<group>|I<gid>

Altera para I<grupo> ou I<gid> quando inicia o processo.

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

Com B<--stop>, especifica o sinal a enviar aos processos a serem parados
(predefinição TERM).

=item B<-R>, B<--retry> I<timeout>|I<schedule>

Com B<--stop>, especifica que B<start-stop-daemon> deve verificar se o(s)
processo(s) terminam mesmo. Irá verificar repetidamente se qualquer processo
correspondente está a correr, até que nenhum esteja. Se os processos não
terminarem irá então tomar mais acções como determinado pelo agendamento.

Se for especificado I<timeout> em vez de I<schedule>, então agenda
I<signal>B</>I<timeout>B</KILL/>I<timeout> é usada, onde I<signal> é o sinal
especificado com B<--signal>.

I<schedule> é uma lista de pelo menos dois itens separados por barras
(B</>); cada item pode ser B<->I<signal-number> ou [B<->]I<signal-name>, o
que significa enviar esse sinal, ou I<timeout>, o que significa esperar
esses tantos segundos para que os processos terminem, ou B<forever>, o que
significa repetir o resto da agenda para sempre se necessário.

Se o fim da agenda for atingido e não foi especificado B<forever>, então
B<start-stop-daemon> termina com o estado de erro 2. Se for especificada uma
agenda então qualquer sinal especificado com B<--signal> é ignorado.

=item B<-a>, B<--startas> I<pathname>

Com B<--start>, inicia o processo especificado por I<nome-de-caminho>. Se
não especificado, usa por predefinição o argumento dado a B<--exec>.

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

Escreve as acções que seriam tomadas e define valores de retorno
apropriados, mas não toma nenhuma acção.

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

Retorna o estado de saída 0 em vez de 1 se nenhuma acção foi (será) tomada.

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

Não escreve mensagens informativas, apenas mostra mensagens de erro.

=item B<-c>, B<--chuid> I<username>|I<uid>[B<:>I<group>|I<gid>]

Muda para este nome-utilizador/uid antes de arrancar o processo. Você também
pode especifica um grupo ao anexar B<:>, e depois o grupo ou gid do mesmo
modo que faria com o comando B<chown>(1) (I<user>B<:>I<group>).  Se for
especificado um utilizador sem um grupo, é usado o GID primários para esse
utilizador. Quando usa esta opção você tem de compreender que os grupos
primário e suplementar são também definidos, mesmo que a opção B<--group>
não seja especificada. A opção B<--group> é apenas para grupos em que o
utilizador não é normalmente um membro dele (tal como adicionar sociedade de
grupo por-processo para utilizadores genéricos tipo B<nobody>).

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

Muda directório e chroot para I<root> antes de iniciar o processo. Por favor
note que o pidfile é também escrito após o chroot.

=item B<-d>, B<--chdir> I<path>

Muda directório para I<caminho> antes de iniciar o processo. Isto é feito
depois de chroot se a opção B<-r>|B<--chroot> estiver definida. Quando não
especificado, o B<start-stop-daemon> irá mudar o directório para o
directório raiz antes de iniciar o processo.

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

Tipicamente usado com programas que não se desanexam deles próprios. Esta
opção irá forçar o B<start-stop-daemon> a bifurcar antes de iniciar o
processo, e a forçá-lo para os bastidores.

B<Warning: start-stop-daemon> não pode verificar o estado de saída se o
processo falhar ao executar por B<qualquer> razão. Este é o último recurso,
e destina-se apenas a programas que ou não fazem sentido a bifurcarem por si
só, ou onde não é praticável adicionar-lhes o código para fazerem isto eles
próprios.

=item B<--notify-await>

Espera pelo processo nos bastidores que envie uma notificação de prontidão
antes de considerar o serviço arrancado (desde versão 1.19.3). Isto
implementa partes do protocolo de prontidão do systemd, como especificado no
manual B<sd_notify>(3). As seguintes variáveis são suportadas:

=over 

=item B<READY=1>

O programa está pronto a dar serviço, portanto é seguro sair-mos.

=item B<EXTEND_TIMEOUT_USEC=>I<number>

O programa pede para estender o limite de tempo em by I<number>
milissegundos. Isto irá reiniciar o tempo limite actual para o valor
especificado.

=item B<ERRNO=>I<number>

O programa está a terminar com um erro. Faça o mesmo e escreva a string
amiga-do-utilizador para o valor B<errno>.

=back

=item B<--notify-timeout> I<timeout>

Define o tempo limite para a opção B<--notify-await> (desde versão
1.19.3). Quando o tempo limite é atingido, o B<start-stop-daemon> irá
terminar com um código de erro, e não é esperada nenhuma notificação de
prontidão. A predefinição é B<60> segundos.

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

Não fecha nenhum descritor de ficheiro quando força o daemon para os
bastidores (desde versão 1.16.5). Usado para objectivos de depuração para
ver o resultado dos processos, ou para redirecionar os descritores de
ficheiros para registar o resultado dos processos. Apenas relevante quando
se usa B<--background>.

=item B<-O>, B<--output> I<pathname>

Redireciona B<stdout> e B<stderr> para I<pathname> quando força o daemon a
funcionar em segundo plano (desde versão 1.20.6). Apenas relevante quando se
usa B<--background>.

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

Isto altera a prioridade do processo antes de o iniciar.

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

Isto altera a política de agendamento de processos e a prioridade dos
processos antes de os iniciar (desde versão 1.15.0). A prioridade pode ser
opcionalmente especificada ao anexar um B<:> seguido de um valor. A
predefinição de I<priority> é 0. Os valores de política actualmente
suportados são B<other>, B<fifo> e B<rr>.

=item B<-I>, B<--iosched> I<class>B<:>I<priority>

Isto altera a classe de agendamento IO e a prioridade dos processos antes de
os iniciar (desde versão 1.15.0). A prioridade pode ser opcionalmente
especificada ao anexar um B<:> seguido de um valor. A predefinição de
I<priority> é 4, a menos que I<class> seja B<idle>, então I<priority> será
sempre 7. Os valores actualmente suportados para I<class> são B<idle>,
B<best-effort> e B<real-time>.

=item B<-k>, B<--umask> I<mask>

Isto define o umask do processo antes de o iniciar (desde a versão 1.13.22).

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

Usado quando se inicia um programa que não cria o seu próprio ficheiro
pid. Esta opção irá fazer o B<start-stop-daemon> criar o ficheiro
referenciado com B<--pidfile> e colocar o pid nele mesmo antes de executar o
processo. Nota, o ficheiro só será removido quando se pára o programa se for
usado B<--remove-pidfile>.

B<Nota:> Esta funcionalidade pode não funcionar em todos os casos. Mais
notavelmente quando o programa a ser executar bifurca do seu processo
principal. Devido a isto, é geralmente apenas útil quando combinado com a
opção B<--background>.

=item B<--remove-pidfile>

Usado para parar um programa que não remove o seu próprio ficheiro pid
(desde versão 1.17.19). Esta opção irá fazer o B<start-stop-daemon> remover
o ficheiro referenciado com B<--pidfile> após terminar o processo.

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

Escreve mensagens de informação detalhadas.

=back

=head1 ESTADO À SAÍDA

=over 

=item B<0>

A acção requerida foi executada. Se B<--oknodo> foi especificado, é também
possível que nada tenha de ser feito. Isto pode acontecer quando B<--start>
foi especificado e um processo correspondente já estava a correr, ou quando
B<--stop> foi especificado e não há nenhum processo correspondente.

=item B<1>

Se B<--oknodo> não foi especificado e nada foi feito.

=item B<2>

Se B<--stop> e B<--retry> foram especificados, mas foi alcançado o fim do
agendamento e os processos ainda estavam a correr.

=item B<3>

Qualquer outro erro.

=back

Quando se usa o comando B<--status>, são devolvidos os seguintes códigos de
estado:

=over 

=item B<0>

Programa está em execução.

=item B<1>

Programa não está em execução e o ficheiro pid existe.

=item B<3>

Programa não está em execução.

=item B<4>

Incapaz de determinar o estado do programa.

=back

=head1 EXEMPLO

Inicia o daemon B<food>, a menos que um já esteja a correr (um processo
chamado food, a correr como utilizador food, com pid em food.pid):

=over 

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

=back

Envia B<SIGTERM> para B<food> e espera até 5 segundos para que pare:

=over 

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

=back

Demonstração dum agendamento personalizado para parar o B<food>:

=over 

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

=back


=head1 TRADUÇÃO

Américo Monteiro

Se encontrar algum erro na tradução deste documento, por favor comunique para
Américo Monteiro <a_monteiro@gmx.com>.