Nand Flash本地加载根文件系统后telnet不能登录
问题:目标板中的bootstrap、U-Boot、根文件系统和内核都升级到新的版本中,并且已经通过Nand Flash本地成功加载根文件系统。 但是,在主机的terminal窗口中,不能通过telnet方式登录目标板,而目标板中已经把telnet服务启动了。 dingq@dingq-u1204:~$ telnet 192.168.37.244 Trying 192.168.37.244... Connected to 192.168.37.244. Escape character is '^]'. Connection closed by foreign host. dingq@dingq-u1204:~$提示无法通过telnet连接到目标板。 解决办法:
1. google这段时间老是抽风,一天当中没有多少时间能用的。没办法,只好放狗去搜了。 首先有高手说,使用命令 telnet localhost 或 telnet 127.0.0.1来验证一下telnet服务安装是否正确,如果本机上telnet自己能正常连接,说明telnet服务的安装正确。 2. 在不能telnet登录的目标板上使用命令 telnet 127.0.0.1出现如下提示: / # telnet 127.0.0.1 telnet: cannot connect to remote host (127.0.0.1): Connection refused / #3. 找一台使用原来内核的目标板,通过Nand Flash本地加载根文件系统进入shell界面后,使用命令 telnet 127.0.0.1可以成功跳出登录界面,登录成功后使用exit命令退回到console界面。 4. 两相对比,说明烧写新的内核的目标板上的telnetd工作不正常。 《构建嵌入式linux系统》一书中,设置网络服务->使用Telnet进行网络登录->常犯的错误一节中提到,如果已经执行了telnet监控程序并且可以网络运行正常(可以ping到其他主机),需要确认以下操作: ××××存在/dev/ptmx,而且ptmx是以主编号为5、次编号为2的字符设备;如果不是,使用命令 mknod /dev/ptmx c 5 2来建立它。 ××××内核已经启用对devpts虚拟文件系统的支持(也就是/proc/filesystems文件中存在devpts的项目);如果不是,需要启用CONFIG_UNIX98_PTYS这个内核构建选项; ××××存在/dev/pts目录,而且devpts虚拟文件系统被正确挂载(检查mount命令的执行结果);如果不是,使用如下命令来挂载它: mkdir /dev/pts && mount -t devpts none /dev/pts
5. 根据4中所述,检查/dev目录下的文件,发现没有ptmx文件,所以,在rcS启动脚本中加入下面一行
/bin/mknod /dev/ptmx c 5 2
再次重启目标板,使用命令telnet来登录自己就可以跳出登录界面了。
但是,还有问题。使用root登录时,用空输入作为密码来登录总是不能进入。 6. 到烧写原来内核的目标板中查了以下,发现/etc目录下有这么几个文件,passwd、shadow和group。 将这三个文件通过tftp上传到/tftpboot,然后再下载到新的目标板中的/etc目录,重启新目标板,能够成功使用telnet登录自己。 在开发主机的terminal窗口能成功登录进目标板。 至此,问题解决。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- 原创:新手布局福音!微信小程序使用flex的一些基础样式属性
- Oracle数据库一体机助力零售走向互联网零售新模式
- ruby-on-rails – 缓存表中的所有模型
- FusionCharts生成Flash图表常见问题FAQ
- xml – 如何在for-each xslt语句中选择父节点的每个子节点?
- Error: You need to install postgresql-server-dev-X.Y fo
- ruby-on-rails – Rails 3和Rspec:计数器缓存列在预期时更
- c# – 从供应商的Global.asax继承Global.asax时不会触发App
- JSONObject转换为java对象
- 解决HTC G1的键盘Y Z倒置和符号输入问题