如图所示,转换为cpio没报错,可什么都没解出来
我用的centos版本,还有里面的rpm包和你的是一样的。我也遇到了和你同样的问题。
原因出在:这个coreutils包下的ls文件不在/bin/ls路径下,而是在/usr/bin/ls下。
所以rpm2cpio /mnt/cdrom/Packages/coreutils-8.22-15.el7.x86_64.rpm|cpio -idv ./bin/ls
这条命令根本就没有解压出来,应该写成
rpm2cpio /mnt/cdrom/Packages/coreutils-8.22-15.el7.x86_64.rpm|cpio -idv ./usr/bin/ls
这样就好了
你可以先用这个命令 rpm2cpio /mnt/cdrom/Packages/coreutils-8.22-18.el7.x86_64.rpm | cpio -idv 查看cpio格式文件中的所有包,比如我的centos7是只有/usr/bin/ls,所以要把老师说的./bin/ls改成./usr/bin/ls。或者你直接用whereis ls ,也会发现他的真实路径,centos中/bin/ls其实是/usr/bin/ls的软链接
首先使用whereis ls 命令查出所在位置,我查出来的是 /usr/bin/ls ,使用该目录可以正确获取到
我的意思是/root/bin/文件夹都没有解出来,怎么cp呢
cp /root/bin/ls /bin/ 把ls命令复制回/bin/目录。。。。你都没有把它复制回去