當前位置:首頁 » 操作系統 » linux自啟動設置

linux自啟動設置

發布時間: 2023-02-12 07:39:46

linux設置開機自啟動腳本的最佳方式

最簡單粗暴的方式直接在腳本 /etc/rc.d/rc.local (和 /etc/rc.local 是同一個文件,軟鏈)末尾添加自己的 腳本
然後,增加腳本執行許可權

第二種方式是在crontab中設置

也可以設置每次登錄自動執行腳本,在 /etc/profile.d/ 目錄下新建sh腳本,
/etc/profile 會遍歷 /etc/profile.d/*.sh

另外,幾個腳本的區別:
(1) /etc/profile: 此文件為系統的每個用戶設置環境信息,當用戶第一次登錄時,該文件被執行. 並從/etc/profile.d目錄的配置文件中搜集shell的設置。

(2) /etc/bashrc: 為每一個運行bash shell的用戶執行此文件.當bash shell被打開時,該文件被讀取(即每次新開一個終端,都會執行bashrc)。

(3) ~/.bash_profile: 每個用戶都可使用該文件輸入專用於自己使用的shell信息,當用戶登錄時,該文件僅僅執行一次。默認情況下,設置一些環境變數,執行用戶的.bashrc文件。

(4) ~/.bashrc: 該文件包含專用於你的bash shell的bash信息,當登錄時以及每次打開新的shell時,該該文件被讀取。

(5) ~/.bash_logout: 當每次退出系統(退出bash shell)時,執行該文件. 另外,/etc/profile中設定的變數(全局)的可以作用於任何用戶,而~/.bashrc等中設定的變數(局部)只能繼承 /etc/profile中的變數,他們是」父子」關系。

(6) ~/.bash_profile: 是互動式、login 方式進入 bash 運行的~/.bashrc 是互動式 non-login 方式進入 bash 運行的通常二者設置大致相同,所以通常前者會調用後者。

㈡ linux怎麼添加開機自啟

以centos6.5為例:

方法1:利用命令行chkconfig命令進行設置

簡要說明一下chkconfig命令的使用方法

--list:將目前的各項服務狀態欄顯示出來

--level:設置某個服務在該LEVEL下啟動或者關閉

㈢ linux開機自啟動,如何跳過開機動畫

某個程序方便後續的管理;那麼我們如何在開機時候,運行此賬戶安裝的程序呢?例如:以linux下指定mycount用戶在linux開機時執行/home/sun/startXX.sh為例:

以root登錄linux

執行vi /etc/rc.d/rc.local

在文檔末尾添加一行語句:su – mycount -c 「/home/sun/startXX.sh」

保存rc.local即可。

這個地方一定要注意 su – 這個是環境的變數也會做相應的轉換;如果環境變數沒有改變的話,我們用su 就可以了。

二、

在Linux中以普通用戶開機自動運行腳本程序

測試環境:CentOS6.5

管理員:root

普通用戶:test1

實現目標:在Linux啟動時,以普通用戶test1自動運行位於根目錄下的腳本程序test.py,該程序會在每次執行時自動向本地日誌文件追加一條記錄,源碼如下:

from datetime import datetime

now=datetime.now()

f=open(『test.log』,』a』)

f.write(『%s 『%now)

f.close()

Linux在啟動時,會自動執行/etc/rc.d目錄下的初始化程序,因此我們可以把啟動任務放到該目錄下,有兩種辦法:

方案一:

1、因為其中的rc.local是在完成所有初始化之後執行,因此我們可以把啟動腳本寫到裡面

2、用root賬號登陸Linux,vi /etc/rc.d/rc.local編輯文件,在最後加入兩行需要執行的腳本程序:

cd /home/test1 –該步不可少,否則會提示沒有許可權打開』test.log』文件

su test1 -c 「python /home/test1/test.py」 –把要執行的命令作為一個參數傳遞級su

方案二:

1、init.d目錄下都為可執行程序,他們其實是服務腳本,按照一定格式編寫,Linux 在啟動時會自動執行,類似Windows下的服務

2、用root帳號登錄,vi /etc/rc.d/init.d/mystart,追加如下內容:

復制代碼

#!/bin/bash

#chkconfig:2345 80 05 –指定在哪幾個級別執行,0一般指關機,

6指的是重啟,其他為正常啟動。80為啟動的優先順序,05為關閉的優先機

#description:mystart service

RETVAL=0

start(){ –啟動服務的入口函數

echo -n 「mystart serive …」

cd /home/test1

su test1 -c 「python /home/test1/test.py」

}

stop(){ –關閉服務的入口函數

echo 「mystart service is stoped…」

}

case $1 in –使用case,可以進行互動式操作

start)

start

;;

stop)

stop

;;

esac

exit $RETVAL

復制代碼

3、運行chmod +r /etc/rc.d/init.d/mystart,使之可直接執行

4、運行chkconfig –add mystart,把該服務添加到配置當中

5、運行chkconfig –list mystart,可以查看該服務進程的狀態

總結:

兩種方案的的核心都是切換用戶到test1,然後執行命令啟動Python程序,做成服務的好處是可以定義多個交互命令,比如:start,stop,restart,reset…,在服務運行的過程中還可以做相應操作。最開始的時候,我按照一般的思路寫了如下腳本,卻怎麼也執行不了:

su test1 –切換到test1用戶

cd /home/test1 –切換到根目錄

python test.py –執行python程序

exit –退出test1帳號

看起來好象一切都沒錯,但是發現只運行了第一行的命令,後面的都沒有運行,直到退出test1用戶後才發現好象執行完畢。分析原因,是因為Linux啟動的時候是在root帳號下,執行su test1等於打開了一個新的shell腳本,因此下面的代碼都在等著新的Shell腳本結束才能運行,就象在主程序里調用了一個子程序,而子程序是個死循環,一下出來來結果下面的要等死了。知道了發生的原因,那麼解決的辦法就相對簡單了,就是在執行上述腳本程序時,不要離開本身的Shell。我們可以把執行命令做為su的一個參數傳遞進去,因為沒有涉及到打開新的Shell,因此可以正常執行你期望的腳本程序,順利實現開機自動啟動指定的腳本程序。

執行方案中重要的一個命令是:

[root@localhost ~]# whoami

root

[root@localhost ~]# su – keysystem -c 「whoami」

keysystem

[root@localhost ~]#

以keysystem用戶執行whoami的命令:

[root@localhost ~]# su – keysystem -c 「whoami」

文章知識點與官方知識檔案匹配
CS入門技能樹Linux入門初識Linux
23840 人正在系統學習中
打開CSDN,閱讀體驗更佳

Linux中沒有rc.local文件的完美解決方法
主要介紹了Linux中沒有rc.local文件的解決方法,本文給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
最新發布 linux 開機自啟用非root啟動
就會用djq用戶執行mkdir -p /home/djq/222命令。linux 開機自啟用非root啟動。
繼續訪問
linux開機自動執行命令或自動啟動程序(rc.local)
linux開機的最後會執行/etc/rc.local,因此可以在此腳本裡面添加shell命令自動執行或者自動啟動某個進程。 比如 自動輸出信息: #!/bin/sh -e # # rc.local # # This script is executed at the end of each multiuser runlevel. # Make sure that the script will "exit 0" on success or any other # value on error. # # In
繼續訪問

跳過網路啟動 linux,Linux啟動時如何跳過fsck
在Linux里,如果一個文件系統被mount過一定次數後,或者距離上次fsck超過一定天數,當系統重起時就會自動fsck。根據文件系統的大小,fsck可能需要幾分鍾甚至幾個小時。隔一段時間作一次fsck是很有必要的,但是如果你不想花費時間fsck,你也可以用如下幾種方法跳過fsck:1. 修改/etc/fstab在/etc/fstab里, 最後一列是系統啟動時fsck的順序。 文件系統 / 應該設...
繼續訪問
linux 查看root 進程,Linux查看非root運行的進程
Linux查看非root運行的進程youhaidong@youhaidong-ThinkPad-Edge-E545:~$ ps -U root -u root -NPID TTY TIME CMD663 ? 00:00:00 dbus-daemon713 ? 00:00:00 rsyslogd730 ? 00:00:00 avahi-da...
繼續訪問
linux上使用非root賬戶啟動運行java程序
事情是這樣的、、、、、、、 公司的app後台程序是java的,在linux上運行時要求必須使用非root賬戶,例如使用app用戶啟動java程序。這次運維有事請假了,所以這個小任務就交給我了,多大的事情啊,這還不是分分鍾搞定的啊。 好了一步步的開始。 第一步:創建mobile賬戶和組 groupadd app useradd -d /usr/app -g app app 第二步:搭建...
繼續訪問
linux用其他賬號停進程,Linux系統上對其他用戶隱藏進程的簡單方法
我使用的是多用戶系統,大部分的用戶通過ssh客戶端訪問他們的資源。我如何(怎麼樣)避免泄露進程信息給他們?如何(怎麼樣)在Debian/Ubuntu/RHEL/CentOS linux伺服器器上阻止/避免他們看到不屬於他們的進程?對linux上的其他用戶隱藏進程的方法解決方法/方案:如果你使用的linux kernel(內核)是3.2以上的版本(或者使用的RHEL/CentOS是6.5以上的版本)...
繼續訪問
轉:linux開機自動運行
實現目標:在Linux啟動時,自動運行位於普通用戶test1根目錄下的腳本程序test.py,該程序會在每次執行時自動向本地日誌文件追加一條記錄,源碼如下: from datetime import datetime now=datetime.now() f=open('test.log','a') f.write('%s '%now...
繼續訪問
跳過開機向導
跳過開機向導
繼續訪問
linux系統rc.local錯誤,Linux開機啟動文件rc.local無法執行的解決方法
眾所周知,rc.local是Linux系統中的一個重要的開機啟動文件,每次開機都要執行這個文件。但最近很多用戶表示系統無法執行這個問題件,從而導致了一系列的問題出現,這是怎麼回事呢?如何解決這個問題呢?下面,跟隨小編一起來看看Linux開機啟動文件rc.local無法執行的解決方法。Linux系統在Linux系統中,有一個重要的開機自動啟動腳本文件:/etc/rc.local---》/etc/rc...
繼續訪問
rc.local出錯影響ubuntu正常啟動,跳過執行rc.local
通過進入單用戶模式,跳過rc.local
繼續訪問
Linux開機啟動,設置rc.local失效解決方案
在/etc/rc.local文件夾下,添加要執行的命令,如/sbin/ifconfig docker0 mtu 1454 注意這里要使用絕對路徑/sbin/ifconfig 如果開機發現執行失敗,則需要在上一行添加sleep 10 由於ifconfig服務不一定在rc.local之前啟動,所以讓系統等待十秒hours在執行sleep 10 /sbin/ifconfig docker0 mtu 14
繼續訪問
Linux系統跳過密碼登錄
一、引導系統 RHEL7的標准引導系統是GRUB2,RHEL6默認使用GRUB1,這里主要講GRUB2。 在Linux系統開機選擇內核時,按下e進入內核引導參數的編輯菜單,找到以linux16開頭的一行,在行末添加更多的命令。例如,在行末尾添加system.unit=emergency.target,然後按Ctrl+X,則系統將會以緊急目標模式啟動。 如果在系統引導到GUI環境中出現問題,可以在內核命令行末尾加入system.unit=multi-user.target,若引導成功,則會登錄到命令行模
繼續訪問
rc.local使用非root用戶
su -aaa-c "/data/tomcat/bin/startup.sh"
繼續訪問
Linux設置非root用戶啟動程序
Linux設置非root用戶啟動程序
繼續訪問
開機自啟動非root用戶的服務
設置非root用戶的服務開機自啟動 比如:chkconfig mysql on 是無效的 可以這樣設置: 在root用戶下 vi /etc/rc.local 或者 vi /etc/rc.d/rc.local 在最後一行加上 su - mysqladmin -c "/usr/local/mysql/startMysql.sh" 其中mysqladmin是管理mysql的用戶, "/usr/loc...
繼續訪問
linux非root用戶打開80,Linux非root用戶如何使用80埠啟動程序
默認情況下Linux的1024以下埠是只有root用戶才有許可權佔用,我們的tomcat,apache,nginx等等程序如果想要用普通用戶來佔用80埠的話就會拋出java.net.BindException: Permission denied:80的異常。bind時perror提示錯誤信息:permission denied解決辦法有兩種:1.使用非80埠啟動程序,然後再用iptables...
繼續訪問
Linux在任意目錄下執行指定的腳本
前言 我有個腳本,我只能在腳本所在的文件夾下面運行,這樣的話很不方便,如果我去了別的目錄下面的話,我就無法運行這個腳本了… 解決 在profile中設置PATH, 假如我想給 xcall 腳本設置能讓在任意的目錄下去運行, 此時xcall在/root/soft/script 目錄下. 編輯環境變數 [root@zjj101 etc]# cd /etc [root@zjj101 etc]# vim profile # 上面省略........ export HIVE_HOME=/root/soft/hive
繼續訪問
Linux系統啟動過程分析
經過對Linux系統有了一定了解和熟悉後,想對其更深層次的東西做進一步探究。這當中就包括系統的啟動流程、文件系統的組成結構、基於動態庫和靜態庫的程序在執行時的異同、協議棧的架構和原理、驅動程序的機制等等。 本人在綜合了現有網上大家智慧的基礎上,結合對2.6.32的內核代碼的研讀,基於CentOS 6.0系統對Linux的啟動流程做了些分析。由於才疏學淺,知...
繼續訪問
linux跳過開機啟動項

㈣ 如何在Linux中設置開機自動啟動oracle

對於LINUX 操作系統 有很多技術知識是我們需要學習的。這里我就給大家介紹Linux中設置oracle開機自動啟動的 方法 。一起來看看吧。

Linux中設置oracle開機自動啟動的方法

在terminal中切換到root用戶

查看/etc/oratab文件的內容,其內容如下

[root@golonglee ~]# cat /etc/oratab | grep -v ^$

#

# This file is used by ORACLE utilities. It is created by root.sh

# and updated by the Database Configuration Assistant when creating

# a database.

# A colon, ':', is used as the field terminator. A new line terminates

# the entry. Lines beginning with a pound sign, '#', are comments.

#

# Entries are of the form:

# $ORACLE_SID:$ORACLE_HOME::

#

# The first and second fields are the system identifier and home

# directory of the database respectively. The third filed indicates

# to the dbstart utility that the database should , "Y", or should not,

# "N", be brought up at system boot time.

#

# Multiple entries with the same $ORACLE_SID are not allowed.

#

#

oel63:/home/oracle/app/oracle/proct/11.2.0/dbhome_1:N

使用命令vi /etc/oratab編輯文件/etc/oratab,在最後添加如下內容

##### what I have written is as following

oel63:/home/oracle/app/oracle/proct/11.2.0/dbhome_1:Y

#####Finished wrote in 2015-12-24

說明:/home/oracle/app/oracle/proct/11.2.0/dbhome_1為oracle的安裝目錄,要根據實際情況進行修改。

(注意:圖中我用紅色標記的N要改成Y)

找到最後的內容

oel63:/home/oracle/app/oracle/proct/11.2.0/dbhome_1:N

復制該行oel63:/home/oracle/app/oracle/proct/11.2.0/dbhome_1:N並注釋掉

粘貼該行,並將該行

oel63:/home/oracle/app/oracle/proct/11.2.0/dbhome_1:N最後的N

改為Y

最後按2次ESC鍵,並輸入:wq並按下enter保存,退出

使用命令vi /etc/rc.d/rc.local編輯rc.local文件,添加如下內容

##### what I have written is as following

su oracle -lc "/home/oracle/app/oracle/proct/11.2.0/dbhome_1/bin/lsnrctl start"

su oracle -lc /home/oracle/app/oracle/proct/11.2.0/dbhome_1/bin/dbstart

#####Finished wrote in 2015-12-24

說明:因為第一行命令中有空格所以用雙引號(英文的雙引號)

/home/oracle/app/oracle/proct/11.2.0/dbhome_1為oracle的安裝目錄,要根據實際情況進行修改。

最後按2次ESC鍵,並輸入:wq並按下enter保存,退出,重啟機器,驗證成功。

是不是很簡單呢~快跟著我一起學習吧!!!如果覺得這篇 文章 不錯的話就給我點一個贊吧。

㈤ Linux設置tomcat開機自動啟動

cd /etc/init.d 進入 /etc/init.d 目錄,執行命令 vi tomcat 新建腳本

添加內容:

按下esc輸入 :wq! 保存並退出

執行以下命令,啟動、停止和重啟tomcat

service tomcat start

service tomcat stop

service tomcat restart

為 tomcat 分配可執行許可權: chmod +x tomcat 或者 chmod 755 tomcat

添加tomcat為系統服務 : chkconfig --add tomcat

最後執行命令 chkconfig --list 查看是否添加成功
[圖片上傳失敗...(image-a6b99d-1655085135827)]

Shell分支語句case···esac語法

說明:case後為取值,值後為關鍵字 in,接下來是匹配的各種模式,每一模式最後必須以右括弧結束。

值可以為變數或常數。

模式支持正則表達式,可以用以下字元:

匹配發現取值符合某一模式後,其間所有命令開始執行直至 ;;。

;; 與其他語言中的 break 類似,意思是不執行接下來的語句而是跳到整個 case 語句的最後。
)與default相似,如果上面沒有匹配到的模式,則執行 )里的內容。

㈥ linux開機自啟動命令

用戶想要在linux開機的時候自啟動相關的程序。那我們要怎麼設置呢?下面由我為大家整理了linux下開機自啟動命令的相關知識,希望對大家有所幫助!

linux下開機自啟動命令

1.開機啟動時自動運行程序

Linux載入後, 它將初始化硬體和設備驅動, 然後運行第一個進程init。init根據配置文件繼續引導過程,啟動其它進程。通常情況下,修改放置在 /etc/rc或 /etc/rc.d 或 /etc/rc?.d 目錄下的腳本文件,可以使init自動啟動其它程序。

例如:編輯 /etc/rc.d/rc.local 文件,在文件最末加上一行"xinit"或"startx",可以在開機啟動後直接進入X-Window。

擴展:其他情況下linux自啟動程序命令

2.登錄時自動運行程序

用戶登錄時,bash首先自動執行系統管理員建立的全局登錄script :/etc/profile。然後bash在用戶起始目錄下按順序查找三個特殊文件中的一個:/.bash_profile、/.bash_login、 /.profile,但只執行最先找到的一個。

因此,只需根據實際需要在上述文件中加入命令就可以實現用戶登錄時自動運行某些程序(類似於DOS下的Autoexec.bat)。

3.退出登錄時自動運行程序

退出登錄時,bash自動執行個人的退出登錄腳本/.bash_logout。例如,在/.bash_logout中加入命令"tar -cvzf c.source.tgz *.c",則在每次退出登錄時自動執行 "tar" 命令備份 *.c 文件。

4.定期自動運行程序

linux有一個稱為crond的守護程序,主要功能是周期性地檢查 /var/spool/cron目錄下的一組命令文件的內容,並在設定的時間執行這些文件中的命令。用戶可以通過crontab 命令來建立、修改、刪除這些命令文件。

例如,建立文件crondFile,內容為"00 9 23 Jan * HappyBirthday",運行"crontab cronFile"命令後,每當元月23日上午9:00系統自動執行"HappyBirthday"的程序("*"表示不管當天是星期幾)。 (/etc/crontab中配置命令即可)也可以

5.定時自動運行程序一次

定時執行命令at 與crond 類似(但它只執行一次):命令在給定的時間執行,但不自動重復。at命令的一般格式為:at [ -f file ] time ,在指定的時間執行file文件中所給出的所有命令。也可直接從鍵盤輸入命令:

6.創建開機自啟動腳本

1) 將你的啟動腳本復制到 /etc/init.d目錄下

以下假設你的腳本文件名為 test。

2) 設置腳本文件的許可權

$ sudo chmod 755 /etc/init.d/test

3) 執行如下命令將腳本放到啟動腳本中去:

$ cd /etc/init.d

$ sudo update-rc.d test defaults 95

註:其中數字95是腳本啟動的順序號,按照自己的需要相應修改即可。在你有多個啟動腳本,而它們之間又有先後啟動的依賴關系時你就知道這個數字的具體作用了。該命令的輸出信息參考如下:

update-rc.d: warning: /etc/init.d/test missing LSB informationupdate-rc.d: see

卸載啟動腳本的方法:

$ cd /etc/init.d

$ sudo update-rc.d -f test remove

命令輸出的信息參考如下:

Removing any system startup links for /etc/init.d/test … /etc/rc0.d/K95test /etc/rc1.d/K95test /etc/rc2.d/S95test /etc/rc3.d/S95test /etc/rc4.d/S95test /etc/rc5.d/S95test /etc/rc6.d/K95test

㈦ 在LINUX下如何設置網卡開機自啟動

方法一 vi /etc/sysconfig/network-scripts/ifcfg-eth0x0dx0a修改: ONBOOT=yesx0dx0a如果沒有就把這行加上x0dx0a方法二 在/etc/rc.d/rc.local 裡面加入x0dx0aifup eth0 或 ifconfig eth0 up

㈧ 設置Linux開機自啟動服務的常見方法有哪些

到底哪些服務適合開機自啟動?是很多Linux運維在工作中會遇到的問題。其實,只要不影響系統及服務的運行,開多開少也沒關系。Linux運維人員要明確每項服務的作用,不用的就不安裝,默認安裝時則不開機自啟動。設置開機自啟動服務的常見方法有哪些?

1)執行命令,然後手動選擇處理的方法

方法1:執行ntsysv命令,然後在彈出窗口進行設置。

方法2:執行setup命令→system service,然後在彈出窗口中進行設置。

2)通過一行命令或She11腳本設置

在快速設置前,先查看默認情況下Linux系統開啟的服務有哪些。如果工作在文本模式3級別,那就只需要查找3級別上開啟的服務即可。了解了系統在3級別上開啟的服務後,就可以通過命令快速實現配置了。以下便是幾種通過命令或腳本設置開機自啟動的方法。

1:先全關閉,再開啟需要保留的。

2:一條命令搞定,Shell循環實現。默認情況下需要保留的服務都已開啟,因此,關閉3級別文本模式下已開啟但又不需要的服務就好了。

3:不要Shell循環語句也一條命令搞定。默認情況下要保留的服務都已開啟,因此,關閉3級別文本模式下已開啟但又不需要的服務就好了,不用循環結構而是利用命令拼出所有要處理的命令字元串,通過bash將其當作命令執行。

那麼到底將哪些服務作為開機自啟動服務合適?但作為一名優秀的Linux系統管理員,應該遵守最小化原則,盡量不安裝不使用的軟體、不開啟不需要的服務;這樣系統的性能和安全性才是最好的。

㈨ 設置linux設置開機自啟動應用程序

1.新建文件:

2.新建文件:

輸入以下內容:

3.加許可權

4.允許開機自啟

5.手動啟動服務

6.檢查服務狀態

7.查看日誌

㈩ linux設開機自啟動服務

linux設開機自啟動服務
1.
把啟動命令放到/etc/rc.local中,
編輯:/etc/rc.local文件
如下:可以添加直接服務啟動,也可以添加SHELL腳本
bash
/etc/init.d/webstart
start
bash
/etc/init.d/redis
以上運行的程序都是以root許可權來執行的。如果某些程序要以某個用戶的身份去運行,那麼可以這樣:
su
show
-c
/home/show/server/tomcat/bin/startup.sh
2.
chkconfig命令
[root@localhost
~]#
chkconfig
--list
顯示開機可以自動啟動的服務
[root@localhost
~]#
chkconfig
--add
***
添加開機自動啟動***服務
[root@localhost
~]#
chkconfig
--del
***
刪除開機自動啟動***服務

熱點內容
手機配置高玩不了單機游戲怎麼辦 發布:2025-07-26 15:53:05 瀏覽:258
手機設置開機手勢密碼後如何解鎖 發布:2025-07-26 15:39:14 瀏覽:39
迭代優化演算法 發布:2025-07-26 15:25:45 瀏覽:947
東風本田買哪個配置好 發布:2025-07-26 15:10:01 瀏覽:763
plsql游標 發布:2025-07-26 15:09:51 瀏覽:126
android轉字元串數組 發布:2025-07-26 15:08:05 瀏覽:267
實時產量編程 發布:2025-07-26 15:03:33 瀏覽:112
c語言漢諾塔演算法 發布:2025-07-26 14:56:13 瀏覽:937
androidqq空間分享 發布:2025-07-26 14:27:27 瀏覽:724
為什麼招生辦公室登錄密碼錯誤 發布:2025-07-26 14:27:13 瀏覽:665