Как перенести Sendmail со старого на новый сервер Linux

Как перенести sendmail со старого на новый сервер linux

 

Как мне переместить или перенести учетные записи пользователей со старого сервера Linux на новый сервер Cent OS Linux, включая почту? Эта новая система свежая установка.

Вы можете перенести пользователей со старого сервера Linux на новый сервер Linux с помощью стандартных команд, таких как tar, awk, scp и других. Это также полезно, если вы используете старый дистрибутив Linux, такой как Redhat 9 или Debian 2.x.

 

Следующие файлы / каталоги необходимы для традиционного управления пользователями Linux:
* /etc/passwd –  содержит различную информацию для каждой учетной записи пользователя.

* /etc/shadow –  содержит зашифрованную информацию о паролях для учетных записей пользователей и, необязательно, информацию об устаревании пароля.

* /etc/group – определяет группы, к которым принадлежат пользователи

* /etc/gshadow – файл группы (содержит зашифрованный пароль для группы)

* /var/spool/mail – обычно здесь хранятся электронные письма пользователей.

* /home – здесь хранятся данные всех пользователей.

ПРЕДУПРЕЖДЕНИЕ. Приведенная ниже информация требует хорошего понимания концепций Linux. Автор не несет ответственности за любой ущерб.

Команды для ввода в старой системе Linux

Сначала создайте tar-шар старого использования (старая система Linux). Создайте каталог:
# mkdir /root/move/
Установите ограничение фильтра UID:
# export UGIDLIMIT=500
Теперь скопируйте учетные записи /etc/passwd в /root/move/passwd.mig, используя awk для фильтрации системной учетной записи (т. Е. Только для копирования учетных записей пользователей).
# awk -v LIMIT=$UGIDLIMIT -F: '($3>=LIMIT) && ($3!=65534)' /etc/passwd > /root/move/passwd.mig
Скопируйте файл /etc/group:
# awk -v LIMIT=$UGIDLIMIT -F: '($3>=LIMIT) && ($3!=65534)' /etc/group > /root/move/group.mig
Скопируйт /etc/shadow файл:
# awk -v LIMIT=$UGIDLIMIT -F: '($3>=LIMIT) && ($3!=65534) {print $1}' /etc/passwd | tee - |egrep -f - /etc/shadow > /root/move/shadow.mig
Скопируйте /etc/gshadow файл:
# cp /etc/gshadow /root/move/gshadow.mig
Сделайте резервную копию каталогов  /home and /var/spool/mail :
# tar -zcvpf /root/move/home.tar.gz /home
# tar -zcvpf /root/move/mail.tar.gz /var/spool/mail

уда,

  • Пользователи, добавленные в систему Linux, всегда начинают со значениями UID и GID, указанными в дистрибутиве Linux или установленными администратором. Ограничения в зависимости от дистрибутива Linux:
    • RHEL / CentOS / Fedora Core : по умолчанию — 500, а верхний предел — 65534 (/etc/libuser.conf).
    • Debian и Ubuntu Linux : по умолчанию 1000, а верхний предел — 29999 (/etc/adduser.conf).
  • Вы никогда не должны создавать новые учетные записи системных пользователей на недавно установленной Cent OS Linux. Таким образом, выше команда awk отфильтровывает UID в соответствии с дистрибутивом Linux.
  • export UGIDLIMIT = 500 — установить лимит запуска UID для обычного пользователя. Установите это значение в соответствии с вашим дистрибутивом Linux.
  • awk -v LIMIT = $ UGIDLIMIT -F: ‘($ 3> = LIMIT) && ($ 3! = 65534)’ / etc / passwd> /root/move/passwd.mig — Вам необходимо передать переменную UGIDLIMIT в awk с помощью -v параметр (он присваивает значение переменной оболочки UGIDLIMIT переменной LIMIT программы awk). Опция -F: устанавливает разделитель полей на:. Наконец, awk читает каждую строку из / etc / passwd, отфильтровывает системные учетные записи и генерирует новый файл /root/move/passwd.mig. Та же логика применима и к остальной части команды awk.
  • tar -zcvpf /root/move/home.tar.gz / home — Сделать резервную копию пользователей / домашнего каталога
  • tar -zcvpf /root/move/mail.tar.gz /var/spool/mail — сделать резервную копию каталога почты пользователей

Используйте scp или usb ручку или ленту, чтобы скопировать / root / перейти в новую систему Linux.
# scp -r /root/move/* user@new.linuxserver.com:/path/to/location

Команды для ввода в новой системе Linux

Сначала сделайте резервную копию текущих пользователей и паролей: Теперь восстановите passwd и другие файлы в  etc:

# mkdir /root/newsusers.bak
# cp /etc/passwd /etc/shadow /etc/group /etc/gshadow /root/newsusers.bak

# cd /path/to/location
# cat passwd.mig >> /etc/passwd
# cat group.mig >> /etc/group
# cat shadow.mig >> /etc/shadow
# /bin/cp gshadow.mig /etc/gshadow

Обратите внимание, что вы должны использовать перенаправление оболочки >> (добавить), а не > (создать).

Теперь скопируйте и извлеките home.tar.gz на новый сервер /home

# cd /
# tar -zxvf /path/to/location/home.tar.gz

Теперь скопируйте и извлеките mail.tar.gz (письма) на новый сервер /var/spool/mail
# cd /
# tar -zxvf /path/to/location/mail.tar.gz

Теперь перезагрузите систему; когда Linux вернется, ваши учетные записи будут работать так же, как и раньше в старой системе:
# reboot

Обратите внимание, что если вы новичок в Linux, выполните указанные выше команды в изолированной среде. Вышеупомянутый метод может быть использован для миграции учетной записи UNIX в UNIX ИЛИ UNIX в Linux. Вам нужно внести несколько изменений, но в целом концепция останется прежней.