Перехват записи файла

Piping

yes - это команда, которая многократно выводит строку (по умолчанию "y") до тех пор, пока не будет уничтожена. См. man yes

cat - это команда, которая выводит в STDOUT все, что он получает на STDIN, или объединение всех файлов, перечисленных в качестве параметров. См. man cat

Канал ( | ) перенаправляет STDOUT с предыдущей команды на STDIN следующей команды.

Следовательно, подключение к cat является пустой тратой циклов ЦП.

Назначение переменной

Назначение переменной позволяет временно сохранить строку в памяти.

Пример:

$ test="this is a string!"
$ echo $test
this is a string!

Если вы хотите сохранить результат команды в переменной, вам нужно будет использовать подоболочку.

Пример:

$ echo "file contents :)" > test.file
$ test="$(cat test.file)"
$ echo $test
file contents :)

Ссылка

Подробнее об использовании bash см. https://www.gnu.org/software/bash/manual/bash.html

1
27.08.2018, 13:40
1 ответ

Во-первых, я рекомендую протестировать соединение с getent passwdперед изменением конфигурации PAM.

Используя вашу конфигурацию, я также страдал от длительного ожидания и случайных тайм-аутов. Я думаю, это происходит потому, что вы определяете base dc=kelamayi,dc=comтолько как базу поиска, а не конкретные карты -.

Согласно man 5 nslcd.conf

   base [MAP] DN
      Specifies the base distinguished name (DN) to use as search base.  This option  may
      be supplied multiple times and all specified bases will be searched.

      A  global  search  base may be specified or a MAP-specific one.  If no MAP-specific
      search bases are defined the global ones are used.

Таким образом, чтобы ускорить поиск и предотвратить тайм-ауты, вы могли бы (и, вероятно, должны )определить (как минимум )следующие базы в/etc/nslcd.conf:

base passwd CN=Users,DC=kelamayi,DC=com
base group  CN=unixGrp,DC=kelamayi,DC=com
base shadow CN=Users,DC=kelamayi,DC=com

См. также:https://arthurdejong.org/nss-pam-ldapd/setupдля получения дополнительной информации о настройке PAM с LDAP.

Обновление (2020 -03 -20 ):Узнав больше о PAM и LDAP, проблема, вероятно, заключалась в том, что pam_unix.soпопытается аутентифицировать пользователя (через средство nss )до того, как будет проведена консультация с pam_ldap.so.Порядок имеет значение в конфигурации PAM, поэтому pam_ldap.so, вероятно, должен быть либо перед pam_unix.so, либо вы можете использовать pam_localuser.so, чтобы пропустить pam_unix.so, если пользователь находится в /etc/passwd. Я не знаю, почему сайт nss -pam -ldapd предложил такой порядок. Переключение на SSSD , вероятно, является хорошей идеей.

0
28.01.2020, 00:30

Теги

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