Я только недавно обновился до Ubuntu 11.10. Я не поклонник Unity, поэтому решил попробовать рабочий стол MATE из Linux Mint. Я добавил репозиторий Mint, взял и установил пакеты MATE и избавился от репозитория, чтобы не скачивать другие пакеты Mint. У меня были некоторые проблемы с пакетами (отсутствие зависимостей), но я все исправил.
Как сообщают другие пользователи, установка MATE временно нарушает работу Ubuntu Software Center, потому что lsb_release показывает машину как Linux Mint, а не Ubuntu. Я могу исправить это, как отмечено в этом ответе, отредактировав /etc/*release и /etc/*issue.
Проблема в том, что это работает только до тех пор, пока я не перезагружу машину. Каждый раз, когда я перезагружаюсь, /etc/lsb-release и /etc/issue возвращаются к Linux Mint, снова ломая Software Center, пока я не отредактирую их снова.
Может ли кто-нибудь помочь мне определить, что продолжает изменять эти файлы? Буду очень признателен, спасибо.
Перефразируя суть проблемы: откуда /etc/lsb-release и /etc/issue получают свою информацию? Что может заставить их пересмотреть при перезагрузке?
У меня была та же проблема, и я решил запустить ее в землю (выполняя grep -r
, пока не обнаружил, что скрипт меняет эти файлы!).
Виновником является /usr/lib/linuxmint/mintSystem/mint-adjust.py
, который устанавливается системой mintsystem (от которой зависит MATE). Очевидно, он запускается при запуске и продолжает изменять эти файлы для предоставления информации на основе Mint.
Как вы заметили, вы можете восстановить нормальное поведение Ubuntu Software Center, поместив правильную информацию в файлы:
/etc/issue
/etc/lsb-release
/etc/issue.net
(Исправление issue.net на самом деле не нужно для исправления Software Center, но здесь для полнота. Содержит системную информацию, которая отображается в начале сеансов telnet, а Mint также записывает свою системную информацию).
Удобно, что Ubuntu также записывает правильную текущую системную информацию в отдельный набор подходящих файлов, которые Mint не трогает, поэтому вам просто нужно скопировать их:
/etc/issue.dpkg-dist
/etc/lsb-release.dpkg-dist
/etc/issue.net.dpkg-dist
Я дал на MATE, так как я доволен тем, что Cinnamon работает на Ubuntu 12.04, но одним из исправлений было бы просто закомментировать ошибочные строки в этом скрипте (вам не нужно быть фанатом python, чтобы выяснить, в каком разделе проблема! )
Более совершенным исправлением было бы использование системы перезаписи LinuxMint (объясняется в файле /etc/linuxmint/adjustments/README
) для управления исправлениями, но я полагаю, что любое из этих решений будет сорвано после обновления соответствующих файлов. (или вы обновляете базу Ubuntu).
Лучшим решением было бы убедить разработчиков пакетов mintsystem в том, что Mint является жертвой собственного успеха - теперь, когда многие люди устанавливают MATE, даже в Ubuntu, он не должен вызывать сценарии mintsystem, которые предполагают базовую установку LinuxMint. ,
Но я оставлю эту битву кому-то другому. Насколько я могу судить, Cinnamon не вызывает такого поведения, так что, надеюсь, я больше не столкнусь с этой проблемой. :)
.РЕДАКТИРОВАТЬ: Для тех из вас, кто заинтересован в использовании MATE в Ubuntu, эти инструкции, похоже, позволяют избежать этой проблемы:
Ошибка, которую я сделал, - это перейти в репозиторий Mint (а не в конкретный репозиторий MATE) и установить пакет пакетов с пометкой «mate», в конечном итоге добавив пакет mintsystem
, что и вызвало проблему.