busybox配置telnetd

busybox配置telnetd

 busybox配置telnetd的问题 进入busybox源码文件夹,选择telnet,telnetd.后确保在ramdisk的sbin文件夹下存在inetd和in.telnetd或telned。在ramdisk中的mnt/etc文件夹中,确保存在文件fstab,service,inetd.conf,passwd文件确保fstab文件里存在none /dev/pts devpts mode=0622 0 0这一行确保services文件里存在 telnet 23/tcp 这一行确保inetd.conf中存在 telnet stream tcp nowait root /sbin/in.telnetd in.telnetd 确保passwd文件里存在root::0:0:root:/:/bin/sh,表示没有password的root帐号在kernal的代码中,通过makemenuconfig,在Character devices中选中Unix98 PTY support 在File systems中选中/dev/pts file system for Unix98 PTYs 退出后make zImage就可以在ramdisk的启动文件mnt/etc/init.d/rcS中,在mount –a的后面下一行添�inetd,使系统启动的时候就载入telnetd服新建inetd.conf文件,内容例如以下: # telnetstream tcp nowait root /usr/sbin/telnetd 执行inetd inetd.conf 在网上google了一天,终于能够确定要使用telnetd,内核必须配置下面项: dev/pts file system for Unix98 PTYs Unix98 PTY support (256) Maximum number of Unix98 PTYs in use (0-2048) 可我使用的2.6.14.1的内核,make menuconfig根本找不到这些配置项!那么内核是否支持这些选项呢?cat /proc/filesystems发现已支持devpts文件系统,那么uinx98 pty呢?查看内核的Kconfig和Makefile文件,发现仅仅要CONFIG_UNIX98_PTYS=y就会编译支持devpts文件系统和unix98的功能。而选择了嵌入式CPU内核会默认CONFIG_UNIX98_PTYS=y。所以我的内核已经支持telnet。 fstab文件里也载入了devpts文件系统: devpts /dev/pts devpts defaults 00 inittab文件里也指明了telnet的动作: tty0::askfirst:-/bin/sh 为什么还不行呢?困惑!后来细致想想,应该是设备文件节点的问题。我在开发板上移植2.6内核和驱动时一直没有使用devfs。由于devfs尽管方便,但同一时候也阻止了对设备文件节点的了解,且2.6内核已放弃了devfs。那么使用telnet应该创建那些文件节点呢?devpts会在/dev/pts下自己主动创建节点,还有什么呢?google了一会没有答案。后来忽然想起Kconfig文件里好象些说明,再去看一看,原来是这样: A pseudo terminal (PTY) is a software device consisting of two halves: a master and a slave. The slave device behaves identical to a physical terminal; the master device is used by a process to read data from and write data to the slave, thereby emulating a terminal. Typical programs for the master side are telnet servers and xterms. Linux has traditionally used the BSD-like names /dev/ptyxx for masters and /dev/ttyxx for slaves of pseudo terminals. This scheme has a number of problems. The GNU C library glibc 2.1 and later, however, supports the Unix98 naming standard: in order to acquire a pseudo terminal, a process opens /dev/ptmx; the number of the pseudo terminal is then made available to the process and the pseudo terminal slave can be accessed as /dev/pts/. What was traditionally /dev/ttyp2 will then be /dev/pts/2, for example. 是由于缺少ptmx设备文件!查看Documentation/devices.txt文件,好了。 mknod -m 666 ptmx c 5 2 再试试,OK能够telnet开发板了!我是直接使用的busybox的telnetd,busybox支持用inetd管理telnetd,有兴趣的朋友能够试

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/119127.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • java IO流详解

    java IO流详解

    2021年6月13日
  • java编写九九乘法表「建议收藏」

    java编写九九乘法表「建议收藏」案例:java编写九九乘法表,源码如下:packagestart;publicclassstart2{ publicstaticvoidmain(String[]args){ inti,j; for(i=1;i<10;i++){ for(j=1;j<=i;j++){ System.out.print(j+”*”+i+”=”+i*j+”\t”); } System.out.println(); } }}运行结果如下:

    2022年7月15日
  • Java打印九九乘法表

    Java打印九九乘法表1.使用双重for循环打印九九乘法表Java源代码如下:for(inti=0;i<=9;i++){for(intj=1;j<=i;j++){System.out.print(i+”*”+j+”=”+i*j+””);}System.out.println();}打印结果如图:2.使用双重for循环打印九九乘法表,跳过第五行Java源代码如下:for(inti=0;i<=9;…

    2022年7月25日
  • Linux| |对于UDP的学习

    Linux| |对于UDP的学习

    2022年2月12日
  • [Python3]Numpy数组转置的三种方法T、transpose、swapaxes「建议收藏」

    [Python3]Numpy数组转置的三种方法T、transpose、swapaxes「建议收藏」天下难事,必作于易;天下大事,必作于细——老子Numpy是高性能科学计算和数据分析的基础包,里面包含了许多对数组进行快速运算的标准数学函数,掌握这些方法,能摆脱数据处理时的循环。1.首先数组转置(T)创建二维数组data如下:进行矩阵运算时,经常要用数组转置,比如计算矩阵内积X^TX.这时就需要利用数组转置,如下:2.轴对换之transpose对于高维数组,可以使用轴对换来对多…

    2022年6月2日
  • 使用青花瓷对Android app 抓包

    使用青花瓷对Android app 抓包记录一下使用青花瓷抓包的过程(主要Android中的app)青花瓷window版本下载地址:http://www.pc6.com/softview/SoftView_426224.htmlhttps://www.charlesproxy.com/官网地址前提条件,电脑和手机存在于同一个网路下,才能实现抓包操作。1.获取代理服务器的地址(主要是给手机用):cmd中输入…

    2022年5月11日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号