В праве отказано, ты рут?

81

Я получаю эту ошибку всякий раз, когда пытаюсь установить программы с помощью терминала:

home@ubuntu:~$ apt-get install myunity
E: Could not open lock file /var/lib/dpkg/lock - open (13: Permission denied)
E: Unable to lock the administration directory (/var/lib/dpkg/), are you root?

Также я не могу установить обновления с помощью терминала.

Рагхав Миттал
источник
4
Это не дубликат, та же ошибка, но разные причины.
Хорхе Кастро
3
Попробуйтеsudo apt-get update
Avinash Raj
я думаю, что ваш менеджер обновлений GUI открыт, пока вы запускаете apt-get update, и одна вещь, вы должны быть супер-пользователем или использовать sudo, прежде чем использовать apt-get update
smn_onrocks
У вас даже есть этот компьютер, если да, то вам нужно показать это, будучи владельцем root ( sudo ) перед любой установкой, пожалуйста
Olu Smith
1
См. Также askubuntu.com/questions/427479/…
Авинаш Радж

Ответы:

80

Решение состоит в том, чтобы прочитать сообщение об ошибке: вы root? , Используйте sudoдля запуска команды с привилегиями root, например так:sudo apt-get update

PzKpfw
источник
24

Согласно документации сообщества об использовании терминала ,

sudo: выполнение команд с повышенными привилегиями

  1. Большинству из следующих команд нужно будет предшествовать команде sudo . Это временно повышает привилегии до уровня администратора root, что необходимо при работе с каталогами или файлами, не принадлежащими вашей учетной записи пользователя. При использовании sudo вам будет предложено ввести пароль. Только пользователи с правами sudo (административные) смогут использовать эту команду. Вы никогда не должны использовать обычный sudo для запуска графических приложений от имени Root (см. RootSudo для получения дополнительной информации о правильном использовании sudo.)

Таким образом, поскольку apt-get устанавливает программное обеспечение и, таким образом, влияет на систему, вам нужно использовать sudoкоманду, чтобы предоставить себе права администратора.

Таким образом, ваша команда должна быть sudo apt-get install myunity

Если вы хотите обновить свою систему, запустите

sudo apt-get update
sudo apt-get dist-upgrade

Это обновит базу данных пакетов вашей системы, а затем установит все обновления.

я верю
источник
7
Это не поможет избавиться от ошибки:unable to lock the administration directory (/var/lib/dpkg/), are you root?
Игорь Ганапольский
10

Перед выполнением каких-либо административных задач: установка, удаление, изменение общесистемных настроек и т. Д. Вам необходимо быть root. Это особенно верно для apt-get. Само сообщение говорит вам, где проблема:

ты рут?

Если это не так root, installкоманда не будет работать вообще.

Способ исправить это, используя sudoперед командой:

➜  ~  apt-get update
E: Could not open lock file /var/lib/apt/lists/lock - open (13: Permission denied)
E: Unable to lock directory /var/lib/apt/lists/
E: Could not open lock file /var/lib/dpkg/lock - open (13: Permission denied)
E: Unable to lock the administration directory (/var/lib/dpkg/), are you root?
➜  ~  sudo apt-get update
Fetched 616 kB in 25s (23.9 kB/s)

Как вы можете заметить, он завершился без проблем, когда я использовал sudo. Если у вас есть, open (13: Permission denied)он почти уверен, что вы не rootи должны использовать sudo.

Braiam
источник
Спасибо за помощь, так как я не установил root, я не думал, что мне нужно использовать sudo, но для меня это всего лишь опыт обучения. Жаль, что вы не могли бы предусмотреть обновления в терминале
француз
4

Попробуй с

sudo apt-get update 

Если вы все еще получаете ошибку блокировки, попробуйте эту команду. Она даст подробности процесса.

ps -e | grep -e apt -e adept | grep -v grep

Затем завершите процесс, используя идентификатор процесса, затем выполните команду обновления.

А также вы можете удалить этот файл, ваша проблема решит

rm /var/lib/dpkg/lock 
Premkumar
источник
1
Не забудьте закрыть Центр программного обеспечения перед использованием apt-get. Или же обновитель блокируется.
Дэн Йохансен
1
Блокировка существует для защиты ваших файлов конфигурации репозитория. Уничтожение процессов и удаление файлов блокировки без осторожности может привести к неправильной настройке системы. Этот ответ действительно ОПАСЕН. Перед удалением файла блокировки вы должны быть в три раза уверены, что процесс, удерживающий его, закрылся, или произошел сбой, или что-то еще. Правильный ответ - @braiam.
Rmano
Нет такого файла или каталога:/var/lib/dpkg/lock
Игорь Ганапольский
Обновитель удерживал блокировку, поэтому я не смог запустить apt-get install. Мне пришлось подождать, пока обновление не закончится (только пару минут), затем оно сработало,
gaborsch
3

просто беги

sudo apt-get update

sudo для запуска в качестве супер пользователя

Stormvirux
источник
2

Просто прочитайте вывод об ошибке: are you root?потому что это не так. Как обычный пользователь, у вас недостаточно прав для установки пакетов.

Приступите sudoк команде, чтобы поднять привилегии. При условии, что эта учетная запись имеет привилегии sudo, которые будут работать.

gertvdijk
источник
0

У меня была эта ошибка , и в моем случае я должен был удалить noexecна /varв/etc/fstab

который отлично работает на моих CentOS, Fedora и Alpine Linux

JOduMonT
источник