diff --git a/linux/ubuntu_domain_leave.md b/linux/ubuntu_domain_leave.md new file mode 100644 index 0000000..3b64de6 --- /dev/null +++ b/linux/ubuntu_domain_leave.md @@ -0,0 +1,64 @@ + #πŸ› οΈ Runbook: ЗависаниС Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ Ubuntu 24.04 (AD + GDM) + + > **Π‘ΠΈΠΌΠΏΡ‚ΠΎΠΌ:** БистСма Π½Π°Π³Π»ΡƒΡ…ΠΎ виснСт Π½Π° этапС Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ послС старта слуТб `gdm.service` ΠΈ `colord.service`. Π’ Π»ΠΎΠ³Π°Ρ… Π½Π° экранС Π½Π°Π±Π»ΡŽΠ΄Π°ΡŽΡ‚ΡΡ массовыС ошибки сокСтов SSSD (`Failed to listen on sssd-nss.socket` ΠΈ `sssd-pam-priv.socket`). + + ## πŸ” Анализ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ (Root Cause) + Π‘Π±ΠΎΠΉ происходит ΠΈΠ·-Π·Π° ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚Π° оТидания: + 1. **SSSD (System Security Services Daemon)** ΠΏΠ°Π΄Π°Π΅Ρ‚ ΠΈΠ»ΠΈ ΡƒΡ…ΠΎΠ΄ΠΈΡ‚ Π² бСсконСчный Ρ†ΠΈΠΊΠ» ΠΈΠ·-Π·Π° ΠΏΠΎΠ²Ρ€Π΅ΠΆΠ΄Π΅Π½Π½ΠΎΠ³ΠΎ локального кэша ΠΈΠ»ΠΈ "Π·Π°Π²ΠΈΡΡˆΠΈΡ…" сокСтов послС Π½Π΅ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΠ³ΠΎ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ Ρ€Π°Π±ΠΎΡ‚Ρ‹. + 2. **GDM (GNOME Display Manager)** пытаСтся ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚ΡŒΡΡ ΠΊ PAM/NSS для ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ экрана Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΠΈ Π΄ΠΎΠΌΠ΅Π½Π½Ρ‹Ρ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ. + 3. Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΎΠΌ зависания графичСского стСка ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹ΡΡ‚ΡƒΠΏΠ°Ρ‚ΡŒ ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚ ΠΏΡ€ΠΎΠΏΡ€ΠΈΠ΅Ρ‚Π°Ρ€Π½Ρ‹Ρ… Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ΠΎΠ² Nvidia с Wayland, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ Π² Ubuntu 24.04 ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ. + + --- + + ## πŸ› οΈ Π¨Π°Π³ΠΈ диагностики ΠΈ восстановлСния + + ### Π¨Π°Π³ 1. ΠŸΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ доступа ΠΊ консоли (TTY) + Для Π½Π°Ρ‡Π°Π»Π° Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΡ€ΠΎΠ±ΠΈΡ‚ΡŒΡΡ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π½ΡƒΡŽ строку, минуя зависший GDM. + + - ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒΡΡ Π² свободный TTY: Π½Π°ΠΆΠΌΠΈ `Ctrl + Alt + F3` (ΠΈΠ»ΠΈ `F4`–`F6`). + - πŸ›‘ **Если систСма Π½Π΅ Ρ€Π΅Π°Π³ΠΈΡ€ΡƒΠ΅Ρ‚:** Π£Ρ…ΠΎΠ΄ΠΈΠΌ Π² **Recovery Mode**. + 1. Π’Ρ‹ΠΏΠΎΠ»Π½ΠΈ ΠΆΠ΅ΡΡ‚ΠΊΡƒΡŽ ΠΏΠ΅Ρ€Π΅Π·Π°Π³Ρ€ΡƒΠ·ΠΊΡƒ. + 2. Π—Π°ΠΆΠΌΠΈ `Shift` (ΠΈΠ»ΠΈ `Esc` для UEFI) Π²ΠΎ врСмя POST-Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ. + 3. Π’ мСню GRUB Π²Ρ‹Π±Π΅Ρ€ΠΈ: *Advanced options for Ubuntu* ➑️ *Recovery mode* ➑️ `root` (Drop to root shell prompt). + 4. *Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: Ссли корнСвая Π€Π‘ смонтирована Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ "Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‡Ρ‚Π΅Π½ΠΈΠ΅", ΠΏΠ΅Ρ€Π΅ΠΌΠΎΠ½Ρ‚ΠΈΡ€ΡƒΠΉ Π΅Π΅:* + ```bash + mount -o remount,rw / + ``` + + ### Π¨Π°Π³ 2. ВосстановлСниС SSSD (Π“Π»Π°Π²Π½Ρ‹ΠΉ ΠΏΠΎΠ΄ΠΎΠ·Ρ€Π΅Π²Π°Π΅ΠΌΡ‹ΠΉ) + Ошибки `Failed to listen on... socket` Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ очистки старых сокСтов ΠΈ сброса кэша Π±Π°Π·Ρ‹ AD. + + ```bash + # 1. ΠžΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΠΌ Π·Π°Π²ΠΈΡΡˆΡƒΡŽ слуТбу + systemctl stop sssd + + # 2. БбрасываСм кэш (стандартная ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° ΠΏΡ€ΠΈ ΠΎΡ‚Π²Π°Π»Π΅ Π΄ΠΎΠΌΠ΅Π½Π½ΠΎΠΉ ΠΌΠ°ΡˆΠΈΠ½Ρ‹) + rm -f /var/lib/sss/db/* + + # 3. ΠŸΡ€ΠΈΠ½ΡƒΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ удаляСм ΠΌΠ΅Ρ€Ρ‚Π²Ρ‹Π΅ сокСты + rm -f /var/lib/sss/pipes/nss + rm -f /var/lib/sss/pipes/pam + + # 4. ЗапускаСм слуТбу ΠΈ провСряСм статус + systemctl start sssd + systemctl status sssd + ``` + > πŸ’‘ **Tip:** Если слуТба снова ΠΏΠ°Π΄Π°Π΅Ρ‚, ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡŒ Π΄Π΅Ρ‚Π°Π»ΡŒΠ½Ρ‹Π΅ Π»ΠΎΠ³ΠΈ: `journalctl -xeu sssd` ΠΈΠ»ΠΈ `/var/log/sssd/sssd.log`. + + ### Π¨Π°Π³ 3. РСшСниС ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ с графичСским стСком (GDM + Nvidia) + Если послС сброса кэша SSSD (ΠΈΠ»ΠΈ Π΅Π³ΠΎ ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Ρ‡Π΅Ρ€Π΅Π· `systemctl disable sssd`) Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ° ΠΏΠΎ-ΠΏΡ€Π΅ΠΆΠ½Π΅ΠΌΡƒ останавливаСтся Π½Π° `colord.service` ΠΈΠ»ΠΈ `gdm.service`, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Wayland, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΎΠ½ часто ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚ΡƒΠ΅Ρ‚ с Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π°ΠΌΠΈ Nvidia. + + ```bash + # 1. ΠžΡ‚ΠΊΡ€Ρ‹Π²Π°Π΅ΠΌ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΡŽ GDM + nano /etc/gdm3/custom.conf # (ΠΈΠ½ΠΎΠ³Π΄Π° /etc/gdm3/daemon.conf) + ``` + + ```ini + # 2. Находим ΠΈ раскоммСнтируСм (ΡƒΠ±ΠΈΡ€Π°Π΅ΠΌ #) ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΡƒΡŽ строку: + WaylandEnable=false + ``` + + ```bash + # 3. ΠŸΠ΅Ρ€Π΅Π·Π°ΠΏΡƒΡΠΊΠ°Π΅ΠΌ дисплСйный ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ + systemctl restart gdm.service + ``` \ No newline at end of file