Гайд: как перенести пользователей в Астра Линукс, мигрируя с другой ОС или в домен - Часть 1
1. Общие принципы миграции пользователей
Перед миграцией важно разделить два понятия:
- Учетная запись пользователя — логин, пароль, UID, GID, группы, права, домашний каталог.
- Пользовательские данные — документы, файлы рабочего стола, браузера, настройки приложений.
В общем случае:
- Пароли из Windows напрямую в Линукс не переносятся.
- Файлы пользователей перенести можно.
- Локальные учетные записи создаются заново вручную или скриптом.
- В доменной инфраструктуре пользователи заводятся централизованно, а клиентские ПК вводятся в домен.
2. Подготовка к миграции
2.1. Сделайте резервные копии
Если миграция выполняется на уже работающей системе, сохраните:
sudo mkdir -p /backup/etc /backup/home
sudo tar -czf /backup/etc-$(date +%Y-%m-%d).tar.gz /etc
sudo tar -czf /backup/home-$(date +%Y-%m-%d).tar.gz /home
Если используются другие домашние каталоги, например /srv/home или /userdata, добавьте их в резервную копию.
2.2. Проверьте версию и редакцию Астра Линукс
cat /etc/os-release
uname -a
Для управления пользователями обычно используются стандартные инструменты:
getent passwd
getent group
id username
2.3. Инвентаризация пользователей
Составьте список:
- логины;
- ФИО;
- подразделения;
- группы доступа;
- нужны ли права администратора;
- какие данные переносить;
- будет ли пользователь локальным или доменным.
Пример таблицы:
| Логин | ФИО | Группа | Администратор | Тип учетной записи |
|---|---|---|---|---|
| ivanov | Иванов И.И. | users | нет | локальный |
| petrov | Петров П.П. | sudo | да | доменный |
| sidorov | Сидоров С.С. | users | нет | доменный |
3. Перенос локальных пользователей в Астра Линукс
Этот сценарий подходит, если нужно создать пользователей локально на одном или нескольких компьютерах без домена.
3.1. Создание одного пользователя вручную
В Астра Линукс можно использовать adduser или useradd.
Вариант 1: интерактивный способ
sudo adduser ivanov
Система спросит пароль и дополнительные данные.
Вариант 2: командный способ
sudo useradd -m -s /bin/bash -c "Иван Иванов" ivanov
sudo passwd ivanov
Пояснение:
-m— создать домашний каталог;-s /bin/bash— оболочка входа;-c— комментарий, обычно ФИО;passwd— установка пароля.
3.2. Создание пользователя с нужным UID
Если нужно сохранить старый UID, например из другой системы:
sudo useradd -m -u 1500 -s /bin/bash -c "Иван Иванов" ivanov
sudo passwd ivanov
Проверка:
id ivanov
getent passwd ivanov
3.3. Добавление пользователя в группы
Просмотр групп:
groups ivanov
Добавление в группы:
sudo usermod -aG sudo,plugdev,lp,cdrom,audio,video ivanov
В разных редакциях Астра Линукс набор привилегированных групп может отличаться. Чаще всего для локального администрирования используется группа sudo. В некоторых вариантах могут использоваться специализированные группы администрирования, например astra-admin или похожие.
Проверить существующие группы:
getent group | grep sudo
getent group | grep astra
3.4. Массовое создание локальных пользователей
Создайте файл users.csv:
ivanov,Иван Иванов,
petrov,Петр Петров,sudo
sidorov,Сидор Сидоров,
Формат:
логин,ФИО,дополнительные группы через запятую
Скрипт создания:
#!/bin/bash
INPUT_FILE="users.csv"
while IFS=, read -r username fullname groups; do
if id "$username" &>/dev/null; then
echo "Пользователь $username уже существует, пропускаем."
continue
fi
echo "Создаем пользователя: $username"
sudo useradd -m -s /bin/bash -c "$fullname" "$username"
if [ -n "$groups" ]; then
sudo usermod -aG "$groups" "$username"
fi
# Временный пароль, затем пользователь должен его сменить
echo "$username:TempPass123!" | sudo chpasswd
sudo chage -d 0 "$username"
done < "$INPUT_FILE"
Сохраните файл, например как create_users.sh:
nano create_users.sh
chmod +x create_users.sh
./create_users.sh
Команда:
sudo chage -d 0 "$username"
заставит пользователя сменить пароль при первом входе.
Важно:
Если в системе включены жесткие политики паролей, временный пароль может не соответствовать требованиям. В этом случае задавайте пароли вручную или используйте доменную систему с нормальной политикой паролей.
4. Перенос домашних каталогов из другой Linux-системы
Если пользователи переносятся из другого дистрибутива Линукс, можно перенести их домашние каталоги.
4.1. Копирование домашних каталогов
Например, исходные данные находятся в /mnt/old_system/home.
sudo rsync -aHAX --info=progress2 /mnt/old_system/home/ /home/
Параметры:
-a— архивный режим;-H— сохранять жесткие ссылки;-A— сохранять ACL;-X— сохранять расширенные атрибуты;--info=progress2— показывать прогресс.
4.2. Исправление владельца
Если пользователь уже создан в Астра Линукс:
sudo chown -R ivanov:ivanov /home/ivanov
sudo chmod 700 /home/ivanov
Если пользователей много, можно использовать скрипт:
#!/bin/bash
for userhome in /home/*; do
username=$(basename "$userhome")
if id "$username" &>/dev/null; then
echo "Исправляем владельца для $username"
sudo chown -R "$username:$username" "$userhome"
sudo chmod 700 "$userhome"
else
echo "Пользователь $username не найден в системе"
fi
done
4.3. Перенос паролей из другого Линукс
Технически можно перенести строки из /etc/shadow, но в производственной среде это обычно не рекомендуется.
Причины:
- могут отличаться политики паролей;
- могут отличаться алгоритмы хэширования;
- могут быть разные UID/GID;
- могут быть требования безопасности.
Лучше:
- Создать пользователей заново.
- Назначить временные пароли.
- Потребовать смену пароля при первом входе.
5. Миграция пользователей из Windows
Важно понимать:
- учетные записи Windows и Линукс устроены по-разному;
- пароли Windows напрямую не переносятся;
- профили Windows можно частично перенести как файлы;
- настройки большинства Windows-приложений в Линукс не переносятся.
5.1. Какие данные можно переносить из Windows
Обычно переносят:
Документы
Рабочий стол
Загрузки
Изображения
Музыка
Видео
Закладки браузеров
Некоторые настройки почтовых клиентов
Файлы пользователей
Из профиля пользователя в Windows обычно копируют:
C:\Users\ИмяПользователя\Desktop
C:\Users\ИмяПользователя\Documents
C:\Users\ИмяПользователя\Downloads
C:\Users\ИмяПользователя\Pictures
C:\Users\ИмяПользователя\Music
C:\Users\ИмяПользователя\Videos
C:\Users\ИмяПользователя\Favorites
Не рекомендуется автоматически копировать:
AppData
NTUSER.DAT
Служебные файлы Windows
Настройки реестра
Файлы лицензий Windows
AppData может содержать полезные данные приложений, но большая часть настроек не будет работать в Линукс напрямую.
5.2. Подготовка данных в Windows
На Windows-машине желательно:
- Завершить работу пользователя.
- Подключиться администратором.
- Скопировать профиль пользователя во внешнюю папку или на сетевой ресурс.
Например, создайте структуру:
D:\Migration\
ivanov\
Desktop
Documents
Downloads
Pictures
Music
Videos
petrov\
Desktop
Documents
Downloads
Pictures
Music
Videos
5.3. Перенос данных на Астра Линукс
Есть несколько способов:
- Через сетевую шару SMB.
- Через внешний диск.
- Через
rsyncпо SSH, если на промежуточном сервере есть доступ. - Через архивы.
Пример копирования с примонтированной SMB-шары:
sudo mkdir -p /mnt/win
sudo mount -t cifs //winserver/Migration /mnt/win -o username=admin
Если требуется указать пароль и домен:
sudo mount -t cifs //winserver/Migration /mnt/win -o username=admin,domain=EXAMPLE,uid=1000,gid=1000
Проверка:
ls -l /mnt/win
5.4. Копирование данных конкретного пользователя
Предположим:
- пользователь в Астра Линукс:
ivanov; - домашний каталог:
/home/ivanov; - исходные данные:
/mnt/win/ivanov.
Команда:
sudo rsync -aHAX --info=progress2 /mnt/win/ivanov/ /home/ivanov/
Затем назначить владельца:
sudo chown -R ivanov:ivanov /home/ivanov
sudo chmod 700 /home/ivanov
5.5. Массовый перенос данных пользователей из Windows
Пример скрипта:
#!/bin/bash
SRC="/mnt/win"
DST="/home"
for username in ivanov petrov sidorov; do
if ! id "$username" &>/dev/null; then
echo "Пользователь $username не найден, пропускаем."
continue
fi
if [ ! -d "$SRC/$username" ]; then
echo "Исходная папка $SRC/$username не найдена."
continue
fi
echo "Переносим данные пользователя $username"
sudo rsync -aHAX --info=progress2 "$SRC/$username/" "$DST/$username/"
sudo chown -R "$username:$username" "$DST/$username"
sudo chmod 700 "$DST/$username"
done
5.6. Перенос браузеров
Браузерные закладки
Лучший способ:
- Экспортировать закладки из браузера в Windows в HTML-файл.
- Импортировать их в браузер в Астра Линукс.
Пароли браузеров
Пароли браузеров обычно зашифрованы привязкой к профилю ОС. Прямой перенос часто невозможен или небезопасен.
Рекомендуется:
- использовать менеджер паролей;
- экспортировать пароли, если это разрешено политикой безопасности;
- сбросить и задать заново там, где экспорт недопустим.
5.7. Перенос почты
Если используется почтовый клиент:
- Thunderbird можно переносить копированием профиля, но между ОС иногда возникают проблемы с путями и расширениями;
- лучше настроить учетную запись заново;
- если почта хранится в IMAP, достаточно повторно подключить ящик.
Для Outlook:
- PST-файлы напрямую в Линукс обычно не используются;
- лучше подключать ящик через IMAP/Exchange;
- при необходимости использовать конвертацию через промежуточный почтовый клиент.
6. Централизованная миграция в домен
Если нужно не просто создать пользователей локально, а перевести инфраструктуру на централизованное управление, используйте домен.
В качестве примера дальше рассматривается домен на базе:
- ALD Pro;
- FreeIPA;
- аналогичного домена с использованием
SSSD,Kerberos,LDAP.
Также кратко упомяну вариант с Active Directory.
Информация предоставлена в ознакомительных целях. Применение описанных настроек в системах, должно осуществляться только после согласования с ответственными за информационную безопасность и в соответствии с требованиями ФСТЭК, ФСБ и иных уполномоченных органов.