Рейтинг:7

После установки youtube-dl на Ubuntu 21.10 с инструкциями на github многие приложения, включая текстовый редактор по умолчанию, сломались.

флаг ca

Здесь новый пользователь, использующий Ubuntu на версии 21.10 impish.

Я устанавливал youtube-dl с инструкциями на странице github (https://github.com/ytdl-org/youtube-dl#installation):

$ sudo curl -L https://yt-dl.org/downloads/latest/youtube-dl -o /usr/local/bin/youtube-dl
$ sudo chmod a+rx /usr/local/bin/youtube-dl

После того, как команды загрузили скрипт python, несколько приложений полностью перестали работать, как будто они были заменены на youtube-dl [ОБНОВЛЕНИЕ 3: сами приложения не были заменены, только их ссылки и ярлыки]. Некоторое затронутое программное обеспечение было приложениями Ubuntu по умолчанию, такими как текстовый редактор по умолчанию (gedit) и калькулятор gnome, в то время как другие были установлены вручную, такие как qbittorrent и steam.

Некоторые вещи, такие как firefox, nano и lutris, все еще работают.

Попытка запустить текстовый редактор, например, из терминала приводит к следующему выводу:

$ gedit

Использование: gedit [ВАРИАНТЫ] URL [URL...]

gedit: ошибка: вы должны указать хотя бы один URL-адрес.
Введите youtube-dl --help, чтобы просмотреть список всех параметров.

Ошибка одинакова со всеми затронутыми приложениями:

$ гном-калькулятор

Использование: gnome-calculator [ВАРИАНТЫ] URL [URL...]

gnome-calculator: ошибка: вы должны указать хотя бы один URL-адрес.
Введите youtube-dl --help, чтобы просмотреть список всех параметров.

Единственное, что я пробовал до сих пор, это переустановить gedit через apt, но ничего не изменилось.

Я хотел бы знать, что пошло не так, и можно ли это исправить или мне нужно выполнить переустановку.

ОБНОВЛЕНИЕ 1: Выводы запрошенных команд:

$ история 

  867 sudo curl -L https://yt-dl.org/downloads/latest/youtube-dl -o /usr/local/bin/youtube-dl
  868 sudo chmod a+rx /usr/local/bin/youtube-dl
  869 youtube-dl sudo curl -L https://yt-dl.org/downloads/latest/youtube-dl -o /usr/local/bin/youtube-dl
  870 sudo chmod a+rx /usr/local/bin/youtube-dl

Не знаю, почему он, кажется, указан дважды.

$ какой gedit
/usr/местные/бин/gedit

$ какой гном-калькулятор
/usr/local/bin/gnome-калькулятор

$ ls -al $ (который gedit)
lrwxrwxrwx 1 root root 17 loka 28 19:55 /usr/local/bin/gedit -> /usr/bin/firejail

$ ls -al $ (какой гном-калькулятор)
lrwxrwxrwx 1 root root 17 loka 28 19:55 /usr/local/bin/gnome-calculator -> /usr/bin/firejail

$ файл $ (который gedit)
/usr/local/bin/gedit: символическая ссылка на /usr/bin/firejail

$ файл $ (какой гном-калькулятор)
/usr/local/bin/gnome-calculator: символическая ссылка на /usr/bin/firejail

«loka» кажется сокращением от октября, у меня система на английском, но дата, кажется, все еще использует финский язык.

$ эхо $ ПУТЬ
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/snap/ мусорное ведро

ОБНОВЛЕНИЕ 2: дополнительные запрошенные выходные данные команды из:

fsck запускается через флешку

$ sudo fsck -p /dev/nvme0n1p1
fsck из util-linux 2.36.1
fsck.fat 4.2 (31 января 2021 г.)
/dev/nvme0n1p1: 11 файлов, 1336/130812 кластеров

$ sudo fsck -p /dev/nvme0n1p2
fsck из util-linux 2.36.1
/dev/nvme0n1p2: чистый, 478908/31227904 файлов, 49277410/124895488 блоков

Вернемся к системе:

$ где gedit
gedit: /usr/bin/gedit /usr/lib/x86_64-linux-gnu/gedit /usr/local/bin/gedit /usr/share/gedit /usr/share/man/man1/gedit.1.gz

$ sha256sum /usr/bin/gedit /usr/local/bin/youtube-dl
27545f7fb059c356feeb88a872719c074d0fd5169564ec3fbb3cbb312b093184 /usr/bin/gedit
7880e01abe282c7fd596f429c35189851180d6177302bb215be1cdec78d6d06d /usr/local/bin/youtube-dl

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

ОБНОВЛЕНИЕ 3: Только что выяснилось, что все уязвимые программы по-прежнему работают с полным путем (например,/usr/бен/гэд), проблема, похоже, связана со ссылками и ярлыками для этих приложений. Такие вещи, как опция щелчка правой кнопкой мыши «Открыть в текстовом редакторе», также все еще не работают.

Organic Marble avatar
флаг us
Я рискну предположить, что вы набрали что-то не так с этими двумя командами sudo. Можете ли вы найти их в выводе `history` и подтвердить, что то, что было напечатано, соответствовало ожиданиям?
N0rbert avatar
флаг zw
Не удается воспроизвести на новой виртуальной машине.Пожалуйста, добавьте к вопросу вывод следующих команд: `который gedit`, `какой gnome-calculator`, `ls -al $(какой gedit)`, `ls -al $(какой gnome-calculator)`, `file $(какой gedit)`, `файл $(какой гном-калькулятор)`, `эхо $PATH`.
karel avatar
флаг sa
Отвечает ли это на ваш вопрос? [Как обновить youtube-dl?](https://askubuntu.com/questions/380438/how-can-i-update-youtube-dl)
qwr avatar
флаг kr
qwr
Кстати, я рекомендую устанавливать из pip, а не из apt, потому что это будет более актуально. Кроме того, youtube-dl в настоящее время приостановлен как проект, поэтому пока рассмотрим форк yt-dlp.
флаг ag
И именно поэтому, дети, вы не запускаете произвольные сценарии из Интернета как root.
Рейтинг:23
флаг cn
jpa

Вот теория:

Прежде чем вы запустите первую команду, /usr/local/bin/youtube-dl уже существовал и был символической ссылкой на /USR/бен/firejail. Вероятно, из какой-то предыдущей установки.

завиток ... -o /usr/local/bin/youtube-dl Команда не заменяет существующую символическую ссылку новым файлом. Вместо этого он перезаписывает содержимое файла, который перезаписывает /USR/бен/firejail. Обычно это двоичный файл с несколькими вызовами, который проверяет имя, с которым он вызывается, и выполняет фактическое приложение в песочнице. Но код youtube-dl, конечно, ничего из этого не делает.

Как подтверждается в комментариях, переустановка firejail заменяет /USR/бен/firejail с рабочей версией.


Для справки, типичная настройка конфигурации firejail с помощью firecfg работает следующим образом: для каждого изолированного приложения есть символическая ссылка под /USR/местные/бен это указывает на /USR/бен/firejail. Настоящий исполняемый файл находится в /USR/бен и выполняется внутри песочницы. Вот почему запуск программ с полным /USR/бен path по-прежнему работает, но вместо этого путь по умолчанию выбирает символическую ссылку.

Organic Marble avatar
флаг us
Хороший анализ! Я научился этому.
флаг cn
Я только что вернулся, чтобы написать что-то подобное, теперь мне не нужно. Поскольку ущерб был ограничен, я на самом деле нахожу это несколько забавным, потому что без дополнительной информации, которая была добавлена ​​в вопрос, это действительно выглядело довольно неправдоподобно.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.