3

Я не спрашиваю, как создать команду в UNIX.

Случается так, что на конкретной машине, на которую я часто захожу, мне разрешено запускать только долго работающие процессы с низким приоритетом (хороший 19). Есть ли способ, чтобы все мои команды на этой машине выполнялись так, как если бы я их "подчинил"?

Неизбежно я забываю ставить перед командой префикс "nice 19", когда запускаю ее, затем мне нужно разобраться в ps/top, чтобы найти pid моего процесса перехвата ресурсов и затем перезапустить его. Слишком много проблем, и я рискую раздражать сисадмина; Есть ли способ сделать это по умолчанию?

большое спасибо! ~ л

4 ответа4

3

В предположении Bash, если ваша система поддерживает эту функцию, поместите ее в ~/.bashrc или ~/.profile:

ulimit -e 19

Вы можете попробовать это сначала из командной строки в качестве теста.

2

Вы можете попросить своего системного администратора проверить корректирующий файл limit.conf, который является частью конфигурации PAM и находится (в моей системе Ubuntu) в /etc /security.

Линия как

@users hard priority 19

устанавливает по умолчанию «привлекательность» для процессов, запускаемых учетными записями пользователей.

0

Вы пробовали очень хорошо? Это немного устарело, но все еще кажется программой, которая может подойти для ваших нужд.

Обновление 2019-02-06: ссылка обновлена.

0

Этот ответ предполагает, что ваша оболочка bash .

Вместо того, чтобы копаться в ps или top , просто приостановите процесс (ы) с помощью Ctrl-z, если они не были запущены таким образом (через &), а затем запустите jobs -l чтобы получить pid, renice этот pid, а затем продолжить выполнение задания с помощью bg (для BackGround) или fg (ForeGround).

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .