Odzyskiwanie plików gdy system nie wstaje na serwerze VPS

Tagi: #<Tag:0x00007f8dfb9177e8> #<Tag:0x00007f8dfb917608> #<Tag:0x00007f8dfb917428>

Odzyskiwanie danych z niesprawnego systemu

Czasami może się zdarzyć, że w wyniku jakiegoś niezbyt przemyślanego działania nasz system przestanie działać. Wtedy najprostsza myśl to reinstalacja systemu. Ale przecież wtedy stracimy nasze dane! Musimy je przed reinstalacją z serwera jakoś ewakuować. Tylko jak je pobrać, jeżeli serwer nie chce wystartować?

Aby móc je pobrać, musimy wystartować nasz serwer “z płyty” i zainstalować na nim np serwer ftp, gdyż będzie to raczej jeden z prostszych w użyciu i przygotowaniu sposób dobrania się do plików.

Uwaga. Poradnik zakłada, że pliki i/lub system plików nie został uszkodzony, a po prostu system nie chce się uruchomić przez np problem z konfiguracją. Nie przedstawię tutaj metod ratowania uszkodzonych plików, ani kroków które trzeba podjąć jeżeli np zdecydowaliśmy się na

Uruchomienie systemu z płyty

Na początek musimy zalogować się do panelu proxmox. Aby to zrobić, zaloguj mysię do panelu klienta i przejdźmy do panelu serwera z którego chcemy odzyskiwać pliki. Kliknijmy przycisk image i zalogujmy się do panelu proxmox danymi które pojawią się nieco niżej. Po zalogowaniu powinniśmy zobaczyć ekran podobny do poniższego.


Teraz wybierzmy z listy opcję qemu. Powinniśmy zobaczyć coś w tym stylu:

z listy po prawej stronie wybierzmy opcję hardware. Powinniśmy zobaczyć teraz ekran tego typu:
image
Wybierzmy opcję CD/DVD Drive.
image
Ustawmy w tym okienku wszystko tak jak możemy zauważyć na powyższym screenie, ISO image powinien nazywać się ubuntu-18.04-live-server-amd64.iso.
Zatwierdźmy wybór i przejdźmy do zakładki console. Z górnego paska po prawej stronie wybierzmy opcję reset z menu rozwijanego shutdown
image
Powinien pojawić się nam taki ekran w głównym oknie:

Wciśnijmy klawisz ESC. Powinien nam wystąpić następujący ekran:

Wciśnijmy teraz 3. Powinien zacząć się ładować system operacyjny z płyty którą wybraliśmy przed chwilą w zakładce hardware.

Konfigurowanie systemu i instalacja serwera ftp

Po chwili ładowania systemu powinniśmy ujrzeć następujący ekran:


Nie interesuje nas on, w końcu nie chcemy instalować ubuntu. Aby z niego “uciec” do systemu pracującego z płyty, użyjmy kombinacji klawiszy ALT+F2.

Jeżeli kombinacja nie działa - rozwiń

Jeżeli z jakiegoś powodu nie możemy użyć tej kombinacji, po lewej stronie wirtualnego ekranu naszego serwera znajdźmy strzałkę
image
i wybierzmy opcje w następujący sposób:
image
Teraz wystarczy wcisnąć F2.

Po chwili ładowania powinniśmy zobaczyć ekran podobny do tego:


Teraz możemy zacząć wykonywać polecenia. Dzięki niedawno wprowadzonemu DHCP nie musimy przejmować się konfigurowaniem sieci, powinna działać od razu. Jeżeli mimo to nie działa - napisz w tym wątku, a spróbujemy rozwiązać ten problem :slight_smile:
Na początek zamontujmy dysk naszego serwera.

Uwaga. Zakładam, że system był instalowany przez automatyczny instalator hostingu. Jeżeli jest inaczej, upewnij się na której partycji zainstalowany jest system i użyj jej numerka w poniższych poleceniach.

Aby zamontować dysk serwera użyjmy polecenia sudo mount /dev/vda1 /mnt. Jeżeli uzyskamy błąd mount: mnt: special device /dev/vda1 does not exist, spróbujmy użyć sudo mount /dev/sda1 /mnt.

Jeżeli oba te polecenia zwróciły taki błąd, napisz tu w wątku, a zastanowimy się co robić dalej.

Jeżeli po wykonaniu tego polecenia wyskoczył nam prompt bez dodatkowych informacji, to wszystko poszło po naszej myśli i dysk jest teraz zamontowany w katalogu /mnt. Teraz możemy zainstalować serwer ftp. W tym celu wykonajmy polecenie sudo apt update && sudo apt install -y vsftpd. Po wykonaniu tych komend serwer ftp powinien już zacząć działać w systemie.

W normalnych warunkach nie polecałbym takiego rozwiązania, lecz teraz dla uproszczenia całego procesu kopiowania danych posłużymy się logowaniem na konto root. W normalnych warunkach nie polecam korzystania z niego, co opisałem w innym wątku: Nigdy nie pracuj na koncie ROOT

Na początek musimy ustalić mu nowe hasło, w tym celu skorzystajmy z polecenia sudo passwd. Podajmy dwa razy hasło, którego chcemy używać. Teraz musimy zezwolić na logowanie na konto root w serwerze ftp. W tym celu najpierw zedytujmy plik /etc/ftpusers poleceniem sudo nano /etc/ftpusers. Wykomentujmy z niego konto root stawiając przed nim znak #:


Kombinacją CTRL+X, a następnie wciskając klawisze y i enter zapiszmy plik. Teraz zedytujmy plik /etc/vsftpd.conf poleceniem sudo nano /etc/vsftpd.conf, dopisując w nim linijkę userlist_deny=YES, na przykład na początku pliku:

Wyjdźmy z edytora tą samą kombinacją klawiszy którą przed chwilą opuściliśmy edytowanie pliku /etc/ftpusers. Teraz został nam już tylko przeładowanie serwera ftp, aby załapał nową konfigurację poleceniem sudo systemctl reload vsftpd.

Teraz nasz serwer czeka na połączenia ftp. Możemy do tego użyć naszego ulubionego programu do obsługi FTP, logując się na konto root hasłem które wcześniej ustawiliśmy. Po nawiązaniu połączenia przejdźmy do katalogu /mnt/, a ujrzymy wszystkie pliki z dysku naszego serwera vps. Możemy je teraz dowolnie pobierać i modyfikować.

Poradnik miesiąca: luty 2019

11lajków

Dystrybucja z pulpitem byłaby prostsza w obsłudze :thinking:

Zawsze wtedy można łatwo zalogować się przez przeglądarkę i przerzucić dane od razu na jakiś dysk cloud.
Pobieranie plików na PC może nie jest problemem, gorzej jednak z ponownym ich wgraniem na VPS, szczególnie gdy np. pliki mają z 20 GB a nie możesz mieć ciągle włączonego PC.
Mówię to z doświadczenia patrząc na otrzymywane tickety od klientów.

Ewentualnie może osobny poradnik rclone byłby warty uwagi, wtedy dość łatwo też da się to zrobić z CLI.

2lajki

Wszystko mi zadziałało, pliki skopiowane.
Dziękuję bardzo!

1lajk

Dziękuję za ten poradnik, pliki mi się kopiują :slight_smile:

Serdecznie dziękuje

3lajki