Puncte:7

După instalarea youtube-dl pe Ubuntu 21.10 cu instrucțiunile de pe github, multe aplicații, inclusiv editorul de text implicit, s-au spart

drapel ca

Un utilizator nou aici, rulează ubuntu pe versiunea 21.10 impish.

Instalam youtube-dl cu instrucțiunile de pe pagina 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

După ce comenzile au descărcat scriptul python, mai multe aplicații au încetat să mai funcționeze complet, ca și cum ar fi fost înlocuite cu youtube-dl [UPDATE 3: aplicațiile în sine nu au fost înlocuite, doar linkurile și comenzile rapide ale acestora]. Unele dintre software-urile afectate au fost aplicațiile implicite ale Ubuntu, cum ar fi editorul de text implicit (gedit) și calculatorul gnome, în timp ce altele au fost instalate manual, cum ar fi qbittorrent și steam.

Unele lucruri precum firefox, nano și lutris încă funcționează.

Încercarea de a rula editorul de text, de exemplu, de la terminal are rezultatul următor:

$ gedit

Utilizare: gedit [OPȚIUNI] URL [URL...]

gedit: eroare: trebuie să furnizați cel puțin o adresă URL.
Tastați youtube-dl --help pentru a vedea o listă cu toate opțiunile.

Eroarea este aceeași cu toate aplicațiile afectate:

$ gnome-calculator

Utilizare: gnome-calculator [OPȚIUNI] URL [URL...]

gnome-calculator: eroare: trebuie să furnizați cel puțin o adresă URL.
Tastați youtube-dl --help pentru a vedea o listă cu toate opțiunile.

Singurul lucru pe care l-am încercat până acum a fost să reinstalez gedit prin apt, dar nimic nu s-a schimbat.

Aș dori să știu ce a mers prost și dacă se poate repara sau dacă trebuie să fac o reinstalare.

UPDATE 1: Ieșirile comenzilor solicitate:

$ istorie 

  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

Nu știe de ce pare să fie listat de două ori.

$ care gedit
/usr/local/bin/gedit

$ care gnome-calculator
/usr/local/bin/gnome-calculator

$ ls -al $(care gedit)
lrwxrwxrwx 1 root root 17 loka 28 19:55 /usr/local/bin/gedit -> /usr/bin/firejail

$ ls -al $(care gnome-calculator)
lrwxrwxrwx 1 root root 17 loka 28 19:55 /usr/local/bin/gnome-calculator -> /usr/bin/firejail

$ fișier $(care gedit)
/usr/local/bin/gedit: link simbolic către /usr/bin/firejail

$ fișier $(care gnome-calculator)
/usr/local/bin/gnome-calculator: link simbolic către /usr/bin/firejail

„loka” pare să fie scurt pentru octombrie, am sistemul în engleză, dar data pare să folosească în continuare finlandeză.

$ echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/snap/ cos

UPDATE 2: ieșiri suplimentare de comandă solicitate de la:

Fsck a rulat printr-o unitate de memorie

$ sudo fsck -p /dev/nvme0n1p1
fsck de la util-linux 2.36.1
fsck.fat 4.2 (2021-01-31)
/dev/nvme0n1p1: 11 fișiere, 1336/130812 clustere

$ sudo fsck -p /dev/nvme0n1p2
fsck de la util-linux 2.36.1
/dev/nvme0n1p2: curat, 478908/31227904 fișiere, 49277410/124895488 blocuri

Înapoi pe sistem:

$ unde este 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

A încercat să folosească sudo ldconfig de asemenea, așa cum sugerează răspunsul, dar nu a primit rezultate și nici nu s-a schimbat nimic aparent.

UPDATE 3: Tocmai acum am aflat că toate programele software afectate funcționează în continuare cu calea completă (de ex./usr/bin/gedit), problema pare să aibă legătură cu linkurile și comenzile rapide către aceste aplicații. Lucruri precum opțiunea de clic dreapta „Deschide cu Editor de text” sunt, de asemenea, încă rupte.

Organic Marble avatar
drapel us
M-aș risca să presupun că ai tastat ceva greșit cu acele 2 comenzi sudo. Puteți să le găsiți în rezultatul „istoric” și să confirmați că ceea ce a fost introdus a fost ceea ce se aștepta?
N0rbert avatar
drapel zw
Nu se poate reproduce pe VM proaspăt.Vă rugăm să adăugați rezultatul următoarelor comenzi la întrebare: `which gedit`, `which gnome-calculator`, `ls -al $(which gedit)`, `ls -al $(which gnome-calculator)`, `fișier $(care gedit)`, `fișier $(care gnome-calculator)`, `echo $PATH`.
karel avatar
drapel sa
Răspunde asta la întrebarea ta? [Cum pot actualiza youtube-dl?](https://askubuntu.com/questions/380438/how-can-i-update-youtube-dl)
qwr avatar
drapel kr
qwr
Btw recomand să instalați din pip în loc de la apt pentru că va fi mai actualizat. De asemenea, youtube-dl este momentan întrerupt ca proiect, așa că luați în considerare yt-dlp fork pentru moment.
drapel ag
Și acesta, copii, este motivul pentru care nu rulați scripturi arbitrare de pe internet ca root.
Puncte:23
drapel cn
jpa

Iată o teorie:

Înainte de a rula prima comandă, /usr/local/bin/youtube-dl exista deja și era o legătură simbolică către /usr/bin/firejail. Probabil de la o instalare anterioară.

The curl ... -o /usr/local/bin/youtube-dl comanda nu înlocuiește legătura simbolică existentă cu un fișier nou. În schimb, suprascrie conținutul fișierului, care suprascrie /usr/bin/firejail. În mod normal, acesta este un binar multicall care verifică numele cu care este apelat și execută aplicația reală într-un sandbox. Dar codul youtube-dl, desigur, nu face nimic din asta.

După cum se confirmă în comentarii, reinstalarea firejail înlocuiește /usr/bin/firejail cu o versiune de lucru.


Pentru referință, configurația tipică firejail configurată de firecfg funcționează astfel: pentru fiecare aplicație sandbox, există un link simbolic sub /usr/local/bin care indică /usr/bin/firejail. Adevăratul executabil este în /usr/bin și este executat în interiorul cutiei de nisip. De aceea, pornirea programelor cu un full /usr/bin calea încă funcționează, dar calea implicită selectează în schimb legătura simbolică.

Organic Marble avatar
drapel us
Frumoasa analiza! Am învățat din asta.
drapel cn
Tocmai m-am întors să scriu ceva asemănător, acum nu mai trebuie. Întrucât daunele au fost limitate, mi se pare că acest lucru este oarecum amuzant, deoarece fără informațiile suplimentare care au fost adăugate la întrebare, părea într-adevăr destul de neplauzibil.

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.