首页 > 代码库 > chmod -x chmod的N种解法
chmod -x chmod的N种解法
声明:该文章摘自陈皓的酷壳。
问题:
如果某天你的Unix/Linux系统上的chomd命令被某人去掉了x属性(执行属性),那么,你如何恢复呢?
参考答案:
1)重新安装。对于Debian的系统:
sudo apt-get install --reinstall coreutils
2)使用语言级的chmod。
- Perl:perl-e ‘chmod 0755, “/bin/chmod”‘
- Python:python -c “import os;os.chmod(‘/bin/chmod’, 0755)”
- Node.js:require(“fs”).chmodSync(“/bin/chmod”, 0755);
- C程序:
#include <sys/types.h>#include<sys/stat.h>void main(){chmod("/bin/chmod", 0000755);}
3)使用已有的可执行文件。
$cat - > chmod.cvoid main(){}^D$cc chmod.c$cat /bin/chmod > a.out$./a.out 0755 /bin/chmod
$cp true > new_chmod$cat /bin/chmod > new_chmod$./new_chmod 0755 /bin/chmod
4)使用GNU tar命令
$tar --mode 0755 -cf chmod.tar /bin/chmod$tar xvf chmod.tar
tar --mode 755 -cvf - chmod | tar -xvf -
5)使用cpio (第19到24字节为file mode – http://4bxf.sl.pt)
echo chmod |cpio -o |perl -pe ‘s/^(.{21}).../${1}755/‘ |cpio -i -u
6)使用hardcore
alias chmod=‘/lib/ld-2.11.1.so ./chmod‘
7)使用Emacs
Ctrl+x b > * scratch*(set-file-modes “/bin/chmod” (string-to-number “0755″ 8))Ctrl+j
嗯,挺强大的,不过为什么不用install命令呢?
install -m 755 /bin/chmod /tmp/chmodmv /tmp/chmod /bin/chmod
各位,你的方法呢?
(全文完)
chmod -x chmod的N种解法
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。