Поработав неделю с флэшки, решил провести работу над ошибками.
Исходя из полученного опыта могу сказать что:
- Необходима файловая система, поддерживающая сжатие
- Необходимо максимально легкое GUI-окружение
Выбор стоял между 3 ФС, поддерживающими сжатие
- jffs2 — ФС для встраиваемых устройств, естественно умеет сжатие и правильную работу с SDD
- reiserfs4 — нативно поддерживается в Linux, умеет сжатие
- btrfs — позиционируется как аналог ZFS и дефолтная ФС для Linux в будущем, умеет сжатие и правильную работу с SDD
Я остановил свой выбор на btrfs, т.к. она умеет работать с SDD-накопителями и не требует обязательной поддержки MTD-устройств при загрузке
В качестве GUI-окружения я выбрал IceWM, т.к. это наиболее любимый мною WM
Итак приступим к установке:
1. Разбиваем флэшку на разделы
- раздел /boot 100Mb ext2
- раздел / 1900Mb btrfs
- раздел /DATA 2000Mb vfat
Раздел /boot обязательно должен быть отформатирован в ext2, т.к. grub не поддерживает загрузку с btrfs без наложения патчей, так же нам не требуется журналирование на этом разделе.
Для создания ФС на корневом разделе нам потребуются btrfs-progs, которые находятся в extra, вы можете скачать их по сети или перенести на флэшке с другого компьютера.
Я устанавливал систему не с диска, а с предустановленного ArchLinux, поэтому мне было несколько проще:
pacman -S btrfs-progs-unstable
mkfs.btrfs -L ARCH /dev/sdb2
mount /dev/sdb2 /mnt
mount /dev/sdb1 /mnt/boot
pacman —root=/mnt -Sy base
Далее редактируем конфигурационные файлы на новой системе:
/mnt/etc/fstab
UUID=XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX / btrfs rw,relatime,compress 0 1
UUID=XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX /boot ext2 defaults 0 1
none /tmp tmpfs defaults,noatime,mode=1777,rw 0 0
none /var/abs tmpfs defaults,noatime,mode=1777,rw 0 0
none /var/log tmpfs defaults,noatime,mode=1777,rw 0 0
Замените XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX на UUID`ы ваших разделов, которые можно посмотреть с помощью команды blkid
/mnt/etc/hosts
дописываем строчку:
127.0.0.1 youhostname
/mnt/etc/locale.gen
раскомментируйте все строки с ru_RU
/mnt/etc/mkinitcpio.conf
MODULES=»crc32c libcrc32c zlib_deflate btrfs»
HOOKS=»base udev usb autodetect pata scsi sata filesystems»
/mnt/etc/rc.conf
LOCALE=»ru_RU.UTF-8″
HARDWARECLOCK=»localtime»
TIMEZONE=»Asia/Yekaterinburg»
KEYMAP=»ruwin_cplk-UTF-8″
CONSOLEFONT=ruscii_8x16
CONSOLEMAP=
USECOLOR=»yes»
/mnt/boot/grub/menu.lst
timeout 5
default 0
color light-blue/black light-cyan/blue
title Arch Disk0
root (hd0,0)
kernel /vmlinuz26 root=/dev/disk/by-uuid/XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX vga=773 ro compress
initrd /kernel26-btrfs.img
остальное на ваше усмотрение
далее:
cd /mnt
mount —bind /dev /mnt/dev
mount -t proc proc /mnt/proc
chroot /mnt
locale-gen
mkinitcpio -g kernel26-btrfs.img
mv kernel26-btrfs.img /boot/
grub
ставим груб в корень флэшки, у меня это /dev/sdb
После перезагрузки компьютера с флэшки попадаем в консоль свежеустановленного ArchLinux
Если не можете загрузиться, поменяйте номер диска в menu.lst
входим как root без пароля
Теперь можно приступать к настройке системы и установке необходимого ПО
pacman -Sy mc htop xorg xf86-input-synaptics icewm menumaker tilda
в ~/.xinitrc пишем
#!/bin/bash
exec icewm-session
~/.icewm/startup
#!/bin/bash
rm -f ~/.icewm/menu
mmaker -f IceWM
tilda &
exit 0
Даем ему права на исполнение chmod 755 ~/.icewm/startup
Конфигурируем Xorg
X -configure
mv ~/xorg.conf.new /etc/X11/xorg.conf
удаляем в нем строчку BusID «PCI:0:1:0″
запускаем startx
Если все сделано правильно, то у вас запустится IceWM
Теперь можно поставить весь софт, который вам необходим для работы.
Рекомендую особо не увлекаться с установкой кучи браузеров, мессенджеров и т.д.
Для себя я выбрал софт с наименьшими требованиями к дисковому пространству:
Browser — Opera
IM — Pidgin-light
Editor — Vim
Viewer — GQview
IRC — irssi
FileManager — Midnight Commander
+ я поставил софт для диагностики сети, wine, qemu, samba
почистив кэш pacman, каталоги info и man у меня система заняла 825 мегабайт, для сравнения на ext3 меньшее количество софта едва уместилось в 1900 мегабайт.
В итоге у меня осталось более 900 мегабайт на корневом разделе, которыми я могу воспользоваться для установки дополнительного ПО или хранения данных.
OpenOffice ставить не стал, мне хватает функционала Google.Docs, но при желании места для него предостаточно.