1С на Альт Линукс не запускается после установки: что проверить

Установка 1С на Альт Линукс завершилась, ярлык есть, но программа не стартует ни из терминала, ни через installAsRoot? Разбираем порядок диагностики: какие данные собрать до любых правок, как проверить права и владельца файлов, зависимости и логи запуска, и где границы безопасных изменений.

Почему установка прошла, а запуск нет: с чего начать диагностику

Установка 1С на Альт Линукс может завершиться без ошибок, ярлык появится в меню, а приложение не стартует. Такой случай описан в исходном обращении: запуск не удался ни из терминала, ни через installAsRoot, указаны версии платформы 8.27.2074 и 8.5.1.1150 (обсуждение на buh.ru). Подтверждённой причины в этом материале нет, поэтому дальше идет порядок проверки гипотез, а не готовый рецепт.

Проверки выполняйте в таком порядке:

  1. Получите точный текст ошибки при прямом запуске из терминала и код возврата.
  2. Проверьте владельца и режимы доступа к файлам установки.
  3. Проверьте зависимости исполняемого файла и окружение сессии.
  4. Изучите логи запуска, если терминал не дал понятного сообщения.

Не меняйте права и не правьте окружение до того, как получите сообщение об ошибке. После chmod или chown симптом может измениться или исчезнуть, и след пропадёт: вы будете отлаживать уже другую картину, не понимая исходной причины. Плюс любое расширение прав снижает безопасность системы.

Про installAsRoot отдельно: в исходном материале он упомянут без параметров, поэтому нельзя утверждать, что именно выполняет этот инструмент в конкретной сборке. По назначению это установка с повышенными правами, а не средство запуска приложения. Попытки "запустить через installAsRoot" не дают диагностического вывода о старте 1С, зато могут изменить владельца или права файлов и запутать картину.

Что на самом деле означает «установка прошла нормально»

Сообщение об успешном завершении установщика подтверждает только одно: установщик отработал до конца и вернул нулевой код. Появление ярлыка говорит ещё меньше. Ярлык в Linux - обычный файл .desktop с командой запуска, и его наличие не проверяет ни право на исполнение у бинарника, ни доступность разделяемых библиотек, ни корректность переменных окружения.

Три вещи, которые установщик не гарантирует: бинарник платформы исполним, все нужные библиотеки на месте, окружение графической сессии подходит для запуска. В исходном материале нет вывода терминала, поэтому назвать конкретную ошибку невозможно. Это ограничение диагностики: без текста ошибки любая версия причины остаётся догадкой.

Минимальный набор данных, который нужно собрать до любых изменений

  • точная команда запуска: полный путь к исполняемому файлу и все ключи;
  • полный вывод в stdout и stderr плюс код возврата;
  • версия платформы: 8.27.2074, 8.5.1.1150 или другая;
  • релиз Альт Линукс (файлы /etc/os-release или /etc/altlinux-release);
  • путь установки и вывод ls -l по каталогу платформы;
  • фрагменты логов запуска с отметками времени;
  • как применялся installAsRoot: команда, пользователь, параметры.

Вывод терминала удобно сохранять в файл, чтобы сравнивать попытки между собой:

cd /opt/1cv8/x86_64/8.5.1.1150
./1cv8 > ~/1c-start.log 2>&1
echo "exit code: $?"

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

Запуск из терминала: как получить конкретное сообщение об ошибке

Терминал показывает то, что графический запуск проглатывает: текст от загрузчика, отказ в доступе, отсутствие библиотеки. Запускайте исполняемый файл напрямую и под тем пользователем, который должен работать в 1С. Запуск под root для обычного рабочего места искажает картину: часть проблем с правами просто не проявится.

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

Почему запуск через installAsRoot не заменяет диагностику

В исходном обращении installAsRoot упомянут как один из способов, которым пробовали обойти проблему. Параметры не описаны, поэтому нельзя сказать, что именно происходило на конкретной машине. Общий принцип: инструменты установки и повышения прав не сообщают причину сбоя запуска. Они либо завершаются успешно (и тогда вы снова возвращаетесь к тому же неработающему ярлыку), либо меняют права и владельца файлов, после чего исходный симптом уже не воспроизводится в чистом виде.

Практический вывод: вернитесь к прямому запуску бинарника из терминала под нужным пользователем. Это единственный способ получить сообщение, с которым можно работать.

Какие логи запуска смотреть и как их читать

Если терминал молчит, смотрите системные журналы и логи приложения:

  • journalctl: попытки запуска, отказы SELinux или мандатного контроля, падения процесса;
  • файлы в /var/log, если туда пишет установщик или сама платформа;
  • каталог с пользовательскими данными платформы в домашнем каталоге пользователя;
  • вывод программы при запуске с диагностическими ключами, если они предусмотрены вашей сборкой.

Конкретные пути и имена файлов зависят от релиза Альт Линукс и версии платформы (8.27.2074, 8.5.1.1150), поэтому берите их из своей установки, а не из статьи как универсальные. Ищите в журнале записи за время попытки запуска и ключевые формулировки: отказ в доступе, отсутствующая библиотека, отсутствующий файл, отказ графической подсистемы.

В исходном обращении не указано, что именно выводит терминал (источник), поэтому первым делом нужно получить этот вывод, а уже потом выбирать гипотезу. Типовые категории сообщений и что они означают:

Таблица 1. Если таблица шире экрана, прокрутите её влево или вправо. С клавиатуры: перейдите к таблице клавишей Tab и используйте стрелки.

СообщениеНа что указываетЧто проверить
command not found, No such file or directory при существующем файленеверный путь, обёртка-скрипт, отсутствующая зависимостьполный путь к файлу, тип файла, ldd
Permission deniedправа или владелецls -l, пользователь запуска
error while loading shared libraries, cannot open shared object fileнет нужной библиотеки или она вне путей загрузчикаldd, состав пакетов
cannot execute binary fileнесовпадение архитектуры или разрядностиuname -m и разрядность сборки

Это ориентиры для чтения вывода, а не диагноз. Окончательный вывод делается по конкретному тексту вашей ошибки.

Права и владелец файлов установки: что проверять и чего не делать

Одна из первых гипотез: установку выполняли с повышенными правами, файлы принадлежат root, а запуск идет от обычного пользователя. Проверка занимает минуту:

ls -ld /opt/1cv8 /opt/1cv8/x86_64/8.5.1.1150
ls -l /opt/1cv8/x86_64/8.5.1.1150/1cv8
id

В выводе смотрите на владельца, группу и права. Чтобы файл запустился, ему нужен бит исполнения, а всем каталогам на пути к нему - право на вход и чтение. Право на вход в каталог принципиально: без него файл внутри недоступен даже при полных правах на сам файл, и ошибка будет выглядеть как отказ доступа к исполняемому файлу.

Как отличить проблему прав от проблемы зависимостей

Отказы доступа и сообщения Permission denied тянут в сторону прав и владельца. Ошибки загрузки разделяемых библиотек и отсутствие файла по указанному пути чаще указывают на зависимости, обёртки-скрипты и пути. Симптом "не запускается" сам по себе не говорит ни о чем: он одинаков для всех четырех групп причин из таблицы выше.

Безопасные границы изменений и откат

  • Сохраните исходное состояние: выгрузите вывод ls -lR по каталогу установки в файл, чтобы было к чему вернуться.
  • Меняйте точечно: один файл или один каталог за шаг, после каждого шага пробный запуск.
  • Держите под рукой обратную команду. Для chmod это прежний режим, для chown прежний владелец и группа.
  • Не выполняйте рекурсивный chmod 777 на каталог установки и не меняйте владельца системных каталогов: это угроза безопасности и стабильности всей машины.
  • Не отключайте защитные механизмы дистрибутива "на пробу": это маскирует причину и оставляет систему без защиты после того, как вы закроете терминал.

Если установка шла под root, аккуратный путь часто такой: переустановить платформу от того пользователя, который будет работать, или в его домашний каталог, если политика компании это допускает. Массовая смена владельца на системном каталоге дает более широкие последствия, чем переустановка.

Отдельно разделяйте уровни доступа. Ограничения на опасные действия внутри прикладного решения настраиваются штатными механизмами 1С, а не правами файловой системы: профили безопасности в 1С:Предприятии 8 ограничивают доступ прикладного решения к ресурсам кластера по принципу Default Deny. Расширение прав на файлы этого не заменяет.

Зависимости и окружение: почему бинарник 1С может не стартовать

После установки приложение может не находить разделяемые библиотеки или зависеть от переменных окружения. Проверка зависимостей выполняется по самому бинарнику, а не по ярлыку и не по скрипту-обёртке:

ldd /opt/1cv8/x86_64/8.5.1.1150/1cv8 | grep "not found"

Если файл, на который ведёт ярлык, оказался shell-скриптом, ldd к нему неприменим. Сначала посмотрите тип файла и содержимое скрипта, найдите реальный исполняемый файл и проверяйте уже его.

Как читать результат проверки зависимостей

Строки с not found означают, что загрузчик не нашел библиотеку по известным ему путям. Дальше два варианта: пакет с библиотекой не установлен или установлен, но каталог не входит в пути поиска. Набор зависимостей зависит от версии платформы (8.27.2074, 8.5.1.1150) и релиза Альт Линукс. В исходном материале нет сведений о поддерживаемых версиях и о совместимости этих сборок с конкретным релизом дистрибутива, поэтому вывод "версия несовместима" без проверки делать нельзя.

Переменные окружения и графическая среда

Запускайте 1С в той же сессии и под тем же пользователем, от которого должен работать ярлык. Проверьте переменные, влияющие на путь к дисплею и на локаль: настройки графической сессии, язык и кодировку, домашний каталог, пути поиска. Рассинхрон между сессией администратора и сессией пользователя дает ровно тот эффект, который описан в обращении: из терминала под одним пользователем не работает, ярлык у другого тоже не запускается.

Правки в /etc/profile, /etc/environment и других системных файлах действуют на всю систему. Делайте изменения локально (профиль пользователя, параметры ярлыка), фиксируйте, что именно поменяли, и сохраняйте возможность отката. Настройка окружения без понимания последствий ломает работу других приложений.

Версии 8.27.2074 и 8.5.1.1150: как версия влияет на диагностику

В исходном материале проблема упомянута для двух версий (обсуждение на buh.ru). Это полезная деталь. Воспроизведение на двух разных сборках скорее указывает на общую среду: права, зависимости, окружение, релиз дистрибутива. Дефект одной конкретной сборки вел бы себя иначе.

При этом данных о совместимости 8.27.2074 и 8.5.1.1150 с конкретным релизом Альт Линукс в материале нет. Утверждать, что причина в несовместимости, нельзя без проверки. Фиксируйте в каждом тесте пару "версия платформы + релиз дистрибутива": без этого результаты попыток нельзя сравнивать, а советы из сети легко применить не к той версии.

Если проверки не дали результата: как собрать данные и куда двигаться

Диагностика не дала ответа, когда вывод терминала пустой, логи нечитаемы или прав недостаточно. В этом случае соберите пакет данных, с которым администратор или поддержка сможет работать предметно:

  1. Полный вывод терминала при запуске, отдельно stdout и stderr, плюс код возврата.
  2. Версия платформы (8.27.2074 и/или 8.5.1.1150) и релиз Альт Линукс.
  3. Путь установки и вывод ls -l по каталогу платформы и исполняемому файлу.
  4. Вывод проверки зависимостей с перечнем ненайденных библиотек.
  5. Фрагменты журналов за время попыток запуска.
  6. Описание того, как применялся installAsRoot: команда, пользователь, параметры, что изменилось после.

Эти шесть пунктов превращают "не запускается" в конкретную задачу. Порядок действий остается тем же: сначала факты, потом изменения. Права и окружение меняйте только после того, как понятна причина, точечно и с сохранённой возможностью вернуть прежнее состояние.

Похожие статьи

Не обновляется 1С из-за активных пользователей: как завершить сеансы и что делать с ошибками контроля ведения учета

Обновление 1С блокируют другие активные сеансы в базе, а не ошибки отчёта «Контроль ведения учета»: у него рекомендательный характер. Разбираем, как найти и завершить сеансы, сделать резервную копию и когда замечания контроля всё же стоит исправить до обновления.

Как в 1С:Бухгалтерии 3.0 настроить расчёт НДС и отражение авансов в разрезе договоров, а не по контрагенту

Разбираем, почему 1С:Бухгалтерия 3.0 сводит НДС и авансы по контрагенту и какие настройки учётной политики, расчётов и договоров включают детализацию до договора. Пошаговый аудит текущих настроек, проверка счёта-фактуры на аванс и УПД, чек-лист данных после изменений и типичные ошибки, из-за которых аванс снова «прилипает» к контрагенту.

Пометка на удаление физлица в 1С:ЗУП 3.1: почему она не срабатывает и что делать с несколькими сотрудниками

Пометили сотрудника на удаление, а физлицо в 1С:ЗУП 3.1 осталось активным? Разбираем правило автопометки: она срабатывает только тогда, когда помечены все сотрудники, привязанные к физлицу. Плюс проверка связей перед чисткой справочника, архивирование уволенных и честный ответ, можно ли отключить автоматику настройками.