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


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

Ответы:


80

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


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.


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

4

Попробуй с

sudo apt-get update 

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

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

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

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

rm /var/lib/dpkg/lock 

1
Не забудьте закрыть Центр программного обеспечения перед использованием apt-get. Или же обновитель блокируется.
Дэн Йохансен

1
Блокировка существует для защиты ваших файлов конфигурации репозитория. Уничтожение процессов и удаление файлов блокировки без осторожности может привести к неправильной настройке системы. Этот ответ действительно ОПАСЕН. Перед удалением файла блокировки вы должны быть в три раза уверены, что процесс, удерживающий его, закрылся, или произошел сбой, или что-то еще. Правильный ответ - @braiam.
Rmano

Нет такого файла или каталога:/var/lib/dpkg/lock
Игорь Ганапольский

Обновитель удерживал блокировку, поэтому я не смог запустить apt-get install. Мне пришлось подождать, пока обновление не закончится (только пару минут), затем оно сработало,
gaborsch

3

просто беги

sudo apt-get update

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


2

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

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


0

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

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

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.