Tentativa de tornar o arquivo executável em USB, mas a permissão não “cola” [duplicada]

9

Estou usando LastPass como meu gerenciador de senhas e uso Sesame para autenticação multifator. No Windows, isso não foi problema, mas eu alterno entre computadores Windows e Linux, então eu preciso ter o Sesame disponível para ambos os casos.

No meu laptop eu estou rodando o Ubuntu 10.10, e eu baixei o LastPass Sesame de 32 bits (Ubuntu 10.04 LTS) e movi os arquivos (um executável e um .bin) para o meu dispositivo USB. Conforme instruído, tentei executar chmod +x sesame no executável (cujo nome é sesame ).

Eu tentei isso na janela do terminal, mas ao fazer um ls -la , percebi que as permissões no arquivo não tinham mudado nem um pouco. Eu tentei fazer o mesmo adicionando sudo no começo, mas isso não fez nenhuma diferença (e eu não recebi nenhum tipo de mensagem de erro ou nada). Eu também tentei fazer isso da maneira "gráfica", clicando com o botão direito no executável no Nautilus > Propriedades > Permissões, e tentando marcar a caixa de seleção Permitir execução do arquivo como programa - a marcação marcada só desapareceu novamente após um segundo.

Se eu movesse o mesmo executável para o meu disco rígido, funcionaria muito bem para torná-lo executável (e executá-lo).

Eu não sou realmente experiente com o Linux, então eu suspeito que estou perdendo algo óbvio. Pode ter algo a ver com o USB sendo o fat32 (mas eu pensei que os arquivos em uma partição fat32 deviam ser executáveis por padrão?), E em caso afirmativo - quais são minhas opções?

E só para dizer isso: funciona muito bem rodar a versão do Sesame para Windows usando o Wine, mas é um pouco trabalhoso (pelo menos se eu precisar dele em algum lugar que o Wine não esteja instalado).

    
por Nailuj 24.01.2011 / 22:18

2 respostas

8

Você não pode chmod arquivos fat32 .... apenas os sistemas de arquivos linux "aceitam" as permissões do linux.

O caminho mais fácil seria executá-lo da sua pasta pessoal, por exemplo ... Copie-o para lá, chmod-lo e execute-o como você estava tentando antes, mas no novo local.

Além disso, você pode verificar isso: Como posso executar um executável a partir de um CD quando ele não tem o bit executável definido? . Basicamente, ele fala sobre saber se o arquivo é realmente um binário ou se é um script de texto com a extensão .bin. Se este for o caso, você pode executá-lo com bash, python, ruby ou qualquer outra coisa.

    
por luri 24.01.2011 / 22:23
5

Veja esta resposta . Você basicamente pode definir permissões ao montar o dispositivo. No seu caso, você faria algo como:

sudo mount -t vfat -o rw,user,umask=000 /path/to/device /path/to/mount/dir

Para uma alteração permanente, você pode adicionar isso ao seu /etc/fstab :

  • Encontre o UUID (identificador universal exclusivo) do seu dispositivo usando sudo blkid .
  • Adicione a linha de montagem a /etc/fstab :

    UUID=your-uuid /path/to/mount/dir vfat rw,auto,user,umask=000 0 0
    
por htorque 25.01.2011 / 00:40