Назад | Перейти на главную страницу

Solaris 11 nsswitch.conf испортился, необходимо отредактировать его из альтернативного ядра

Итак, я редактировал службу имен / переключения и испортил свой nsswitch.conf, я перезаписал "passwd = files" на "passwd = filesasdf", поэтому теперь я не могу авторизоваться на сервере при загрузке этого ядра. . Однако я могу просто загрузиться с ядром Solaris 11/11 по умолчанию и снова выполнить аутентификацию, проблема в том, что было сделано много настроек (не все они мной и не обязательно задокументированы), и я хотел бы иметь возможность авторизироваться в это ядро ​​и продолжить настройку / настройку / обучение и так далее.

Проблема в том, что я понятия не имею, как получить доступ к службе в этом альтернативном ядре (поскольку Solaris 11 больше даже не использует файл nsswitch.conf). Я предполагаю, что это просто снимок ZFS или что-то, что содержит новое ядро, поэтому, вероятно, потребуется монтировать этот снимок и редактировать любой файл, на который сейчас смотрит служба имен (разве он не должен смотреть на файл в какой-то момент?) .

В любом случае, я тоже новичок в Solaris, так что это своего рода приключение.

I can however just boot to the default Solaris 11/11 kernel and auth again just fine

... так что загрузитесь с этим ядром и устраните ущерб, который вы нанесли /etc/nsswitch.conf.
Задача решена. Это будет стоить тебе пять долларов, Чарли Браун.


Если ваша система перегружена до такой степени, что вы не можете войти в систему, загрузите ее в однопользовательском режиме и исправьте файл.

Если под «загрузкой в ​​другое ядро» вы подразумеваете загрузку в альтернативную загрузочную среду (BE), затем загрузитесь с этим ядром, используйте «список beadm», чтобы определить, какую загрузочную среду вам нужно исправить, и смонтируйте ее.

    beadm mount beName mountpoint

Например, если у вас неработающая среда загрузки «solaris-2», а у вас есть рабочая среда загрузки «solaris-1», загрузитесь в solaris-1 и запустите:

beadm mount solaris-2 /mnt

Затем вы можете настроить nsswitch своего рабочего BE на неработающий BE.

cp /etc/nsswitch.conf /mnt/etc/nsswitch.conf

Затем перезагрузитесь, выберите BE "solaris-2" в Grub, и все будет в порядке.