Действительно ли возможно ограничить процесс Linux так, чтобы это могло только работать на конкретном ядре на конкретной машине?

Это вероятно, предполагая, что Samba работал прежде над хостом, то обновление другого порта или замененного пакета libgcrypt.so.15 с более поздней версией, в то время как smbd двоичный файл был связан с той определенной версией. Проверьте, есть ли у Вас a libgcrypt.so символьная ссылка, указывающая другая пронумерованная версия.

В этом случае, предполагая, что более новая версия является обратным совместимым двоичным файлом, необходимо смочь для работы вокруг этого путем создания символьной ссылки из libgcrypt.so.15 к более новой версии Вы имеете. Однако рекомендуется восстановить Samba с более новой версией вместо этого, в случае, если существуют любые различия во включать файлах библиотеки.

Другая возможность состоит в том что пакет, содержащий libgcrypt.so был удален (из-за новой зависимости от конфликта или депрекации), но если Samba был установлен от порта FreeBSD, это должно было выдать предупреждение.

10
задан 26 June 2009 в 20:11
2 ответа

taskset (2.13-pre7 util-linux) использование: taskset [опции] [маска | список CPU] [pid | cmd [args...]] набор или получают привязку процесса

- p, - pid воздействует на существующий данный pid-c, - дисплей списка CPU и указывает CPU в формате списка-h, - справка отображает эту справку-v, - информация о версии вывода версии

Поведение по умолчанию состоит в том, чтобы выполнить новую команду: taskset 03 sshd-b 1024 можно получить маску существующей задачи: taskset-p 700 Или набор это: формат списка taskset-p 03 700 использует разделенный запятыми список вместо маски: taskset - ПК 0,3,7-11 700 Диапазонов в формате списка может взять аргумент шага: например, 0-31:2 эквивалентно маске 0x55555555

Вы можете alway оптимизировать Вас сервер как u r потребность

1
ответ дан 2 December 2019 в 22:04
taskset <affinity mask> -p <process>

т.е.

taskset 1 -p 12345

установить процесс 12345 для использования только процессора/ядра 1

Битовая маска может быть списком (т.е. 1,3,4 для использования ядер 1 3 и 4 из 4 + базовая система) или битовая маска в шестнадцатеричном числе (0x0000000D эти 1,3,4, 0x00000001 для просто базового 1)

taskset обычно находится в названном пакете shedutils.

Править: почти забыл... Если Вы хотите установить привязку новой команды вместо изменения это для существующего процесса, используйте:

taskset <mask> <program> [<arg1>]...[<argN>]
16
ответ дан 2 December 2019 в 22:04

Теги

Похожие вопросы