Назначение утилиты sos
Отчет sosreport является отправной точкой с которой инженеры технической поддержки начинают анализ системы при поступление Утилита sos предназначена для анализа системы при поступлении запроса в службу технической поддержки. Утилита , предоставляет стандартизированный способ сбора диагностической информации, на которую инженеры службы службы технической поддержки могут ссылаться при диагностирование проблем. Использование данной утилиты помогает исключить повторные запросы данных об ошибках.
Утилита sos позволяет собирать различную отладочную информацию из одной или нескольких систем, при необходимости очищать конфиденциальные данные.
Три компонента sos выполняют следующееПараметры утилиты:
sos report
...
- — сбор отладочной информации с одной системы;
sos collect
...
- — запуск и сбор отдельных отчетов с указанного набора узлов
...
- ;
sos clean
...
- — сокрытие потенциально конфиденциальной информации (имена пользователей, имена хостов, IP- или MAC-адреса или другие данные, указанные пользователем).
Информация, собранная в отчете, содержит сведения о конфигурации, системную информацию и диагностическую информацию из системы, такую как:
- запущенная версия ядра;
- загруженные модули ядра;
- конфигурационные файлы системы и служб;
- вывод диагностической команды;
- список установленных пакетов.
Утилита sos записывает записывает собранные данные в архив с именем sosreport-<имя_хоста>-<номер_запроса>-<ГГГГ-ММ-ДД>-<случайные_уникальные_символы>.tar.xz.
Утилита сохраняет архив и его MD5 checksum контрольную сумму в каталоге /tmp/:
| Блок кода |
|---|
astra@server:~$ ls -l /tmp/sosreport* -rw-r----- 1 root astra-admin 87036 ноя 27 09:27 /tmp/sosreport-server-123-2023-11-27-aywdsnl.tar.xz -rw-r--r-- 1 root root 33 ноя 27 09:27 /tmp/sosreport-server-123-2023-11-27-aywdsnl.tar.xz.md5 |
...
Запуск утилиты sos
...
Терминал
Утилита sos предустановлена в операционную систему специального назначения «Astra Linux Special Edition» РУСБ.10015-01 (очередное обновление входит в состав ОС Astra Linux Special Edition 1.7).
Чтобы установить утилиту на другие версии операционной системы семейства ОС Astra Linux, требуются права суперпользователя.:
Выполнить команду:
Блок кода sudo apt installУстановка производится с помощью следующей команды:
Command sudo apt install sosreportЧтобы убедиться, что пакет установлен, используйте утилиту
dpkgвыполнить команду:Блок кода sudo dpkg -s sosreport
...
Графический режим
- Установить графическую утилиту "Центр системных отчетов"
...
- :
...
...
Блок кода sudo apt install fly-sosreport
...
- Запустить утилиту: Меню "Пуск" — Панель управления — Система — Центр системных отчетов.
Подробнее с работой графической утилиты можно ознакомиться во внутренней справке.
Создание отчета
...
Выполнить команду:
Блок кода sudo sos reportСледовать Для создания отчета необходимо запустить команду
sos reportи следовать инструкциям на экране:Блок кода astra@server:~$ sudo sos report sosreport (version 4.0) This command will collect system configuration and diagnostic information from this Debian system. For more information on the Debian project visit: https://www.debian.org/ The generated archive may contain data considered sensitive and its content should be reviewed by the originating organization before being passed to any third party. No changes will be made to system configuration. Нажмите ENTER для продолжения или CTRL-C для выхода.Имя файла отчета отображается в конце вывода консоли:
Блок кода Finished running plugins Создаётся архив... Your sosreport has been generated and saved in: /tmp/sosreport-server-123-2023-11-27-ztdyuvc.tar.xz Size 11.14MiB Owner root md5 9713252c24d0ea5f524b119156b6825f Please send this file to your support representative.Информация Чтобы обфусцировать создаваемый создаваемый sosreport, исключив конфиденциальную информацию, следует использовать опцию --clean:
Command sudo sos report --cleanУбедитесьУбедиться, что утилита
sosсоздала создала архив в/tmp/, соответствующий описанию из выходных данных команды, с помощью следующей команды:Commandcode astra@server:~$ ls -l /tmp/sosreport*
-rw-r----- 1 root astra-admin 87036 ноя 27 09:27 /tmp/sosreport-server-123-2023-11-27-aywdsnl.tar.xz
-rw-r--r-- 1 root root 33 ноя 27 09:27 /tmp/sosreport-server-123-2023-11-27-aywdsnl.tar.xz.md5
Одновременное создание и сбор отчета в нескольких системах
...
Запустите команду sos collect и следуйте инструкциям на экране.
| Информация |
|---|
По умолчанию |
...
- Чтобы вручную задать типы кластеров или узлов, необходимо использовать опции
--cluster-typeили--nodes. - Чтобы указать утилите
sosна удаленный узел для определения типа кластера и списков узлов, необходимо использовать параметр--master. Таким образом, не нужно входить в систему на узлах кластера, чтобы собирать отчетыsos. Любая допустимая опция
sos reportможет быть дополнительно указана (например,--batchи--clean) и будет передаваться при выполнении всех отчетов.Блок кода astra@pcmk-1:~# sudo sos collect -o process --nodes=pcmk-1,pcmk-2 --ssh-user=astra --password sos-collector (version 4.0) ... Press ENTER to continue, or CTRL-C to quit Please enter the case id you are collecting reports for: test Provide the SSH password for user astra: Cluster type set to Pacemaker High Availability Cluster Manager The following is a list of nodes to collect from: pcmk-1 pcmk-2 Connecting to nodes... Beginning collection of sosreports from 2 nodes, collecting a maximum of 4 concurrently pcmk-1 : Generating sosreport... pcmk-2 : Generating sosreport... pcmk-2 : Retrieving sosreport... pcmk-2 : Successfully collected sosreport pcmk-1 : Retrieving sosreport... pcmk-1 : Successfully collected sosreport The following archive has been created. Please provide it to your support team. /tmp/sos-collector-test-2023-12-02-lnyhg.tar.xz
...
Запустите команду sos clean на архив из sos report или sos collect и следуйте инструкциям на экране. Чтобы дополнительно заменить заменить базовый список ключевых слов, необходимо добавить опцию --keywords.
| Блок кода |
|---|
astra@pcmk-1:~#sudo sos clean /tmp/sos-collector-test-2023-12-02-lnyhg.tar.xz sos clean (version 4.0) ... Press ENTER to continue, or CTRL-C to quit. Found 3 total reports to obfuscate, processing up to 4 concurrently sosreport-pcmk-2-test-2023-12-02-qkjsswr : Extracting... sosreport-pcmk-1-test-2023-12-02-xjjpysa : Extracting... sos-collector-test-2023-12-02-lnyhg : Beginning obfuscation... sos-collector-test-2023-12-02-lnyhg : Obfuscation completed sosreport-pcmk-2-test-2023-12-02-qkjsswr : Beginning obfuscation... sosreport-pcmk-1-test-2023-12-02-xjjpysa : Beginning obfuscation... sosreport-pcmk-1-test-2023-12-02-xjjpysa : Re-compressing... sosreport-pcmk-2-test-2023-12-02-qkjsswr : Re-compressing... sosreport-pcmk-2-test-2023-12-02-qkjsswr : Obfuscation completed sosreport-pcmk-1-test-2023-12-02-xjjpysa : Obfuscation completed Successfully obfuscated 3 report(s) A mapping of obfuscated elements is available at /tmp/sos-collector-test-2023-12-02-lnyhg-private_map The obfuscated archive is available at /tmp/sos-collector-test-2023-12-02-lnyhg-obfuscated.tar.xz Size 12.52MiB Owner root Please send the obfuscated archive to your support representative and keep the mapping file private |
...
Убедитесь, что команда sos clean создала архив со скрытыми данными в /tmp/, соответствующий описанию из выходных данных команды, можно с помощью следующей команды:
| Блок кода |
|---|
astra@pcmk-1:~# ls -l /tmp/sos-collector-test-2023-12-02-lnyhg* -rw------- 1 root root 13130372 дек 2 13:50 /tmp/sos-collector-test-2023-12-02-lnyhg-obfuscated.tar.xz -rw------- 1 root root 1253 дек 2 13:50 /tmp/sos-collector-test-2023-12-02-lnyhg-obfuscation.log -rw------- 1 root root 2198 дек 2 13:50 /tmp/sos-collector-test-2023-12-02-lnyhg-private_map -rw------- 1 root root 13109664 дек 2 13:26 /tmp/sos-collector-test-2023-12-02-lnyhg.tar.xz |
Проверьте файл *-private_map на предмет отображения карты соотношения реальных данных к обфусцированным:
| Блок кода |
|---|
{
"hostname_map": {
"pcmk-2": "host0",
"pcmk-1": "host1"
},
"ip_map": {
"10.10.10.0/24": "100.0.0.0/24",
...
},
"mac_map": {
"52:54:00:cb:d0:d9": "53:4f:53:b7:47:88",
...
"1b36:0100:1af4:1100": "534f:53ff:fe5f:c599"
},
"keyword_map": {}
} |
...
| Предупреждение |
|---|
Рекомендуем сохранить сохранить копии оригинального необфусцированного архива и файла |
...
Запустите команду sos report , укажите парольную фразу с помощью опции --encrypt-pass и следуйте инструкциям. Имя файла отчета отображается в конце вывода консоли:
| Блок кода |
|---|
astra@pcmk-1:~$ sudo sos report --encrypt-pass 1234
sosreport (version 4.0)
...
Нажмите ENTER для продолжения или CTRL-C для выхода.
Please enter the case id that you are generating this report for []: gpg-test
Setting up archive ...
Setting up plugins ...
Running plugins. Please wait ...
Finishing plugins [Running: pacemaker]
Finished running plugins
Создаётся архив...
Your sosreport has been generated and saved in:
/tmp/secured-sosreport-pcmk-1-gpg-test-2023-12-02-bluhmko.tar.xz.gpg
Size 10.54MiB
Owner root
md5 005d7b79b61ebcfc0c97707b355306db
Please send this file to your support representative. |
...
Использовать команду
gpgдля расшифровки архива:Блок кода astra@pcmk-1:~$ sudo gpg --output decrypted-sosreport.tar.gz --decrypt /tmp/secured-sosreport-pcmk-1-gpg-test-2023-12-02-bluhmko.tar.xz.gpg
При появлении запроса необходимо ввести кодовую фразу, которая вы использовалась для шифрования архива:
Блок кода ┌────────────────────────────────────────────────────────┐ │ Введите фразу-пароль │ │ │ │ │ │ Фраза-пароль: ________________________________________ │ │ │ │ <OK> <Отмена (C)> │ └────────────────────────────────────────────────────────┘Необходимо убедиться, что утилита
gpgсоздала незашифрованный архив с расширением.tar.gzфайл:Блок кода astra@pcmk-1:~$ ls -l decrypted* -rw-r--r-- 1 root root 11025760 дек 2 07:32 decrypted-sosreport.tar.gz
...
Запустите команду
sos report,укажите имя пользователя, которому принадлежит связка ключей GPG, с помощью опции--encrypt-keyи следуйте инструкциям. Имя файла отчета отображается в конце вывода консоли:- Убедитесь, что утилита
sosсоздала архив, соответствующий следующим требованиям:- Имя файла начинается с
secured. - Имя файла заканчивается на расширение
.gpg. Архив находится в в
/tmp/.Блок кода astra@pcmk-1:~$ ls -l /tmp/secured* -rw-r----- 1 root astra-admin 11051437 дек 2 08:26 /tmp/secured-sosreport-pcmk-1-gpg-test-key-2023-12-02-bluhmko.tar.xz.gpg -rw-r--r-- 1 root root 33 дек 2 08:26 /tmp/secured-sosreport-pcmk-1-gpg-test-key-2023-12-02-bluhmko.tar.xz.gpg.md5
- Имя файла начинается с
Убедитесь, что архив возможно расшифровать с помощью той же парольной фразы, которая использовалась для его шифрования:
Используйте команду
gpgдля расшифровки архива:Command astra@pcmk-1:~$ sudo gpg --output decrypted-sosreport-key.tar.gz --decrypt /tmp/secured-sosreport-pcmk-1-gpg-test-key-2023-12-02-bluhmko.tar.xz.gpg
- При появлении запроса необходимо ввести кодовую фразу, которая использовалась при создании ключа GPG:
Блок кода ┌───────────────────────────────────────────────────────────────────┐ │ Введите фразу-пароль для разблокировки секретного ключа OpenPGP: │ │ "GPG User (first key) <root@example.com>" │ │ 2048-битный ключ RSA, идентификатор B7354458F02D70D5, │ │ создан 2023-12-02. │ │ │ │ │ │ Фраза-пароль: ___________________________________________________ │ │ │ │ <OK> <Отмена (C)> │ └───────────────────────────────────────────────────────────────────┘
4. Убедитесь, что утилита gpg создала незашифрованный архив с расширением .tar.gz файл:
| Блок кода |
|---|
astra@pcmk-1:~$ ls -l decrypted* -rw-r--r-- 1 root root 11025760 дек 2 08:32 decrypted-sosreport-key.tar.gz |
...
Создайте файл
key-input, используемый для генерации пары ключей GPG с предпочтительными данными. Например:Блок кода astra@pcmk-1:~$ cat >key-input <<EOF %echo Generating a standard key Key-Type: RSA Key-Length: 2048 Name-Real: GPG User Name-Comment: first key Name-Email: root@example.com Expire-Date: 0 %commit %echo Finished creating standard key EOF
Сгенеририруйте новый ключ GPG2 на основе содержимого файла
key-input:Command astra@pcmk-1:~$sudo gpg --batch --gen-key key-inputВведите кодовую фразу для защиты ключа GPG GPG для доступа к закрытому ключу для расшифровки:
Блок кода ┌────────────────────────────────────────────────────────┐ │ Введите фразу-пароль │ │ для защиты нового ключа │ │ │ │ Фраза-пароль: ________________________________________ │ │ │ │ <OK> <Отмена (C)> │ └────────────────────────────────────────────────────────┘Подтвердите правильность парольной фразы, введя ее еще раз:
Блок кода ┌────────────────────────────────────────────────────────┐ │ Повторите фразу-пароль: │ │ │ │ Фраза-пароль: ________________________________________ │ │ │ │ <OK> <Отмена (C)> │ └────────────────────────────────────────────────────────┘Убедитесь, что новый ключ GPG был успешно создан:
Блок кода gpg: Generating a standard key gpg: /root/.gnupg/trustdb.gpg: создана таблица доверия gpg: ключ B7354458F02D70D5 помечен как абсолютно доверенный gpg: создан каталог '/root/.gnupg/openpgp-revocs.d' gpg: сертификат отзыва записан в '/root/.gnupg/openpgp-revocs.d/0BF533429D80F579827F61CFB7354458F02D70D5.rev'. gpg: Finished creating standard key
Проверьте GPG-ключи пользователя root на сервере:
Блок кода astra@pcmk-1:~$ sudo gpg --list-secret-key /root/.gnupg/pubring.kbx ------------------------ sec rsa2048 2023-12-02 [SCEA] 0BF533429D80F579827F61CFB7354458F02D70D5 uid [ абсолютно ] GPG User (first key) <root@example.com>
...
- Следуя инструкциям статьи Справочного центра: Режимы восстановления, перейдите в псевдотерминал. Активируйте консоль, нажав "Enter"
Для Для получения доступа к корневому разделу выполнить команду chroot /target
Запустите команду
sos reportи следуйте инструкциям на экране:Имя файла отчета отображается в конце вывода консоли:
Убедитесь, что утилита
sosсоздала архив в каталоге/tmp/:Скопируйте диагностический архив на другое устройство или носитель для дальнейшей отправки.
Информация title Перемещение диагностического архива Ниже приведены несколько вариантов перемещения диагностического архива для последующей отправки в службу технической поддержки.
По сети:
1. Проверить статус сетевого интерфейса, выполнив команду:
Command ip a
Пример вывода команды:
2. Если интерфейс имеет состояние DOWN, как показано на скришоте, следует поднять интерфейс, выполнив команду:
Command ip link set enp1s0 up
где enp1s0 - имя необходимого интерфейса.
33. Назначить ip-адрес интерфейсу:
если если в локальной сети работает работает DHCP -сервер, выполнить команду:
Command dhclient
если в локальной сети отсутствует DHCP - сервер, назначить адрес вручную, выполнив команду:
Command ip addr add 192.168.0.123/255.255.255.0 dev enp1s0
где где 192.168.0.123 - ip-адрес устройства; 255.255.255.0 - маска подсети, enp1s0 - имя необходимого интерфейса.
Пример настроенного интерфейса enp1s0:
4. Использовать Использовать утилиту scp, для копирования диагностического архива на работающее устройство устройство в локально сети:
Command scp /tmp/sosreport* test@192.168.0.100:/tmp
где где test- имя пользователя для SSH подключения, 192.168.0.100 - ip-адрес удаленного устройства, :/tmp -директория на удаленном устройстве.
Предупреждение Для подключения на удаленном устройстве должен быть настроен SSH-сервер. Для настройки SSH-сервера на ОС СН Astra Linux рекомендуем ознакомиться со статье справочного центра: SSH
Через съемный носитель информации:
1. Подключить съемный носитель информации(далее -СНИ) к устройству.
2. Выполнить поиск устройства с помощью утилиты lsblk. Например:
3. Выполнить монтирование раздела в каталог с помощью утилиты mount. Например:
Command mount /dev/sda1 /media
где /dev/sda1 - раздел СНИ, /media - точка монтирования.
4. Использовать Использовать утилиту cp, для копирования диагностического архива на СНИ:
Command cp /tmp/sosreport* /media
где /media - точка монтирования.
- Следуя инструкциям статьи Справочного центра: Режимы восстановления, завершить работу с псевдотерминалом.






