यदि आपने रास्पबेरी पाई 4 के लिए एक क्यूटी एप्लिकेशन - या कोई अन्य एप्लिकेशन बनाया है, तो आप अक्सर चाहते हैं कि एप्लिकेशन पूरा होने के बाद रास्पबेरी को फिर से शुरू करने के तुरंत बाद एप्लिकेशन को बुलाया जाए।
यह अक्सर स्टार्ट स्क्रिप्ट के साथ प्रयास किया जाता है जिसे विभिन्न स्थानों पर दर्ज किया जा सकता है।
हालांकि, इसे सिस्टम्ड के माध्यम से सेट करना अधिक उचित है। मैंने रास्पबेरी पाई 4 पर क्यूटी में वर्णित एक रास्पबियन-बस्टर-लाइट छवि और एक क्यूटी इंस्टॉलेशन का उपयोग किया।
क्यूटी एप्लिकेशन निर्देशिका "/होम/पाई/एप्लिकेशन" में स्थित है और इस उदाहरण में "application_one" नाम दिया गया है।

.service फ़ाइल बनाना

पहली बात यह है कि "/etc/systemd/system" निर्देशिका में .service फ़ाइल बनाना है:

sudo nano application_one.service

निम्नलिखित अब यहाँ दर्ज किया गया है:

[Unit]
Description=Qt application autostart
After=graphical.target
After=network-online.target
Wants=network-online.target

[Service]
Type=simple
User=pi
WorkingDirectory=/home/pi/application
ExecStart=/home/pi/application/application_one

[Install]
WantedBy=multi-user.target

प्रविष्टियां वास्तव में आत्म-व्याख्यात्मक हैं। अनुप्रयोग "application_one" (ExecStart=/home/pi/application/application_one) उपयोगकर्ता खाते "pi" (User=pi) के साथ प्रारंभ किया गया है। प्रविष्टि "आफ्टर=नेटवर्क-ऑनलाइन.टारगेट" अभी भी बताती है कि नेटवर्क कनेक्शन स्थापित होने तक अनुप्रयोग प्रारंभ किया जाता है।

</:code2:></:code1:>

सेवा को सिस्टम को अवगत कराएं

फिर आपको सिस्टम को बताना होगा कि नई सेवा सक्रिय होनी चाहिए:

sudo systemctl enable application_one.service

फिर एक रीबूट करें और एप्लिकेशन स्वचालित रूप से शुरू होना चाहिए।

</:code3:>

आवेदन शुरू नहीं होता है?

यदि अनुप्रयोग स्वचालित रूप से प्रारंभ नहीं होता है, तो आप के साथ लॉग इन कर सकते हैं

sudo systemctl status application_one.service

स्थिति प्रदर्शित करें और समस्या निवारण के लिए जानकारी का उपयोग करें. </:code4:>

Walter Prechtl

Walter Prechtl

पर अपडेट किया गया: 08. मार्च 2024
पढ़ने का समय: 2 मिनट