Proxmox Automatyczne aktualizacje VM (qm + vzdump) z testami sieci i auto-przywracaniem

Proxmox: Automatyczne aktualizacje VM (qm + vzdump) z testami sieci i auto-przywracaniem

W tym artykule opisuję prosty (ale bardzo skuteczny) skrypt automatyzujący aktualizacje maszyn wirtualnych na Proxmox VE. Skrypt potrafi:

  • utworzyć backup maszyny (opcjonalnie),
  • uruchomić VM, jeśli wcześniej była wyłączona,
  • zrobić pełny upgrade systemu przez apt i wykonać reboot,
  • zrobić testy sieciowe przed i po aktualizacji,
  • w razie problemów automatycznie przywrócić VM z backupu (opcjonalnie),
  • na końcu wyłączyć VM, jeśli wcześniej była wyłączona.

Skąd pobrać skrypt

Skrypt możesz pobrać bezpośrednio z mojej strony:

soban.pl/bash/upgrade_proxmox_qm.sh

Wymagane katalogi

Zanim uruchomisz automatyzację, utwórz dwa katalogi: jeden na skrypty i jeden na logi:

Instalacja skryptu

Pobierz skrypt do /root/automate_scripts/ i nadaj mu prawa wykonywania:

Jak to działa (w skrócie)

  • Najpierw wykonywany jest backup (vzdump snapshot + zstd) – jeśli backup jest włączony.
  • Jeśli VM była stopped, skrypt ją uruchamia i czeka WAIT_TIME sekund.
  • Następnie wykonywane są testy sieciowe PRZED aktualizacją:
  • Skrypt wykonuje apt update/upgrade/dist-upgrade/autoremove/clean i na końcu robi reboot VM.
  • Po reboocie czeka ponownie (WAIT_TIME) i uruchamia te same testy PO aktualizacji.
  • Jeśli testy nie przejdą i istnieje backup, skrypt wykonuje qmrestore automatycznie.
  • Na końcu (opcjonalnie) wyłącza VM, jeśli wcześniej była wyłączona.

Uruchomienie (manualnie)

Skrypt przyjmuje dokładnie dwa argumenty:

  • VMID – ID maszyny wirtualnej na Proxmox
  • TIME_SEC – czas oczekiwania po starcie/reboocie (w sekundach)

Wskazówka: dobierz WAIT_TIME do realnego czasu bootowania VM oraz czasu trwania aktualizacji. Najczęściej sprawdza się 300 do 1000 sekund (zależnie od maszyny).

Pełny skrypt (do wklejenia / podglądu)

Poniżej wrzucam całość w jednym miejscu – dokładnie w takiej formie, w jakiej jest używana w tej automatyzacji:

Cron (harmonogram tygodniowy + osobne logi per VM)

Poniżej masz przykład crontaba, który uruchamia aktualizacje raz w tygodniu (inna VM każdego dnia roboczego) i zapisuje logi do osobnych plików w /root/logs/.

Edytuj crona roota:

Wklej reguły (komentarze są po angielsku):

Szybkie checklisty / troubleshooting

  • Upewnij się, że root z hosta Proxmox może łączyć się po SSH do VM po hostname (skrypt używa ssh root@<vm-hostname>).
  • Sprawdź czy DNS (albo /etc/hosts) poprawnie rozwiązuje hostname VM na hoście Proxmox.
  • Jeśli apt potrafi pytać o potwierdzenia, zadbaj o tryb non-interactive albo „trzymaj” pakiety, które robią problemy podczas upgrade.

To wszystko. Umieść skrypt w /root/automate_scripts/, wyślij logi do /root/logs/, a cotygodniowa konserwacja maszyny wirtualnej stanie się praktycznie niezauważalna.

Dell WD19/WD19S: aktualizacja firmware na Proxmox/Debian bez timeoutów USB (fwupd + autosuspend fix)


Jeśli próbujesz aktualizować firmware stacji dokującej Dell WD19/WD19S na Proxmoxie (albo Debianie) przez fwupdmgr, możesz trafić na klasyczny błąd typu Operation timed out podczas etapu Erasing…. W praktyce update sypie się przez zarządzanie energią USB (autosuspend). Poniżej masz prosty, skuteczny fix oraz gotowy skrypt do odpalenia na serwerze/laptopie.

Objawy problemu

Najczęściej w trakcie aktualizacji docka (WD19/WD19S) pojawia się błąd podobny do:

Wtedy fwupdmgr może pokazywać urządzenie WD19S jako Update State: Failed albo stale informować o pending activation, ale sam flash nie przechodzi do końca.

Dlaczego tak się dzieje?

Dock podczas flashowania wykonuje długie operacje, a gdy system próbuje oszczędzać energię na USB (autosuspend), kontrolne transfery USB mogą się wysypywać. Efekt: timeout dokładnie na etapie kasowania banku flash (erase bank).

Szybki fix: wyłącz autosuspend USB na czas aktualizacji

Najprostsze rozwiązanie to tymczasowe ustawienie autosuspend na -1 (czyli wyłączenie). To ustawienie obowiązuje do rebootu (chyba że zrobisz je na stałe w kernel cmdline), ale w zupełności wystarczy na czas update.

Następnie uruchom aktualizację:

Po update: „pending activation” i wymagane odłączenie kabla

Po udanej instalacji firmware dla WD19/WD19S fwupdmgr często wypisuje komunikat:

Wtedy zrób to w tej kolejności:

  • Odłącz kabel USB-C od docka (od laptopa).
  • (Opcjonalnie) Odłącz zasilanie docka na 10–15 sekund i podepnij ponownie.
  • Podepnij USB-C z powrotem.
  • Wykonaj aktywację:

Na końcu sprawdź status:

Gotowy skrypt: install + update + wyłączenie autosuspend (z restore)

Poniżej masz gotowy skrypt, który:

  • instaluje fwupd
  • odświeża metadane LVFS
  • tymczasowo wyłącza autosuspend USB (żeby WD19S nie wywalał timeoutów)
  • uruchamia aktualizacje
  • przywraca poprzednią wartość autosuspend po zakończeniu (nawet jeśli update się wywali)

Skrypt możesz wkleić ręcznie z artykułu, ale jeśli wolisz szybciej: możesz go pobrać bezpośrednio z:

https://soban.pl/bash/dell_updage.sh

Przykład pobrania i uruchomienia:

Jeśli chcesz, możesz też podejrzeć treść przed uruchomieniem:

Jeżeli nie masz less w systemie:

Skrypt (pełna treść)

Uruchomienie skryptu

Najprościej:

Najczęstsze pytania i tipy

  • Update dalej się sypie? Odłącz wszystkie peryferia od docka (monitory/LAN/USB), zostaw tylko zasilanie i USB-C, zrób hard reset docka (odłącz prąd na 30s) i spróbuj ponownie.
  • „pending activation” po update – to normalne dla WD19/WD19S. Musisz wypiąć USB-C, podpiąć ponownie i zrobić fwupdmgr activate.
  • To aktualizuje BIOS laptopa? Nie zawsze. fwupdmgr pokaże osobno „System Firmware” (BIOS/UEFI) i osobno dock. W tym artykule skupiamy się na docku i problemie z USB timeout.

Podsumowanie

Jeśli firmware Dell WD19/WD19S wywala się na Proxmox/Debian podczas Erasing…, to w większości przypadków wystarczy na czas aktualizacji wyłączyć autosuspend USB. Skrypt powyżej robi to automatycznie, a potem przywraca poprzednie ustawienie, żeby system dalej działał normalnie.

Jak zaktualizować Proxmox VE 8.x do wersji 9.0 (Debian 12 do Debian 13) – krok po kroku za pomocą skryptu

Wprowadzenie

Proxmox VE 9.0 (oparty na Debian 13 „Trixie”) został wydany i przynosi zaktualizowane pakiety, nowy kernel oraz ulepszoną stabilność. Ten poradnik przeprowadzi Cię przez aktualizację w miejscu z Proxmox VE 8.4.x (Debian 12 „Bookworm”) do Proxmox VE 9.0.

Proces będzie zautomatyzowany przy użyciu gotowego skryptu aktualizacyjnego, który:

  • Sprawdza aktualną wersję
  • Uruchamia pve8to9 w celu weryfikacji przed aktualizacją
  • Tworzy kopię zapasową źródeł APT
  • Aktualizuje repozytoria z Bookworm do Trixie
  • Wykonuje pełny dist-upgrade
  • Loguje wszystkie zmiany przed i po aktualizacji

Pobranie i uruchomienie skryptu aktualizacyjnego

Możesz pobrać gotowy skrypt aktualizacyjny bezpośrednio z naszego serwera, nadać mu uprawnienia i uruchomić:

Jeśli stracisz połączenie (a to może się zdarzyć podczas aktualizacji Proxmoxa), możesz śledzić logi poleceniem:

Spokojnie poczekaj, aż skrypt zakończy działanie — może to potrwać.

Pełny kod źródłowy skryptu

Poniżej znajduje się pełna treść skryptu do wglądu. Zaleca się jednak pobranie najnowszej wersji z powyższego linku, aby mieć pewność, że zawiera wszystkie aktualne poprawki.

Weryfikacja po aktualizacji

Oczekiwany wynik powinien wyglądać tak:

pve-manager/9.x.x/xxxxxxxx (running kernel: 6.x.x-x-pve)

Sprawdź wersję uruchomionego jądra:

Przejrzyj log z aktualizacji, aby upewnić się, że nie wystąpiły błędy:

Jeśli użyłeś usługi post-check utworzonej przez skrypt, możesz zobaczyć jej wyniki:

Dynamiczne nazwy zakładek w Tmuxie z SSH i hostname


Dynamiczne nazwy zakładek w Tmuxie z SSH i hostname

Chcesz, aby Twoje zakładki (okna) w Tmuxie automatycznie pokazywały hostname serwera, do którego się logujesz przez SSH? A po wylogowaniu wracały do nazwy lokalnego hosta? Ten poradnik pokaże Ci, jak to skonfigurować krok po kroku.

1. Konfiguracja Tmux – ~/.tmux.conf

W pliku konfiguracyjnym Tmuxa ustaw domyślną komendę startową na specjalny plik Bash (.bash_tmux), który załatwi całą magię.

2. Skrypt startowy Bash – ~/.bash_tmux

Ten plik wykonuje się przy każdym starcie okna Tmux. Ustawia nazwę okna na hostname oraz nadpisuje polecenie ssh, aby aktualizowało zakładkę przy połączeniu i po rozłączeniu.

3. Przeładowanie konfiguracji Tmux bez restartu

Aby zastosować zmiany bez restartowania całej sesji Tmux, użyj następującego polecenia:

Dodatkowo możesz przeładować bieżącą powłokę z .bash_tmux ręcznie:

4. Efekt końcowy

  • Nowe okno Tmux ma automatycznie nazwę lokalnego hosta
  • Po połączeniu przez SSH — zakładka zmienia się na nazwę zdalnego hosta
  • Po wylogowaniu — zakładka wraca do lokalnego hostname

Prosto, czytelnie i mega wygodnie — idealne dla adminów, devopsów i fanów porządku w Tmuxie 💪

Najważniejsze polecenia Linuxa, które każdy użytkownik powinien znać

System Linux to potężne narzędzie, które oferuje użytkownikom ogromną elastyczność i kontrolę nad ich środowiskiem pracy. Jednak aby w pełni wykorzystać jego potencjał, warto poznać kluczowe polecenia, które są niezbędne zarówno dla początkujących, jak i zaawansowanych użytkowników. W tym artykule przedstawimy i omówimy najważniejsze polecenia w systemie Linux, które każdy użytkownik powinien znać.

1. Podstawowe polecenia nawigacyjne

  • pwd – Wyświetla bieżącą ścieżkę katalogu, w którym się znajdujesz:
  • ls – Listuje zawartość katalogu. Można użyć opcji -l dla szczegółowego widoku lub -a aby pokazać ukryte pliki:
  • cd – Zmienia katalog. Na przykład cd /home/user przeniesie Cię do katalogu /home/user:
  • mkdir – Tworzy nowy katalog:
  • rmdir – Usuwa pusty katalog:

2. Zarządzanie plikami

  • cp – Kopiuje pliki lub katalogi:
  • mv – Przenosi lub zmienia nazwę plików/katalogów:
  • rm – Usuwa pliki lub katalogi. Użyj opcji -r aby usunąć katalog z zawartością:
  • touch – Tworzy pusty plik lub aktualizuje czas modyfikacji istniejącego pliku:

3. Zarządzanie procesami

  • ps – Wyświetla aktualnie uruchomione procesy. Użyj opcji -aux aby zobaczyć wszystkie procesy:
  • top – Wyświetla dynamiczną listę procesów w czasie rzeczywistym:
  • kill – Zatrzymuje proces o podanym ID:
  • bg i fg – Zarządzanie procesami w tle i na pierwszym planie:

4. Zarządzanie użytkownikami i uprawnieniami

  • sudo – Pozwala na wykonanie polecenia z uprawnieniami administratora:
  • chmod – Zmienia uprawnienia do plików/katalogów:
  • chown – Zmienia właściciela pliku/katalogu:
  • useradd i userdel – Dodaje i usuwa użytkowników:

5. Sieć i komunikacja

  • ping – Sprawdza połączenie z innym hostem:
  • ifconfig – Wyświetla informacje o interfejsach sieciowych:
  • ssh – Łączy się zdalnie z innym komputerem:
  • scp – Kopiuje pliki przez SSH:

6. Przykłady użycia poleceń

Poniżej znajduje się przykład użycia kilku omówionych poleceń:

  • chmod – Zmienia uprawnienia do plików/katalogów:
  • chown – Zmienia właściciela pliku/katalogu:
  • useradd i userdel – Dodaje i usuwa użytkowników:

7. Zarządzanie dyskami i systemem plików

  • df – Wyświetla informacje o dostępnej przestrzeni na dyskach:
  • du – Pokazuje rozmiar plików i katalogów:
  • mount – Montuje system plików:
  • umount – Odmontowuje system plików:

8. Wyszukiwanie plików

  • find – Wyszukuje pliki w systemie:
  • locate – Szybkie wyszukiwanie plików w systemie:
  • grep – Wyszukuje wzorce w plikach:
  • which – Znajduje pełną ścieżkę do wykonywalnego pliku:

9. Komunikacja z systemem

  • echo – Wyświetla tekst na ekranie:
  • cat – Wyświetla zawartość pliku:
  • more – Wyświetla zawartość pliku strona po stronie:
  • less – Zawiera funkcje podobne do more, ale oferuje więcej opcji nawigacji:
  • man – Wyświetla podręcznik użytkownika dla polecenia:

10. Praca z archiwami

  • tar – Tworzy archiwum lub rozpakowuje je:
  • zip – Tworzy archiwum ZIP:
  • unzip – Rozpakowuje pliki ZIP:
  • tar -xvzf – Rozpakowuje archiwum TAR.GZ:
  • gzip – Kompresuje pliki w formacie .gz:
  • gunzip – Rozpakowuje pliki .gz:

11. Monitorowanie systemu

  • uptime – Wyświetla czas działania systemu oraz obciążenie:
  • dmesg – Wyświetla komunikaty systemowe związane z rozruchem i sprzętem:
  • iostat – Pokazuje statystyki wejścia/wyjścia systemu:
  • free – Pokazuje informacje o pamięci RAM:
  • netstat – Wyświetla informacje o połączeniach sieciowych:
  • ss – Nowoczesna wersja netstat, służy do monitorowania połączeń sieciowych:

12. Praca z logami systemowymi

  • journalctl – Przegląda logi systemowe:
  • tail – Wyświetla ostatnie linie pliku:
  • logrotate – Automatycznie zarządza logami:

13. Zaawansowane operacje na plikach

  • ln – Tworzy dowiązanie do pliku:
  • xargs – Przesyła argumenty z wejścia do innych poleceń:
  • chmod – Zmienia uprawnienia do plików/katalogów:
  • chattr – Zmienia atrybuty plików:

System Linux oferuje szeroki zestaw poleceń, które pozwalają na pełną kontrolę nad komputerem. Kluczowe polecenia, jak ls, cd, cp, czy rm, są używane na co dzień do nawigacji po systemie plików, zarządzania plikami oraz katalogami. Aby skutecznie opanować te komendy, najlepiej zacząć od tych, które są najbardziej przydatne w codziennej pracy. Przykładowo, polecenia do nawigacji po katalogach i zarządzania plikami są fundamentalne i wymagają praktyki, aby stały się intuicyjne. Inne polecenia, takie jak ps do monitorowania procesów, ping do testowania połączeń sieciowych, czy chmod do zmiany uprawnień, również warto poznać, aby móc w pełni wykorzystać moc systemu Linux.

Aby uczyć się skutecznie, warto zacząć od eksperymentowania z poleceniami w praktyce. Tworzenie plików, katalogów, kopiowanie i usuwanie danych pozwala na zapoznanie się z ich działaniem. Z czasem warto zacząć łączyć różne polecenia, by rozwiązywać bardziej zaawansowane problemy, jak monitorowanie procesów, zarządzanie użytkownikami czy praca z logami systemowymi. Można także korzystać z dokumentacji, np. man lub stron internetowych, aby zgłębiać szczegóły każdego polecenia i jego opcji.

Pamiętaj, że regularne korzystanie z terminala pozwala na naukę nawyków, które sprawią, że obsługa systemu Linux stanie się bardziej naturalna. Częste korzystanie z poleceń, rozwiązywanie problemów oraz eksperymentowanie z nowymi komendami to najlepszy sposób na opanowanie systemu i wykorzystywanie go w pełni.

Linux to naprawdę potężne narzędzie, które daje ogromną kontrolę nad systemem… ale pamiętaj, nie eksperymentuj na produkcji! W końcu, eksperymentowanie na serwerze produkcyjnym to trochę jak gra w rosyjską ruletkę — tylko że z większymi konsekwencjami. Jeśli chcesz poczuć się jak prawdziwy Linuxowy magik, zawsze testuj swoje komendy na środowisku deweloperskim. Tylko wtedy będziesz w stanie uczyć się na błędach, zamiast szukać przyczyny zniknięcia kilku gigabajtów danych. A jeśli nie wiesz, co robisz, po prostu wezwij swoją niezawodną broń: man!

Ulepszanie zarządzania maszynami wirtualnymi za pomocą agenta gościa QEMU na Proxmox


Zastanawiałeś się kiedyś, jak usprawnić zarządzanie i monitorowanie maszyn wirtualnych w swoim środowisku Proxmox? QEMU Guest Agent to prawdziwy przełom, oferujący narzędzia, które znacząco ułatwiają interakcję z wirtualnymi systemami. Przyjrzyjmy się, jak to narzędzie może zmienić twoje podejście.

Dlaczego QEMU Guest Agent jest niezbędny?

  • Synchronizacja czasu: Utrzymanie spójnego czasu pomiędzy maszynami wirtualnymi a hostem może być trudne, ale QEMU Guest Agent automatyzuje to, zapewniając płynne działanie operacji zależnych od czasu.
  • Zarządzanie zasilaniem: Wyobraź sobie możliwość wyłączania lub restartowania maszyn wirtualnych bezpośrednio z panelu Proxmox — nie ma potrzeby logowania się do każdej VM. To nie tylko wygodne, ale także oszczędza czas.
  • Monitorowanie systemu: Uzyskaj szczegółowe informacje o systemach plików, aktywności sieciowej i innych parametrach operacyjnych bezpośrednio z hosta. Ten poziom monitorowania pozwala na terminową diagnostykę i regulacje.
  • Zarządzanie dyskami: Obsługa operacji na dyskach bez konieczności bezpośredniej interwencji na VM ułatwia tworzenie kopii zapasowych i przywracanie danych jak nigdy dotąd.

Konfiguracja QEMU Guest Agent na twoim serwerze Proxmox

Uruchomienie QEMU Guest Agent obejmuje kilka prostych kroków:

  • Aktywacja Agenta: Zaloguj się do panelu Proxmox, przejdź do sekcji 'Opcje’ wybranej maszyny wirtualnej i upewnij się, że opcja 'QEMU Guest Agent’ jest zaznaczona.

Następnie instalacja na maszynie wirtualnej Ubuntu:

W celu sprawdzenia, czy odpowiednio działa qeumu-guest-agent możesz wykonać polecenie:

QEMU Guest Agent nie tylko ułatwia życie, automatyzując rutynowe zadania — również zwiększa bezpieczeństwo i efektywność twojego wirtualnego środowiska. Niezależnie od tego, czy zarządzasz pojedynczą maszyną wirtualną czy całym zbiorem, jest to nieocenione narzędzie w twoim arsenale.

Automatyczne usuwanie najstarszych plików na zdalnym dysku QNAP przez SSHFS


Automatyzacja Zarządzania Przestrzenią Dyskową w Środowisku Linux

W dzisiejszym cyfrowym świecie, gdzie dane gromadzone są w coraz większych ilościach, zarządzanie przestrzenią dyskową staje się kluczowym elementem utrzymania efektywności operacyjnej systemów. W tym artykule przedstawię skrypt, który automatyzuje proces zarządzania przestrzenią na zdalnym dysku montowanym przez SSHFS, szczególnie przydatny dla administratorów systemów, którzy regularnie muszą radzić sobie z zapełniającymi się nośnikami danych.

Wymagania wstępne

Przed rozpoczęciem, upewnij się, że na twoim systemie zainstalowane jest SSHFS oraz wszystkie niezbędne pakiety umożliwiające jego prawidłową pracę. SSHFS pozwala na montowanie systemów plików zdalnych przez SSH, co jest kluczowe dla działania naszego skryptu. Aby zainstalować SSHFS oraz niezbędne narzędzia, w tym pakiet umożliwiający przekazywanie hasła (sshpass), użyj poniższego polecenia:

Skrypt Bash do zarządzania przestrzenią dyskową

Nasz skrypt Bash skupia się na monitorowaniu i utrzymaniu określonego procentu wolnej przestrzeni dyskowej na zdalnym dysku, montowanym za pomocą SSHFS. Oto główne funkcje skryptu:

Definicja Celów:

TARGET_USAGE=70 – procent przestrzeni dyskowej, który chcemy utrzymać jako zajęty. Skrypt będzie działał na rzecz utrzymania przynajmniej 30% wolnego miejsca na dysku.

Punkt Montowania i Ścieżki:

MOUNT_POINT=”/mnt/qnapskorupki” – lokalny katalog, w którym montowany jest zdalny dysk. TARGET_DIRS=”$MOUNT_POINT/up*.soban.pl” – ścieżki katalogów, w których skrypt będzie szukał plików do usunięcia, jeśli zajdzie taka potrzeba.

Funkcja check_qnap: Ta funkcja sprawdza, czy dysk jest zamontowany i czy katalog montowania nie jest pusty. Jeśli są problemy, skrypt próbuje odmontować i ponownie zamontować dysk, używając sshfs z hasłem przekazanym przez sshpass.

Usuwanie Plików: Skrypt monitoruje użycie dysku i, jeśli przekroczone jest TARGET_USAGE, znajduje i usuwa najstarsze pliki w określonych katalogach aż do osiągnięcia docelowego poziomu wolnej przestrzeni.

Przykładowe wywołanie skryptu:

skrypt zaczyna pracę i stopniowo usuwa pliki

skrypt będzie pracować aż do osiągnięcia 70% zgodnie z założeniem:

Skrypt pracuje do osiągniecia 70%

Pobieranie skryptu i dodawanie do crontaba

Skrypt oczywiście należy dostosować pod swoje wymagania, jednak jeśli chcesz go pobrać i dodać do crontaba to:

Jeśli chcemy zautomatyzować proces usuwania np pod koniec dnia, to warto dodać do crontaba następujący wpis:

Skrypt będzie się uruchamiać w tym przypadku o 23:55 każdego dnia:

Należy zachować powyżej odpowiednią ścieżkę do skryptu.

Bezpieczeństwo i optymalizacja

Skrypt używa hasła wprost w linii komend, co może stanowić ryzyko bezpieczeństwa. W praktycznym zastosowaniu zaleca się użycie bardziej zaawansowanych metod autentykacji, na przykład kluczy SSH, które są bezpieczniejsze i nie wymagają jawnej obecności hasła w skrypcie. Jednak w przypadku QNAPa posłużyliśmy się hasłem pisząc ten skrypt.

Podsumowanie

Prezentowany skrypt jest przykładem, jak można automatyzować codzienne zadania administracyjne, takie jak zarządzanie przestrzenią dyskową, zwiększając tym samym efektywność i niezawodność operacji. Jego implementacja w realnych środowiskach IT może znacznie usprawnić procesy zarządzania danymi, zwłaszcza w sytuacjach, gdzie szybkie reagowanie na zmiany w użyciu dysku jest krytyczne.

Jak automatycznie wyłączyć laptopa przy niskim stanie baterii w systemie Linux

Automatyczne wyłączanie laptopa przy niskim stanie baterii

Zachowanie długiej żywotności baterii i ochrona danych są kluczowe dla użytkowników laptopów. W tym artykule pokażemy, jak stworzyć prosty skrypt Bash, który automatycznie wyłączy Twój laptop, gdy poziom naładowania baterii spadnie poniżej 20%. Dodatkowo, dowiesz się, jak ustawić crontab, aby skrypt był uruchamiany co 10 minut, zapewniając ciągłe monitorowanie.

Tworzenie skryptu Bash

Skrypt Bash, który przygotowaliśmy, będzie sprawdzać aktualny poziom naładowania baterii i porównywać go z ustalonym minimalnym progiem. Jeśli poziom baterii spadnie poniżej tego progu, skrypt inicjuje wyłączenie systemu, co pomaga w ochronie danych i sprzętu.

Możesz też pobrać skrypt:

Nie zapomnij o nadaniu uprawnień do uruchamiania go:

Konfiguracja Crontab

Crontab to narzędzie, które pozwala na planowanie zadań w systemie Linux. Dzięki niemu możemy ustawić regularne sprawdzanie stanu baterii.

Podsumowanie

Dzięki temu rozwiązaniu, możesz być spokojny o stan swojego laptopa nawet podczas intensywnego użytkowania. Automatyczne wyłączanie przy niskim stanie baterii nie tylko chroni sprzęt, ale także pomaga w utrzymaniu dłuższej żywotności baterii.

Rozszerzanie Przestrzeni Dyskowej w Linux: Przewodnik Krok po Kroku z Użyciem LVM i fdisk

Poszerzanie przestrzeni dyskowej w wirtualnych maszynach Linux to kluczowy element zarządzania systemami serwerowymi. W tym artykule pokazujemy, jak efektywnie zwiększyć przestrzeń dyskową używając narzędzi LVM i fdisk, bazując na rzeczywistych danych z systemu.

Wstępne przygotowania

Przed przystąpieniem do zmian w partycjach i woluminach, ważne jest, aby sprawdzić aktualny stan dysków w systemie. Użyjemy polecenia lsblk, aby zidentyfikować dostępne dyski i partycje.

Oto przykład wyniku polecenia lsblk na maszynie:

Tworzenie snapshotów

Zanim przystąpimy do zmian w konfiguracji dysków, zaleca się wykonanie snapshotu woluminów LVM, aby zapewnić możliwość przywrócenia danych w przypadku nieoczekiwanych problemów.

Modyfikacja partycji

Następnie, przystępujemy do modyfikacji partycji, korzystając z fdisk. Usuwamy istniejącą partycję, a potem tworzymy nową, która wykorzysta całą dostępną przestrzeń na dysku sdb.

Zapis zmian

Po prawidłowym skonfigurowaniu partycji, korzystamy z komendy w w fdisk, aby zapisać zmiany i zaktualizować tabelę partycji.

Wykonanie pvscan

Po modyfikacji partycji, wykonujemy polecenie pvscan, aby system mógł zaktualizować informacje o dostępnych fizycznych woluminach.

Konfiguracja LVM

Po zapisaniu zmian w tabeli partycji, musimy zaktualizować konfigurację LVM, aby uwzględnić nową przestrzeń dyskową. Używamy polecenia lvextend z automatycznym rozszerzaniem systemu plików.

Podsumowanie

Rozszerzenie przestrzeni dyskowej na wirtualnej maszynie Linux poprawia wydajność i dostępność przestrzeni do przechowywania danych. Dzięki opisanym krokom, zarządzanie przestrzenią dyskową w systemach wykorzystujących LVM staje się prostsze i bardziej efektywne.

Rozwiązywanie problemów z klastrami Proxmox i przywracanie kontenera LXC

Podczas zarządzania klastrami Proxmox można napotkać różne trudności techniczne, takie jak niespójności w konfiguracji klastra lub problemy z przywracaniem kontenerów LXC. Znalezienie i rozwiązanie tych problemów jest kluczowe dla utrzymania stabilności i wydajności środowiska wirtualizacji. W tym artykule przedstawiam szczegółowy przewodnik, jak zdiagnozować i rozwiązać problem z nieosiągalnym węzłem oraz jak pomyślnie przywrócić kontener LXC.

Zanim przystąpisz do jakichkolwiek działań, upewnij się, że masz aktualny backup systemu.

Diagnostyka stanu klastra Proxmox

oraz:

Aby zrozumieć stan klastra, wykonaj na węźle node-up-page-04 polecenie:

Oczekiwany output:

Następnie sprawdź szczegółowe informacje o klastrze za pomocą polecenia:

Oczekiwany output:

Usuwanie pliku konfiguracyjnego kontenera i czyszczenie danych

Odkryłem, że plik konfiguracyjny kontenera 107 wciąż istnieje na systemie plików klastra w ścieżce:

Output:

Aby usunąć ten plik i wszelkie pozostałości danych związanych z odłączonym węzłem, wykonaj:

Przywracanie kontenera

Po usunięciu pliku konfiguracyjnego, przywróciłem kontener LXC na węźle node-up-page-04 za pomocą polecenia:

Output:

Proces przywracania zakończył się pomyślnie, a kontener był gotowy do użycia. Ten przypadek pokazuje, jak ważna jest dokładna diagnostyka i zarządzanie plikami konfiguracyjnymi w Proxmox podczas pracy z klastrami. Warto prowadzić regularne przeglądy konfiguracji, aby unikać niespójności i problemów operacyjnych w przyszłości.