AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • Início
  • system&network
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • Início
  • system&network
    • Recentes
    • Highest score
    • tags
  • Ubuntu
    • Recentes
    • Highest score
    • tags
  • Unix
    • Recentes
    • tags
  • DBA
    • Recentes
    • tags
  • Computer
    • Recentes
    • tags
  • Coding
    • Recentes
    • tags
Início / ubuntu / Perguntas / 1534107
Accepted
Momina Nazir
Momina Nazir
Asked: 2024-11-28 14:59:29 +0800 CST2024-11-28 14:59:29 +0800 CST 2024-11-28 14:59:29 +0800 CST

Como executar um aplicativo Qt sem sudo quando permissões de root são necessárias?

  • 772

Estou trabalhando em um aplicativo Qt que acessa certas funções que exigem permissões de root (por exemplo, acessar recursos de hardware ou certas operações de E/S). Quando executo o aplicativo normalmente, recebo o seguinte erro:

ERRO: permissão de root necessária. ioperm: Operação não permitida Falha de segmentação (core dumped)

No entanto, o aplicativo roda bem quando eu o executo com sudo. Não quero usar sudo toda vez. Existe uma maneira de executar este aplicativo Qt sem precisar de sudo, mas ainda permitindo que ele acesse as funções privilegiadas necessárias?

networking
  • 2 2 respostas
  • 52 Views

2 respostas

  • Voted
  1. ashadiqi
    2024-11-28T18:43:56+08:002024-11-28T18:43:56+08:00

    Você pode instalar lxqt-sudoe criar um arquivo *.desktop para iniciar o programa necessário como usuário root.

    1. Instalar lxqt-sudo
    sudo apt update
    sudo apt install lxqt-sudo
    
    1. Crie um iniciador de aplicativo *.desktop (você pode usar qualquer editor de texto para isso)
    touch ~/.local/share/applications/myrootapp.desktop
    nano ~/.local/share/applications/myrootapp.desktop
    chmod +x ~/.local/share/applications/myrootapp.desktop
    
    1. Cole este conteúdo (altere xtermpara seu aplicativo Qt)

    [Entrada da área de trabalho]
    Nome=MyRootApp
    Exec=lxqt-sudo xterm
    Terminal=false
    Tipo=Aplicativo
    Ícone=xterm
    Categorias=Sistema;

    No seu iniciador de aplicativos, deve haver um novo programa chamado MyRootApp. Um prompt sudo aparecerá quando você iniciar este

    • 0
  2. Best Answer
    raj
    2024-11-28T22:06:41+08:002024-11-28T22:06:41+08:00

    Você pode tornar o aplicativo executável setuid root. É assim que os aplicativos do sistema que precisam de permissões de root (como sudoele) são executados.

    Você deve alterar o proprietário do arquivo para root e ativar o bit setuid:

    sudo chown root /path/to/my/app
    sudo chmod a+x,u+s /path/to/my/app
    

    O u+sargumento chmodé o que define o bit setuid.

    A propósito. Não importa se é um aplicativo Qt ou não, isso funciona para qualquer arquivo executável binário (não um script).

    • 0

relate perguntas

Sidebar

Stats

  • Perguntas 205573
  • respostas 270741
  • best respostas 135370
  • utilizador 68524
  • Highest score
  • respostas
  • Marko Smith

    Existe um comando para listar todos os usuários? Também para adicionar, excluir, modificar usuários, no terminal?

    • 9 respostas
  • Marko Smith

    Como excluir um diretório não vazio no Terminal?

    • 4 respostas
  • Marko Smith

    Como descompactar um arquivo zip do Terminal?

    • 9 respostas
  • Marko Smith

    Como instalo um arquivo .deb por meio da linha de comando?

    • 11 respostas
  • Marko Smith

    Como instalo um arquivo .tar.gz (ou .tar.bz2)?

    • 14 respostas
  • Marko Smith

    Como listar todos os pacotes instalados

    • 24 respostas
  • Martin Hope
    Flimm Como posso usar o docker sem sudo? 2014-06-07 00:17:43 +0800 CST
  • Martin Hope
    led-Zepp Como faço para salvar a saída do terminal em um arquivo? 2014-02-15 11:49:07 +0800 CST
  • Martin Hope
    ubuntu-nerd Como descompactar um arquivo zip do Terminal? 2011-12-11 20:37:54 +0800 CST
  • Martin Hope
    TheXed Como instalo um arquivo .deb por meio da linha de comando? 2011-05-07 09:40:28 +0800 CST
  • Martin Hope
    Ivan Como listar todos os pacotes instalados 2010-12-17 18:08:49 +0800 CST
  • Martin Hope
    David Barry Como determino o tamanho total de um diretório (pasta) na linha de comando? 2010-08-06 10:20:23 +0800 CST
  • Martin Hope
    jfoucher "Os seguintes pacotes foram retidos:" Por que e como resolvo isso? 2010-08-01 13:59:22 +0800 CST
  • Martin Hope
    David Ashford Como os PPAs podem ser removidos? 2010-07-30 01:09:42 +0800 CST

Hot tag

10.10 10.04 gnome networking server command-line package-management software-recommendation sound xorg

Explore

  • Início
  • Perguntas
    • Recentes
    • Highest score
  • tag
  • help

Footer

AskOverflow.Dev

About Us

  • About Us
  • Contact Us

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve