लिनक्स स्टार्टअप के कुछ चरण हैं , और आप अपनी स्वयं की ऑटोस्टार्ट स्क्रिप्ट या प्रोग्राम को किसी भी चरण में सेट कर सकते हैं जहां यह एक एकल कमांड, कमांड की एक श्रृंखला या एक निष्पादन योग्य शेल स्क्रिप्ट हो सकती है। हालाँकि, विभिन्न Linux वितरणों और संस्करणों के बीच स्टार्टअप प्रक्रिया में कुछ अंतर हो सकते हैं ।


आधुनिक लिनक्स पहले सिस्टमड में बूट होगा जबकि लिनक्स के पुराने संस्करण सिस्टम वी इनिट का उपयोग करते हैं । डेस्कटॉप वातावरण जैसे GNOME या KDE लोड होने से पहले दोनों विधियाँ cron और rc.local चलाएँगी । दूसरी ओर, सर्वर-आधारित लिनक्स वितरण डिफ़ॉल्ट शेल जैसे बैश चलाएगा जब उपयोगकर्ता डेस्कटॉप वातावरण को लोड करने के बजाय कंसोल पर लॉग इन करेगा।




Linux स्टार्टअप पर प्रोग्राम को स्वचालित रूप से चलाने के तरीके:


systemd . का उपयोग करके प्रबंधित करें

एक क्रॉन जॉब बनाएं

rc.local . का उपयोग करके चलाएँ

गनोम स्टार्टअप पर चलाएं

केडीई स्टार्टअप पर चलाएं

नए बैश सत्र पर चलाएँ

सिस्टमड के माध्यम से लिनक्स स्टार्टअप पर स्वचालित रूप से प्रोग्राम चलाएं

systemd आधुनिक Linux में मानक प्रणाली और सेवा प्रबंधक है । यह कई अन्य चीजों के अलावा, लिनक्स स्टार्टअप के दौरान कार्यक्रमों को निष्पादित और प्रबंधित करने के लिए जिम्मेदार है । संगत प्रोग्राम प्रोग्राम के निष्पादन को प्रबंधित करने के लिए सिस्टमड द्वारा उपयोग की जाने वाली सर्विस यूनिट फाइलें प्रदान करेंगे ।


आप इन चरणों का पालन करते हुए लिनक्स स्टार्टअप के दौरान स्वचालित रूप से प्रोग्राम चलाने के लिए सिस्टमड को कॉन्फ़िगर कर सकते हैं :


जांचें कि क्या आपके कार्यक्रम के लिए सेवा इकाई मौजूद है (वैकल्पिक)।

$ sudo systemctl सूची-इकाई-फ़ाइलें --type=service

[सुडो] उपयोगकर्ता के लिए पासवर्ड:

इकाई फ़ाइल स्थिति

account-daemon.service सक्षम

apparmor.service सक्षम

appport-autoreport.service स्थिर

appport-forward@.service स्थिर

appport.service उत्पन्न

उपयुक्त-दैनिक-उन्नयन.सेवा स्थिर

उपयुक्त-दैनिक.सेवा स्थिर

atd.service सक्षम

autovt@.service सक्षम

ब्लैक-उपलब्धता। सेवा सक्षम

bootlogd.service नकाबपोश

bootlogs.service नकाबपोश

bootmisc.service नकाबपोश

checkfs.service नकाबपोश

checkroot-bootclean.service नकाबपोश

checkroot.service नकाबपोश

Cloud-config.service सक्षम

क्लाउड-फ़ाइनल.सेवा सक्षम

Cloud-init-local.service सक्षम

क्लाउड-init.service सक्षम

कंसोल-गेटी.सेवा अक्षम

##### फिसल गया #####

यदि यह एक कस्टम प्रोग्राम है या यदि आपका प्रोग्राम इंस्टॉलेशन के दौरान एक के साथ नहीं आता है तो आपको अपनी खुद की सर्विस यूनिट बनानी होगी

संबंधित: सिस्टमड यूनिट फाइलों को बनाना और संशोधित करना


जांचें कि क्या सेवा इकाई सक्षम है (वैकल्पिक)।

$ sudo systemctl is-enable mysql

विकलांग

सक्षम सेवा इकाई को बूट के दौरान निष्पादित किया जाता है


सेवा इकाई सक्षम करें जिसे आप स्टार्टअप के दौरान निष्पादित करना चाहते हैं।

$ sudo systemctl mysql को सक्षम करें

/lib/systemd/systemd-sysv-install के साथ SysV सेवा स्क्रिप्ट के साथ mysql.service की स्थिति को सिंक्रनाइज़ करना।

निष्पादन: /lib/systemd/systemd-sysv-install mysql को सक्षम करें

निर्मित सिमलिंक /etc/systemd/system/multi-user.target.wants/mysql.service → /lib/systemd/system/mysql.service.

जांचें कि क्या सेवा इकाई पुष्टि करने के लिए सक्षम है (वैकल्पिक)।

$ sudo systemctl is-enable mysql

सक्षम


क्रोन के माध्यम से लिनक्स स्टार्टअप पर प्रोग्राम को स्वचालित रूप से चलाएं

क्रॉन अनुसूचित आदेशों को निष्पादित करने के लिए एक डेमॉन है। कमांड क्रॉन जॉब टेबल या क्रॉस्टैब में संग्रहीत होते हैं और सिस्टम में प्रत्येक उपयोगकर्ता के लिए अद्वितीय होते हैं। यह सिस्टम बूट के दौरान या तो systemd या System V init द्वारा शुरू किया जाता है , और आप इन चरणों का पालन करके सिस्टम बूट के दौरान ही अपने कार्य या प्रोग्राम को निष्पादित करने के लिए शेड्यूल कर सकते हैं:


डिफ़ॉल्ट क्रोंटैब संपादक खोलें ।

$ क्रोंटैब -ई

यदि उपयोगकर्ता पहली बार कमांड का उपयोग करता है, तो आपको क्रॉस्टैब के लिए एक संपादक का चयन करना होगा ।


$ क्रोंटैब -ई

उपयोगकर्ता के लिए कोई क्रोंटैब नहीं - एक खाली का उपयोग करना


एक संपादक चुनें। बाद में बदलने के लिए, 'चयन-संपादक' चलाएँ।

  1. /बिन/नैनो <---- सबसे आसान

  2. /usr/bin/vim.basic

  3. / बिन / एड


1-3 [1] चुनें:

कमांड चलाने वाले उपयोगकर्ता के लिए एक क्रोंटैब बनाया जाएगा और उपयोगकर्ता के विशेषाधिकारों का उपयोग करके निष्पादित किया जाएगा। यदि आपको रूट उपयोगकर्ता के रूप में चलाने के लिए अपने प्रोग्राम की आवश्यकता है , तो crontab -e को रूट उपयोगकर्ता के रूप में ही चलाएँ ।


@reboot से शुरू होने वाली एक पंक्ति जोड़ें ।

# एमएच डोम मोन डॉव कमांड

@रिबूट

@reboot सिस्टम बूट के दौरान निष्पादित किए जाने वाले कार्य को परिभाषित करता है।


@reboot के बाद अपना प्रोग्राम शुरू करने के लिए कमांड डालें ।

@reboot /sbin/ip addr | ग्रेप इनेट\ | पूंछ -n1 | awk '{प्रिंट $2}'> /etc/issue && echo "" >> /etc/issue

जब भी संभव हो अपने कार्यक्रमों के लिए पूर्ण पथ का उपयोग करें और अपने आदेशों को एक पंक्ति में लिखें।


फ़ाइल को crontab में स्थापित करने के लिए सहेजें ।

$ क्रोंटैब -ई

क्रोंटैब: नया क्रोंटैब स्थापित करना

फ़ाइल /var/spool/crontab/<username> . में सहेजी गई है


जांचें कि क्या क्रॉस्टैब ठीक से कॉन्फ़िगर किया गया है (वैकल्पिक)।

$ क्रोंटैब -l

# एमएच डोम मोन डॉव कमांड

@reboot /sbin/ip addr | ग्रेप इनेट\ | पूंछ -n1 | awk '{प्रिंट $2}'> /etc/issue && echo "" >> /etc/issue


लिनक्स स्टार्टअप पर rc.local के माध्यम से प्रोग्राम को स्वचालित रूप से चलाएं

rc.local सिस्टम V init सिस्टम से एक विरासत है। यह डेस्कटॉप वातावरण या टर्मिनल पर लॉगिन प्रॉम्प्ट के लिए लॉगिन स्क्रीन पर आगे बढ़ने से पहले निष्पादित की जाने वाली अंतिम स्क्रिप्ट है। यह आमतौर पर बैश शेल स्क्रिप्ट है, और आप स्क्रिप्ट से कुछ भी चला सकते हैं।


आप इन चरणों का पालन करके अपनी rc.local स्क्रिप्ट को कॉन्फ़िगर कर सकते हैं :


रूट उपयोगकर्ता के रूप में अपने पसंदीदा संपादक का उपयोग करके /etc/rc.local फ़ाइल खोलें या बनाएं यदि यह मौजूद नहीं है ।

$ sudo vi /etc/rc.local

फ़ाइल में प्लेसहोल्डर कोड जोड़ें।

#!/बिन/बैश


बाहर निकलें 0

यह दुभाषिया (से प्रारंभ होना चाहिए / bin / bash ) और एक निकास कोड के साथ समाप्त होता है ( 0 के लिए है सफलता )


फ़ाइल में आवश्यकतानुसार कमांड और लॉजिक्स जोड़ें।

#!/बिन/बैश


/sbin/ip addr | ग्रेप इनेट\ | पूंछ -n1 | awk '{प्रिंट $2}' > /etc/issue

इको "" >> / etc / मुद्दा


बाहर निकलें 0

फ़ाइल को निष्पादन योग्य पर सेट करें।

$ sudo chmod a+x /etc/rc.local

सिस्टम बूट के दौरान फ़ाइल को रूट उपयोक्ता के रूप में निष्पादित किया जाएगा



गनोम स्टार्टअप पर प्रोग्राम को स्वचालित रूप से चलाएं

गनोम लिनक्स वितरण जैसे उबंटू और रेड हैट के लिए डिफ़ॉल्ट डेस्कटॉप वातावरण है । जब उपयोगकर्ता लॉग इन करता है तो गनोम को प्रोग्राम चलाने के लिए कॉन्फ़िगर किया जा सकता है और नीचे दिए गए आलेख का पालन करके कॉन्फ़िगर किया जा सकता है:


संबंधित: गनोम स्टार्टअप पर प्रोग्राम को स्वचालित रूप से कैसे चलाएं



केडीई स्टार्टअप पर प्रोग्राम को स्वचालित रूप से चलाएं

केडीई लिनक्स के लिए एक और लोकप्रिय डेस्कटॉप वातावरण है और कुबंटू और ओपनएसयूएसई में डिफ़ॉल्ट है । जब उपयोगकर्ता लॉग इन करता है तो इसे प्रोग्राम चलाने के लिए आसानी से कॉन्फ़िगर किया जा सकता है, जैसा कि निम्नलिखित आलेख में बताया गया है:


संबंधित: केडीई स्टार्टअप पर प्रोग्राम को स्वचालित रूप से कैसे चलाएं



नए बैश सत्र पर स्वचालित रूप से प्रोग्राम चलाएं

जब आप अपना टर्मिनल सत्र शुरू करेंगे तो एक नया शेल प्रोग्राम उत्पन्न होगा। अधिकांश लिनक्स वितरण के लिए बैश डिफ़ॉल्ट शेल है , और जब शुरू किया जाता है, तो यह विशेष क्रम में निम्नलिखित फाइलों की तलाश करेगा और उन्हें निष्पादित करेगा।


/आदि/प्रोफ़ाइल

~/.bash_profile

~/.bash_login

~/.प्रोफाइल

इन फ़ाइलों में उचित पर्यावरण चर सेट करने और बैश भाषा में आवश्यक प्रोग्राम चलाने के लिए कमांड और लॉजिक्स होते हैं। यह सामान्य रूप से अन्य फ़ाइलों जैसे /etc/bashrc , /etc/bash.bashrc और ~/.bashrc को निष्पादित करने के लिए भी कॉन्फ़िगर किया गया है ।


बैश सत्र शुरू होने पर आप अपना प्रोग्राम चलाने के लिए इनमें से किसी भी फाइल को संपादित कर सकते हैं । नीचे एक विशिष्ट ~/.bashrc फ़ाइल का एक भाग है :


PS1 = '${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\ [\033[00m\] \$ '

 

पथ = / घर / उपयोगकर्ता / बिन: $पाथ

 

निर्यात  संपादक = / usr / बिन / vim

 

उपनाम  ll = "ls -l"