A tool for storage configuration on GNU/Linux OS
Nástroj pro konfiguraci datových úložišť OS GNU/Linux

Description in English

The GNU/Linux OS provides many data storage technologies that can be layered one
on each other providing variability allowing achieving great parameters for data
processing but requiring good knowledge of a lot of tools which makes the
configuration a hard task. The goal of this thesis is to implement a tool that
would make storage configuration easier by providing user interfaces working
with various storage technologies. It is expected that the tool will make use of
the blivet library that covers the biggest part of the GNU/Linux storage
technologies from the available libraries, will be implemented in the Python
programming language, will be focused on reusability allowing its use in other
tools, e.g. the Anaconda OS installer, and it will be licensed under some open
source license.

The student is expected to:
1. become familiar with the GNU/Linux storage technologies
2. become familiar with the blivet library, it’s architecture and principles
3. design a tool for storage configuration with the focus on extensibility and
reusability
4. implementation of the basic functionality of the tool – configuration of
standard disk partitions and LVM
5. implementation of the GUI with the focus on user experience and reusability
by other tools
6. creation of documentation

Description in Czech

Operační systém GNU/Linux poskytuje velmi mnoho technologií pro práci s datovými
úložišti, přičemž tyto technologie mohou být využívány ve vrstvách nad
sebou. Tato variabilita umožňuje dosahování velmi vysokých parametrů při práci s
daty, avšak počáteční konfigurace datových úložišť vyžaduje dobrou znalost mnoha
nástrojů, a je tak velmi složitou operací. Cílem práce je implementace základní
verze nástroje usnadňujícího práci s datovými úložišti, jenž bude
prostřednictvím uživatelských rozhraní umožňovat vytvoření nebo změny
konfigurací využívajících různé technologie. Očekává se, že nástroj bude
využívat knihovnu blivet, jež v současné době pokrývá zřejmě nejširší rozsah z
technologií poskytovaných systémem GNU/Linux, bude implementován v programovacím
jazyce Python, bude se zaměřovat na znovupoužitelnost umožněním jeho využití
jinými nástroji, např. instalátorem OS Anaconda, a bude licencován některou z
open source licencí.

Od studenta jsou očekávány následující kroky:
1. seznámení s technologiemi datových úložišť na OS GNU/Linux
2. seznámení s knihovnou blivet, její architekturou a principy
3. návrh nástroje pro konfiguraci datových úložišť s ohledem na znovupoužitelnost
a rozšiřitelnost
4. implementace alespoň základní funkctionality nástroje – práci se
standardními diskovými oddíly a technologií Logical Volume Management (LVM)
5. implementace grafického uživatelského rozhraní se zaměřením na uživatelskou
přívětivost a znovupoužitelnost rozhraní jinými nástroji, např. instalátorem
Anaconda
6. tvorba dokumentace umožňující:
a) snadné a rychlé zaškolení uživatelů pro používání nástroje
b) snadné a rychlé zaškolení vývojářů jiných projektů pro využití nástroje
c) snadné pokračování ve vývoji nástroje autorem i jinými přispěvateli

Tags:
anaconda, blivet, btrfs, gtk, lvm, python, raid, storage, ux

Comments

Vratislav Podzimek

November 25, 2016

This thesis topic was worked out by Vojtěch Trefný - https://dip.felk.cvut.cz/browse/details.php?f=F8&d=K104&y=2014&a=trefnvoj&t=bach