От делать нечего, а точнее от желания заиметь устройство, чуть более функциональное, чем планшет на Android'e решил прикупить себе б/у нетбук Sony Vaio P, уж очень привлек он меня габаритами.
Досталась мне модель VGN-P39VRL с «Атомным» процессором быстротою в 2ГГц и 128Гб SSD-диском. Ниже — мой опыт по установке Linux (точнее, Lubuntu) на данное устройство:
1. Выбор дистрибутива
Lubuntu. Все остальное на мой взгляд тяжеловесно — ведь нам нужны не шашечки, а ехать. Поэтому сюда: lubuntu.org
2. Установка
Со стандартного образа не удалось запуститься в графическом режиме, X.Org не стартовал, пришлось воспользоваться alternate.
Установка стандартная, особый момент: чтобы в дальнейшем пользоваться hibernate, нужно создать swap-раздел размером не меньше, чем объем оперативки.
3. Обновление
После установки — автоматом запускается Менеджер обновлений. Прежде чем запускать проверку обновлений, лучше зайти в настройки Менеджера и подключить все доступные репозитории — хуже от этого не будет, все равно по ходу пьесы придется еще подключать кучу ppa.
Потом — обновление.
4. Настройка сети.
Во время установки установщик попросил указать сеть, которая будет использоваться. Я указал свой домашний WiFi (имя сети и WPA-ключ). Побочный эффект — этот интерфейс прописался в
/etc/network/interfaces (причем ключ — открытым текстом!) и стал недоступен для управления Network Manager. Чтобы исправить этот недостаток, нужно сделать следующие вещи:
4.1.
Удалить (или закомментировать с помощью #) описание интерфейса из файла /etc/network/interfaces
4.2.
В настройках Network Manager (файл /etc/NetworkManager/NetworkManager.conf) указать:
[ifupdown]
managed=true
Перегрузиться.
5. Управление частотой процессора
Почему-то по-умолчанию не ставится модуль управления частотой процессора, поэтому он шарашит на максимальной частоте. Чтобы это исправить, устанавливаем:
sudo apt-get install cpufreqd cpufrequtils
6. Установка драйверов для видео
Информация здесь: ubuntuforums.org/showthread.php и здесь: wiki.ubuntu.com/HardwareSupportComponentsVideoCardsPoulsbo
Для версии 11.10 оптимальный вариант — драйвер EMGD. Так как в 12.04 — новая версия X.Org, придется вместо EMGD использовать PCB-GFX, который пока не поддерживает аппаратного ускорения 3D и видео, что меня удручает.
6.1.
Ставим драйвера
sudo add-apt-repository ppa:gma500/emgd110
sudo apt-get update
sudo apt-get install emgd-support
6.2.
Меняем файл конфигурации. Из-за экзотического разрешения экрана (1600х768), стандартный конфиг не подходит. Поэтому, конфиг берем отсюда: paste.ubuntu.com/877399/, обзываем 10-emgd.conf и копируем в /usr/share/X11/xorg.conf.d/ (с заменой, если там что-то было одноименное).
6.3.
Настройка спящего режима.
Ставим пакет acpi-support:
sudo apt-get install acpi-support
Качаем файл paste.ubuntu.com/878451/, обзываем его acpi-support и заменяем файл в /etc/default
6.4.
Настраиваем регулировку яркости.
Проверяем, что модуль ядра, отвечающий за регулировку яркости (emgdbl), добавлен в /etc/modules. Если нет, добавляем.
В /etc/modprobe.d/blacklist-emgd.conf добавляем модуль poulsbo, который нам мешает:
blacklist poulsbo
Вносим изменения в конфиг загрузчика, чтобы передать правильный параметр ядру:
файл /etc/default/grub, в строку GRUB_CMDLINE_LINUX_DEFAULT нужно записать acpi_backlight=video. Соответственно, если было написано что-то другое, изменить.
Обновить настройки загрузчика, запустив
sudo update-grub
Настройка всего, что связано с видео завершена, можно пробовать перегружаться
7. Энергопотребление
7.1.
Хороший сайт lesswats.org
7.2.
Powertop — неплохая утилитка, которая показывает энергопотребление
8. Оптимизация под SSD
8.1.
Опции монтирования файловой системы. Рекомендуется добавить noatime,nodiratime,discard
ко всем ext4 разделам в /etc/fstab
У меня правда при добавлении discard к / перестает грузиться система, так что здесь нужно осторожнее быть
8.2.
Настраиваем отложенную запись. В /etc/sysctl.conf добавляем строки
vm.laptop_mode = 5
vm.dirty_writeback_centisecs = 6000
8.3.
Меняем планировщик ввода/вывода на noop:
в /etc/default/grub в строке GRUB_CMDLINE_LINUX_DEFAULT добавляем elevator=noop, после чего запускаем
sudo update-grub
8.4.
Переносим временные файловые системы в память. Для этого открываем /etc/fstab и добавляем туда строки
tmpfs /var/lock tmpfs defaults 0 0
tmpfs /tmp tmpfs defaults 0 0
tmpfs /var/tmp tmpfs defaults 0 0
8.5.
Говорим системе больше использовать оперативу, чем swap: в /etc/sysctl.conf добавляем строку
vm.swappiness = 10
8.6.
Практически все эти советы с более подробным описанием есть в статье: habrahabr.ru/post/129551/, откуда я их и почерпнул
9. Оптимизация
9.1.
Хорошая статья vasilisc.com/speedup_ubuntu
9.2.
Добавить в /etc/fstab для разделов в ext4 опции commit=100,barrier=0
9.3.
Включаем zRam (компрессированный раздел подкачки в памяти):
sudo add-apt-repository ppa:shnatsel/zram
sudo apt-get update
sudo apt-get install zramswap-enabler
9.4.
Обходное решение для бага ядра на повышенное энергопотребление:
В /etc/default/grub в строке GRUB_CMDLINE_LINUX_DEFAULT добавляем
pcie_aspm=force
Не забываем сделать
sudo update-grub
9.5.
Ставим ядро от Liquorix с полезными патчами:
echo "deb liquorix.net/debian sid main" | sudo tee /etc/apt/sources.list.d/liquorix.list
echo "deb-src liquorix.net/debian sid main" | sudo tee -a /etc/apt/sources.list.d/liquorix.list
sudo apt-get update
sudo apt-get install '^liquorix-([^-]+-)?keyring.?'
sudo apt-get install linux-image-liquorix-686 linux-headers-liquorix-686
Есть одна особенность. В ядре 3.2 был переименован параметр модуля zram num_devices в zram_num_devices, поэтому после обновления zRam перестал работать. Чинится просто: в файле /etc/init/zramswap.conf строку
modprobe zram num_devices=$num_cpus
меняем на
modprobe zram zram_num_devices=$num_cpus
9.6.
Оптимизация питания с помощью laptop-mode-tools.
Ставим собственно пакет
sudo apt-get install laptop-mode-tools
Как ни странно, пакет из Ubuntu 11.10 не поддерживает ядра ветки 3.x. Исправляем руками: в файле /usr/sbin/laptop_mode ищем строки
case "$KLEVEL" in
"2.4" ) ;;
"2.6" ) ;;
*)
log "ERR" "Unhandled kernel version: $KLEVEL ('uname -r' = '$(uname -r)')" >&2
exit 1
;;
и между строк
"2.6" ) ;;
*)
вставляем строки
"3.0" ) ;;
"3.1" ) ;;
"3.2" ) ;;
"3.3" ) ;;
(чтобы уж наверняка).
После этого можно поковырять файлы настройки в /etc/laptop-mode/laptop-mode.conf и /etc/laptop-mode/conf.d/*
10. Всяко-разно
10.1.
Баг с пустым пространством в lxpanel
После просыпания ноутбука в lxpanel в системном трее появляется пустое место. Чтобы его убрать в /etc/pm/sleep.d создаем файл с произвольным названием (я назвал 10_lxpanel-restart) и вставляем туда:
#!/bin/bash
case "$1" in
suspend|hibernate)
#do nothing
;;
resume|thaw)
export DISPLAY=:0
sleep 5 && lxpanelctl restart & #Delayed so the battery icon can finish wrecking shop.
;;
*)
exit 1
;;
esac
exit 0
На всякий случай делаем файл исполнимым:
sudo chmod a+x /etc/pm/sleep.d/10_lxpanel-restart
На текущий момент пока все. Безуспешно пытался завести встроенный GPS, но так как не особо он мне и нужен, пока оставил это занятие.
Автор: A1astor