Linux自啟動
agetty
開啟 tty
埠,為登入名稱建立命令控制符,並引出
login
程式
如何使你的Linux系統省略輸入使用者名稱密碼
1、省略密碼驗證
很簡單,只需把/etc/passwd中的root:x:0:0:root:/root:/bin/bash,改為root::0:0:root:/root:/bin/bash,就可以了,就是去掉了裡面的x,這樣root使用者就不用密碼了。其他使用者也一樣。
2、省略輸入使用者名稱
(1)修改/etc/inittab
在inittab中,有如下配置
1:2345:respawn:/sbin/agetty tty1 9600
2:2345:respawn:/sbin/agetty tty2 9600
3:2345:respawn:/sbin/agetty tty3 9600
4:2345:respawn:/sbin/agetty tty4 9600
5:2345:respawn:/sbin/agetty tty5 9600
6:2345:respawn:/sbin/agetty tty6 9600
表示系統可以有六個控制檯,可以用ALT+(F1~F6)來切換。而/sbin/agetty就是一個登陸驗證程式,執行它,會提示使用者輸入使用者名稱和密碼,然後啟動一個指定的shell(在passwd檔案中指定的)。
所以,我們只需將其修改為不執行agettty,而是執行自己編寫的一個指令碼,就可以跳過使用者名稱和密碼的輸入。修改如下:
1:2345:respawn:/root/logintest tty1 9600
這裡我在/root/下放了一個測試指令碼,這樣系統啟動時就會執行那個指令碼,指令碼內容:
#!/bin/sh
/bin/login -f root
指令碼其實就是執行了一個root使用者的登陸而已,如果有其他要求,也可以新增到指令碼中。
/****************************************************************************/
本篇是系列文章的一部分。講的是讓linux不經過認證,直接登入。
[@[email protected]]請參見其它系列文章。
由於linux發行版本的不同,可能會有一些不同,請讀者細心。
名詞:login-----linux用於認證使用者的密碼是否正確的程式。
agetty----linux用於啟動tty終端的程式。
tty終端---這個概念很麻煩,linux啟動後,只是記憶體中程式,如果沒有stdin,stdout,就沒
法和使用者互動。
與自動登入最相關的兩個程式是agetty,login。
系統核心載入後,第一個執行的是init程式,init執行系統指令碼,然後呼叫agetty,agetty呼叫loing。
執行到agetty時,它顯示login name: 等你輸入使用者名稱,然後把它作為引數傳給login。
login顯示password:接收你的密碼,結合使用者名稱去驗證使用者的合法性。
最後啟用bash,你就會發現自己在提示符$下了。
由於agetty和login程式的作者並沒有把它作成可配置的。所以我們必需要修改原始碼才能實現自動登入。
它們分別是agetty.c login.c
我們修改之後把它用gcc編譯一下,代替原來的程式就好了。
找到agetty.c的呼叫get_logname函式的地方,把它註釋掉。這樣就不會去讀使用者名稱了。
login.c很複雜,它是讓別的程式去取得密碼並驗證。我沒時間研究它,所以呢,直接寫一個空的login程式好了,其中,我們自己設定使用者的uid sid 環境變數等等。再在login.c的最後呼叫一個bash就好了。
重啟動一個系統吧!~:)
提醒:你的機器上最好有兩個linux系統,當你修改其中一個不能進入系統的話,可以另一個linux載入它的分割槽,並把程式改回去。
累了,不想給的太細。給需要的人一個方向好了。
/**********************************************************************************/相關推薦
Linux自啟動服務優先級/順序設置
linux 自啟動 今天有一臺服務器沒有正常啟動,原因是有一個服務沒有啟動起來,因為A服務需要B服務啟動之後才能正常啟動,所以需要調整A,B服務的啟動順序。在網上查找了一些資料,總結了一下,以備以後需要。 要知道服務的啟動順序,就需要先知道服務如何啟動的。linux有7個運行級別,用戶可選擇不同
linux自啟動tomcat
rip sys 保存 service AS urn java kcon home 第一種方式 1.修改腳本文件rc.local:vim /etc/rc.d/rc.local 這個腳本是使用者自定的開機啟動程序,可以在裏面添加想在系統啟動之後執行的腳本或者腳本執行命令 2
Linux – 自啟動程式指令碼
# Monitor Collector is running # 此指令碼是檢測另外一個程式是否正在執行,如果沒有執行則啟動該程式 Path='PortableCollector' while test "1"="1";do Result=`pgrep
oracle在linux自啟動和停止指令碼
****************************************************************** 一、目錄:/etc/init.d ****************************************************************** 1、d
Linux 自啟動執行指令碼
#!/bin/bash #chkconfig: 2340 20 80 #description:sgapp manage util #processname:sgapp APP_HOME=/opt/sgUtils/sgzt case $1 in start) $APP_HO
Linux自啟動
agetty開啟 tty 埠,為登入名稱建立命令控制符,並引出 login 程式 如何使你的Linux系統省略輸入使用者名稱密碼 1、省略密碼驗證 很簡單,只需把/etc/passwd中的root:x:0:0:root:/root:/bin/bash,改為root::0:0:root:/root:/b
如何建立一個最簡單的Linux自啟動服務?
最雞蛋的方法是把命令寫到/etc/rc.d/rc.local或者/etc/rc.local裡,這樣雖然能夠實現隨機執行,但是並不夠靈活。不能像mysql,apache等服務一樣能夠使用service命令或者呼叫init.d下的指令碼啟動、關閉或者重啟程序。 $ ser
linux 自啟動 | 三種方式自啟動
inux 定時啟動 啟動關閉 number lis 簡單 ons lai bsp linux 實現自啟動有多種方式,通過Linux 底層啟動原理介紹,便可以理解以下幾種方式 這裏簡單介紹一下這幾種方式 一、自定義開機程序 /etc/rc.d/rc.local
Linux下添加自定義腳本到開機自啟動,標準rpm,舉例:設置Apache自啟動
不同 config desc 完全 def chkconfig mod etc chm 寫一個腳本,名字為:autostart.sh,放在/etc/init.d/目錄下,賦予權限chmod +x /etc/init.d/autostart.sh 代碼如下 #!/bin/sh
Linux:Tomcat配置及設置開機自啟動
down %20 fig 選項 輸入 html download c-c erl 1、配置完成後 2、執行:source /etc/profile 3、啟動Tomcat服務器,tomcat對應的bin下面執行:./startup.sh(啟動/關閉命令:http://www.
linux 重要的開機自啟動服務
自啟 信息 lin cpu使用率 網絡 sshd work 使用率 sysstat 1.sshd 遠程連接 2.rsyslog/syslog 日誌相關軟件,這是操作系統提供的一種機制,系統的守護程序通常會使用rsyslog程序將各種信息寫道各個系統的日誌文件中 3.
linux開機自啟動
manage lin itl dep 3.0 mbed 自動化 amp 查看 做程序自啟動可以把啟動腳本寫成開機啟動腳本或者做成服務,這邊采用寫入開機啟動腳本 vi /etc/rc.local 加入啟動腳本 zk加入開機自啟動 /opt/zookeeper-3.4.6/bi
linux awk命令批量關閉系統開機自啟動服務
awk命令 批量關閉系統開機自啟動服務安裝好一個新的系統之後,為了簡化系統需要關閉一些開機自啟動的服務。蝸牛使用了grep和awk的基礎命令進行操作。作為服務器使用,新系統中需要啟動的服務大概就以下幾個crond network sshd rsyslog 查看運行級別3開機自啟動的服務chkconfig --
Linux將服務設置為開機自啟動的方法小結
linux 開機 自啟動 Linux設置為開機自啟動的幾種方法小結 和Windows一樣,Linux也可以將一些服務設置為開機自啟動,這樣可以避免每次開機都會去打開某一個服帶來的麻煩!Linux開機將服務設置為開機自啟動的方法大概有一下幾種:一、ntsysv圖形界面設置 ntsysv
linux應用自啟動配置
tar white username 目錄 col tran letter pen 需要 Linux在啟動時,會自動執行/etc/rc.d目錄下的初始化程序,因此我們可以把啟動任務放到該目錄下: 1、因為其中的rc.local是在完成所有初始化之後執行,因此可以把啟動腳本寫
postgresql在linux下的的開機自啟動服務與環境變量的配置
gpo 屬性 腳本 命令 strong 修改 post 方式 ebo 設置PostgreSQL開機自啟動 PostgreSQL的開機自啟動腳本位於PostgreSQL源碼目錄的contrib/start-scripts路徑下 linux文件即為linux系統上的啟動腳本
Linux設置nodejs開機自啟動
lan download sta 壓縮 無奈 端口 img post 程序 系統:Centos7 工具:Xshell、Xftp 由於客戶服務器從windows系統切換到了linux系統,所以原先部署在windows上的node服務端需要遷移到linux服務器上。 1、nod
如何在Linux上實現:Eureka服務的開機自啟動?
參數 src class blog nohup echo 創建文件 too hup 【問題描述】 由於最近在使用Spring Eureka的註冊中心服務,而辦公室每天晚上要斷電,每天早上過來後需要手工啟動Eureka服務非常麻煩。 需要實現:開機自動該服務的功能。
linux下設置tomcat自啟動
image conf 如果 ces src ima init tom spa 怎麽設置linux安裝了tomcat之後讓tomcat開機就啟動呢? 下來我們來簡單的說一下: 第一步@1: 首先我們找到tomcat的安裝的位置,找到之後我們cd到tomcat的bin目錄下面;
Linux安裝後,需保留哪些自啟動服務?
Linux運維 Linux學習 Linux入門 Linux基礎 Linux雲計算 和Windows系統一樣,Linux服務器運行過程中也會一些沒用的軟件服務默認運行,這些占用了很多系統資源,也會有安全隱患,所以一般是建議關閉的。那麽,工作中Linux主機到底需要有哪些開機自啟動服務呢?