Erreurs en lançant le programme en tant que root
Bonjour,
Je travail sous Unix (DebianJessie), j'ai réalisé un outil pour mon entreprise qui utilise QtWebEngine.
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
| BrowserSensorFS3::BrowserSensorFS3(QString url)
{
QtWebEngine::initialize();
m_contexte = m_engineWeb.rootContext();
m_contexte->setContextProperty ( "url_to_call", url );
connect(&m_engineWeb, &QQmlApplicationEngine::objectCreated, this, &BrowserSensorFS3::objectCreated );
m_engineWeb.load ( QUrl ( QStringLiteral ( "qrc:/qml/main.qml" ) ) );
}
void BrowserSensorFS3::updateURL(QUrl url){
m_contexte->setContextProperty ( "url_to_call", url );
m_engineWeb.load ( QUrl ( QStringLiteral ( "qrc:/qml/main.qml" ) ) );
}
void BrowserSensorFS3::objectCreated()
{
qDebug()<< "object created";
} |
L'application marche quand je l’exécute en tant que user lambda en lui fournissant son paramètre 'url' adéquat.
En revanche si je passe en root, (en exécutant le binaire du projet par la console, ou en lançant directement qt en root), la fonction load n'abouti pas et retourne une séquence d'erreur :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44
| [0202/105306:FATAL:sandbox_linux.cc(178)] Check failed: sandbox::Credentials::MoveToNewUserNS().
#0 0x7f28787243db base::debug::StackTrace::StackTrace()
#1 0x7f2878751fb7 logging::LogMessage::~LogMessage()
#2 0x7f2877a1b9d8 content::LinuxSandbox::EngageNamespaceSandbox()
#3 0x7f2876ef85cf content::EnterNamespaceSandbox()
#4 0x7f2876ef8974 content::EnterLayerOneSandbox()
#5 0x7f2876ef8e1e content::ZygoteMain()
#6 0x7f2876b396a2 content::RunZygote()
#7 0x7f2876b39a42 content::RunNamedProcessTypeMain()
#8 0x7f2876b3aacf content::ContentMainRunnerImpl::Run()
#9 0x7f2876b391db content::ContentMain()
#10 0x7f28755fee66 QtWebEngine::processMain()
#11 0x000000400b5e main
#12 0x7f2871f05b45 __libc_start_main
#13 0x0000004009d9 <unknown>
Received signal 6
#0 0x7f28787243db base::debug::StackTrace::StackTrace()
#1 0x7f2878723cf1 base::debug::(anonymous namespace)::StackDumpSignalHandler()
#2 0x7f2872abe8d0 <unknown>
#3 0x7f2871f19107 gsignal
#4 0x7f2871f1a4e8 abort
#5 0x7f287872335b base::debug::(anonymous namespace)::DebugBreak()
#6 0x7f2878723373 base::debug::BreakDebugger()
#7 0x7f2878752310 logging::LogMessage::~LogMessage()
#8 0x7f2877a1b9d8 content::LinuxSandbox::EngageNamespaceSandbox()
#9 0x7f2876ef85cf content::EnterNamespaceSandbox()
#10 0x7f2876ef8974 content::EnterLayerOneSandbox()
#11 0x7f2876ef8e1e content::ZygoteMain()
#12 0x7f2876b396a2 content::RunZygote()
#13 0x7f2876b39a42 content::RunNamedProcessTypeMain()
#14 0x7f2876b3aacf content::ContentMainRunnerImpl::Run()
#15 0x7f2876b391db content::ContentMain()
#16 0x7f28755fee66 QtWebEngine::processMain()
#17 0x000000400b5e main
#18 0x7f2871f05b45 __libc_start_main
#19 0x0000004009d9 <unknown>
r8: fffffffffffff440 r9: fffffffffffff430 r10: 0000000000000008 r11: 0000000000000202
r12: 00000000000002e4 r13: 00007ffc04b1f818 r14: 0000000000000000 r15: 0000000000000000
di: 0000000000000001 si: 0000000000000001 bp: 00007ffc04b1ee50 bx: 00007f2872288060
dx: 0000000000000006 ax: 0000000000000000 cx: ffffffffffffffff sp: 00007ffc04b1ed18
ip: 00007f2871f19107 efl: 0000000000000202 cgf: 0000000000000033 erf: 0000000000000000
trp: 0000000000000000 msk: 0000000000000000 cr2: 0000000000000000
[end of stack trace] |
j'ai du mal à cerner l'erreur : Check failed: sandbox::Credentials::MoveToNewUserNS().
De quoi s'agit-il ? Je ne vois pas le rapport avec le fait d'être en root :weird:
cela pourrait il venir de variable d’environnements manquantes chez le root ?
à Noter que dans les deux cas, (root ou pas root) j'ai ce message qui s'affiche :
[0202/105306:INFO:browser_main_loop.cc(217)] Running without the SUID sandbox! See https://chromium.googlesource.com/ch...development.md for more information on developing with the sandbox on.
Donc en résumé, je ne peut pas lancer mon programmer en root, sinon load me retourne une erreur ...
Si vous avez une idée, je suis toute ouïe !
Bonne journée à vous !