web-dev-qa-db-ja.com

私はちょうどchmod -x chmodをやった

だから私はchmod -x chmod。この問題を解決するにはどうすればよいですか?実行権限をchmodに戻すにはどうすればよいですか?

27
Rook

Linuxの場合:

/lib/ld-linux.so.2 /bin/chmod +x /bin/chmod

http://www.slideshare.net/cog/chmod-x-chmod

43
bindbn

Pythonを使用:

# python
Python> import os
Python> os.chmod("/bin/chmod",0755)
18
Douglas Leeder

これは、コピーされるときに、コピー元ファイルではなくコピー先ファイルの権限が保持されるという事実に依存しています。 lsの権限を「借用」しています:

cp /bin/ls /tmp/chmod.tmp
cp /bin/chmod /tmp/chmod.tmp
mv /tmp/chmod.tmp /bin/chmod

Perlの使用:

% Perl -e 'chmod 0755, qw[/bin/chmod]'
9
Alnitak

setfacl -m u::rx /bin/chmod

...所有者に実行権限を付与します。

しかし /lib/ld-linux.so.2トリックはきちんとしている。 :)

7
Kyle Brantley

これは奇妙です...誰かのツイートを介して数日前にこのようなものを見ました...

http://www.slideshare.net/cog/chmod-x-chmod

5
ThatGraemeGuy

/bin/chmodはダイナミックリンカーでロードできません:

# /bin/mv /bin/chmod /bin/chmod.tmp
# install -p -m 755 /bin/chmod.tmp /bin/chmod

これは私のMacOS Xシステムで動作します。

4
Alnitak

/ rescue/chmod 555/bin/chmod

Mtreeも使用できると思います。

2
Darius

これは本当の質問ではないと思います: http://www.slideshare.net/cog/chmod-x-chmod

  • Chownを再インストール:Sudo apt-get install --reinstall coreutils
  • Perl -e 'chmod 0755、 "chmod"'
  • スライドのその他の例
2
Julien

新しいchmodを作成し、それを元のchmodに使用します

umask 000
cat chmod > ~/my-chmod
~/my-chmod a+x chmod
1
Kevin M