Basicamente, isso significa que você pode dizer ao sistema operacional para executar o código no arquivo. Por exemplo, se o arquivo fosse um executável binário, o acesso de gravação permitiria modificá-lo, o acesso de leitura permitiria visualizá-lo, mas sem permissões de execução, você não conseguiria executar o programa. No caso de um script, é um pouco mais complicado, porque você não precisa necessariamente 'executar' o programa, basta ler o conteúdo em um intérprete, que possui o privilégio de execução, mas você não precisa executar permissões no próprio script.
Alguns scripts no Linux são eles próprios executáveis; você verá frequentemente uma linha no topo, como
#! / bin / bash ou
#! / bin / python
Essa linha informa ao kernel que o arquivo pode ser executado chamando o programa relevante (e não é apenas texto). Então você pode simplesmente executar seu script como
./roteiro
em vez de ter que fazer
python ./script
.png
ou.avi
?#!/bin/bash
no início do seu.avi
arquivo, ele será executado como bash. Se for um formato avi real, você provavelmente não poderá executá-lo porque interpretá-lo como comandos não fará sentido e falhará.#!
realmente interpretado pelo kernel?"execute" permite ao usuário executar executáveis. Para diretórios, é permitido entrar no diretório usando o comando cd.
fonte
Para fins práticos, a permissão para ler implica na capacidade de execução.
No entanto, o oposto não é verdadeiro; existe algum valor na capacidade de dar permissão para executar código sem dar permissão para lê-lo.
fonte
É para executar aplicativos da GUI ou da linha de comando. Para o uso "normal" do php (via servidor da web), isso não muda nada. Precisamente falando, depende da configuração, mas nos casos mais comuns você não precisa da permissão + x para permitir o carregamento da sua página php via navegador.
Para executar a partir da linha de comando, você precisa:
#!/usr/bin/php
no início do script/etc/xdg/foo
ou/home/fred/bar
, ou um diretório relativo, comodir1/prog1
ou./prog2
.fonte