Не запускается программа linux

Каждый пользователь, рано или поздно сталкивается с определенными проблемами в своей операционной системе Linux. Это может быть просто неправильное использование команд или их непонимание, так и такие серьезные ошибки Linux, как отсутствие драйверов, неработоспособность сервисов зависание системы и так далее.

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

  • Проблемы с командами в терминале
  • Проблемы с программами
  • Проблемы с драйверами и ядром
  • Проблемы с графической оболочкой
  • Проблемы с диском и файловой системой

Все это мы рассмотрим ниже, но сначала общее введение и немного теории.

[РЕШЕНО] Не запускается Windows после установки Linux | ISH

Решение проблем Linux

Linux очень сильно отличается от WIndows, это заметно также при возникновении проблем Linux. Вот допустим, произошла ошибка в программе Windows, она полностью закрывается или выдает непонятное число с кодом ошибки и все, вы можете только догадываться или использовать поиск Google, чтобы понять что произошло. Но в Linux все совсем по-другому. Здесь каждая программа создает лог файлы, в которых мы можем при достаточном знании английского или даже без него, выяснить, что произошло. Более того, если программу запускать из терминала, то все ошибки linux и предупреждения мы увидим прямо в окне терминала. и сразу можно понять что нужно делать.

Причем вы сможете понять что произошло, даже не зная английского. Главным признаком ошибки есть слово ERROR (ошибка) или WARNING (предупреждение). Рассмотрим самые частые сообщения об ошибках:

  • Permission Denied — нет доступа, означает что у программы нет полномочий доступа к определенному файлу или ресурсу.
  • File or Directory does not exist — файл или каталог не существует
  • No such file or Directory — нет такого файла или каталога
  • Not Found — Не найдено, файл или ресурс не обнаружен
  • Connection Refused — соединение сброшено, значит, что сервис к которому мы должны подключиться не запущен
  • is empty — означает, что папка или нужный файл пуст
  • Syntax Error — ошибка синтаксиса, обычно значит, что в конфигурационном файле или введенной команде допущена ошибка.
  • Fail to load — ошибка загрузки, означает что система не может загрузить определенный ресурс, модуль или библиотеку (fail to load library) обычно также система сообщает почему она не может загрузить, permission denied или no such file и т д.

Сообщения об ошибках, кроме терминала, мы можем найти в различных лог файлах, все они находятся в папке /var/log, мы рассматривали за какие программы отвечают определенные файлы в статье просмотр логов linux. Теперь же мы подробнее рассмотрим где и что искать если linux выдает ошибку.

Нет меню выбора Ubuntu при загрузке. Сразу загружается Windows

Проблемы с командами в терминале

Обычно проблемы с командами в терминале возникают не из-за ошибки linux или потому, что разработчики что-то недоработали, а потому, что вы ввели что-то неправильно или предали не те что нужно опции.

Если были переданы не те опции, то, скорее всего, программа покажет вам справку, ознакомившись с которой вы сможете очень быстро понять в чем проблема. Также справку выдают множество команд если их запустить без параметров.

Также довольно частой ошибкой при выполнении команд есть неиспользование команды sudo перед самой командой для предоставления ей прав суперпользователя. В таких случаях вы обычно получаете ошибку Permission Denied или просто уведомление, что не удалось открыть тот или иной файл или ресурс: can not open . can not read . и так далее.

Читайте также:
Как называется программа чтобы менять лица на Андроид

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

Очень распространенной среди новичков ошибкой, есть no such file or directory при попытке выполнить файл, скачанный из интернета. Сразу кажется что это бред, ведь файл существует, но на самом деле оболочка ищет только файлы с флагом исполняемый, а поэтому пока вы не установите этот флаг для файла, он для оболочки существовать не будет.

Проблемы в программах

Если ни с того ни с сего закрывается или не так, как требуется работает, какая-нибудь графическая программа, решение проблем linux начинается из запуска ее через терминал. Для этого просто введите исполняемый файл программы и нажмите Enter. Обычно достаточно начать вводить имя программы с маленькой буквы и использовать автодополнение для завершения ввода названия.

В терминале программа, скорее всего, покажет почему она не работает. Также у многих программ поддерживается опция -v или —verbose. Вы можете попробовать использовать эту опцию, если первый запуск в терминале ничего не дал.

Далее, когда уже есть сообщение об ошибке, вы можете попытаться исправить его сами, если поняли в чем дело или попытаться найти решение на формуме, скорее всего, другие пользователи уже решили вашу проблему. Но если нет, вы можете создать новую тему и описать там свою ошибку. Но без вывода программы в терминале вам вряд ли помогут.

Многие ошибки системы linux, связанные с графической оболочкой вы можете найти в файле ~/.xsession-errors в вашей домашней директории. Если оболочка работает медленно, зависает или не работают другие программы, но в других логах причин этому нет, возможно, ответ находится именно в этом файле.

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

$ sudo systemctl status имя_сервиса

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

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

Проблемы с драйверами и ядром

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

Вы можете посмотреть все сообщения ядра с момента начала загрузки, выполнив команду чтобы узнать какую linux выдает ошибку:

Чтобы иметь возможность удобно листать вывод можно выполнить:

sudo dmesg | less

Или сразу выбрать все ошибки:

sudo dmesg | grep error

Дальше будет очень просто понять какого драйвера не хватает, что система не может загрузить или что нужно установить. Если возникает ошибка ввода-вывода linux, то, скорее всего, драйвер несовместим с вашим устройством, в таком случае, может помочь обновление ядра, чтобы получить самую новую версию драйвера. В некоторых случаях ядро может само предложить вариант решения проблемы прямо в сообщении об ошибке вплоть до того какую команду выполнить или какой файл скачать. Если же нет, вы все еще можете воспользоваться поиском для решения своей проблемы linux.

Проблемы с графической оболочкой

Когда проблемы linux касаются графической оболочки, то решить их новичкам не так уж просто. Больше всего потому что доступен только терминал. Графическая оболочка может просто зависнуть или вовсе не запускаться, например, после обновления.

При проблемах с графической оболочкой вы можете всегда переключиться в режим терминала с помощью сочетания клавиш Ctrl+Alt+F1. Далее, вам нужно ввести логин и пароль, затем можете вводить команды терминала.

Читайте также:
Программа как рисовать машины

Посмотреть логи графической оболочки вы можете в том же файле ~/.xsession-erros.

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

Проблемы с диском и файловой системой

Самая частая проблема с диском у новичков — это переполнение диска. Если под диск выделить очень мало места, то он переполнится и система не сможет создавать даже временные файлы, а это приведет к тому что все если не зависнет, то, по крайней мере, не сможет нормально работать.

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

Выводы

Теперь исправление ошибок Linux будет для вас немного проще. Ошибки системы linux довольно сложная тема и этой информации явно мало, если у вас остались вопросы или есть предложения по улучшению статьи пишите в комментариях!

Обнаружили ошибку в тексте? Сообщите мне об этом. Выделите текст с ошибкой и нажмите Ctrl+Enter.

Источник: losst.pro

Если в Ubuntu 22.04 не запускаются приложения AppImage

Случилось так, что в Ubuntu 22.04 приложения AppImage не запускаются. Что делать если не запускаются приложения AppImage?

Сперва проверить есть ли право запускать этот файл (т.е. разрешение выполнения). Откройте «Свойства» для этого файла и проверьте.

Snimok yekrana ot 2022 05 13 00 57 09

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

dlopen(): error loading libfuse.so.2 AppImages require FUSE to run. You might still be able to extract the contents of this AppImage if you run it with the —appimage-extract option. See https://github.com/AppImage/AppImageKit/wiki/FUSE for more information

В данном случае надо установить только библиотеку libfuse2.

Стоит напомнить, что речь про Ubuntu 22.04., для прошлых релизов по-другому, а для будущих релизов надо проверять.

UPDATE: Сообщают, что в 22.10 работает.

Исправляем запуск AppImage

Должны быть подключены универсальны репозитории, если что сделайте:

sudo add-apt-repository universe

Выполните команду в терминале:

sudo apt install libfuse2

Важно не сломать всё!

Важно: не устанавливайте пакет fuse, как может показаться сначала, иначе вы сломаете систему.

Перезагружать ничего не надо, всё должно заработать поэтому запускайте своё приложение AppImage.

Опубликовано в категории: UBUNTU Рубрика: appimage, ubuntu 22.04, совет

ПОИСК ПО САЙТУ

РЕКОМЕНДУЮ

(Заблокировано) Начал использовать с 2019 года. Рекомендую как выгодный хостинг VPS серверов Hetzner. Регистрируйся по моей ссылке, и получи 20 евро облачных кредитов.

(Заблокировано) Начал использовать с 2012 года. Рекомендую для Linux-серверов отличный сервис DigitalOcean

Использую с 2011 года. Рекомендую как облачный диск DropBox удобный для совместной работы или переноса документов дом-работа-дом.

KNX·TRADE™

KNX для Умного Дома

Теоретически светодиод работает без перерыва от 10000 до 100000 часов (первый срок называют китайские производители, второй — европейские и американские). Как это выглядит на практике, вот если учесть, что включаться […] The post Срок жизни светодиодов first appeared on KNX·TRADE.

Порою простая задача произвести сравнение и выбор одного устройства из ряда нескольких, превращается в «камень преткновения». Перед вами ещё одна статья о простой методике сравнения устройств от разных производителей, подготовленная […] The post Как сравнивать шлюзы KNX-DALI first appeared on KNX·TRADE.

Международный стандарт автоматизации KNX имеет непревзойдённое преимущество перед другими закрытыми системами автоматизации. Открытая спецификация стандарта и жёсткий контроль со стороны ассоциации KNX на предмет соответствия стандарту — это широкий спектр […] The post Как профессионально выбрать диммер first appeared on KNX·TRADE.

Источник: morikoff.ru

Почему мой исполняемый файл не запускается, когда я нажимаю на него?

И было бы замечательно, если бы можно было сделать то же самое, что можно сделать в Windows на Linux, потому что у нас есть 2 Release Folders.

И я хотел бы, чтобы это простое приложение на основе терминала могло работать без необходимости быть экспертом.

Читайте также:
Программа на увеличение ног

Я добавил эту строку:

Он открывается на терминале, но просто показывает путь к файлу, а не саму программу.

изменён ᔕᖺᘎᕊ 5k
задан Leandro 45

5 ответов 5

Я ожидаю, что вам нужно установить «исполняемый» бит в файле, который выводится компилятором Linux C++, я не думаю, что это делается по умолчанию из соображений безопасности.

Просто «cd» в каталог, в котором находится ваш сгенерированный исполняемый файл.

chmod +x myexecutable

Заменив «myexecutable» на имя вашего вывода компилятора.

Затем попробуйте запустить его с ./myexecutable

Я считаю, что это также должно сделать программу «работоспособной» с помощью щелчка мыши и консоли.

Точно так же, если вам нужно запустить «скрипт» из команд, вы можете попробовать следующее в файле скрипта, сохранить его как «myexe.sh» или что-то подобное:

#!/bin/sh command1 command2

Затем снова используйте

chmod +x myexe.sh

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

изменён Mokubai 58k
ответ дан Mokubai 58k

Я думаю, что корень вашей проблемы в том, что вы на самом деле не понимаете различия между эмулятором терминала и оболочкой и тем, как Linux выясняет, как запускать процессы.

Во-первых, это «Terminal Emulator», в среде на основе Gnome это обычно Gnome Terminal.

Затем есть «Shell», в Linux это обычно bash, хотя возможны и другие оболочки.

«Shell» работает внутри «Terminal Emulator». Это различие связано с возрастом физических терминалов, где физический терминал — это аппаратное обеспечение, которое принимает данные, пишет текст в цветах и т.д., А Shell — это программное обеспечение, которое обрабатывает пользовательские команды и управляет другими процессами на основе заданных команд.

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

«Оболочка» не всегда работает внутри эмулятора терминала; Существуют также графические оболочки, такие как Nautilus (подсказка, Nautilus — название морского существа с большой раковиной) или Windows Explorer (не путать с Internet Explorer).

Как в оболочке командной строки, например, bash, так и в графической оболочке, например, Nautilus, исполняемый файл помечается установленным битом execute .

В командной строке вы можете использовать ls -l для просмотра битов прав доступа к файлу, например, rwxrwxrwx означает, что каждый может читать / писать / выполнять программу; rwxr-xr— означает, что владелец имеет полное разрешение, люди в группе файла могут читать и выполнять, но не могут писать, а другие могут только читать файл. В Nautilus вы можете щелкнуть правой кнопкой мыши файл> Свойства> вкладка Разрешения. На странице свойств Разрешения вы можете получить разрешение для файла, подобное тому, которое есть в командной строке.

Файл с установленным битом выполнения рассматривается как исполняемый файл и может быть выполнен с помощью ./filename (оболочка командной строки) или двойного щелчка (графическая оболочка).

Наконец, есть несколько других тонкостей того, как оболочка выполняет файл. В большинстве оболочек Linux вы можете «выполнить» скрипт, написанный на python/perl/php/bash, который не является скомпилированным исполняемым файлом. Поскольку эти файлы не являются скомпилированными в исходном коде исполняемыми файлами, для их выполнения требуется интерпретатор (например, интерпретатор python). В отличие от оболочки Windows (Explorer), которая определяет интерпретатор для вызова через расширение файла; Оболочки Linux определяют правильного интерпретатора, глядя на строку «hashbang», которая выглядит следующим образом

#!/usr/bin/python

когда бит выполнения файла установлен, и у файла есть эта строка hashbang, оболочка вызовет интерпретатор /usr /bin /python с текущим файлом в качестве аргумента.

Nautilus также может распознать, когда программа является приложением командной строки, и предложит вам запустить приложение в Терминале. Когда вы дважды щелкнете по исполняемому скрипту, Nautilus спросит, хотите ли вы запустить его в терминале, запустить без терминала или отредактировать файл в текстовом редакторе.

Источник: poweruser.guru

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru