O problema não é como você queimou o disco, mas em como você criou a imagem. Se você não ativar as extensões Rock Ridge ao gerar o ISO, ele usará as opções especificadas durante a operação de montagem em vez de as permissões que originalmente tinha.
Em uma máquina Ubuntu 9.10 (Karmic Koala), gravei um CD a partir do prompt de comando usando:
cdrecord -v speed=16 dev=0,1,0 /FPS.iso
O CD agora contém um executável e alguns arquivos. Eu testei o CD carregando-o em outra máquina (Red Hat 5.3) e quando tento rodar o programa recebo a seguinte mensagem:
bash: ./FPS1_1: Permission denied
Eu posso abrir outros arquivos como documentos de texto (o executável também vem com bibliotecas compartilhadas). Eu percebi que tinha queimado o CD como root, então eu queimei outro como outro usuário, mas ainda tenho o mesmo problema. Como posso remover essa permissão ou qual é o problema?
P.S. a imagem estava em /
se isso ajuda.
O comando que usei para gerar a imagem é:
mkisofs -frvJL -o /buffer/mycd.iso /temp/mydirectory/
O -r
significa "Gerar informações de diretório de Rock Ridge racionalizadas". Devo usar -R
("Gerar informações do diretório Rock Ridge")?
O problema não é como você queimou o disco, mas em como você criou a imagem. Se você não ativar as extensões Rock Ridge ao gerar o ISO, ele usará as opções especificadas durante a operação de montagem em vez de as permissões que originalmente tinha.
Como A resposta de Ignacio indica que isso tem mais a ver com gerar o ISO e montar o sistema de arquivos do que com a gravação do ISO no disco.
Você pode montar o CDR ou ISO com a opção umask para garantir que os arquivos tenham o bit executável no sistema de arquivos montado. Por exemplo, umask = 022 daria a todos os arquivos permissões de 755 , também conhecidos como rwxr-xr-x .
mount -t iso9660 -o umask=022 /dev/cdrom /path/to/mount/point
Isso corrigirá o problema de permissões uma vez; para uma correção permanente, adicione a opção umask aos seus sistemas de montagem de sistema ( / etc / fstab , ou quaisquer montadores automáticos em uso), ou corrija a imagem ISO.
No Ubuntu, mkisofs é um link simbólico para genisoimage . De acordo com a página man do genisoimage , o -R pode estar mais perto do que você quer do que -r (ênfase minha):
-R Generate SUSP and RR records using the Rock Ridge protocol to further describe the files on the ISO9660 filesystem.
-r This is like the -R option, but file ownership and modes are set to more useful values. The uid and gid are set to zero, because they are usually only useful on the author's system, and not useful to the client. All the file read bits are set true, so that files and directories are globally readable on the client. If any execute bit is set for a file, set all of the execute bits, so that executables are globally executable on the client. If any search bit is set for a directory, set all of the search bits, so that directories are globally searchable on the client. All write bits are cleared, because the filesystem will be mounted read-only in any case. If any of the special mode bits are set, clear them, because file locks are not useful on a read-only filesystem, and set-id bits are not desirable for uid 0 or gid 0.