Установка Linux (Lubuntu) на нетбук Sony Vaio P

в 19:54, , рубрики: linux, нетбук, Песочница, метки: ,

От делать нечего, а точнее от желания заиметь устройство, чуть более функциональное, чем планшет на 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


* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js