解决bash:没有那个文件或目录的方法

根本原因是在Ubuntu64位和32位的区别。在Ubuntu64位环境下因其缺乏相应的32位运行库导致出错。


案例及解决方案重现:


报错: bash: ./lmhostid: 没有那个文件或目录
一开始以为是权限的问题
输入: chmod +x lmhostid.sh
报错: chmod: 无法访问"lmhostid.sh": 没有那个文件或目录
后来发现是64bit和32bit的问题
输入: sudo apt-get install ia32-libs
报错: 现在没有可用的软件包 ia32-libs,但是它被其它的软件包引用了。
这可能意味着这个缺失的软件包可能已被废弃,
或者只能在其他发布源中找到
可是下列软件包取代了它:
lib32z1 lib32ncurses5 lib32bz2-1.0
然后输入: sudo apt-get install libc6:i386 libgcc1:i386 gcc-4.6-base:i386 libstdc++5:i386 libstdc++6:i386
解决的64bit和32bit的问题
输入: ./lmhostid
正常了: lmhostid - Copyright (c) 1989-2011 Flexera Software, Inc. All Rights Reserved.


ps:在sudo apt-get install libc6:i386 libgcc1:i386 gcc-4.6-base:i386 libstdc++5:i386 libstdc++6:i386过程中可能会有一些安装过程中的小问题。

根据apt-get install的安装提示即可轻松解决。

你可能感兴趣的:(Linux学习)