如何在登錄界面前嵌入自己的程序.
本實例說明:當用戶在登錄系統界面出現之前,如何運行自己編寫的程序,以下是本人編寫的一個密碼小程序,僅作為驗證效果.
方法一
步驟1:編寫一個簡單的密碼程序.
內容如下:
#include
int main()
{
char ch[10];
char passwd[10]="lupa"; /*lupa為設置的正確密碼.*/
while(1){
printf("please enter password:");
scanf("%s",ch);
if(strcmp(ch,passwd)==0){
break;}
printf("password error!\n");
}
}
步驟2:編譯后,拷貝可執行程序test至/etc/rc.d/init.d/目錄下.
gcc test.c -o test
cp test /etc/rc.d/init.d
步驟3:進入/etc/rc.d/rc5.d/目錄中,并添加符號連接
cd /etc/rc.d/rc5.d
ln –s /etc/rc.d/init.d/test S99test
步驟4:重啟后,系統會出現”start test:”提示符,如圖1所示;然后輸入正確密碼后,才能出現登錄界面.
圖1
注:
以S開頭(Start開啟服務)再跟啟動順序數學(2位,00~99)再跟文件名
以K開頭(Kill終止服務)再跟終止順序數學(2位,00~99)再跟文件
方法二:
步驟1:用vim或gedit打開/etc/rc.d/rc.local腳本文件,在***一行輸入程序的路徑及可執行文件.如下圖2所示:
圖2
步驟2:reboot重啟系統.提示符為”please enter password:”,如圖3所示,然后輸入正確的密碼即可.
圖3
通過本實例可以讓讀者更加直觀的了解linux系統啟動服務的一個完整流程.
實例擴展:
(1) 寫入其他腳本文件中,再進行測試,查看結果.
(2) 如何實現登錄系統之后,自動運行程序的功能.(如,windows系統下自動運行QQ程序一樣)
【編輯推薦】