Posso colocar meu script em / usr / bin?

5

Eu escrevi um pequeno script bash para iniciar, parar e reiniciar meus aplicativos java e quero disponibilizá-lo para todos os usuários para que pudessem executá-lo. Devo apenas colocá-lo em /usr/bin para fazer isso? É o lugar certo para meus scripts? Não é para o script de pacote e coisas do tipo instalado apenas?

    
por Rihards 07.07.2011 / 01:44

3 respostas

10

Correto, [/usr]/[s]bin é para o uso do criador de distro. Scripts de usuários locais pertencem a /usr/local , especificamente /usr/local/bin neste caso.

Padrão de hierarquia do sistema de arquivos

    
por 07.07.2011 / 01:46
1

Eu recomendaria colocar em /opt . Você pode criar um diretório com o nome do seu aplicativo em /opt e, em seguida, no diretório bin abaixo dele, para que seu caminho fique assim:

/opt/<your_app_name>/bin

Depois, você cria dois scripts em /etc/profile.d - <your_app_name>.sh e <your_app_name>.csh e, nesses scripts, adiciona o caminho acima à variável global $PATH para disponibilizar executáveis do seu aplicativo para todos os usuários. Isso é tudo.

Acho que essa abordagem é mais limpa do que colocá-la em /usr/local/bin , já que todas as alterações no sistema estão localizadas em um único diretório (com exceção de dois scripts em /etc/profile.d ), é fácil remover seu aplicativo manualmente e seus arquivos não se misturam com arquivos de outros aplicativos (o que pode ser o caso de /usr/local ). Essa abordagem também está em conformidade com o "Padrão de hierarquia do sistema de arquivos" .

    
por 07.07.2011 / 03:06
0

Certamente não há nada que impeça você de colocar um script em / usr / bin, dando a ele permissões de execução mundial (algo como chmod 755 ) e permitindo que os usuários o executem. Se você quiser se conformar com "O modo UNIX", há locais mais apropriados. Tenho certeza de que vou começar uma trilha de comentários sobre por que isso está errado, mas eu aprendi a armazená-lo em /usr/local/bin/ . O diretório /usr/local normalmente é para software não gerenciado diretamente pela distribuição, como aplicativos ou scripts de terceiros.

    
por 07.07.2011 / 01:47