Руководство по установке, двойной загрузке с windows, настройке и оптимизации Calculate Linux на нетбуке ASUS N10J

Введение

Руководство подготовлено с целью помощи владельцам asus n10j в установке и настройке операционной системы линукс. Материал написан в силу моих знаний на данный конкретный период времени. Все, что Вы здесь прочитаете, можете использовать только на свой страх и риск.
С уважением, Чуклимов Алексей.

Благодарности

Выражаю искреннюю признательность Сергею Сиделеву за помощь в доработке руководства. Не все еще сумел скорректировать, но и руководство еще не полностью готово.

Почему Calculate?

Семь крепких причин ЗА дистрибутив Calculate Linux для меня лично:
# Можно установить систему не только используя командную строку, но и с помощью удобного графического установщика, что позволяет установить по-настоящему серьезную систему даже новичку.
# Дистрибутив поддерживает как установку предскомпилированных разработчиками пакетов с версии Calculate linux 11.0, так и компиляцию под практически любую архитектуру.
# Оптимизация и настройка системы масштабируема. Можно настроить и оптимизировать все и вся, как все вместе так и по отдельности (ветка основана на знаменитом и очень быстром дистрибутиве Gentoo).
# Есть несколько заранее подготовленных вариантов дистрибутивов (Calculate Directory Server, Calculate Linux Desktop, Calculate Media Center, Calculate Linux Scratch), уже изначально заточенных под решение конкретных задач.
# Скорость развития Calculate. Думаю я не ошибусь, если скажу, что здесь практически всегда уже есть в наличии последние стабильные версии важных системных пакетов в хранилище. А это как минимум говорит о непрерывной поддержке дистрибутива на деле.
# Сильная команда разработчиков, хорошая техническая поддержка, отлично спроектированный сайт, IRC чат для круглосуточного(!) решения возникающих вопросов, блоги, форумы, видеоуроки и множество других удобных современных сервисов.
# На основе этого дистрибутива можно строить системы любого уровня сложности и масштабируемости, основываясь на хорошей документации к системе. Документация постоянно пополняется.

Загрузка с установочного диска и разбивка разделов диска

Ну что ж пожалуй начнем. Для первого этапа нам потребуется скачать самый последний желаемый вариант дистрибутива с офицального сайта разработчиков. Рекомендую скачивать образы из раздела еженедельных срезов дистрибутива, содержащих все последние изменения (раздел Stages). В этом случае Ваше последующее обновление будет наиболее быстрым. Далее записываем скачанный образ на DVD или USB диск. Чтобы наиболее просто в будущем подключить загрузку windows, ее желательно поставить до установки linux на один из основных разделов диска. Для себя использую под windows основной раздел, отформатированный в NTFS размером 32Гб, в конце диска, т.к. практически не использую ее и держу “чтобы було”. Можно сделать дополнительно основной раздел для хранения личных файлов и документов, используемых при работе с windows (в этом случае, если windows прикажет долго жить, то документы не потребуется лихорадочно восстанавливать и вытаскивать со всемозможных мест, а восстановление самой windows будет тривиальной задачей, решаемой за 15 минут).

Когда у Вас уже есть разделы с windows и документами для нее, освобождено место для установки linux, можно загружаться с подготовленного Вами диска и приступать к установке Calculate. При появлении загрузочного меню с помощью функциональных клавиш выберите язык установки и видеокарту. Далее можно загражаться выбрав первый пункт меню.

БУДЬТЕ ВНИМАТЕЛЬНЫ! ПО УМОЛЧАНИЮ ПЕРЕКЛЮЧЕНИЕ ЯЗЫКОВ ОСУЩЕСТВЛЯЕТСЯ КЛАВИШЕЙ Caps Lock! Изменить переключение на любимую комбинацию можно на любом этапе, в т.ч. и после установки. Мне лично такое переключение нравится, правда привыкал долго. Переключение на режим больших букв и обратно выполняется с помощью Shift+Caps Lock.

Почему по умолчанию выбрал файловую систему ext4? На сегодняшний день она самая оптимальная по моему субъективному мнению. Но Вы можете выбрать и любую другую из поддерживаемых. Не забудьте только включить ее поддержку в ядре linux (не модулем, а именно в ядре) при перекомпиляции ядра с моим конфигурационным файлом, в ядрах же по умолчанию включены все основные файловые системы.

После загрузки Calculate выберите “Редактор разделов” на рабочем столе для разбивки диска. Возможно Вам потребуется пароль суперпользователя - при запросе введите root (при установке с Live диска). Утилита интуитивно понятна думаю разобраться будет несложно. Главное помнить одну простую вещь - Вы не испортите ничего до принятия изменений. Принимая изменения Вы измените физическое разбиение диска. Утилита позволяет перемещать разделы без потери информации, но используйте ее с осторожностью. Лично на windows разделах не проверял. На linux разделах работало без ошибок.

ВАЖНО: разделы linux не видны из windows без использования специальных программ. Поэтому файлы, которые Вы будете использовать как в windows, так и в linux нужно хранить либо непосредственно на диске с windows, либо на отдельном разделе (может быть основным или логическим на расширенном разделе), отформатированном в ntfs или fat32 или fat

Как называются диски в линукс?
Диск может быть разделен на основные разделы (до четырех как в windows) или на основные (до трех) и расширенный раздел. В расширенном разделе количество логических дисков не ограничено. Linux можно устанавливать как в основной раздел так и на логических диск расширенного раздела. Аналогично и с файлом подкачки для linux, он устанавливается в отдельный раздел либо расширенного раздела, либо в основной раздел жесткого диска. В linux устройства представляются файлами в каталоге /dev. Например, диску C:\ в обозначении windows соответствует обозначение sda1 в linux, а с учетом расположения в описания устройств полное название этого диска будет выглядеть как /dev/sda1. Нумерация логических дисков в linux начинается с sda5, так как sda1, sda2, sda3 и sda4 зарезервированы под основные разделы и использование расширенного раздела. На диске без использования специальных программ может быть создан только один расширенный раздел и до трех основных. Если не создается расширенный раздел, то основных разделов может быть до четырех. В linux обязательно нужно создать корневой раздел, обозначающийся как /. К этому разделу (называется корневым) уже прикрепляются все остальные каталоги. К примеру, /dev/sda6 означает , что в коневом каталоге (/), в подкаталоге dev находится файл sda6 с описанием устройства, соответствующий второму логическому диску на расширенном разделе. Для загрузки linux и windows в моем примере будет использоваться наиболее простой в использовании grub первой версии.

Для разметки диска в KDE версии дистрибутива есть программа “Редактор разделов”. На liveCD она будет расположена у Вас прямо на рабочем столе после загрузки с него. В других вариантах дистрибутива название программы может отличаться, но обычно она расположена также на рабочем столе liveCD.

Я размечал свой жесткий диск следующим образом:
/dev/sda2 - расширенный раздел (сумма размеров Вашей разбивки логических разделов может быть другой - моя получилась 200,88 Гб)
/dev/sda5 - linuxswap (4 Гб с резервной системой или 8 Гб если без резервной системы, файловая система используется linuxswap)
/dev/sda6 - / (32 Гб, файловая система ext4)
/dev/sda7 - /home (32 Гб на домашний каталог пользователя, мне хватает для оперативной работы за глаза, файловая система ext4)
Остальное свободное пространство можно использовать по своему усмотрению (например, на его размер увеличить домашний раздел пользователей /home). В любом случае Вы всегда сможете перепланировать это оставшееся пространство.

На оставшемся месте держу резервную систему и редко используемые файлы.
/dev/sda8 - linuxswap (файл подкачки для резервной системы - 4 Гб, файловая система linuxswap)
/dev/sda9 - / (корневой раздел резервной системы - 32 Гб, файловая система ext4)
/dev/sda10 - /home (домашний раздел резервной системы - оставшееся пространство 96,88 Гб, файловая система ext4)
/dev/sda1 - мой единственный раздел с windows (32 Гб, файловая система ntfs)
В случае, если у Вас выделен еще и независимый основной раздел для личных файлов, используемых в windows, маркировка дисков скорее всего будет такой (зависит от того, какой раздел создан первым):
/dev/sda1 - windows, /dev/sda2 - для личных файлов
или такой
/dev/sda2 - windows, /dev/sda1 - для личных файлов, остальная маркировка не поменяется
Расширенному разделу в обоих случиях будет назначен тогда /dev/sda3
С разбивкой разделов вроде бы все, останется лишь применить изменения :wink:

Установка операционной системы

ВАЖНО: Заметка для исправления. В данный момент по умолчанию при установке используется grub второй версии. На мой взгляд вторая версия grub более медленная и более сложная в настройке. Требуется вставить описание установки с grub первой версии. В противном случае настоящее описание подходит только для версии Calculate 11.3

После разбивки разделов можно приступать к устновке операционной системы Calculate Linux. На текущий момент она состоит из шести пунктов.
# Выбор языка установки
# Выбор диска для установки (/dev/sda), оставляем галочку “Использовать существующие разделы”
# Выбора разделов системы: Для выбора корневого раздела двойным щелчком нажимаем на строке “/” и устанавливаем точку монтирования /, подключаем раздел /dev/sda6, ставим галочку на форматировании и выбираем файловую систему ext4. Для добавления файла подкачки нажимаем кнопку дисков с плюсом (если он еще не указан в таблице) выбираем точку монтирования swap, раздел /dev/sda5. Если указан проверяем правильно ли указаны его данные. Аналогично корневому разделу подключаем домашний раздел пользователей точка монтирования /home, раздел /dev/sda7, при необходимости форматируем в файловую систему ext4 (уничтожит данные, если они там присутствуют)
# Далее выбираем имя хоста (компьютера), имя домена (в случае необходимости), язык сиcтемы, часовой пояс, диск для загрузки (по умолчанию /dev/sda), видеодрайвер для asus n10j лучше nvidia (проприетарный драйвер), указываем будем ли мы использовать эффекты рабочего стола (да). В расширенных настройках лично я ничего не изменял - все настраивал после установки.
# Теперь вводим надежный пароль для root. Затем добавляем пользователей. У себя я создаю 2-х пользователей основного и резервного на случай, если своими ручками собью настройки при экспериментах в оформлении рабочего окружения, к примеру, в compiz можно легко сделать все окна невидимыми, т.к. по умолчанию стоит полная прозрачность, а вернуть ручками “по-памяти” из-под командной строки суперпользователя у меня пока не хватит квалификации - не дорос еще, чтобы все назубок знать. Поэтому перестраховываюсь.
# Ожидаем окончания процесса установки дистрибутива на жесткий диск. В зависимости от типа дистрибутива это займет от 5-ти до 15 минут. После завершения закройте программу установки и перезагрузите систему. Диск лучше вынуть перед началом загрузки биоса.
Итак, с установкой системы мы закончили.

Соглашения в обозначениях

Для удобства редактирования системных файлов через непосредственный запуск в редакторе Kwrite в KDE окружении я сделал в меню дубикат диспетчера файлов, назвав его Dolphin-root и указав в дополнительных настройках запуск от пользователя root. Редактировать меню можно нажав на его значке правой клавишей и выбрав соответствующий пункт. Но для редактировния файлов можно использовать и достаточно удобный редактор nano в режиме терминала суперпользователя. В режим суперпользователя в терминале можно перейти набрав в командной строке консоли команду su и ввести пароль. В случае необходимости команды от обычного пользователя я буду обозначать $, а от суперпользователя #. Именно так высвечиваются приглашения к набору команд в этих режимах. Сохранение измененного файла в редакторе nano Ctrl+O, выход Ctrl+X.
Переходим к настройке системы под нетбук ASUS N10J.

Настройка загрузчика grub

Настройка загрузчика в нашем случае будет пока заключаться только в подключении загрузки windows системы (если Вы ее устанавливали). Для этого потребуется всего лишь раскомментировать заранее подготовленные строчки в файле /boot/grub/grub.conf.
Команда для редактироания файла

 # nano /boot/grub/grub.conf

Ищем в конце файла эти строчки:

 # Uncomment if you have Windows on hard disk
 # title Microsoft Windows
 # rootnoverify (hd0,0)
 # chainloader +1

Раскомментируем их

 # Uncomment if you have Windows on hard disk
title Microsoft Windows
rootnoverify (hd0,0)
chainloader +1

На этом все. При следующей загрузке в меню появится пунк загрузки Microsoft Windows

Настройка make.conf

Располагается этот файл здесь /etc/make.conf
Для редактирования достаточно в консоли в режиме суперпользователя набрать

 # nano /etc/make.conf

Отредактировать и выйти, сохранив изменения. Для использования установок пакетов только из бинарного профиля редактировать этот файл не нужно, но тогда Вы не получите всей мощности оптимизации системы. Можно просто скачать уже готовый файл и поместить его в каталог /etc из каталога /home/имя_пользователя/Загрузки (Не забудьте сменить имя пользователя на то, которое у Вас):

 # cp /home/имя_пользователя/Загрузки/make.conf /etc

Измененные, раскомментированные или добавленные строки в файле /etc/make.conf:

Настройка компилятора gcc:

CFLAGS="-O2 -march=native -pipe"
CXXFLAGS="${CFLAGS}"

Ускорение компиляции. Количество параллельных процессов, запускаемых при установке пакета (более 3-х устанавливать не советую):

MAKEOPTS="-j2"

Ускорение установки программ. Количество пакетов для одновременной сборки (более 3-х устанавливать не советую):

EMERGE_DEFAULT_OPTS="--jobs=1"

Для ускорения компиляции желательно использовать программу ccache. Она прилично ускоряет обновление, установку программ и полную пересборку системы в случае совпадения исходного кода при повторной компиляции, что происходит в большинстве случаев, так как обычно даже в новых пакетах достаточно много не измененного исходного кода. Для этого в make.conf добавлены следующие строки:

FEATURES="ccache"
CCACHE_DIR="/var/tmp/ccache"
CCACHE_SIZE="5G"

Корректируем use флаги: процессор не поддерживает технологию 3dnow, я не использую ipod и протокол ipv6. Вы можете сократить до USE="-3dnow".

USE="-3dnow -ipod -ipv6"

Указываем аудиокарту для asus n10j:

ALSA_CARDS="hda-intel"

Я не использую GPS совместно с нетбуком, поэтому очищаю следующую глобальную переменную:

GPSD_PROTOCOLS=""

Указываем используемые языки:

LINGUAS="en ru"

Прописываем только нужные нам видеоустройства. У меня это выглядит так:

VIDEO_CARDS="nvidia vesa v4l"

С редактированием make.conf покончено.

Настройка fstab и форсаж файловой системы

Команда для редактирования:

 # nano /etc/fstab

У меня два файла подкачки по 4 Гб, поэтому я подключаю их оба. Само собой Вы можете использовать один файл подкачки. 8 Гб пока вполне достаточно для компиляции тяжелых пакетов системы с запасом примерно 1 Гб. В моем случае 2 файла подкачки реализованы для экономии места на жестком диске при использовании 2-х линукс систем с учетом, что первый используемый из файлов подкачки каждой из этих систем расположен наиболее близко к ней и с допуском того, что файл подкачки в 99% случаев если и используется, то обычно меньше 4 Гб. Можно просто скачать уже готовый файл и поместить его в каталог /etc из каталога /home/имя_пользователя/Загрузки (Не забудьте сменить имя пользователя на то, которое у Вас):

 # cp /home/имя_пользователя/Загрузки/fstab /etc

Ваш файл /etc/fstab должен выглядеть примерно так:

 # Монтируем корневой раздел:
/dev/sda6 /                         ext4 noatime 0 2
 # Монтируем каталог пользователей:
/dev/sda7 /home                     ext4 noatime 0 0
 # Монтируем первый файл подкачки:
/dev/sda5 none                      swap sw,pri=1 0 0
 # Монтируем второй файл подкачки, задействуемый в случае полного использования первого:
/dev/sda8 none                      swap sw,pri=2 0 0
 # К сведению. Для одновременного использования файлов подкачки у них должен быть один приоритет.
 # Монтируем интерфейс для получения данных от ядра:
proc      /proc                      proc defaults 0 0
 # Монтируем интерфейс для обеспечения доступа к совместно используемой памяти:
shm       /dev/shm                   tmpfs nodev,nosuid,noexec 0 0
 # Форсируем работу с данными состояния системы и программ:
tmpfs     /var/run                   tmpfs noatime,size=1M 0 0
 # Форсируем блокирование файлов:
tmpfs     /var/lock                  tmpfs noatime,size=1M 0 0
 # Форсируем каталог временных файлов:
tmpfs     /tmp                       tmpfs noatime,mode=1777,size=9G 0 0
 # Форсируем каталог, используемый при сборке пакетов:
tmpfs     /var/calculate/tmp/portage tmpfs noatime,mode=1777,nr_inodes=30M,size=9G 0 0
 # без параметра nr_inodes более 25M не будет собираться libreoffice или openoffice
 # Для постоянного подключения разделов ntfs с windows и его документами на отдельном
 # разделе Вашего диска расскомментируем следующие строчки и меняем под себя
 # значения /dev/sda:
#/dev/sda1 /mnt/windows ntfs-3g default 0 0
#/dev/sda2 /mnt/windows-documents ntfs-3g default 0 0
 # В конце этого файла обязательно должна быть пустая строка

Сохраняемся и выходим. Таким образом форсируем работу файловой системы, компиляцию программ, ускоряем работу с временными файлами.

Настройка доступа в интернет

На этом этапе нужно подключить интернет, в зависимости от настроек Вашего провайдера. В графических оболочках это делается тривиально. Поэтому не буду на этом останавливаться.

Обновление системы

После настройки интернета запускаем консоль, переходим в режим суперпользователя. Пока мы не меняем профиль с бинарного, выполним это позднее. А значит для обновления системы из бинарных пакетов, достаточно только обновить оверлей, выполнив:

 # layman -s calculate && eix-update

Теперь обновим бинарную систему:

 # emerge -avtuD system world

Перед началом будет запрошено продолжение с информацией о пакетах и количестве скачиваемого трафика. При необходимости не забываем обновить конфигурационные файлы командой dispatch-conf. Необдуманное замещение старых конфигурационных файлов новыми может привести к невозможности нормальной загрузки системы, поэтому будьте аккуратны. Хотя это требуется достаточно редко даже при скоростном темпе обновлений системы Calculate. Команда для этого нужна следующая:

 # dispatch-conf

(Принять новый вариант настроек - u, принять старый вариант настроек - z, другие управляющие клавиши можно подглядеть в man dispatch-conf).
В случае обновления ядра требуется пересобрать модули:

 # module-rebuild -X rebuild

Более подробно по обновлению системы можно почитать здесь.

Переключение профиля на компиляцию из исходников и обновление портежей

Переключение профиля нужно, чтобы сменить стратегию управления пакетами системы и выполняется достаточно просто. Смотрим доступные профили:

 # eselect profile list

(для системы KDE дистрибутив называется - CLD, для gnome - CLDG, для XFCE - CLDX).
Для KDE системы бинарный профиль обозначается цифрой 2, а для компиляции всего и вся обозначен цифрой 1.

Переключаем систему на компиляцию программ из исходников:

 # eselect profile set 1

Обновляем портежи для включения самых последних изменений. Первое обновление может занять приличное время, например, минут 10-15 или даже больше, потом это будет происходить существенно быстрее:

 # eix-sync

Оптимизация компилятора

Далее предлагаю сначала оптимизировать компилятор для ускорения его работы в последующих сборках пакетов из исходников.
Проверим есть ли новые версии компилятора в обновленных портежах:

 # eix gcc

если есть новая размаскированная версия (номера выделяется зеленым цветом по умолчанию для размаскированных стабильных версий пакетов и пописаны как Available versions, установленные версии указываются как Installed versions), выполним обновление с оптимизацией под asus n10j:

 # emerge -u gcc

если нет - просто скомпилируем текущую версию с оптимизацией под asus n10j (оптимизация уже прописана нами в файле make.conf):

 # emerge gcc

Для резервного сохранения установочных бинарных файлов, скомпилированных с Вашей оптимизацией, используйте ключ -b. Например, для обновления и сохранения скомпилированного и оптимизированного бинарного установочного файла компилятора gcc на локальном компьютере нужно выполнить команду emerge -ub gcc. По команде emerge есть хорошее руководство, описывающее большинство ее команд. Настоятельно рекомендую к прочтению. Более подробное руководство можно прочитать по команде man emerge, но уже на английском. На текущий момент последняя версия компилятора gcc 4.6.1, поддержка процессора atom начинается с версии gcc 4.5, но самый быстрый компилятор для процессора atom n270, используемого в asus n10j, как ни странно gcc 4.4.5. Рекомендую использовать именно версию 4.4.5 компилятора gcc.

Установка lzop и ccache

После обновления и компиляции gcc нужно установить две дополнительные программы lzop и ccache. Первая используется для скоростного сжатия-распаковки ядра системы и модулей на системах с невысокой вычилительной мощностью, вторая для ускорения повторной компиляции пакетов. Делается это чрезвычайно просто:

 # emerge lzop ccache

Для ccache нужно установить размер кеша (по умолчанию установлено всего 1 Гб). Я использую ограничение в 5 Гб, но обычно достаточно и 2 Гб. В командной строке выполняем:

 # CCACHE_DIR="/var/tmp/ccache" ccache -M 5G

Для просмотра статистики кеша компиляции используйем эту команду:

 # CCACHE_DIR="/var/tmp/ccache" ccache -s

Компиляция ядра

На изучение параметров linux ядра для более менее приемлемого уровня понимания я затратил примерно два месяца, Вам для компиляции оптимизированого ядра для asus n10j будет достаточно, уже настроенного, config файла (он подготовлен для ядра 2.6.38.6) с незначительными поправками подойдет и на более новые ядра. В моем конфигурационном файле ядра включена поддержка видеодрайверов, вебкамеры, звука, мыши, тачпада, сетей, usb и других устройств для конкретного нетбука за исключением всевозможных рулей, джойстиков, планшетов за их ненадобностью для меня лично. Включена поддержка virtualbox, протоколирование времени загрузки системы. Также Вы можете легко включить bootchart просто добавив передачу соответствующего параметра ядру и установив эту программу с нужными для Вас настройками. Дополнительно Вам потребуется решить для себя нужно использовать initrd или нет (вариант, стандартно используемый в Calculate использует initrd). У меня по умолчанию initrd отключен, но система модульно подгружает те или иные требуемые компоненты. Для включения initrd Вам нужно будет всего лишь активировать два пункта в меню настройки ядра (все остальные пункты настроены для работы обоих вариантов):
General setup=>Initial RAM filesystem and RAM disk (initramfs/initrd) support - ставим звездочку
General setup=>Support initial ramdisks compressed using LZO - ставим звездочку

Можете попробовать установить альтернативные версии ядра линукс - все есть в хранилище пакетов дистрибутива в разделе sys-kernel, но по своему опыту скажу, что самые оптимальные патчи уже включены в ядра Calculate и добиться еще большего прироста производительности будет очень непросто. Пробуйте, экспериментируйте, при наличие желания и свободного времени, и делитесь своими результатами. Вам будут только благодарны.

Конфигурационный файл для ядра .config-asus-n10j нужно скопировать в Вашу папку /usr/src/linux. Скорее всего при загрузке мой конфигурационный файл Вы сохраните в папке Загрузки (Примечание: файлы начинающиеся с точки являются скрытыми). Оттуда и будем его копировать. Не забудьте только изменить имя пользователя на то, которое использовали Вы:

 # cp /home/имя_пользователя/Загрузки/.config-asus-n10j /usr/src/linux

Далее запускаем компиляцию ядра с предварительным выводом меню для загрузки нового конфигурационного файла и, возможно, для включения в случае надобности initrd

 # cl-kernel -o -m

Внизу выбираем пункт Load…
в строке .config добираем -asus-n10j, чтобы получилось .config-asus-n10j далее подтверждаем загрузку нового конфигурационного файла. При желании можете изменить настройки ядра по Вашему усмотрению. Но Вы должны точно знать, что Вы изменяете при этом. (Абсолютно не претендую на самый лучший конфигурационный файл для этого нетбука, но думаю, что сумел его оптимизировать процентов на 90) Загрузка ядра системы происходит менее, чем за 1,3 секунды на обычном жестком диске. Всю дальнейшую оптимизацию загрузки нужно будет выполнять отключением “лишних” сервисов и оптимизацией загрузочных скриптов, что мне пока еще не под силу. Если сумею найти время и более серьезно займусь изучением этой стороны загрузки системы, тогда руководство будет дополнено.
После этого сохраняем загруженные опции внизу пункт меню Save… в конфигурационный файл .config и выходим. В течение примерно 20 минут скомпилируется и установится новое ядро. Затем необходимо пересобрать модули ядра командой

 # module-rebuild -X rebuild

Если Вы используете вариант ядра без initrd, как я, то в файле /boot/grub/grub.conf Вам нужно обязательно сделать следующие изменения:
Выглядеть должно примерно так

title Calculate Linux Desktop i686 v11.3 kernel v2.6.38.6 KDE v4.6.2 nvidia
root (hd0,5)
kernel /boot/vmlinuz-12345678 root=/dev/sda6 vga=0x36D video=vesafb:ywrap,1024x600-32@60,mtrr:3,splash=verbose,theme:tty1 console=tty1 udev quiet resume=/dev/sda5 elevator=cfq doscsi nofirewire calculate=video:nvidia rootfstype=ext4

ВАЖНО: в grub нумерация дисков начинается не с единицы, а с нуля. Поэтому обозначение диска с корневым разделом /dev/sda6 при задании его в терминах grub выглядит как root (hd0,5), а не как root (hd0,6)! Например, обозначение hd0 соответствует всему первому диску, обозначение hd0,0 соответствует первому разделу первого диска и т.д.

/boot/vmlinuz-12345678 (Ваш номер на 12345678 менять не нужно он у Вас свой)
Пошагово: Скопируйте вариант Вашего grub, сделав дубликат записей прямо в этом же файле и закомментируйте скопированные данные вставкой символа # вначале строки - копия может пригодится. Сохраните изменения. Далее можно редактировать. Важно выполнить следующие изменения для передачи правильных параметров ядру:
kernel /boot/vmlinuz-12345678 (оставляем как есть, Ваш номер на месте 12345678 не переделываем, у Вас он другой - это символическая ссылка на ядро)
root=/dev/sda6 (по другому прописываем путь, убирая ссылку на UUID, с ней почему-то не всегда грузится, посмотреть какому диску соответствует какой UUID можно с помощью команды blkid, запущенной из-под пользователя root)
vga=0x36D (добавляем)
video=vesafb:ywrap,1024x600-3260,mtrr:3@ (меняем)
splash=verbose (меняем, если нужно отображение процесса загрузки вместо не информативного ползунка, сокращает время загрузки)
theme:tty1 console=tty1 udev quiet resume=/dev/sda5 elevator=cfq doscsi (в этой строчке меняем значение resume по другому прописывая путь к Вашему своп-файлу)
nofirewire (добавляем)
calculate=video:nvidia (оставляем как есть)
rootfstype=ext4 (добавляем)
ссылку initrd комментируем в случае использования ядра без initrd

 # initrd /boot/initrd-12345678

Аналогичные изменения выполняем с пунктом помеченным Safemode
Если Вы используете вариант ядра с initrd, в этом случае можно добавить nofirewire rootfstype=ext4 и при желании изменить splash на verbose. Остальное без изменений.

Компиляция системы

Теперь можно полностью скомпилировать все пакеты одной командой, используя уже прилично ускоренную систему:

 # emerge -avtbe system world --exclude calculate-source

Перед началом будет запрошено продолжение с информацией о пакетах и количестве скачиваемого трафика. Процедура компиляции на asus n10j займет от двух до четырех дней в зависимости от выбранного дистрибутива и количества установленных Вами программ. В системе одновременно можно работать, но перезагружать и выключать ее до окончания этой процедуры не желательно. В случае если все же это случилось по какой-либо причине, можно возобновить прерванную компиляцию командой emerge --resume.

Последующие обновления при использовании ccache будут происходить существенно быстрее. Обычно достигается 2-х кратное ускорение, но бывает и намного быстрее.

После компиляции системы выполните следующие 2 команды:

 # revdep-rebuild -i && prelink -afmR

Они позволят существенно ускорить запуск программ.

Выключение сервисов, замедляющих загрузку системы

У себя я отключил следующие сервисы, Вы решайте сами нужно это Вам или нет:

Обязательно отключить лишний видеобуфер в системе без initrd:

 # rc-update -v del uvesafb sysinit

Отключаем декорации, т.к. прилично замедляет загрузку системы - можно отключить в любом варианте системы:

 # rc-update -v del fbcondecor default

Можно отключить автоматический запуск сервиса, если не используете печать или используете редко:

 # rc-update -v del cupsd default

Для включения загрузки, выключенного из нее сервиса, просто поменяйте команду del на команду add:

 # rc-update -v add fbcondecor default

Посмотреть запущенные сервисы можно командой:

 # rc-update -s

Если Вы используете оболочку KDE, ее обязательно потребуется оптимизировать под себя, т.к. реально там присутствует очень много неиспользуемых Вами программ на все случаи жизни в отличие от более сбалансированных на этот счет gnome второй версии и XFCE. Вам нужно будет включить только необходимые сервисы в параметрах системы, установить комфортные для Вас временные задержки отображения элементов. В этом случае Вы получите удобную и шуструю систему с KDE оболочкой. Но везде есть нюансы, например, при простом отключении всех эффектов Вы получите суммарный прирост производительности порядка 10-12%, но впридачу и артефакты при обновлении окон, которыми впрочем страдают и другие оболочки без использования композита.

После всех проделанных шагов Вы получите один из самых быстрых вариантов системы linux на своем компьютере.

Ну что сказать… Смею заявить, что не встречал ещё более подробного практического мануала для конкретно взятого случая.

Руководство бесценно. Хоть бери и покупай теперь этот ноут… :wink:

Классно! Предложил бы автору продолжить в том же духе для других популярных моделей.

И на этих руководствах можно создать книгу по практическому использованию Calculate Linux.

С уважением.

Спасибо. Ноут кстати действительно неплохой, хоть и не лишен недостатков. Возможно позднее все описание дополню вариантом установки, которая использует только консольные команды, сократив руководство раз в 10;)

P.S.
Предполагаю, что с небольшими изменениями руководство подойдет для похожих ноутбуков, так как элементарная база достаточно близка.

Выкладываю более свежий конфигурационный файл. Для ядер 3.2 и выше.