czwartek, 30 czerwca 2011

Polonizacja Ubuntu

Aby włączyć wsparcie dla języka polskiego:

sudo dpkg-reconfigure locales

Należy wybrać pl_PL.ISO-8559-2 (Warty) pl_PL.UTF-8 UTF-8 (Hoary i późniejsze)

Można ustawić wybrane locale jako domyślne.

Ubuntu 5.04 Hoary

Aby uzyskać polskie tłumaczenia większości aplikacji w tej wersji ubuntu należy doinstalować pakiety language-pack-pl i language-pack-pl-base:

sudo apt-get install language-pack-pl language-pack-pl-base

Jeśli chcemy aby spolonizowane zostały również takie aplikacje jak openoffice.org (z polskimi słownikami), mozilla-firefox/thunderbird wystarczy doinstalować metapakiet language-support-pl:

sudo apt-get install language-support-pl

KDE

W przypadku środowiska KDE należy zainstalować odpowiedni pakiet i18n:

sudo apt-get install kde-i18n-pl

OpenOffice.org

Aby uzyskać polski interfejs użytkownika:

sudo apt-get install openoffice.org-l10n-pl

Aby korzystać z polskiego słownika ortograficznego:

sudo apt-get install myspell-pl

Mozilla Firefox

Aby uzyskać polski interfejs użytkownika trzeba zainstalowac odpowiedni plik lokalizacyjny:

sudo apt-get install mozilla-firefox-locale-pl-pl

środa, 22 czerwca 2011

Szyfrowanie partycji /home w Linuxie przy użyciu TrueCrypt

Zaczynając pisać poprzedni post w zasadzie miałem zamiar napisać o szyfrowaniu katalogu domowego przy użyciu TrueCrypt.
W czym zatem jest problem? Ano TrueCrypt nie wspiera dla Linuxa ‘full disk encryption’, czyli zaszyfrowania całego dysku twardego (partycji), włączając system operacyjny. Pod Windows podobno działa to dobrze choć sam nie sprawdzałem. Przy odrobinie wysiłku można sobie jednak z tą niedogodnością poradzić.

Na przykład na moim laptopie dysk jest podzielony w następujący sposób:
sda1 – Windows (ntfs)
sda5 – /
sda6 – /home
sda7 – /media/data (multimedia, itp.)
Na sda1 nie trzymam nic ważnego, no chyba że komuś będzie zależało na save’ach mojej ulubionej gry ;)

sda5 to root filesystem. A więc w zasadzie same pliki dystrybucyjne, nic co można było by uznać za warte zabezpieczenia przed osobami trzecimi.

sda6 to partycja /home, a więc tutaj trzymane są między innymi e-maile, historia komunikatorów, ustawienia przeglądarki (zapamiętane hasła..), i inne różne pliki używane do codziennej pracy. Zaszyfrowanie sda6 w całości to zdecydowanie dobry pomysł.

Zostaje jeszcze sda7 na którym ląduje np. muzyka czy zdjęcia. Generalnie też warto zaszyfrować, zwłaszcza że tutaj nie ma takiego problemu jak z /home. /media/data można sobie spokojnie montować kożystając z GUI będąc już zalogowanym do systemu, dokładnie tak jak w przypadku pamięci flash.

Problem z partycją /home polega na tym że trzeba ją podmonotować przed zalogowaniem użytkownika do systemu. Można to zrobić podczas startu systemu. W ten sposób że ładowanie poszczególnych usług zostaje przerwane i pojawia się prośba o podanie hasła do zaszyfrowanych partycji. Oczywiście nie zadziała to dobrze jeśli jest używany domyślny splash screen (Ubuntu). Ja akurat i tak go zawsze wyłączam bo lubię widzieć co się dzieje podczas startu. Bardziej eleganckie było by zintegrowanie tej funkcjonalności z managerem logowania, lub montowanie bezpośrednio przed zalogowaniem użytkownika na podstawie hasła systemowego. Mi jednak wystarcza takie naprostsze rozwiązanie jak opisane poniżej.

Żeby wyłączyć splash screen – w /boot/grub/menu.lst wystarczy skasowac słowo ‘splash’ przy definicji jądra z którego korzystamy.

Następnie żeby nie stracić danych które aktualnie znajduą się na /home, warto przeżucić je na drugą partycję. Stary dobry tar nam w tym pomoże.

cd /media/data/backups/
tar -cpf home.tar /home/

Kolejny krok to utworzenie nowego wolumenu TrueCrypt na partycji sda6. Uwaga: dane znajdujące się na partycji zostaną skasowane. Dlatego pierwszym krokiem była archiwizacja wszystkiego z /home. Po odpaleniu systemu, na ekranie logowania przełączamy się na konsolę kombinacją klaszy , logujemy i odmontowujemy partycję /home i zamieniamy na wolumen TrueCrypt.

# umount /dev/sda6

# truecrypt -c /dev/sda6

Obecnie TrueCrypt podczas tworzenia wolumenu zaoferuje sformatowanie go w FAT. My oczywiście wolimy coś lepszego, np. ext3. Dlatego można spokojnie wybrać „None”. Po zakończeniu tworzenia podłączamy wolumen i formatujemy go na ext3.

# truecrypt --filesystem=none /dev/sda6 /home

# truecrypt -l

1: /dev/sda7 /dev/mapper/truecrypt1 /media/data

2: /dev/sda6 /dev/mapper/truecrypt2 -

‘truecrypt -l’ wyświetlił nam listę podłączonych wolumenów. Wnioskujemy z niej, że urządzenie które chcemy sformatować to ‘/dev/mapper/truecrypt2′

# mkfs.ext3 /dev/mapper/truecrypt2

Dalej pozostaje już tylko podmontowanie zaszyfrowanego systemu plików pod /home i przekopiowanie plików z przygotowanego w pierwszym kroku archiwum

# truecrypt -d /dev/sda6

# truecrypt /dev/sda6 /home

# cd /

# tar -xpf /media/data/backups/home.tar

Po zakończeniu można wrócić do ekranu logowania i zalogować się jak zazwyczaj.

Niedogodność polega na tym że przy ponownym uruchomieniu komputera trzeba będzie ponownie podmontować partycję /home. Przełączanie się na konsole tekstowe i wpisywanie ręcznie komend za każdym razem to średnio fajny pomysł, dlatego uprościmy sobie życie dodając to do skryptów startowych.

W /etc/init.d wystarczy utworzyć nowy skrypt, np. truecrypt_mount o treści (skopiowanej z rc.local)

#! /bin/sh
### BEGIN INIT INFO
# Provides: truecrypt_mount
# Required-Start:
# Required-Stop:
# Default-Start:
# Default-Stop:
# Short-Description: Run truecrypt_mount
### END INIT INFO

PATH=/sbin:/usr/sbin:/bin:/usr/bin

. /lib/init/vars.sh
. /lib/lsb/init-functions

do_start() {
truecrypt -t -k „” –protect-hidden=no /dev/sda6 /home
truecrypt -t -k „” –protect-hidden=no /dev/sda7 /media/data
}

case „$1″ in
start)
do_start
;;
restart|reload|force-reload)
echo „Error: argument ‘$1′ not supported” >&2
exit 3
;;
stop)
;;
*)
echo „Usage: $0 start|stop” >&2
exit 3
;;
esac

Taki skrypt trzeba uczynić wykonywalnym i dodać do skryptów startowych

# chmod 666 truecrypt_mount

# update-rc.d truecrypt_mount start 99 S .

W procedurze do_start() wpisujemy polecenia które chcemy aby wykonały się podczas startu systemu.

Teraz podczas startu komputera, jeszcze przed odpaleniem trybu graficznego zostaniemy poproszeni przez TrueCrypt o podanie haseł do naszych zaszyfrowanych wolumenów.