私はこれを行うことができますか?
sudo chown -R myUsernName /usr/lib
OSが破損する心配なしにこれを行うことはできますか?それとも権限が混乱するのでしょうか?
だから私はこれをしたいです。
だから私はあなたに尋ねたいです。
答え1
2つ:
(1) こうしても何のメリットもありません。/usr/lib
ルートが所有するシステムの多くはファイルに依存しているため、ファイルはルート/システムが所有する必要があります。
(2) これはまたシステムを壊す非常に良い方法です。 -
ポイントを説明するために、次の一般的な経験則に従います。
疑わしい場合は実行しないでください。
答え2
sudo
通常、/usr/bin/sudo
コマンドを実行した後は使用できませんchown
。バイナリの所有者は自分なので、sudo
次回実行すると権限を取得できません。root
だからいいえします。
答え3
いいえ。
システムのファイル権限の理由を完全に理解していない場合は、変更しないでください。
通常、/tmp
ホームディレクトリまたは指定されたディレクトリ外のファイルデータこれはあなたではなくシステムユーザーに属している必要があります。
/usr
また、Exceptの下に書いてはいけません/usr/local
。これはディストリビューションまたはパッケージマネージャ用に予約されています。プログラムをシステム全体にインストールするには/usr/local
。
インストールスクリプトが間違った場所にインストールしようとしているようです。コンテンツをコピーしようとする/usr/lib
と壊れた。使用しないでください。展開用のパッケージ、より良いインストールスクリプト、またはより良いインストール手順を見つけてください。同様に、パッケージマネージャを介さず/usr/lib
(代わりに)問題が発生すると、/usr/local/lib
インストールプロセスが中断されます。
答え4
いいえ、これは安全ではありません。/usr/lib
選択に権限が付与される理由は2つあります。
- 誤ってシステムプログラムが修正されるのを防ぎ、
- setuid / setgidプログラムの使用など、さまざまなシステム機能への特権アクセスを提供します。
後者を使って見ることができます
find /usr/lib -type f -perm /7000
setuid(4000)、setgid(2000)、または固定ビット(1000)を使用してプログラムを検索します。私のDebian7には複数のファイルが表示されます。
/usr/lib/eject/dmcrypt-get-device
/usr/lib/dbus-1.0/dbus-daemon-launch-helper
/usr/lib/kde4/libexec/kdesud
/usr/lib/openssh/ssh-keysign
/usr/lib/libvte9/gnome-pty-helper
/usr/lib/emacs/23.4/x86_64-linux-gnu/movemail
/usr/lib/mc/cons.saver
/usr/lib/libvte-2.90-9/gnome-pty-helper
/usr/lib/utempter/utempter
/usr/lib/pt_chown
/usr/lib/evolution/camel-lock-helper-1.2
/usr/lib/policykit-1/polkit-agent-helper-1
これらのファイルの所有権を変更すると、設計された操作を実行できなくなります。たとえば、更新のgnome-pty-helper
ためにutempter
ウットフー/ウトフー機能(データ提供w
そしてlast
)。
追加資料: