Chinaunix首页 | 论坛 | 博客
  • 博客访问: 19268738
  • 博文数量: 7460
  • 博客积分: 10434
  • 博客等级: 上将
  • 技术积分: 78178
  • 用 户 组: 普通用户
  • 注册时间: 2008-03-02 22:54
文章分类

全部博文(7460)

文章存档

2011年(1)

2009年(669)

2008年(6790)

分类:

2008-05-11 22:17:51

今天用户报一台AIX,可以FTP,但不能TELNET了,错误提示为:
telnet (myaix)

telnetd: /bin/login: A file descrīptor does not refer to an open file.
.

    这个错误提示很奇怪,网上都搜不到先例。幸好连上显示器,机器可以登录。后查明是root用户在/下执行了rm *,所以/bin(一个link)没有了,telnet时就报上面的错误。

    知道原因,解决起来就很容易。ln -s /usr/bin bin之后,回到办公位置上telnet过来,因为还有些事情没做。

    在网上找了一篇“在根目录(/)下执行了rm *,如何恢复系统”的文章,其中提到:
4.重建删除的文件和目录
#cd /mnt
#ln -s /usr/bin bin
#ln -s /usr/lib/boot/unix_up unix 或 #ln -s /usr/lib/boot/unix_mp unix
#ln -s /usr/lib lib
#ln -s /home u

    文中“#ln -s /usr/lib/boot/unix_up unix 或 #ln -s /usr/lib/boot/unix_mp unix”这行有点问题,大概作者写文章时还没有64位内核的操作系统吧。

    prtconf可以查明我的系统内核是64位,所以不能照搬原文。最终我改成这样:
myaix#/> prtconf |grep Kernel
Kernel Type: 64-bit
You have mail in /usr/spool/mail/root
myaix#/> ls -l |grep ^l
lrwxrwxrwx   1 root     system            8 Nov 15 11:55 bin@ -> /usr/bin/
lrwxrwxrwx   1 root     system            8 Nov 15 12:05 lib@ -> /usr/lib/
lrwxrwxrwx   1 root     system            5 Nov 15 12:06 u@ -> /home/
lrwxrwxrwx   1 root     system           21 Nov 15 12:12 unix@ -> /usr/lib/boot/unix_64*
myaix#/>

    三者的区别如下:
/unix -> /usr/lib/boot/unix_up # 32 bit uniprocessor kernel
/unix -> /usr/lib/boot/unix_mp # 32 bit multiprocessor kernel
/unix -> /usr/lib/boot/unix_64 # 64 bit multiprocessor kernel

阅读(1750) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~