Skip to content

Artykuły z miesiąca: Grudzień 2015

Kopia struktury dysku twardego

Wszyscy wiedzą, że zabawa z dyskiem zwykle kończy się tragicznie dla zawartych na nim danych. W tym wpisie spróbujemy się przyjrzeć sytuacjom, które nie jednego użytkownika linux'a potrafią przyprawić o zawał serca. Chodzi generalnie o uszkodzenie struktury dysku, oczywiście tylko tej programowej. Na błędy fizyczne nie możemy zbytnio nic poradzić. Natomiast jeśli chodzi o sferę logiczną, to mamy tutaj dość duże pole do popisu i jesteśmy w stanie się zabezpieczyć przed wieloma krytycznymi sytuacjami. Postaramy się tutaj omówić to jak wykonać kopię dysku. Taka kopia będzie miała tylko kilka (ew. kilkanaście) MiB, w skład której wchodzić będzie superblok systemu plików, nagłówki zaszyfrowanych partycji LUKS, struktura LVM i tablica partycji. Uszkodzenie każdego z tych powyższych uniemożliwia nam dostęp do danych zgromadzonych na dysku.

Czytaj cały wpis

Zmiana rozmiaru dysków w strukturze LVM

Logical Volume Manager (LVM), czyli menadżer voluminów logicznych w systemach linux, to mechanizm, który jest w stanie podzielić jedną partycję fizyczną na szereg dysków logicznych. Każdy z tych dysków może być programowo dostosowany bez potrzeby edycji czy zmiany tablicy partycji fizycznego dysku. Dzięki LVM jesteśmy w stanie obejść kilka ograniczeń płynących z wykorzystywania tablicy partycji MS-DOS. Głównie chodzi tutaj o 4 partycje podstawowe, które mieszczą się w MBR. Jeśli zdecydowaliśmy się na wykorzystywanie LVM, to w pewnym momencie może okazać się, że niektóre voluminy mają zbyt duże lub też zbyt małe rozmiary. Trzeba będzie je zatem dostosować i w tym wpisie postaramy się ten proces zasymulować.

Czytaj cały wpis

Zmiana rozmiaru kontenera LUKS

Ci z nas, którzy zabezpieczają swoje systemy przy pomocy technik kryptograficznych wiedzą, że taki system trzeba traktować nieco inaczej niż ten, który nie jest w żaden sposób zaszyfrowany. Gdy mamy na swoim dysku kilka kontenerów LUKS (czy też TrueCrypt), problematyczna może się okazać zmiana rozmiaru tego typu partycji. Praktycznie żadne narzędzia graficzne, ewentualnie inne automaty, nie są w stanie nas przez ten proces bezstresowo przeprowadzić. Musimy zatem skorzystać z niskopoziomowych aplikacji, takich jak fdisk czy cryptsetup , by ten rozmiar sobie dostosować. Problem w tym, że nieumiejętne operowanie na tych narzędziach może skończyć się tragicznie dla zgromadzonych na dysku danych. W tym wpisie postaram się opisać cały proces zmiany rozmiaru zaszyfrowanego kontenera LUKS wliczając w to również dostosowanie partycji i jej systemu plików.

Czytaj cały wpis

Zmiana rozmiaru partycji FAT32 pod linux'em

Partycje mające system plików FAT32 są głównie wykorzystywane w przypadku pendrive i innych pamięci flash, gdzie nie mamy do czynienia ze sporą ilością danych czy też dużymi plikami. Czasem się zdarza tak, że układ partycji, który chcieliśmy zrobić, nie wyszedł nam tak jak powinien i musimy tego pendrive jeszcze raz przeformatować. Pół biedy, gdy na nim nie ma żadnych danych lub mamy możliwość zgrania ich na osobny dysk. Natomiast w przypadku, gdy nie możemy z jakiegoś powodu skorzystać z w/w opcji, to musimy liczyć się z utratą danych. Oczywiście, możemy także spróbować zmienić rozmiar takiej partycji i nic nie powinno się stać znajdującym się na niej danym. W tym wpisie postaramy się przejść przez proces zmiany rozmiaru partycji mającej system plików FAT32 i zobaczymy czy nasz linux poradzi sobie z tym zdaniem bez większego problemu.

Czytaj cały wpis

Zmiana rozmiaru partycji EXT4

Jeśli jeszcze nie dokonaliśmy migracji systemu plików z EXT2/3 na EXT4, to powinniśmy rozważyć tę kwestię z przyczyn czysto praktycznych. W tym wpisie nie będziemy sobie głowy zawracać migracją między poszczególnymi wersjami systemu plików z rodziny EXT, a raczej skupimy się na tym jak zmienić rozmiar partycji, której systemem plików jest właśnie EXT4. Bawienie się rozmiarem partycji w tym przypadku niczym zbytnio się nie różni w stosunku do omawianego wcześniej systemu plików NTFS. Będziemy wykorzystywać tylko nieco inne narzędzia.

Czytaj cały wpis

Zmiana rozmiaru partycji NTFS pod linux'em

Zmiana rozmiaru partycji, nie tylko tej zawierającej system plików NTFS, nie sprawia w dzisiejszych czasach praktycznie żadnych problemów. Mamy przecie do dyspozycji takie narzędzia jak gparted, które w dużej mierze automatyzują cały proces tworzenia i usuwania partycji, czy też zmiany ich rozmiaru. W tym wpisie przyjrzymy się temu procesowi z bliska, z tym, że nie będziemy korzystać z żadnych graficznych nakładek. Wszystkie kroki postaramy się zreprodukować ręcznie z poziomu konsoli przy pomocy takich narzędzi jak fdisk czy ntfsresize .

Czytaj cały wpis

Konfiguracja interfejsów IFB w linux'ie

Ten wpis również będzie poświęcony tematyce kontroli i kształtowania ruchu sieciowego w linux'ie, z tym, że ograniczymy się tutaj do konfiguracji interfejsów IFB. Działają one na podobnej zasadzie co interfejsy IMQ. Niewątpliwą zaletą interfejsów IFB jest fakt, że są one natywnie wspierane przez kernel linux'a, przez co ich obsługa jest dziecinnie prosta. Wadą jest z kolei to, że nie do końca damy radę kształtować ruch przychodzący do naszej maszyny. Tak czy inaczej, postaramy się skonfigurować te interfejsy i zobaczymy co z nich idzie wycisnąć.

Czytaj cały wpis

Kształtowanie ruchu sieciowego (Traffic Control)

Każdy z nas chciałby, aby jego sieć działała możliwie szybko i bezproblemowo. W przypadku, gdy łącze nie jest zbytnio obciążone, a my jesteśmy jedynym użytkownikiem internetu, to nie doświadczymy raczej żadnych problemów z połączeniem. Rzecz w tym, że im więcej użytkowników ma nasza sieć, tym większe prawdopodobieństwo, że zostanie ona przeciążona, tj. będziemy chcieli przesyłać więcej danych niż sieć jest w stanie obsłużyć. W ten sposób zaczną pojawiać się kolejki pakietów na interfejsach, których obsługa zajmuje trochę czasu. Rosą zatem opóźnienia, które są bardzo odczuwalne w momencie, gdy ktoś lubi sobie pograć w różnego rodzaju gry online. Innym problemem może być sieć P2P, gdzie pojedynczy host z naszej sieci może nawiązywać dziesiątki czy nawet setki połączeń i tym samym zapychać łącze nie dając szansy innym użytkownikom na komfortowe korzystanie z internetu. W obu przypadkach może nam pomóc kształtowanie ruchu sieciowego (Traffic Control), która jest w stanie nadać pakietom odpowiedni priorytet, tak by część z nich nie musiała czekać zbyt długo w kolejce. W tym wpisie przyjrzymy się bliżej temu mechanizmowi.

Czytaj cały wpis

Konfiguracja interfejsów IMQ w linux'ie

W linux'ie, kształtowanie przychodzącego ruchu sieciowego stwarza dość poważne problemy. Na dobrą sprawę, obecnie w kernelu nie ma żadnego mechanizmu, który byłby w stanie to zadanie realizować. Istnieją, co prawda, interfejsy IFB ale za ich pomocą jesteśmy w stanie z powodzeniem kształtować jedynie ruch wychodzący. W przypadku pakietów napływających, możemy jedynie ograniczyć im przepustowość. W tym powyższym linku jest wzmianka, że te interfejsy IFB są następcą interfejsów IMQ. Niemniej jednak, ten drugi projekt zdaje się działać, choć nie jest obecnie wspierany przez kernel linux'a. W tym wpisie postaramy się skonfigurować działające interfejsy IMQ, tak, by za ich pomocą skutecznie kształtować ruch przychodzący.

Czytaj cały wpis

Ograniczanie zasobów procesom przez cgroups

Nasze komputery obecnie mają dość pokaźne zasoby obliczeniowe. Jeszcze nie tak dawno temu wyposażenie maszyny w 32 GiB pamięci RAM, czy też 8 rdzeni było czystą abstrakcją. Wydawałoby się, że te powyższe parametry zaspokoją każdego. Niemniej jednak, nie ważne jak szybki i rozbudowany będzie nasz PC, to nam zawsze będzie mało. Mamy dwa rdzenie, to chcemy cztery. Mamy cztery, to chcemy osiem, itd. Poza tym, szereg aplikacji realizuje co raz więcej zadań i staje się bardziej wymagająca z każdym mijającym rokiem. Jeśli nie przeprowadzamy modernizacji sprzętu, to może się okazać, że w niedługim czasie zabraknie nam pamięci albo pewne operacje będą wykonywane bardzo wolno. W sporej części przypadków nie obędzie się bez wymiany podzespołów ale nawet w przypadku, gdy mamy spory zapas zasobów systemowych, to poszczególne procesy rywalizują o nie ze sobą. Często bywa tak, że chcielibyśmy, aby konkretny proces wykonał się szybciej, a to pociąga za sobą, np. zmianę priorytetów w dostępie do rdzeni procesora. W linux'ie jest mechanizm zwany cgroups, który potrafi ograniczyć zasoby całym aplikacjom bez względu na to ile ona by miała procesów. W tym wpisie postaramy się przebrnąć przez proces konfiguracji tego mechanizmu i spróbujemy wyprofilować sobie nasz system.

Czytaj cały wpis

Strona 1 z 212