Как я допиливаю Линукс до своих требований

Вообще допиливание Линукса под себя любимого каждый уважающий себя Линуксойд делает сам.

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

Сюда также можно причислить объемистый блок работ по закачке исходников и последующей установке тулчейнов для работы с микроконтроллерами. Как это делать, я уже описывал в блоге, но на всякий случай призываю вас быть острожными и слепо не выполнять описанные в них действия. Фатального ничего не произойдет, но из-за того что время не стоит на месте, и Линукс очень сильно прогрессирует, не всегда годичной давности рецепты будут четко работать.

Итак, для доустановки необходимых программ и пакетов я использую два файла. Один из них — программа-скрипт, а другой — собственно список, в котором перечислены названия пакетов с короткими комментариями типа «что это и зачем».

Список пакетов можно изменять согласно личным предпочтениям. Формат записей очень простой, там всего лишь два правила.

1. Строки, которые начинаются с символа #, считаются комментариями, и на процесс инсталляции никак не влияют.

2. Название каждого пакета записывается с новой строчки.

В принципе, если инсталляция мега-программы состоит из нескольких пакетов, то их можно одновременно перечислить в одной строке.

Ну, собственно, это всё! Вот мой список пакетов. Файл называется installaux.list

################################################################################
# Список пакетов, который я обычно устанавливаю после установки Линкса
#
# Оформление в виде скрипта позволяет не задумываясь устанавливать эти пакеты.
# Этот файл нужен для скрипта installaux.
#
# author  = zhevak alexander
# blog    = https://zhevak.wordpress.com/
#
# Version = 0.02
# Date    = 2013.09.16
# Licence = GPL
################################################################################

# файловый менеджер
mc

# Консольный системный монитор
htop

# Консольная электронная таблица. Работает жутко быстро (графики-то -- нет!)
sc

# генератор звука через динамик
beep

# Редактор разделов дисков
gparted

# Редактор с возможностями запуска компилятора
geany

# Мощный HEX-редактор. Позволяет править файлы
bless

# разархиватор (только для Ubuntu)
# unrar

# Система учета версий Git
# git git-core

# (утверждается, что это) красивые TTF-шрифты
# ttf-droid

# набор утилит и пакетов для того чтобы сделать рабочий стол фельдиперсовым
# ubuntu-restricted-extras \

# Python-программа для создания загрузочных флешек (только для Ubuntu)
# usb-creator-gtk \


############################################################
# Пакеты для работы с видео

#
# ffmpeg
# mjpegtools

############################################################
# Пакеты для работы с сетью

# Сервер для предоставления удаленного доступа к компу
openssh-server

# Утилита для работы с сетью (например, "nmap -sT <host>" -- выявит открытые порты)
nmap

# Программа-трассер для определения путей прохождения пакетов
mtr

# Симпатичный калькулятор для сетевых адресов
# ipcacl



#####################################################################
# Офисные программы

# Прога для постоения графиков
gnuplot

# Прога для рисования различных диаграмм и мнемосхем
# dia

# Лёгкий (простой) текстовый редактор
#abiword

# Лёгкая (простая) электронная таблица
#gnumeric

#####################################################################
# Следующий набор пакетов мне нужен для создания специфических
# программ на Python

# Пакет для работы с последовательным портом (/dev/ttyS0), в том
# числе и с USB-портом (/dev/ttyUSB0)
python-serial

# Мощный пакет для работы математикой и построениями математических
# графиков
python-matplotlib
 
# Пакеты для работы с графической консолью
# wx -- пакет мощной графики
python-wxgtk2.8
wx28-i18n
python-wxtools

# tkinter -- пакет более простой графики
python-tk

# Пакеты для рисования графиков. Вообще, для работы нужен один из них.
#Но разные версии Ubuntu (Debian) содержат разный состав пакетов для
#рисования графиков. Мне сложно сказать какой пакет в какой версии
#Убунты имеется. Поэтому я перечисляю их все, какой-то пакет из этого
#списка будет точно присутствовать в дистрибутиве.
python-numeric
python-numpy

# GUI-дизайнер для проектирования экранных форм.
python-wxglade


######################################################################
# Установка Python версии 3.xx и пакетов модулей для него.
# Особой необходимости в установке версии 3.хх -- нет. Кроме того, третья версия не имеет пкетов для wx-графики.
#python3
#python3-all
#python3-tk
#python3-serial
#python3-matplotlib

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

Следующий файл — скрипт на языке оболочки bash. Имя файла-скрипта installaux.

#! /bin/bash

################################################################################
# Скрипт для установки пакетов, перечисленных в файле installaux.list
#
# author  = zhevak alexander
# blog    = https://zhevak.wordpress.com/
#
# Version = 0.01
# Date    = 2013.09.02
# Licence = GPL
################################################################################

SUDO=""
# Для запуска в Ubuntu снимите следующий комментарий и установите
# комментарий для Debian
# SUDO=sudo

$SUDO apt-get update
$SUDO apt-get upgrade

for x in $(grep -v "^#" installaux.list)
do
  if [ ^$x != "#" ]; then
    # echo Устанавливается пакет $x
    $SUDO apt-get install \
  fi
done

Если у вас что-то пошло не так, то раскомментируйте строку 25 и закомментируйте строку 26. Тогда вместо инсталляции пакетов на консоль будут выводится только их названия.

И еще один интересный момент, касающийся Raspbian, — Debian Dedian-у рознь! В обычном (комповом) Debian учетная запись root активно используется. А в Debian, который Raspbian, в нем root находится в отключенном состоянии. Прямо как в Ubuntu!

 

IPv6 всё ещё не захватил мир.

Домашние локальные сетки и линии к интернет-провайдеру всё ещё находятся под под четвертой версией IP. Но Ubuntu и Debian по умолчанию поднимают демонов для работы с IPv6. Зачем!? Снижается скорость сетевых операций, напрасно расходуется оперативная память, присутствуют и другие проблемы. Зачем всё это?

Если в консоли выполнить команду ipconfig, то в ее выводе наверняка будут присутствовать упоминания о поднятом протколе IPv6:

ipv6

Разумный шаг — это отключить IPv6. А когда понадобится (ха-ха!) — подключить обратно. Делается достаточно легко. Сайт rus-linux.net предлагает два способа: через sysctl и через grub2.

1. Отключаем IPv6 через sysctl.
С правами root открываем текстовый файл конфигурации системы /etc/sysctl.conf. Идем в конец файла и добавляем три строки:

# Disable IPv6
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1

Сохраняем файл и перезапускаем sysctl:

$ sudo sysctl -p

Вот результат:

ipv6-2

2. Отключение IPv6 через grub2 ненамного сложнее.
Нужно открыть файл /etc/default/grub и найти в нем пару строк, которые нужно отредактировать следующим образом:

GRUB_CMDLINE_LINUX="ipv6.disable=1"
GRUB_CMDLINE_LINUX_DEFAULT="ipv6.disable=1"

После изменения этого файла нужно заново сгенерировать конфигурацию grub2, для этого нужно выполнить команду:

$ sudo update-grub2

И наконец чтобы изменения в grub2 вступили в силу необходимо перезагрузить операционную систему (прям как в Шиндовс!)

Что касается вопроса — а какой способ лучше, то скажу так — я на всех своих компах по-отключал IPv6 первым способом, ко второму способу не прибегал. Проблем никаких не увидел, отключение прошло быстро (без перезагрузки операционной системы).

О том, какие конфигурационные файлы я обычно редактирую, настраивая свою «шарманку», я напишу как-нибудь потом.

Реклама

3 responses to “Как я допиливаю Линукс до своих требований

  1. +
    Ещё бы автоматизировать добавление строк в имеющиеся конфигурационные файлы. И самих конфигурационных файлов для устанавливаемых программ или автозапуска…

    • Там не все так просто и однозначно. Но что-то автоматизировать можно.

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

  2. Наверное еще имеет смысл в диагностический блок добавить
    apt-get install -s
    для полноты картины. Мне этот ключик не раз помогал понять, что ломается.

Добавить комментарий

Заполните поля или щелкните по значку, чтобы оставить свой комментарий:

Логотип WordPress.com

Для комментария используется ваша учётная запись WordPress.com. Выход / Изменить )

Фотография Twitter

Для комментария используется ваша учётная запись Twitter. Выход / Изменить )

Фотография Facebook

Для комментария используется ваша учётная запись Facebook. Выход / Изменить )

Google+ photo

Для комментария используется ваша учётная запись Google+. Выход / Изменить )

Connecting to %s