Efetivamente, a partir da partição nfts montada automaticamente, não consigo executar nenhum executável. Neste caso, o sistema monta-o como:
/dev/sdc1 on /media/romano/IOMEGA type fuseblk (rw,nosuid,nodev,allow_other,default_permissions,blksize=4096)
Eu copiei um executável nele e ele não funcionou --- permissão negada e é impossível adicionar a permissão "x" ao arquivo.
Uma solução é montar manualmente o disco assim:
sudo mount -t ntfs-3g -o user,relatime,umask=0022,exec /dev/sdc1 /mnt
(esta montagem do sistema de arquivos de propriedade do root, você pode usar uid=<your uid>
para montá-lo como você, e você pode adicioná-lo para /etc/fstab
para montá-lo automaticamente).
Agora funciona:
(0)samsung-romano:/% file /mnt/trova
/mnt/trova: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.2.5, not stripped
(0)samsung-romano:/% /mnt/trova
Uso: trova [file di agenda] cosa
file di default ./agenda
(0)samsung-romano:/% ls -lt /mnt/trova
-rwxr-xr-x 1 root root 14756 Nov 12 20:43 /mnt/trova
O problema é que agora todos os arquivos são executáveis. Provavelmente isso é impossível de resolver, uma vez que o NTFS não possui o conceito de "bit executável". Se você fizer chmod -x /mnt/trova
nada acontece.
Observe que a opção exec
no comando mount
deve ser a última da lista, porque muitas opções ( user
, por exemplo) têm o padrão noexec
embedded.