Jak usunąć niekompletną lub uszkodzoną instalację snap nextcloud na Raspberry Pi?


22

Najpierw zastrzeżenie: rozumiem, że to pytanie dotyczy Mate i Raspberry Pi, więc jeśli uważasz, że jest ono poza sferą tego forum, po prostu zignoruj ​​je. Ale tutaj jest szansa, że ​​może to być pomocne lub typowe dla czegoś związanego z przystawkami lub platformą.

Postanowiłem spróbować zainstalować snap nextcloud. Rzuciło mnóstwo błędów i wydawało się, że zamarzło w trakcie procesu (przez ponad godzinę). Zabiłem go i po prostu postanowiłem go usunąć. Instalacja wyglądała jak ....

$ sudo snap install nextcloud
2016-06-24T08:48:29-04:00 ERROR cannot setup apparmor for snap "nextcloud": cannot load apparmor profile "snap.nextcloud.apache": cannot load apparmor profile: exit status 1
apparmor_parser output:
Cache read/write disabled: interface file missing. (Kernel needs AppArmor 2.4 compatibility patch.)
Warning: unable to find a suitable fs in /proc/mounts, is it mounted?
Use --subdomainfs to override.

2016-06-24T08:53:29-04:00 ERROR cannot setup apparmor for snap "nextcloud": cannot load apparmor profile "snap.nextcloud.apache": cannot load apparmor profile: exit status 1
apparmor_parser output:
Cache read/write disabled: interface file missing. (Kernel needs AppArmor 2.4 compatibility patch.)
Warning: unable to find a suitable fs in /proc/mounts, is it mounted?
Use --subdomainfs to override.

[|] Setup snap "nextcloud" security profiles

Gdy próbuję wykonać snap usuń nextcloud, otrzymuję

błąd: nie można usunąć „nextcloud”: snap „nextcloud” ma zmiany w toku

Chciałbym przede wszystkim prawidłowo usunąć przystawkę i odzyskać miejsce z utworzonej partycji. Jeśli partycja jest poprawnym terminem?

$ lsblk
NAME        MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
loop0         7:0    0  46.6M  0 loop /snap/ubuntu-core/120
loop1         7:1    0 113.9M  0 loop /snap/nextcloud/12
mmcblk0     179:0    0  14.9G  0 disk
├─mmcblk0p1 179:1    0    64M  0 part /boot
└─mmcblk0p2 179:2    0  14.8G  0 part /

próbowałem

snap przerwij nextcloud

i dostał

błąd: nie można znaleźć zmiany o identyfikatorze „nextcloud”

Powinienem również zauważyć, że nie wyświetla się jako zainstalowany, ponieważ otrzymuję tylko następujące

$ snap list
Nazwa Wersja Rev Uwagi dla deweloperów
ubuntu-core 16.04 + 20160531.12-01 120 canonical -

Chociaż pojawia się w ....

$ snap interfaces
: network nextcloud
: network-bind nextcloud

próbowałem

$ snap changes
ID   Status  Spawn                 Ready  Summary
1    Doing   2016-06-24T12:39:20Z  -      Install "nextcloud" snap

$ sudo snap abort 1

$ snap changes
ID   Status  Spawn                 Ready  Summary
1    Abort   2016-06-24T12:39:20Z  -      Install "nextcloud" snap

Ale partycja nadal tam jest.

** Aktualizacja, uruchomiłem cały proces ponownie w celu debugowania i po prostu pozwól mi usiąść po poleceniu „snap abort 1”. W pewnym momencie wydaje się, że coś zakończyło się w tle, ponieważ lsblk nic nie pokazuje, a zapytanie o interfejsy Snap nie pokazuje niczego.

Odpowiedzi:


44

snapKomenda jest w rzeczywistości składa się z dwóch elementów, serwera i klienta. Współdziałasz z klientem. Gdy anulujesz operację instalacji po stronie klienta, jest to jedyne miejsce, w którym ją anulowałeś - klient. Przestał więc pokazywać, że się instaluje, ale wciąż się instaluje (to jest błąd ). ( Aktualizacja: Ten błąd został naprawiony w snapd v2.20.1.)

Po stronie serwera wszystkie te rzeczy dzieją się w „zmianach”. Możesz przeczytać więcej o nich tutaj , ale dla swoich celów chcesz po prostu zrezygnować z tej konkretnej zmiany. Aby to zrobić, uruchom:

$ snap changes
<snip>
203  Doing   2016-06-24T12:17:45Z  -  Install "nextcloud" snap

Zwróć uwagę na identyfikator, 203 i fakt, że „robi” to teraz. Aby przerwać tę operację, użyj identyfikatora zmiany:

$ sudo snap abort 203

I zmiana powinna się skończyć. Muszę jednak powiedzieć, że fakt, że zmiana zamarła w połowie, nie wróży dobrze twojej zdolności do jej przerwania. Jeśli to nie zadziała, być może spróbuj ponownie uruchomić komputer. Jeśli nadal nie wydaje się, aby to rozwiązało, a wszystko w porządku, tracisz wszystkie swoje zatrzaski i ich dane, możesz całkowicie zresetować stan przystawki za pomocą tego skryptu .


Przejdę teraz na głosowanie, ponieważ skrypt rzeczywiście pozbywa się partycji, co zostało określone jako mój główny cel. Zrobiłem to, a następnie wróciłem przez cały proces, aby zebrać komunikaty o błędach i zaktualizowałem pytanie, aby odzwierciedlić te informacje, a także fakt, że jak powiedziałeś, zamrażanie wskazuje, że przerwanie i usunięcie nie zadziała. Daję dzień, aby sprawdzić, czy jest czystszy sposób, aby pozbyć się nextcloud, a jeśli nie, zaakceptuje to ze względu na skuteczność skryptu. Dzięki
— Dennis

Jestem trochę zdezorientowany w odniesieniu do „partycji”, do której się odwołujesz. Snapd niczego nie dzieli. Do czego dokładnie się odnosisz?
— Kyle

Zaktualizowałem informacje zawarte w pytaniu. Mogę mieć błędną terminologię, ale mówię o czymś, co dla mnie wygląda na partycję, która pojawia się w lsblk. Pojawiają się również w menedżerach plików jako dyski, chociaż najwyraźniej nie jestem pewien, jakie są pojemniki. Na końcu aktualizacji można również zobaczyć, że twoja rada przerwania konkretnego procesu faktycznie zadziałała (gdybym był cierpliwy).
— Dennis

Na marginesie, widzę z twojego bloga, że ​​najwyraźniej jesteś „mężczyzną” na ten temat. Jeśli jest coś, co mogę podać, co byłoby przydatne, ponownie: dlaczego to nie zadziałało, proszę dać mi znać.
— Dennis

Haha, och, ledwo, czasami po prostu piszę. Snapy to po prostu obrazy squashfs, które są następnie montowane na miejscu /snap, co właśnie tam widzisz. Jeśli chodzi o awarię, wygląda na to, że niektóre problemy z jądrem w armhf dla MATE. Czy masz coś przeciwko zarejestrowaniu błędu za pomocą tych informacji, abyśmy mogli właściwie zbadać problem?
— Kyle
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.