как избежать NSCD для DNS

[116397]Ваша команда [116769]sed[116770] не работает, потому что во время цикла, каждый раз при чтении строки, она удаляет эту строку (и только эту строку) из полного входного файла, выводя ее в [116771]/home/dummy[116772]. Это означает, что выходной файл каждый раз перезаписывается. Таким образом, первая итерация цикла удаляет строку, начинающуюся с [116773]123,[116774], но затем вторая итерация использует исходный полный файл, который все еще включает эту строку.[12195] Попробуйте [116775] grep[116776] вместо:[12196] От [116777] man grep[116778]:[12197]
1
30.05.2014, 08:17
1 ответ
[1188145] При разрешении пользователя, группы, хоста, службы ..., процесс сначала попытается подключиться к сокету [1188578]nscd[1188579] (что-то вроде [1188580]/var/run/nscd/socket[1188581]), я не думаю, что есть какой-то способ обойти это.

Если [1188582]nscd[1188583] умерло, соединение не будет использоваться, и это не должно быть проблемой.

Если оно находится в состоянии "висит", то соединение может зависнуть или прерваться. В случае успеха клиент пришлет свой запрос (дайте мне IP адреса для [1188584]www.google.com[1188585], дайте мне записи passwd для [1188586]niranjan[1188587]...).

Теперь вы можете настроить [1188588]nscd[1188589] (по крайней мере, тот, который поставляется с GNU libc), чтобы отключить кэширование для любого типа базы данных (например, имея [1188590]enable-cache hosts no[1188591] в [1188592]/etc/nscd.conf[1188593] для базы данных [1188594]hosts[1188595]).

В этом случае, [1188596]nscd[1188597] ответит клиенту: [1188598] я не занимаюсь кэшированием [1188599] и клиент сам выполнит разрешение.

Однако, если [1188600]nscd[1188601] находится в состоянии [1188602]висячего [1188603], он может не дать даже такого простого ответа [1188604]не сделает [1188605], так что это необязательно поможет. Но это, вероятно, тем ближе к тому, что вы хотите, вам не удастся отключить [1188606]nscd[1188607] в целом.

nscd[1188609] - это демон кэширования, он предназначен для улучшения производительности. Отключение его может привести к тому, что они будут выглядеть медленнее. Однако это справедливо только для некоторых баз данных. Например, если ваши базы данных пользователей/служб/групп находятся только в маленьких файлах ([1188610]/etc/passwd[1188611], [1188612]/etc/group[1188613], [1188614]/etc/services[1188615]), то использование [1188616]nscd[1188617] для них, скорее всего, принесет небольшую пользу, если таковая вообще будет иметь место. [1188618]nscd[1188619] будет полезен для базы данных [1188620]hosts[1188621]. Но вместо того, чтобы использовать [1188622]nscd[1188623], вы можете также использовать локальный кэширующий DNS сервер типа [1188624]dnsmasq[1188625].[1188158].

8
27.01.2020, 23:12

Теги

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