實現ARM-linux自動登入

來源:互聯網
上載者:User

實現ARM-linux自動登入 一、前言在使用linux系統嵌入式開發時,往往需要裝置自動啟動,而繞過linux的登入系統。有很多方法,在這裡說我自己做的方法,直接修改登入的程式原始碼:二、更新mingetty1.到網站http://www.filewatcher.com/m/mingetty-1.07.tar.gz.13435-0.html下載mingetty-1.07.tar.gz2.解壓:tar -zxvf mingetty-1.07.tar.gz 。進入到解壓後的目錄3.修改mingetty.c中的代碼更改mingetty的代碼需要進行兩步操作。第352行的char *logname, *s;更改為char *logname = "root", *s;把第409-415行注釋/* if (autologin) {  do_prompt (0);  printf ("login: %s (automatic login)\n", autologin);  logname = autologin; } else  while ((logname = get_logname ()) == 0)   /* do nothing */ /*; */(4)修改makefileCC=arm-none-linux-gnueabi-gcc(5)編譯產生mingetty[root@localhost mingetty-1.07]# make(6)更新mingetty將產生的mingetty程式拷貝到根檔案系統的/sbin目錄下mingetty的源碼更改就完成了。 三、更新login(1) 到網站http://www.filewatcher.com/_/?q=util-linux-2.13-pre7.tar.bz2下載原始碼(2)解壓源碼包tar -xf util-linux-2.13-pre7.tar.bz2解壓後的檔案夾為util-linux-2.13-pre7,進入到解壓縮的檔案夾內其中login的源碼的目錄為util-linux-2.13-pre7/login-utilslogin-utils檔案中不存在make檔案,因此,需要自己編寫編譯命令來產生login。(3)修改login.c中的代碼把344行的passwd_req = 1;更改為passwd_req = 0;在檔案中添加locale.h標頭檔#include <locale.h>(4)編譯產生login[root@localhost login-utils]# arm-none-linux-gnueabi-gcc -o login login.c ../lib/setproctitle.c checktty.c -Wall -lcrypt -I ../include/(6)更新login將產生的login 程式拷貝到根檔案系統的/bin目錄下,結束。 四、修改inittab檔案將跟檔案系統/etc/inittab檔案中的最後的登入語句#S2:2345:respawn:/sbin/getty 115200 ttyS2改為:S2:2345:respawn:/sbin/mingetty ttyS2將修改後的根檔案系統重新下載到系統中,系統啟動時就會直接登入。不需要輸入使用者名稱及密碼了。 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.