Existe uma maneira pela qual eu possa fazer com que o sudo
comando me dê permissões por um período maior que o tempo padrão?
Pode ser uma dor ter que continuar digitando a sudo
senha, ao exigir a instalação de muitos pacotes, por isso seria bom se existe um comando ou configuração que possa ser feito para afetar o período de uso.
command-line
permissions
sudo
password
Diga-me o porquê
fonte
fonte
su
mais? Sempre?sudo -i
e você tem um shell de root, pronto para qualquer um ajuda shoothing-se nos pés durante o máximo de uma só vez como ...su
precisa de root para ter uma senha. Por padrão, o usuário root do Ubuntu não tem uma senha. Portanto, você não podesu
fazer o root.su
está funcionando como pretendido aqui. Tente com qualquer usuário que tenha uma senha.sudo su
funciona muito bem, embora um pouco repetitivo.Respostas:
O comportamento de
sudo
está configurado no/etc/sudoers
arquivo. Existe atimestamp_timeout
opção responsável por solicitar novamente a senha do usuário após um período específico de tempo.De homens sudoers
Para alterar essa configuração, faça o seguinte:
sudo visudo
.visudo
é usado especificamente para editar/etc/sudoers
arquivos e, por padrão, usa onano
editor de texto.Encontre as linhas que começam com
Defaults
. Adicione a seguinte linhaonde x é a quantidade de minutos que você deseja entre reprompts
Salve o arquivo com Ctrl+O
fonte
De
man sudoers
:Como você pode ver, o tempo limite padrão
sudo
é de 15 minutos. Você pode alterar esse valor em/etc/sudoers
.Você não edita diretamente
/etc/sudoers
. Em vez disso, usevisudo
-o.De
man visudo
:Então, digite
sudo visudo
um terminal que abrirá o/etc/sudoers
arquivo nonano
editor de texto.Procure esta linha:
E adicione onde X é o tempo que você deseja definir em minutos.
timestamp_timeout=X
Então, como um exemplo:
Se você especificar 0, sempre será solicitada a senha. Se você especificar um valor negativo, o tempo limite nunca expirará.
Uma vez feito, salve e saia.
Consulte RootSudoTimeout
fonte
Tente isso.
Execute o seguinte comando em um terminal:
Role para baixo até a linha que se parece com isso:
Altere para, por exemplo:
Altere 30 para o tempo, em minutos, que você deseja aguardar antes de atingir o tempo limite. Você também pode alterá-lo para 0 se desejar um prompt de senha toda vez que executar o sudo, ou -1 se nunca desejar um prompt de senha. Pressione Ctrl+ Xpara concluir a edição, Y para salvar as alterações e Enter para sair.
Aqui está a fonte: http://lifehacker.com/make-sudo-sessions-last-longer-in-linux-1221545774
fonte
Você pode editar o
/etc/sudoers
arquivo (comsudo visudo
: cuidado) e adicionar uma linha comoonde
myname
está seu ID de usuário. O valor do tempo limite é em minutos. Você pode usar um valor de -1 para nunca expirar e, em seguida, digitarsudo -k
para eliminar a autenticação, e precisará de uma senha novamente.Ou você pode adicionar uma entrada para dizer que um comando específico não precisa de uma senha.
fonte
sudo -k
a invalidação manual da autenticação em cache.Não acredito que o comando mais simples:
não é mencionado aqui. A opção "-s" fornece um console com permissões de root, que dura até você sair dele. Não há necessidade de mexer nas configurações padrão.
fonte
sudo
: todos os comandos são registrados (para que você possa ver o que fez). Você perde esse log ao abrir um shell raiz.Até agora, todas as outras respostas parecem estar centradas na alteração do tempo limite padrão por quanto tempo antes que você precise digitar sua senha novamente
sudo
. No entanto, se você quiser apenas executar comandos como root sem anexar todos os comandossudo
, poderá obter um shell raiz com:ou
ou
Embora tudo isso inicie um único processo como root, o único processo em questão é um shell que permitirá que você inicie quantos outros processos desejar como root sem precisar digitar
sudo
ou senha. :)Claro, com grande poder vem uma grande responsabilidade, não faça coisas estúpidas, etc.
fonte
Depois de ver muitas perguntas dos usuários que modificaram os arquivos de configuração e ficaram confusas sobre o motivo de suas alterações serem substituídas após a atualização do pacote, observarei que, se você deseja modificar
timestamp_timeout
, é melhor fazê-lo criando um arquivo em/etc/sudoers.d
vez de modificar/etc/sudoers
diretamente.Então você deveria fazer
(o nome do arquivo pode ser o que você quiser, desde que não contenha um ponto (
.
) nem termine com um til (~
)). Em vez de abrir/etc/sudoers
no seu editor de escolha, ele será aberto/etc/sudoers.d/timeout
, normalmente como um arquivo vazio, pois não existe. Coloque o seunele e salve como de costume. Então, se uma nova versão for lançada
/etc/sudoers
, você não precisará escolher entre instalar a versão mais recente ou manter as alterações - você terá as duas automaticamente.fonte
Se você estiver procurando por uma solução que não altere o arquivo de configuração , por exemplo, quando desejar que o token dure mais por uma sessão específica ou que seja aplicado somente após uma ação explícita, tente o seguinte:
Basicamente, o código anterior atualiza o token sudo a cada 4 minutos , por meio de um processo iniciado em segundo plano.
De fato, de acordo com o
sudo
manual: "o tempo limite padrão do prompt de senha para a política de segurança dos sudoers é de 5 minutos ". Portanto, dependendo da política específica do sistema, você pode ajustar a quantidade de tempo que o loop passa no modo de suspensão entre dois ciclos.fonte