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

Исполняемый скрипт

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

Содержание

    1. Использование командной строки
    1. Использование графического интерфейса
  • Проверка, является ли файл исполняемым
  • Удаление прав на выполнение файла

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

Чтобы эффективно управлять правами доступа к файлам в Linux, вам следует быть хотя бы немного знакомым с командой chmod. Этот удобный инструмент позволяет вам быстро изменить уровень прав доступа для нескольких файлов с помощью числовых значений и флагов. Для наших целей мы будем использовать только флаг +x, чтобы сделать файлы исполняемыми.

Самый простой способ использовать chmod, чтобы сделать файл исполняемым, это ввести его, за которым следует +x и абсолютный путь к файлу:

chmod +x /path/to/file

Исполняемый Chmodx

Вот и всё, файл станет исполняемым.

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

chmod u+x /path/to/file

Исполняемый Chmodux

Чтобы сделать файл исполняемым для группы, владеющей файлом, используйте g вместо u:

chmod g+x /path/to/file

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

chmod ug+x /path/to/file

С помощью командной строки вы также можете делать некоторые интересные вещи, такие как указание диапазона файлов:

chmod +x /path/to/file{0001..0008}

Исполняемый Chmodrange

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

chmod +x file1.sh file2.sh file3.sh

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

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

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

Nemo

В Nemo щелкните правой кнопкой мыши на файле, который вы хотите сделать исполняемым, и выберите “Свойства”.

Исполняемые Свойства Nemo

Перейдите на вкладку “Права” и установите флажок, который говорит “Разрешить выполнение файла как программы”.

Исполняемые Права Nemo

Нажмите “Закрыть”, и всё готово!

Nautilus/GNOME Files

Недавно Nautilus был переименован в GNOME Files, так как он стал стандартным файловым менеджером для всех рабочих столов GNOME. К сожалению, разработчики сделали невозможным изменение прав доступа к файлам для выполнения пользовательских оболочек здесь.

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

KDE Dolphin

Чтобы сделать файл исполняемым в Dolphin, щелкните правой кнопкой мыши на нем и выберите “Свойства”.

Исполняемые Свойства Dolphin

После этого перейдите на вкладку “Права” и установите флажок, который говорит “Сделать файл исполняемым”.

Исполняемые Права Dolphin

Нажмите “ОК”, и вы готовы!

PCManFM

В PCManFM процедура немного отличается. Начните, как обычно, щелкнув правой кнопкой мыши на файле и выбрав “Свойства”.

Исполняемые Свойства Pcmanfm

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

Исполняемые Права Pcmanfm

После того как вы сделали свой выбор, нажмите “ОК”, чтобы подтвердить изменения.

Проверка, является ли файл исполняемым

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

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

ls -l

Это говорит терминалу отобразить список файлов в “длинном” формате, включая все права, временные метки модификации, данные о владельце и размер. Нас интересуют только права.

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

Исполняемый Ls

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

r - для чтения, w - для записи, а x - для выполнения. Если x появляется в колонках, в которых вы хотели, чтобы оно появилось, вы успешно сделали файл исполняемым!

Удаление прав на выполнение файла

Чтобы удалить права на выполнение файла в графическом интерфейсе, вам просто нужно снова следовать инструкциям для вашего конкретного файлового менеджера и снять флажок (Nemo, Dolphin) или выбрать “Никто” из выпадающего меню (PCManFM).

В командной строке вам просто нужно заменить + на - в командах, которые мы рассмотрели, например:

chmod -x /path/to/file

Дальше

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