Como executar um arquivo .run como root?


10

Eu baixei um arquivo .run para um driver da Nvidia, mas quando o executo no terminal, ele diz que deve ser executado como root.

Eu sou um noob completo e mal sei o que é raiz. Eu acho que é algo em torno do equivalente a admin no Windows. driver executado como root

Bem, eu tenho o arquivo para executar, mas acontece que o driver não reconhece o meu cartão. Ouvi falar de outros problemas com as placas Nvidia que não funcionam corretamente nas versões de 64 bits do 12.04.


3
Se você é, como você diz, um noob completo, talvez haja uma maneira melhor e mais fácil de fazer o que está fazendo. Você está simplesmente tentando instalar o driver da Nvidia? Há uma interface de apontar e clicar para isso - procure "Drivers adicionais" nas configurações do sistema. Se você já tentou isso, poderia nos informar e o que deu errado?
thomasrutter

1
Caso você não tenha tanta experiência com o Ubuntu, eu daria um passo adiante e gostaria de desencorajá-lo a instalar drivers gráficos que não sejam os métodos mencionados acima.
Takkat

Além disso, se você quiser testar um driver beta, veja este askubuntu.com/questions/131150/…
desgua

1
Não há drivers na configuração "drivers adicionais". Não preciso desanimar, de que outra forma vou aprender senão por tentativa e erro? Driver beta? Vou analisar isso. Eu tenho bastante tempo para reinstalar o ubuntu milhares de vezes.
Daniel Richardson

@neon_overload, eu sei que esse é um tópico antigo, mas gostaria de salientar que eu tive que instalar "Drivers adicionais" no Ubuntu Software Center, pois ele não apareceu por padrão
Sos

Respostas:


10

Você precisa fazer duas coisas; ambos em um prompt do Terminal:

  1. Mude para o diretório em que o .runarquivo está armazenado.
  2. Tipo: chmod 755 filename.run
  3. Tipo: sudo ./filename.run

Os comandos acima tornarão o arquivo executável e o executarão com permissões no nível raiz.


Mas o arquivo funcionou bem, obviamente, então por que confundi-lo com etapas desnecessárias? Além disso, você deve especificar que "nome do arquivo" não deve ser digitado literalmente, mas substitui o nome do arquivo .run.
Marty Fried

Está tudo bem, eu entendi. Eu tive que procurar no google algumas coisas, mas no final estava tudo bem.
Daniel Richardson

1

Adicione o comando "sudo" antes do comando. Por exemplo: sudo blah.sh

Depois de inserir sua senha, o comando será executado como root. Tenha cuidado para verificar a confiabilidade de um pacote ou comando antes de executá-lo com o sudo.


PS você realmente deve ler help.ubuntu.com/community/RootSudo
notkevin

1
Obviamente, se o comando for ./blah.shexecutá-lo como root, você faria sudo ./blah.sh, em vez de sudo blah.sh(o que seria executado apenas blah.shse estiver no $PATH).
Eliah Kagan

Atenção, deve, possivelmente, usar gksudo para graphicals ...
MUY Bélgica

1

rooté a conta principal no Ubuntu; toda conta tem privilégios limitados, mas a rootconta não tem limitações. O motivo da ocultação rooté que, na maioria dos casos, você não precisa de acesso root. O analógico no Windows precisaria se autenticar quando você desejar instalar um driver; no Ubuntu, você precisa ser root ou ter privilégios de root.

Existem duas maneiras de obter acesso como root. Você pode digitar:

sudo <whatever-command> e o Ubuntu solicitará sua senha e executará esse comando como root.

OU

sudo su, onde você digitará sua própria senha e se tornará root (ou seja, você estará logado como root).

Eu prefiro o último porque me dá mais controle; Às vezes, executar um comando como root não é suficiente, mas fazê-lo dessa maneira pode ser mais perigoso (ou seja, você pode causar mais danos acidentalmente).

Eu recomendo tentar da primeira maneira. E depois tentar a segunda maneira, se isso não funcionar. Apenas certifique-se de sair da raiz depois de terminar (ou seja, digite exitdepois que você terminar de fazer o que precisa fazer como raiz).


1
sudo -sé amplamente considerado preferível sudo su(embora isso possa ter mais a ver com elegância do que qualquer outra coisa). Para obter um rootshell que se comporte como um rootlogin real , use em seu sudo -ilugar. (Isso é semelhante a sudo su -.) Além disso, logoutnão funcionará para sair de um sudo sushell, porque esse shell não é um shell de logon. Você precisa usar em seu exitlugar.
Eliah Kagan

@EliahKagan Cool! Eu não sabia sobre sudo -i/ -s. Bom ponto exit, eu digitei errado. Vou editar a entrada acima. Você pode explicar por que sudo -sé mais "elegante"?
Avery Chan

1
Claro, mas primeiro alguns antecedentes para que a explicação possa ser benéfica para os outros. sue sudoexistem dois mecanismos separados para executar um comando como um usuário que pode ser diferente do usuário que o está chamando. (Se não especificado de outra forma, sue sudoexecutará - ou tentará executar - o comando como root.) Como se suautentica com a senha do usuário de destino , a autenticação por senha rooté desativada por padrão (e não é recomendada ou oficialmente suportada) no Ubuntu, você não pode usar supara se tornar root, mas rootcertamente pode usar supara se tornar outro usuário.
Eliah Kagan

1
sudoe susão capazes de executar um único comando. sudofaz isso por padrão e sufaz isso quando recebe o -csinalizador. Eles também são capazes de iniciar um shell. sudofaz isso quando recebe o -ssinalizador (ou -ipara simular um shell de login inicial) e sufaz isso por padrão (ou quando recebe o -sinalizador, para simular esse shell de login). Quando você executa sudo su, está se tornando rootcom sudo, e depois se tornando root novamente como root (isto é, root su-ing para si mesmo), para iniciar um shell. É mais elegante apenas a identidade "mudança" de uma vez iniciar o shell de login ...
Elias Kagan

1
... o que é o que sudo -s(ou sudo -i) realiza. su -c 'sudo ...'(com ...substituído por um comando) seria igualmente deselegante. Comandos como sudo bashsão considerados um pouco deselegantes por uma razão diferente e relacionada - sudotem os sinalizadores -se -ipara iniciar um shell da maneira que você quiser, para que você possa usá-los. Embora essas maneiras sejam deselegantes (e sutilmente diferentes em efeitos dos sugeridos sudo -se sudo -i), elas não são realmente ruins e funcionam bem ; portanto, não há problema em continuar usando-as, se desejar.
Eliah Kagan

-1

Se você ativou a conta raiz, pode usar

su

Digite a senha para root, cdna pasta do aplicativo e execute

./package.run

1
No Ubuntu, a raiz não está configurada para login / su com senha como padrão, portanto, o acima não funcionará imediatamente.
Soren Um
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.