Скачали открыть файл JDK Tar.gz из https://jdk.java.net/15/ . Когда я расширяю этот файл с помощью команды tar -xf openjdk-15.0.2_linux-x64_bin.tar.gz на одном поле разрешения
drwxr-xr-x 2 me me 4.0K Feb 17 15:57 bin
, с другой стороны, когда тот же файл, скопированный в другую коробку и расширенную ту же команду
drwxr-x--- 2 me me 4.0K Feb 17 16:37 bin
То же самое относится и к другим файлам в каталоге Bin - никто, кроме себя, который расширен, файл имеет выполнение разрешений. В результате я не могу выполнить любой из команд Java в качестве другого пользователя.
Оба машины являются Ubuntu 20.04. Что может вызвать разницу?
Как отмечено в man tar
, когда вы извлекаете архив, используя tar
как непривилегированный пользователь, по умолчанию к разрешениям на извлечение файла применяется вызывающая маска umask
:
--no-same-permissions
Apply the user's umask when extracting permissions from the ar‐
chive (default for ordinary users).
В частности, маска 0027
удаляет все разрешения для других
, в то время как 0022
удаляет только разрешения на запись.