Linux сделал исполняемым файл

Содержание
  1. Как сделать файл исполняемым в Ubuntu Linux
  2. Делаем файл исполняемым в Linux
  3. Чем отличается Linux от Windows в плане исполнений файлов, так это тем, что первая система определяет выполняемые файлы программными не по расширению, а по специальному флагу исполняемости. Так у каждого файла есть три режима исполняемости: чтение, исполнение и запись. Именно эти режима определяют, что система может делать с конкретным файлом. Когда пользователь скачивает различные установщики из интернета или создает скрипт, то по умолчанию ему присваиваются следующие режимы – чтение и запись. Одним словом, пользователь не сможет сделать с такой программой ничего, так как с ним нужно сделать кое-что еще.
  4. Что означает исполняемость?
  5. Как сделать файл исполняемым
  6. Как установить флаг исполняемости в GUI
  7. Как сделать файл исполняемым в Astra Linux и запустить его?
  8. Как сделать файл исполняем в Astra Linux через менеджер файлов?
  9. Как сделать исполняемый файл в Astra Linux через терминал Fly?
  10. Как сделать файл (например, скрипт .sh) исполняемым, чтобы его можно было запускать из терминала

Как сделать файл исполняемым в Ubuntu Linux

Очень часто в инструкциях по установке игр в Linux или в других ситуациях необходимо сделать файл исполняемым. У новичков, особенно тех кто перешёл на Ubuntu с операционной системы Windows этот момент вызывает много вопросов. Давайте разберёмся в тонкостях и посмотрим как сделать всё правильно.

Для начала немного теории. в Windows, исторически ещё со времён DOS, было реализовано определение исполняемых файлов по их расширению. Например расширения .exe, .com, .bat говорили операционной системе, что эти файлы являются исполняемыми. В Linux и прочих unix системах ситуация иная. Здесь расширение файлов как таковые отсутствуют, т.е. конечно вы можете в имени файла использовать точку и три буквы в качестве расширения, но только из своих эстетических соображений. Для операционной системы это не будет иметь никакого значения.

Ну и главный вопрос как же операционная система определяет какой файл исполняемый, является программой, а какой нет. Всё очень просто — это устанавливается одним из битов прав на файл. Как и права на чтение и запись права на запуск файла так же могут быть назначены трём группам пользователей: 1 владельцу, группе файла и всем.

Установка прав на запуск

Для того чтобы сделать файл исполняемым в Ubuntu Linux необходимо выполнить в окне терминала простую команду:

Эта команда установит права на исполнение для всех пользователей.

Сделать аналогичное в графическом интерфейсе можно кликнув правой кнопкой по имени файла и выбрав пункт свойства:

Затем на вкладке права необходимо поставить галку «Разрешить выполнение файла как программы»

На этом процедура закончена и вы можете сразу запустить файл на исполнение дважды кликнув по нему левой клавишей мыши или выполнив в окне терминала команду (находясь в папке с исполняемым файлом):

Один мальчик подписался на наш канал в телеграме и получил +100 hp

Источник

Делаем файл исполняемым в Linux

Чем отличается Linux от Windows в плане исполнений файлов, так это тем, что первая система определяет выполняемые файлы программными не по расширению, а по специальному флагу исполняемости. Так у каждого файла есть три режима исполняемости: чтение, исполнение и запись. Именно эти режима определяют, что система может делать с конкретным файлом. Когда пользователь скачивает различные установщики из интернета или создает скрипт, то по умолчанию ему присваиваются следующие режимы – чтение и запись. Одним словом, пользователь не сможет сделать с такой программой ничего, так как с ним нужно сделать кое-что еще.

Что означает исполняемость?

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

Читайте также:  Объявление переустановка windows образец

И первые, и вторые состоят из цифр – байт. То есть, определенное сочетание цифр будет означать для процессора необходимость выполнения конкретного действия. Для процессора нет принципиальной разницы, какой процесс выполнять – файл операционной системы или текстовый файл. И первый, и второй файл будут выполнены, вот только в случае с текстовым файлом необходимость в инструкциях фактически отпадает.

Для понимания системой, какие файлы должны быть выполнены по инструкции, а какие выполнять не нужно, и были придуманы флаги исполняемости. Фактически содержимое файла никак не изменяется в зависимости от установленного флага исполняемости – отличие сводится только к нескольким строчкам. Со скриптами все работает точно так же, только команды из файла выполняет не процессор, а интерпретатор, например, в bash скриптах — сама оболочка bash. Да и в обычных программ тоже есть свой загрузчик — это ld-linux.so.2.

Как сделать файл исполняемым

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

$ chmod категория действие флаг адрес_файла

И здесь необходимо учитывать следующее:

  • Флаг — один из доступных флагов — r (чтение), w (запись), x (выполнение).
  • Категория — флаги могут устанавливаться для трех категорий: владельца файла, группы файла и всех остальных пользователей. В команде они указываются символами u (user) g (group) o (other) соответственно.
  • Действие — может быть + (плюс), что будет значить установить флаг или — (минус) снять флаг.

Таким образом, чтобы сделать исполняемым скрипт в Linux, пользователю необходимо выполнить:

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

Чтобы посмотреть флаги в терминале достаточно воспользоваться утилитой ls:

Флаги включены для всех категорий. Первое rwx — флаги владельца, второе — группы, а третье — для всех остальных. Если флаг не установлен, на его месте будет прочерк.

Снять флаг исполняемого файла очень просто. Используется та же команда только со знаком минус:

Дальше рассмотрим вопрос установки управляемости в GUI.

Как установить флаг исполняемости в GUI

Установка файлов исполняемости доступна не только через терминал, но и файловые менеджеры, одним из которых является GUI. Для новичков, возможно, даже эта инструкция окажется проще и доступней. Рассмотрим на примере файлового менеджера GNOME, Nautilus. Кликните правой кнопкой по нашему файлу программы или скрипта, чтобы открыть контекстное меню, затем выберите свойства:

Переходим на вкладку права и устанавливаем галочку «Разрешить выполнение файла как программы»:

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

Источник

Как сделать файл исполняемым в Astra Linux и запустить его?

Друзья, приветствую! Продолжаем решать практические задачи на примере Astra Linux CE Орел. При скачивании игры (или какого либо полезного софта) мы иногда получаем файлы-сценарии, которые для запуска сначала нужно сделать исполняемыми.

В Windows мы привыкли, что файлы программ (или программы инсталляторы) уже являются исполняемыми. Определить это можно по их названию (setup, install) или расширению *.exe, *.com или *.bat.

В линуксе механизм другой. Возможность запуска файла определяется не расширением — а разрешением полномочий. Проще говоря, по умолчанию Linux «разрешает» только читать и копировать файл. А исполнять нет.

Устанавливается (или убирается) соответствующий флаг в свойствах файла и операционная система ведет себя соответственно.

Читайте также:  Как указать путь для обновления windows

В разрезе пользователей (и групп) можно выставить права на чтение, запись, исполнение конкретного файла. И тогда его можно будет запустить как программу. Такова идеология Linux.

Как сделать файл исполняем в Astra Linux через менеджер файлов?

Все это может показаться сложным, но на самом деле, все просто. В Linux Astra установлен дружественный графический интерфейс, есть встроенный графический менеджер — проводник.

И сделать нужный файл исполняемым у Вас получится легко, быстро, привычно. Для примера скачал игру Kerbal Space Programm и сейчас мы подготовим ее файлы на Linux Astra CE.

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

В свойствах уже установлены флаги на копирование и запись . Все что нужно сделать — это поставить флажки на запуск (ракета) у нужных пользователей. У меня установлена только верхняя. Подтверждаем, нажав «Да».

Как сделать исполняемый файл в Astra Linux через терминал Fly?

Навыками работы с терминалом необходимо владеть. Все, что мы сделали в графике, можно повторить через консоль Fly. Команда CHMOD позволяет менять права доступа к файлам и каталогам в Linux.

Синтаксис ее обширен и позволяет вносить изменения двумя способами — буквенном или числовым обозначением прав.

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

  • 7 чтение, запись исполнение;
  • 6 только чтение и запись;
  • 5 разрешены только чтение и исполнение;
  • 4 разрешено только чтение;
  • 0 не разрешено ничего.

У нас три группы прав — владелец (пользователь), группа пользователей и остальные ( см . на фото выше) . Соответственно мы должны указать числами права каждой группе. Первое число после CHMOD означает владельца, второе число группу, третье остальных.

Синтаксис команды будет следующим, если мы даем всем пользователям полные права (чтение, запись, исполнение):

CHMOD 777 kerbal_space_program_russian_1_9_0_02781_36048.sh

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

Первая — это команда CD . С ее помощью мы попадем в каталог с игрой. Вторая команда LS позволит просматривать содержимое каталога и полученный результат.

Запускаем терминал Fly. В моем случае игра лежит в папке game на на первом рабочем столе. И в терминале я прописываю команду:

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

Параметр -i — это просмотр папки.

Получаю на экране наименование следующей папки (KerbalSpace); копирую его в буфер обмена ( Ctrl+Ins ). Нажимаю ↑ на клавиатуре, пока не добираюсь до команды:

CD / home/superuser/Desktops/Desktop1/game/ вставляю наименование из буфера в конец строки через знак / ( Shift+Ins )

Снова через ↑ ищем набранную команду Ls -i, нажимаем Enter, и так до тех пор, пока вы не доберетесь до нужного файла. У меня это выглядит так:

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

Копируем имя файла в буфер обмена (чтобы руками не набирать) и в итоге получилась вот такая команда:

chmod 777 kerbal_space_program_making_history_dlc_russian_1_9_0_02781_36048.sh

После снова применяем команду Ls -i и смотрим на результат:

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

sudo apt install «имя файла» (без кавычек)

Или в менеджере файлов запускаем его на исполнение привычным способом. У меня всё, пока!

Читайте также:  Спдс autocad windows 10

Источник

Как сделать файл (например, скрипт .sh) исполняемым, чтобы его можно было запускать из терминала

У меня есть файл script.sh, и тип этого файла — файл шеллскрипта. Я хочу сделать этот файл как application / x-исполняемый файл. Как я могу это сделать?

Вы можете пометить файл как исполняемый:

Затем вы можете выполнить это так:

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

Добавьте это в конец файла:

Откройте новый сеанс терминала или введите source

/.bashrc свой терминал, чтобы применить. Затем просто используйте новое имя, чтобы запустить скрипт.

Есть два способа сделать файл исполняемым:

GUI Метод:

Перейдите на вкладку «Права», затем установите флажок «Выполнить: [] Разрешить выполнение файла как программы».

Терминал / Командный метод:

Вы можете использовать:

chmod +x filename.extension

Или просто запустите:

chmod +x /path/to/your/filename.extension

chmod также есть более продвинутые опции:

Пробелы должны показать, что это разделено: — rwx — —

Первый набор — — Пользователь. Вторым является Группа, а последним является Другой (кто-либо еще)

r означает «Чтение», «w» — «Запись» и «x» — «eXecute».

Таким образом, чтобы позволить всем читать это, но только Группа для выполнения и Пользователь для чтения и записи (но по какой-то причине не выполнять) будут:

-rw- rx- r— Но это будет добавлено к команде как:

chmod +rw-rx-r— /path/to/file.extension

chmod Также можно сделать это в цифрах. Он основан на двоичном коде (я думаю, что это 1,2 и 4)

Итак, есть эти цифры:

Выполнить пользователем есть 100 . Выполнить по группе есть 010 . Выполнить другим — 001

Написать пользователем есть 200 . Написать по группе есть 020 . Пиши другим есть 002 .

Читается пользователем 400 . Читать по группам есть 040 . Читать другим есть 004 .

Затем вы складываете их вместе, чтобы получить желаемую комбинацию.

Таким образом, разрешить всем читать это, но только Group для выполнения и User для записи (но по какой-то причине не выполнить) будет:

400 + 040 + 004 и 010 и 200

Это в сумме составляет 600 + 050 + 004 = 654.

Затем вы можете запустить команду.

chmod +654 /path/to/file.extension установить это.

И чтобы установить все разрешения, вы можете набрать:

chmod +rwxrwxrwx /path/to/file.extension

Или (это немного легче написать, но труднее запомнить каждый):

chmod +777 /path/to/file.extension

Наконец, вы можете сделать:

chmod -777 /path/to/file.extension

Отнять все разрешения у всех.

chmod +300 /path/to/file.extension

Чтобы добавить чтение и запись для пользователя, не затрагивая другие разрешения (например, разрешения на выполнение).

Этот веб-сайт имеет очень полезную маленькую галочку с сеткой, с помощью которой вы можете пометить нужные опции и дать вам команду:

Однако не все возможные комбинации целесообразно использовать; основные из них следующие:

755 — Owner имеет все, Group и Other может читать и выполнять

700 — Owner есть все

644 — Owner может читать и писать, Group и Other может читать

600 — Owner умеет читать и писать

И, если вы используете нетривиальные группы пользователей:

775 — Owner умеет читать и писать, Group а Other может читать

770 — Owner и Group есть все, и Other умеет читать и исполнять

750 — Owner имеет все, и Group может читать и выполнять

664 — Owner и Group умеет читать и писать, и Other умеет просто читать

660 — Owner и Group умеет читать и писать

640 — Owner умеет читать и писать, Group умеет читать

777 и 666 используются редко, кроме как в / tmp.

Спасибо Илмари Каронен за то, что он указал на те, которые в общем использовании!

Источник

Оцените статью