Eles fornecem os comandos corretos, e cabe a você como usuário garantir que você tenha os privilégios corretos.
Costumo encontrar instruções de criação como esta:
./configure
make
make install
enquanto na realidade eu preciso digitar
sudo make install
Por que isso não é mencionado nas instruções de instalação? Ou é suposto ser tal conhecimento comum que não vale a pena mencionar? Ou presume-se que você esteja logado como root?
"sudo" pode não ser necessário se, por exemplo, você já executou "su" e sua sessão está sendo executada com permissões elevadas. Isso nega a necessidade de executar o sudo. Geralmente, o uso de sudo é preferido, mas não é estritamente a única maneira de alcançar o mesmo objetivo.
Você pode na verdade não precisar permissões de root para instalar um determinado pacote de software, ou você não pode <> ter acesso a privilégios de root via sudo
ou su
ou outros métodos.
Uma das opções comuns do script ./configure
é --prefix
, que altera o diretório de instalação base de qualquer que seja o padrão. Então, em um sistema em que não tenho privilégios root, ainda posso instalar esse software em meu próprio diretório pessoal :
./configure --prefix=$HOME
make
make install
O script ./configure
tem muitas outras opções, algumas comuns a todos, algumas dependentes do pacote específico que você está compilando. Use ./configure --help
para ver todos.
sudo
está disponível apenas em determinadas distribuições. Em outros, você deve usar su
para mudar para o usuário root, execute o comando. Eles não estão assumindo que você já está logado como root, já que você nunca deve estar executando as coisas como root. Eles estão assumindo que você sabe o suficiente sobre o seu sistema para saber como executar algo como root. É bastante comum precisar executar instalações como root, portanto, esteja acostumado a fazer isso em seu sistema.
Talvez seus instrutores tenham essa aparência. Eu vi o seguinte muitas vezes:
$ ./configure
$ make
# make install
Observe o sinal de hash / libra. Em quase todas as distro Linux que usei, esse sinal indica que você está em um shell de raiz.