I have sudo permissions and I'm trying to unpack a file with cpio command.
However, because of the path properties I get permission denied when I try to do it.

$ id
uid=4777(testuser) gid=100(users) groups=100(users),1008(otherwheel)

The home path has 700 permission:
$ sudo ls -ld /home/uadmin/
[sudo] password for testuser:

drwx ------. 16 uadmin uadmin 4096 dic 1 15:26 /home /uadmin /

The file has 775 permission:
$ sudo ls -l /home/uadmin/RH7HOTFIX/INSTALL
[sudo] password for testuser:

-rw-rw-r-- 1 root root 163840 abr 28 2016 /home /uadmin /RH7HOTFIX /INSTALL

When I try to unpack the file I get 'permission denied':
$ sudo cpio -ivcBdum install</home/uadmin/RH7HOTFIX/INSTALL

-bash: /home /uadmin /RH7HOTFIX /INSTALL: в доступе отказано

I can´t change the path permission.
I can´t move the file because of the disk space.
I can´t use sudo -i for a new shell.

My OS is Red Hat Enterprise 7.2

Any ideas?
Thanks in advanced.
DASM

1 ответ1

1

перенаправление sudo и shell нарушено

Вот хорошее объяснение и некоторые обходные пути:

Ваша команда не работает, потому что перенаправление выполняется вашей оболочкой, у которой нет разрешения на запись в [файл]. Перенаправление вывода не выполняется sudo.

  1. Запустите оболочку с помощью sudo и дайте ей команду, используя опцию -c
  2. Создайте скрипт с вашими командами и запустите этот скрипт с помощью sudo
  3. Запустите оболочку с помощью sudo -s, затем запустите ваши команды
  4. Используйте sudo tee (если вам приходится много избегать при использовании опции -c)

7-Zip

Кроме того, вы можете распаковать архив с помощью программы, которая не требует перенаправления оболочки, например, 7-zip, которая должна быть доступна для RHEL 7 через rpmforge.

Вот как это сделать:

  1. Загрузите репо с помощью команды, приведенной ниже.

sudo wget http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el7.rf.x86_64.rpm

  1. Теперь установите загруженный RPM с помощью

sudo rpm -ivh rpmforge-release-0.5.3-1.el7.rf.x86_64.rpm

  1. Теперь вам нужно установить пакет

sudo yum install p7zip

  1. Чтобы распаковать файл, используйте следующую команду

sudo 7za x <filename>

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .