Linux разрешить запуск файла

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

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

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

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

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

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

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

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

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

КАК СДЕЛАТЬ ФАЙЛ ИСПОЛНЯЕМЫМ В LINUX

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

Флаг — один из доступных — r (чтение), w (запись), x (выполнение).

Категория — могут устанавливаться для трех категорий: владельца файла, группы данных и всех остальных пользователей. В команде они указываются символами u (user) g (group) o (other) соответственно.

Действие — может быть + (плюс), что будет значить установить флаг или — (минус) снять флаг.

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

Читайте также:  Setup loop device linux

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

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

Посмотреть флаги в терминале можно с помощью утилиты ls

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

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

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

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

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

КАК УСТАНОВИТЬ ФАЛГ ИСПОЛНЯЕМОСТИ В GUI

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

Разрешить выполнение файла как программы:

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

Источник

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

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

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

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

Уже много написано о том, как установить флаг исполняемости. Но что происходит с файлом во время этого, что такое исполянемость и как это работает?

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

На самом деле для процессора нет разницы между данными и инструкциями. И те и другие состоят из байт, проще говоря цифр. Когда-то договорились, что определенные сочетания цифр будут означать то или иное действие процессора, а во всем остальном это те же данные. Поэтому для процессора нет никакой разницы что выполнять — исполняемый файл linux или обычный текстовый файл. Оба могут быть успешно выполнены, вот только во втором варианте инструкции не имеют никакого смысла.

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

Читайте также:  Recover deleted files in linux

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

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

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

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

Например, чтобы сделать исполняемый скрипт в linux для владельца файла, достаточно выполнить:

bin1

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

Посмотреть флаги в терминале можно с помощью утилиты ls:

bin2

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

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

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

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

bin3

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

bin4

Готово, исполняемый файл linux может быть запущен системой, прямо из файлового менеджера.

Выводы

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

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

Источник

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

В Linux, если вам нужно запустить файл или программу, он должен быть исполняемым, то есть ваш пользователь Linux или процесс должен иметь разрешение на выполнение. Иногда вам может понадобиться сделать файл исполняемым в Linux. Например, вы можете захотеть сделать исполняемым сценарий оболочки в Linux. По умолчанию, когда вы создаете новый файл в системе и добавляете в него код, он вряд ли будет исполняемым. Он будет иметь разрешения на чтение и запись для вашего пользователя Linux, но вы не сможете сразу же выполнить его. В этой статье мы узнаем, как сделать файл исполняемым. Вы можете использовать эти шаги, чтобы сделать исполняемым любой файл — сценарии оболочки, сценарии на python или perl и т.д.

Читайте также:  Linux очистить экран консоли

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

Мы рассмотрим различные способы сделать файл исполняемым в Linux.

1. Использование командной строки

Вы можете легко проверить, является ли ваш файл исполняемым или нет, используя команду ls -all.

Например, следующая команда отобразит разрешения файла /home/test.sh

ls -all /home/test.sh

В приведенном выше выводе, -rw-r-r- указывает на то, что владелец файла имеет разрешение на чтение(r) и запись(w), но не разрешение на выполнение(x), обозначенное rw-. Это также указывает на то, что и группа, и пользователи, отличные от владельца, имеют разрешение только на чтение, обозначенное r-.

Самый простой способ сделать файл исполняемым — открыть терминал и выполнить команду chmod с параметром +x, за которым следует путь к файлу.

Вот пример того, как сделать файл /home/test.sh исполняемым.

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

После этого вы можете легко запустить его, указав путь к нему.

Теперь, если вы снова проверите разрешение файла с помощью команды ls -all, вы увидите следующее.

ls -all /home/test.sh

Вы увидите, что owner, group и others имеют ‘x’ (для execute) в своих разрешениях, что указывает на то, что все они имеют право исполнять этот файл.

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

Если вы хотите снять разрешение на выполнение, используйте опцию -x в chmod.

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

Это откроет профиль bash. Добавьте в его конец следующее.

alias [новое имя]='[полный путь к скрипту]'

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

Сохраните и закройте файл. В терминале выполните следующую команду, чтобы применить изменения.

Теперь вы можете просто использовать имя псевдонима для вызова вашего скрипта.

2. Использование графического интерфейса пользователя

Вы также можете сделать файл исполняемым с помощью графического интерфейса. Для этого щелкните правой кнопкой мыши на вашем файле и выберите Свойства. Вы увидите следующее окно. Перейдите на вкладку Permissions (Разрешения). Затем установите флажок ExecuteAllow executing file as program (Разрешить выполнение файла как программы)

Permissions

Нажмите кнопку Закрыть/Сохранить/Ок, в зависимости от вашего дистрибутива Linux, чтобы применить изменения.

Заключение

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

Похожие записи:

Источник

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