ImageMagick jest otwartoźródłowym narzędziem które pozawala na przetwarzanie ponad 200 formatów graficznych. Dzięki niemu z wiersza poleceń możemy masowo obracać, zmieniać rozmiar, dodawać efekty i zmieniać format dowolnej ilości obrazków na raz.

Zmiana formatu osiągnać można stosując polecenie

c...

Rozmiar katalogu na dysku (jeżeli system plików używa kompresji to podana będzie rzeczywiście zajmowana przestrzeń):

du -h KATALOG

Rozmiar katalogu (rzeczywista objętość danych zgromadzonych w katalogu, nawet jeżeli system plików zapewnia kompresję podaną wartością będzie wartość przed kompresją...

Sprawdzanie i raportowanie stanu puli ZFS

Warto zautomatyzować proces sprawdzania stanu puli ZFS i powiadamiania o problemach celem umożliwienia podjęcia szybkich działań. Poniższy skrypt pozwala sprawdzić jak się ma nasza pula:

#!/bin/bash
if [ "$(/usr/sbin/zpool status -x)" != "all pools are h...

SSHFS (SSH FileSystem) - klient systemu plików, który umożliwia zamontowanie w lokalnym systemie plików katalogu ze zdalnego systemu i operowanie na nim jak na lokalnym katalogu. Klient komunikuje się ze zdalną maszyną przy użyciu SFTP.

Do korzystania z tego systemu plików konieczny jest pakiet ss...

Monitorowanie komunikatów mosquitto za pomocą mosquitto_sub

Połączenie do serwera mosquitto pod adresem 192.168.1.1 i prenumerata wszystkich komunikatów w temacie "dc/test":

mosquitto_sub -h 192.168.1.1 -t "dc/test"

Jeżeli chcemy dobierać wszystkie komunikaty z podatematów test to należy zasto...

Instalacja KVM

Instalacja podstawowych pakietów potrzebnych do funkcjonowania KVM:

apt install qemu-kvm libvirt-daemon bridge-utils virtinst libvirt-daemon-system

Dodatkowe narzędzia:

apt install virt-top libguestfs-tools libosinfo-bin  qemu-system virt-manager

Tworzenie mostka sieciowego

...

Powiększanie puli ZFS

Zakładamy, że pula którą chcemy powiększyć ma jakiś stopień replikacji danych. Proces będzie polegał na podmianie kolejnych dysków na większe i odbudowie puli (reslivering) a następnie pula zostanie rozszerzona na całą dostępną powierzchnię.

Wymiana dysku

Usuwamy pierwszy...

Instalacja Debian Bullseye na ZFS

Założenia

Opis będzie dotyczył instalacja na całym dysku, na którym jedynym systemem będzie nasz Debian. Wszystkie dane które wcześniej były na dysku zostaną utracone. Używamy sektorów o rozmiarach 4KB, nawet jeśli nasz dysk ma sektory 512B warto użyć sektorów l...

Przesyłanie wiadomości administracyjnych na zewnętrzny e-mail

Założenia

Nasz serwer ma stały dostęp do sieci i będzie wykorzystywał zewnętrzny serwer pocztowy i konto na nim do wysyłania wiadomości na wskazany adres e-mail. Wszystkie wiadomości systemowe których adresatem jest root trafią do zwy...

Subklastry w obrazach qcow2

Odkąd qcow2 wspiera rozszerzone table L2 warto uruchomić tą funkcjonalność. Pozwoli to na przyśpieszenie działania maszyn wirtualnych umieszczonych w takich kontenerach qcow2 oraz zmniejszenie potrzebnej do pracy hypervisora pamięci RAM. Dodatkowo w przypadku obrazów dy...

Do testowania wielu dysków twardych warto wykorzystać skrypt bht, który używając badblocks dokonuje dokładnego (i destruktywnego) testu dysków twardych. Standardowe parametry wywołania są względnie optymalne stąd wywołanie skryptu z domyślnymi parametrami jest dobrym pomysłem. Warto jedynie wskaza...

Założenie

Instalujemy Debiana używając mdadm z dwoma dyskami w układzie "lustra" na systemie z UEFI

Instalacja

Przeprowadzamy standardową instalację przy czym towrzymy własny układ partycji. Dyski muszą mieć tablicę partycji GPT (nie MBR), pierwszą partycją będzie partycja EFI o rozmiarze międ...

NUT - zarządzanie UPSami

Zarządzanie zasilaczami awaryjnymi za pomocą NUT pozwala uniknąć stosowania nietypowego oprogoramowania i pozwala na udostępnieniu informacji o zasilaniu awaryjnym dowolnemu systemowi operacyjnemu.

Rozpocznyamy od instalacji serwera NUT na urządzeniu, które będzie bezpoś...

Skrypty do monitrowania macierzy programowych oraz dysków fizycznych

Mając na głowie od groma rzeczy można zapomnieć o standardowych przeglądach sprzętu. Warto zatem zautomatyzować chociaż część newralgicznych testów które wypada co jakiś czas zrobić.

Monitorowanie macierzy MD:

#!/bin/bash
if...

Samba jako kontroler domeny + serwer plików

Opisywana tutaj konfiguracja jest niezalecaną przez twórców Samby. Dopuszczają oni jej użycie przy małych domenach gdzie nie ma innych serwerów plików ale mimo to zastrzegają, że mogą wystąpić różne dziwne i niespodziewane sytuacje.

Założenia

Chcemy...

freedp z GUI

Xfreerdp jest obsługiwane z wiersza poleceń, można wygodnie używać go w skryptach. Niestety dla ludzi nietechnicznych jest to uciążliwe a niekiedy stanowi wręcz barierę nie do przeskoczenia. Poniżej przedstawiam skrypt, który wykorzystuje zenity do wyświetlenia okienek z pytaniami d...

RAM-dysk w Linuxie

Pod Linuxem można stworzyć ramdysk na kilka sposobów. Zanim jednak taki ramdysk się stworzy warto zastanowić się czy ma to większy sens. Ogólnie Linuxy robią bardzo dobry użytek leżącej odłogiem pamięci RAM i świetnie buforują wszystkie rządania dostępu do systemu plików. W wiel...

Instalacja dockera pod Debianem

apt install docker.io

Jeżeli mamy skonfigurowany bridge i korzystamy z wirtualizacji przy użyciu libvirt często po instalacji dockera pojawiają się problemy z działaniem sieci. Najprostszym rozwiązaniem (o ile nie korzystamy z ebtables/iptables do kształtowania ru...

Ilość danych zgromadzonych jest w katalogu i zawartych w nim poszczególnych podkatalogach:

du /home/tmp/.mozilla/

tmp@dc:~$ du /home/tmp/.mozilla/
4   /home/tmp/.mozilla/systemextensionsdev
4   /home/tmp/.mozilla/firefox/Pending Pings
4   /home/tmp/.mozilla/firefox/Crash Reports/events
12  /home...

systemd

Systemd w wielu dystrybucjach zastąpił init.d co wiąże się z wieloma zmianami w konfiguracji systemu i uruchamianiu usług.

rc.local

W wielu dystrybucjach brakuje mechanizmu zastępującego plik rc.local w którym umieszczało się zwyczajowo skrypty, które miały zostać jednorazowo uruch...

UEFI i programowy RAID1

W przypadku bootowania systemu na komputerze, który nie obsługuje tradycjnego ładowania z MBR przez BIOS w trybie legacy mogą wystąpić problemy z synchronizacją partycji EFI.

Pierwsza sprawa - partycja EFI zawiera system plików FAT32, jeżeli użyjemy zwykłego RAIDa z mda...

Virsh

Ogólna składnie poleceń virsh wygląda tak: virsh [OPTION]... [ARG]... gdzie domain to nazwa maszyny.

Lista wszystkich maszyn wirtualnych

virsh list --all

Lista uruchomionych maszyn wirtualnych

virsh list

Edycja pliku maszyny

virsh edit domain

Uruchamiani
...

Konsola - ściąga z poleceniami, przydatne programy

Przydatne polecenia:

Backup partycji przy użyciu DD z kompresją bzip2: dd if=/dev/sda3 bs=1M conv=sync | gzip > /mnt/obraz_sda3.gzip gzip -dc obraz_sda3.gzip | dd of=/dev/sda3 bs=1M

pv - pipe view, monitoruje potoki, wyświetla statystki pow...

Operacja na pierwotnym gospodarzu

Zapisujemy plik z dyskiem maszyny wirtualnej - kompresujemy go celem oszczędzenia czasu i miejsca:

gzip -c NAZWA_PLIKU.qcow2 > /media/x/NAZWA_PLIKU.qcow2.gz

Zrzucamy konfigurację gościa do pliku XML:

virsh dumpxml NAZWA_GOŚCIA > NAZWA_GOŚCIA.xml

Otrzymany...

Tunelowanie via SSH lokalne

Możliwość bezpiecznego połączenia się z portem 80 zdalnego komputera:
ssh user@serwer.com -L 8080:127.0.0.1:80

Po wydaniu tego polecenia na lokalnym komputerze port 8080 stanie się początkiem tunelu do portu 80 z maszyny zdalnej. Oznacza to, że otwierając 127.0.0.1:...

ZFS - send receive

ZFS pozwala na wydajne przenoszenie danych między różnymi systemai opartymi o ten system plików. Do przesyłania danych między odległymi komputerami warto skorzystać z opcji zfs send oraz zfs recv. Warto by komputery były połączone VPNem, w przeciwnym przypadku do tunelowania...

Uprawnienia dostępu do systemu plików i Samba

Użytkownicy i grupy

W systemach opartych o Linuxa dostęp do plików jest oparty o uprawnienia związane z przynależnością użytkownika do danej grupy i w specyficznych przypadkach jest modfyikowany poprzez "sticky-bits".

Przy zakładaniu nowego użytkow...

Założenia

Mamy system który bootuje się z EFI. Partycja EFI, boot i root są założone na wolumenach RAID-1 MD. ZFS jest na partycjach osobnych partycjach i ma formę mirrora.

Korzystając z tego, że dane są zduplikowane najpierw podmienimy jeden dysk, wyjęty usuniemy z macierzy i zduplikujemy macie...