最近在学习linux,使用buildroot进行根文件系统的构建,采用nfs网络挂载的方式进行调试。一开始还好好的,手动输入用户名root和password都可以正常的登录,突然不知道是我哪里配置的问题,输入password就一直提示Login incorrect,怎么整都没用。然后就研究了一下如何跳过输入用户名和密码进行自动登录的方法。
- sudo vi /etc/passwd 找到 root: x:0:0:root:/root:/bin/sh
删除第2列的x,这里的第2列指的是:分割的第2列,字符串中:将字符分割成一列列。
删除后变成root::0:0:root:/root:/bin/sh 然后保存文件退出 - sudo vi /etc/shadow 找到 root:(一大串字符 这些全删除):::::::
删除后保存退出 - sudo vi /etc/inittab 找到
#Put a getty on the serial port
console::respawn:/sbin/getty -L console 0 vt100 # GENERIC_SERIAL
由于我在buildroot配置时开启了Run a getty after boot选项,由于进行自动登录了所以这里我把它注释掉不要,也就是在console前加上一个#。
然后在后面添加console::respawn:-/bin/sh