SEMPRE executa comandos com baixa prioridade no unix?

3

Eu não estou perguntando como nice e renice um comando no UNIX.

O que acontece é que, em uma máquina em particular na qual eu faço log freqüentemente, só posso executar processos de longa execução com baixa prioridade (nice 19). Existe uma maneira de todos os meus comandos nesta máquina funcionarem como se eu tivesse "19"?

Inevitavelmente eu esqueço o prefixo do comando "nice 19" quando eu o inicio, então preciso ir para o ps / top para localizar o pid do meu processo de usurpação de recursos e então renegá-lo. Demasiado problemas, e arrisco-me a incomodar o administrador de sistemas; Existe uma maneira de fazer isso por padrão?

muito obrigado! ~ l

    
por laramichaels 21.07.2010 / 02:29

4 respostas

3

Assumindo que Bash, se o seu sistema suportar esse recurso, coloque isso em ~/.bashrc ou ~/.profile :

ulimit -e 19

Você pode tentar em uma linha de comando primeiro como um teste.

    
por 21.07.2010 / 06:23
2

Você pode pedir ao seu administrador de sistema que procure ajustar o limits.conf, um arquivo de configuração que faz parte do PAM e está localizado (no meu sistema Ubuntu) em / etc / security.

Uma linha como

@users hard priority 19

define o padrão 'niceness' para processos iniciados por contas de usuários.

    
por 21.07.2010 / 02:36
0

Esta resposta assume que seu shell é bash .

Em vez de copiar em ps ou top , basta suspender o (s) processo (s) com Ctrl-z se não foram lançados dessa forma (via & ) e, em seguida, executar jobs -l para obter um pid, renice desse pid e, em seguida, continue a execução do trabalho via bg (para BackGround) ou fg (ForeGround).

    
por 21.07.2010 / 02:44
0

Você já tentou verynice ? É um pouco antigo, mas ainda parece ser um programa que pode ser excelente para as suas necessidades.

    
por 29.07.2010 / 10:58