BlinCT
23 февраля 2020 г. 0:05

Доступ к заголовочным файлом драйверов без использования sudo

Всем привет.
Для моей приложухи требуется доступ к хедерам дял чтения данных, но к ним имеет доступ рут, без него чтение не происходит.
Но как я слышал можно вроде через dbus или polkit как то настроить приложение чтоыб оно читало данные без рута.
Если кто знает на эту тему как это работает или что нужно то подскажите пожалуйста.
Спасибо.

2

Вам это нравится? Поделитесь в социальных сетях!

1
Evgenii Legotckoi
  • 24 февраля 2020 г. 17:29

Qt не предоставляет функционала по запросу root прав во время выполнения программы.

Поэтому нужно использовать платформозависимый функционал, для Linux это будет выглядеть так:

  1. #include "mainwindow.h"
  2. #include "ui_mainwindow.h"
  3. #include <stdio.h>
  4. #include <string.h>
  5.  
  6. MainWindow::MainWindow(QWidget *parent) :
  7. QMainWindow(parent),
  8. ui(new Ui::MainWindow)
  9. {
  10. ui->setupUi(this);
  11. }
  12.  
  13. MainWindow::~MainWindow()
  14. {
  15. delete ui;
  16. }
  17.  
  18. void MainWindow::on_pushButton_clicked()
  19. {
  20. system("gksudo mkdir testdir");
  21. }

То есть у меня имеется кнопка в главном окне приложения, которая была создана через графический дизайнер и по нажатию на неё запрашиваются права доступа на выполнение создания каталога testdir через приложение gksudo, вместо использования sudo.

    Комментарии

    Только авторизованные пользователи могут публиковать комментарии.
    Пожалуйста, авторизуйтесь или зарегистрируйтесь