シンボリックリンクの権限の変更

シンボリックリンクの権限の変更

次の権限を持つシンボリックリンクがあります。

lrwxrwxrwx 1 myuser myuser       38 Aug 18 00:36 npm -> ../lib/node_modules/npm/bin/npm-cli.js*

シンボリックリンクは.tar.gzアーカイブにあります。 mavenを使用してtar.gzアーカイブを解凍すると、シンボリックリンクは機能しなくなりました。だからシンボリックリンクを書き直そうとしています。まず、次のようにシンボリックリンクを作成します。なぜならしかし、元のシンボリックリンクと同じ権限を設定するには?

ベストアンサー1

新しいシンボリックリンクを作成して、以前のリンク位置に移動できます。

ln -s <new_location> npm2
mv -f npm2 npm

これによりリンクの所有権が維持されます。または、chownリンクの所有権を手動で設定することもできます。

chown -h myuser:myuser npm

ほとんどのシステムでは、シンボリックリンク権限は重要ではありません。シンボリックリンクを使用すると、シンボリックリンクのターゲットコンポーネントに対する権限が検証されます。しかし、一部のシステムでは重要です。 MacOS ではリンクに対する読み取り権限が必要ですreadlinkが、NetBSD のsympermマウントオプションは読み取りとナビゲーションの両方に対してリンク権限を強制的に確認します。これらのシステム(およびFreeBSDとOpenBSDを含む関連システム)に-hchmod

chmod -h 777 npm

おすすめ記事