11.07.2015 Views

ПРИНТЕРЫ СЕГОДНЯ - Xakep Online

ПРИНТЕРЫ СЕГОДНЯ - Xakep Online

ПРИНТЕРЫ СЕГОДНЯ - Xakep Online

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

ХАКЕР 04 /171/ 2013 Подушка безопасности 119GRUB И BTRFSСкорее всего, при загрузке с раздела Btrfs Grub будетругаться, что-де разреженные файлы недопустимы,и просить нажать любую клавишу. Чтобы это сообщениене выскакивало, открой в любимом текстовомредакторе файл /etc/grub.d/00.header и закомментируйтам следующую строчку:1. Все необходимые для работы запускаемой программы приложенияи библиотеки ты определяешь сам. Это наиболеегибкий способ, но и наиболее замороченный.2. Chroot-окружение формируется динамически. Одно времясуществовал проект Isolate, который это и делал, но нынчепо неизвестным причинам он канул в Лету.3. Развертывание базовой системы в указанном каталогеи чрутинг на него — его я и опишу.Для начала установим пакет debootstrap, который используетсякак раз с этой целью.$ sudo apt-get install debootstrapЗатем создадим каталог, в котором будет находиться chroot,и развернем базовую систему quantal в нем. В общем-то, егоможно создать где угодно, но традиционное место его размещения— /var/chroot. Поскольку большинство следующих командтребуют права root, имеет смысл переключиться на аккаунтсуперпользователя:$ sudo su -# mkdir /var/chroot && cd /var/chroot# debootstrap quantal ./quantal-chr1http://mirror.yandex.ru/ubuntuРазберем последнюю команду. Она разворачивает релизубунты Quantal в отдельный каталог quantal-chr1 (мало ли, вдругпонадобится еще один chroot) с ближайшего зеркала. Послезавершения развертывания необходимо отобразить файловыесистемы procfs, sysfs и (если это необходимо) каталог /devна данное поддерево. В случае если chroot будет использоватьсядля текстовых приложений только до перезагрузки, должнохватить следующих команд:Огнелис в песочнице— об этом говоритзаголовокINFOКоманды Btrfs имеютстандартный и сокращенныйвид. Например,команду «btrfs subvolumesnapshot» можно записатькак «btrfs su sn».Сравнение скоростикомпиляции на ext4и на Btrfsif [ -n "\${have_grubenv}" ]; then if [ -z"\${boot_once}" ]; then save_env recordfailfi; fiСобственно, переменная recordfail необходима,чтобы предотвратить циклическую перезагрузку,для чего она при старте взводится, а затем, в случаеуспешной загрузки, устанавливается в 0. Хоть комментироватькод, отвечающий за эту процедуру, инежелательно, но думаю, что на настольной системевполне можно обойтись и без него.# mount --bind /proc /var/chroot/quantal-chr1/proc# mount --bind /sys /var/chroot/quantal-chr1/sys# mount --bind /dev /var/chroot/quantal-chr1/devЕсли же требуется, чтобы данное поддерево работало и послеперезагрузки, добавь соответствующие строки в /etc/fstab.Ну а для работы некоторых графических приложений такжеследует отобразить каталоги /tmp и /var/run/dbus. После этогоуже можно вводить следующую команду, которая, собственно,и делает chroot:# chroot /var/chroot/quantal-chr1/И ты уже заперт в нем. Для того чтобы не спутать chroot с реальнойсистемой, рекомендую изменить приглашение оболочки.Для примера давай установим и запустим в chroot Skype.Для этого потребуется установить на хостовой системе пакетschroot, который позволяет упростить запуск программв chroot-окружении:# apt-get install schrootЗатем добавим запись в файл /etc/schroot/schroot.conf.В моем случае я добавил следующую:/etc/schroot/schroot.conf[quantal-skype]description=Quantal Skypedirectory=/var/chroot/quantal-chr1priority=3users=romgroups=romroot-groups=root,romПробрасываем /dev, /proc, /sys, /tmp и /var/run/dbus —как это сделать, смотри выше. Добавим в chroot пользователяи группу skype — при этом желательно, чтобы uid и gid совпадалис uid/gid основного пользователя реальной системы (в моемслучае — rom), для чего набираем следующие команды:

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!