Intereting Posts
Медленное время отклика с помощью оболочки Gnome в полноэкранном режиме Virtualbox Извлечь дату из переменной в другом формате Понять netstat -i flgs Как сохранить / dev / stdout целевое местоположение в сценарии bash? Есть ли какая-либо утилита или процедура, доступные для dm-crypt для существующих существующих данных в реальном времени, чтобы сделать полное шифрование диска Можно ли смешивать несколько источников сервера имен в файле resolv.conf Выходной сигнал в ловушке, вызвавший вызванную ловушку? Текст трубы внутри и вне сервера Netcat Использование mkfifo Что заставляет cron постоянно отправлять почту и как ее отключить? warning: mysqli :: real_connect (): несогласование малой версии заголовков и клиентской библиотеки. Заголовки: 50537 Библиотека: 50623 разрешение на доступ к файлам запрещено, а некоторые сеансы убиты Храните ту же ширину среднего столбца в макете ThreeColMid в xmonad Поиск полного скрипта TUI для настройки даты и создания сетей CentOS 5 aufs с более низкой записываемой ветвью mount + как определить, установлена ​​ли локальная папка как только для чтения

Изменить домашний каталог для пользователя LDAP в Linux

У меня есть пользователь LDAP, который обращается к серверу на основе наличия соответствующего атрибута хоста LDAP через sssd. Этот пользователь не отображается в / etc / passwd, потому что он не является локальным. Как изменить его исходное местоположение, если он уже вошел в систему, и он был создан в местоположении по умолчанию? RHEL 6 Это просто usermod -d /new/location -m ?

Я не считаю, что утилита RHEL (или любые инструменты NSS для акций) поддерживает изменение содержимого NSS. Вероятно, вам нужно будет фактически изменить содержимое LDAP, а затем переместить его домашний каталог. Возможные инструменты для вас: diradm (посмотрите на v2 fork в Gentoo esp.), ldapvi , cpu , ldapscripts (может быть только debian)

Это на самом деле потрясающе легко. Если ваш nsswitch – файлы ldap; просто добавьте запись для них в / etc / passwd и измените любой параметр, который вы хотите. Если они еще не существуют в / etc / passwd, вы можете сделать getent passwd <username> | sed 's|/home/<username>|/home/remoteusers/<username>|g' >> /etc/passwd getent passwd <username> | sed 's|/home/<username>|/home/remoteusers/<username>|g' >> /etc/passwd например, чтобы изменить домашний каталог из корня / home в подпапку дома под названием remoteusers. Предостережение заключается в том, что вы не можете использовать useradd или usermod, вы должны отредактировать файл с помощью редактора.

Я знаю, что эта ветка устарела. Тем не менее, я наткнулся на него, пытаясь сделать то же самое на CentOS 7. Я полагаю, что процесс тот же. Мне нужно было изменить несколько каталогов пользователей из /home/USER в /home/ldap-users/USER .

Сначала создайте файл ldif с изменениями, которые вы хотите сделать. Я назвал мой changehomedirs.ldif . Возможно, вам придется изменить свой ou в зависимости от того, в какую организационную единицу вы разместили своих пользователей. Я позвонил своим людям.

Затем я написал сценарий, чтобы по существу прокручивать каждого пользователя LDAP по одному за раз и использовать sed для замены слова USER в файле changehomedirs.ldif текущему пользователю в цикле и перенаправить вывод во временный файл с именем tmp.ldif.

Затем я использовал команду ldapmodify чтобы внести изменения, используя параметр -f чтобы прочитать необходимые изменения из файла tmp.ldif. Пример приведен ниже.

Это просто тестовая система, поэтому пароль не чувствителен к природе.

Домашние директории до изменения LDAP

Как изменить домашний каталог пользователей в LDAP

Домашние каталоги после модификации LDAP