К основному контенту

Установка Arch Linux на ноутбук

ArchLinux - простой и лёгкий дистрибутив, удобный. Считается, что он не подходит для новичков в мире Linux. В чём то это правда. Но если вы хоть чуть-чуть понимаете как работает компьютер и что такое файлы конфигурации, то разобраться вам не составит труда. В конце своих трудов вы получаете систему настроенную конкретно под вашу машину. В систему не будет ничего лишнего, и она будет работать именно так, как хотите вы. Конечно всё то же самое можно сделать и с любым другим дистрибутивом, но Arch даёт наиболее удобную базу и небольшой пакет программ для этого. Установка базовой системы достаточно проста и прозрачна, более того она очень подробно описана на wiki (Прошу обратить внимание, что при установке, я рекомендую ставить пакеты base и base-devel)


Я расскажу о том, что делать после и где искать информацию о том что делать. Также я расскажу о некоторых тонкостях и вещах про которые часто забывают новички, поясню их и т.д.


Предположим, что вы установили ArchLinux на свой ноутбук. Я буду приводить примеры на своей системе, у меня HP Compaq 6720s (Конфигурация).
Что мы имеем? Мы имеем базовую систему, в которой практически ничего нет, за исключением некоторых служебных программ. Существует один единственный пользователь, root.


Базовая подготовка

Для начала, давайте установим пакет sudo, он потребуется нам для того, чтобы избавиться от root'а. Администрирование системы через sudo считается более безопасной практикой, кроме того, чаще всего GUI не запускаются от имени root'a, чтобы случайно не повредить систему. И поэтому для работы графических утилит администрирования нужен пакет sudo. Так давайте установим его. Обновить базу репозиториев
root $ pacman -Sy
Документацию о pacman'e на русском языке можно найти на wiki.
Теперь давайте установим пакет sudo:
root $ pacman -S sudo
Самое время создать для себя пользователя:
root $ useradd melges
Добавим нашего пользователя в группу wheel, чтобы дать ему права администратора, для начала проверим есть ли такая группа:
root $ cat /etc/group |grep wheel
Если ничего не выведется значит такой группы нет, и надо её создать:
root $ groupadd wheel
И добавить нашего пользователя в эту группу:
root $ gpasswd -a melges wheel
Теперь можно редактировать файл sudoers
root $ EDITOR=nano visudo  

EDITOR - это переменная окружения, в которой указывается какой текстовый редактор следует использовать запускаемым программам. Я для редактирования файлов конфигурации предпочитаю nano, но вы можете использовать любой редактор который захотите, например, vim EDITOR=vim.

В открывшемся файле необходимо раскомментировать строчку
%wheel  ALL=(ALL) ALL
Это даст всем членам группы wheel права администратора
Вообще то необязательно заводить специальную группу можно просто написать строчку
melges ALL=(ALL) ALL
Так пользователь которого мы создали получит права администратора, но более гибким решением будет создание специальной группы, это избавит на от необходимости редактирования sudo файла, когда нужно добавить ещё одного администратора.

Поддержка управлением питания

Мы пользуемся ноутбуком, не так ли? И нам хотелось бы видеть состояние батареи и управлять энергопотреблением. Для этого нам потребуется пакеты acpi и acpid
melges $ sudo pacman -S acpi acpid
Не плохо было бы иметь возможность управлять частотой процессора и политикой энергосбережения:
melges $ sudo pacman -S cpufrequtils
А ещё хорошо когда ноутбук умеет уходить в ждущий/спящий режим:
melges $ sudo pacman -S pm-utils
А ещё я хочу чтобы у меня работал bluetooth, и система сама определяла от сети я работаю или нет и сама могла настраивать оборудование:
melges $ sudo pacman -S bluez laptop-mode-tools hal
Естественно никто за нас всё что мы установили не настроит. Придется делать самим. Пропишем все наши энергосберегающие службы в авто запуск, эти параметры находятся в файле /etc/rc.conf:
melges $ sudo nano /etc/rc.conf
Внутри файла находим строку где написано DAEMONS (обычно это последняя строка) и добавляем в неё демоны запускаемые вместе с системой:
DAEMONS=(@syslog-ng dbus !network !netfs acpid hal cpufreq @laptop-mode @alsa @crond @bluetooth)
Строка же где написано MODULES должна выглядеть так:
MODULES=(acpi-cpufreq cpufreq_powersave cpufreq_ondemand cpufreq_userspace freq_table)
Если есть необходимость автоматически уводить ноутбук в ждущий режим необходимо отредактировать файл /etc/acpi/actions/lm_lid.sh он должен выглядеть так (хотя это не обязательно если вы собираетесь ставить графическую среду, например Gnome):
#! /bin/sh
test -f /usr/sbin/laptop_mode || exit 0
# lid button pressed/released event handler
/usr/sbin/laptop_mode auto
grep close /proc/acpi/button/lid/C153/state -c || exit 0
Вроде бы всё, теперь ставим если нужно GUI и нужный нам софт.

Комментарии

Популярные сообщения из этого блога

Настройка VIM'а для разработки на C/C++

Наверняка вы уже слышали, что Vim - это мощнейший текстовый редактор не уступающий в функционале и удобстве большим тяжеловесным аналогам, наподобие Eclipse или XCode . Вот и я слышал, однако в базовой комплектации Vim умеет очень мало, подсвечивать синтаксис, расставлять отступы и подсказывать код на основе тэгов (но это не совсем то автодополнение которое мне бы нравилось). В этой статье я бы хотел рассказать, как Vim можно превратить в полноценную IDE для C/C++ с поддержкой проектов, автодополнения кода, поиском и подсвечиванием ошибок и генерацией по шаблонам. Предполагается, что у вас есть базовые умения в работе с Vim'ом.

Авторизация через ldap на Linux сервере

В системах с большим числом машин почти всегда встает вопрос централизованного управления пользователями и группами ( авторизации , аутентификации т.д.). Для этого удобно использовать LDAP. В этой статье я расскажу как настроить аутентификацию через LDAP и ограничить доступ к машине только для определенных групп.

Операторы && и || в bash

Доброго времени суток, сегодня я расскажу вам о операторах && и || в bash скриптинге. Итак все мы знаем что в Си эти операторы обозначают логическое И и Или . В bash в условиях оператора if while или ещё каких либо они имеют точно такое же применение. А вот что делать если мы хотим запустить одну команду, а за ней другую?