Настройка Swappiness и кеширования в Linux. Увеличение скорости работы Ubuntu Ubuntu 16.04 как улучшить использование оперативной памяти

22.10.2021 Компьютер

Т ем не менее, если вы используете тяжелое окружение рабочего стола, как Unity, скорость может упасть. Эта статья содержит список из 4 простых советов, которые можно применить, чтобы ускорить систему Ubuntu 16.04. Вы должны увидеть повышение скорости на слабых аппаратных средствах и в Virtualbox. Он также помогает, даже если вы установили на твердотельном накопителе.

Сделать компьютер быстрее снова!

1. Отключить запуск приложений

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

Sudo sed -i "s/NoDisplay=true/NoDisplay=false/g" /etc/xdg/autostart/*.desktop

Затем запустите приложение запуска из Unity Dash.

Чтобы отключить запуск приложения, просто снимите галочку его.

Вот некоторые приложения, которые вы можете найти нежелательными.

Доступность менеджера профилей

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

Монитор резервного копирования

Это deja-dup-monitor. Если вы не хотите создать резервную копию, отключите его.

Caribou

Отключите его, если вам не нужно экранная клавиатура.

Desktop Sharing

Отключите его, если вам не нужно никому удаленно управлять системой Ubuntu. У вас еще есть возможность дистанционного управления компьютером друга через VNC.

Gnome Software

Отключите его, если вы хотите установить программное обеспечение в терминале и не используйте программное обеспечение Gnome.

Orca для чтения с экрана

Отключите его, если вы все еще можете видеть прекрасный мир.

Личный общий доступ к файлам

Отключите его, если вы не используете Bluetooth для обмена файлами.

Обновление Notifier

Отключите его, если вы не хотите получать уведомления о появлении доступных обновлений программного обеспечения.

2. Отрегулируйте файл подкачки

Мы все знаем, что оперативная память намного быстрее, чем жесткий диск.

Давайте сделаем небольшой эксперимент: Загрузите систему Ubuntu 16.04, откройте несколько приложений, таких как Firefox, LibreOffice, Mozilla Thunderbird, Evince для просмотра документов, а затем что-нибудь с ним сделайте. Не приостановить или спящий режим его. Затем через несколько часов вернуться в Ubuntu 16.04. Вы увидите, что эти приложения реагируют плохо к кликам мыши, потому что они простаивали и выгружены на жесткий диск.

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

Это происходит из-за значения swappiness по умолчанию Ubuntu. Swappiness является параметром ядра , который контролирует, как часто Linux Swap из нерабочих процессов перемещает в пространство подкачки на жестком диске.

Значение swappiness находится между 0 ~ 100 . Более низкое значение означает, что Linux будет использовать пространство подкачки меньше, в то время как более высокое значение приводит к Linux использовать пространство подкачки чаще. Значение по умолчанию на Ubuntu это 60 что означает, когда ваш компьютер использует 40% физической памяти, после чего ядро Linux начинает выгружать.

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

Sudo sysctl vm.swappiness=10

Не добавляйте пробелы перед и после знака равенства. Этот параметр не является постоянным.

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

Sudo nano /etc/sysctl.d/99-sysctl.conf

В конце этого файла, добавьте следующую строку.

Vm.swappiness=10

Сохраните и закройте этот файл. (Нажмите Ctrl + O, чтобы сохранить, нажмите Ctrl + X, чтобы выйти) Этот также применимо к вашему серверу Ubuntu 16.04.

3. Предзагрузка часто используемых приложений

Вы недовольны скорость запуска браузера Firefox или других медленных приложений? Вот небольшая часть программного обеспечения называется, preload что значит запоминать, такие приложения вы используете чаще всего и загрузка связанных библиотек и исполняемых файлов в память, так что эти приложения могут быть запущены быстрее.

Установить предварительную нагрузку на Ubuntu 16.04 с помощью команды:

Sudo apt install preload

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

Systemctl status preload

Если он не работает, то запустите его с помощью следующей команды:

Sudo systemctl start preload

Теперь вы можете забыть о предварительной загрузки и сделать свою другую работу.

4. Отключить необычные эффекты

Необычные эффекты могут замедлить работу компьютера. Мы можем использовать compizconfig-settings-manager , чтобы отключить их.

Sudo apt install compizconfig-settings-manager

Запустите его с помощью Unity Dash. Затем нажмите на вкладку Effects слева и отключите эффекты, которые вам не нравятся. Вы можете отключить все эффекты, если вы хотите.

Вы также можете отключить размытие фона с помощью инструмента Unity Dash , чтобы сделать Dash более отзывчивыми.

Sudo apt install unity-tweak-tool

Затем откройте его, выберите вкладку search , и установите размытия фона выключенным.

Как Вы предпочитаете?

До

После

Бонус Подсказка: Узнайте виновника медленной загрузки

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

Systemd-analyze blame

Как вы можете видеть из приведенного выше экрана, mnt-pi.mount и vboxadd.service являются виновниками на моем компьютере. Я знаю, что mnt-pi.mount отвечает за монтаж NFS для моего Raspberry Pi, но мне не нужен NFS больше, так что я могу безопасно удалить NFS монтажа из файла /etc/fstab . Я также знаю, что vboxadd service это полезно только для виртуальных машин, так что я могу отключить эту службу на моей физической машине.

Sudo systemctl disable vboxadd.service

Чтобы узнать время загрузки, выполните следующую команду:

Systemd-analyze time

Другие способы ускорить Ubuntu 16.04

Вы знаете другие способы, которые могут ускорить Ubuntu 16.04? Поделитесь своими советами в комментариях ниже.

Linux дает много преимуществ своим пользователям. Например, его можно считать свободным от вирусов, поскольку их существует очень небольшое количество. Для многих очень важно, что никто, кроме вас, не будет контролировать то что вы делаете в системе. Свободное программное обеспечение звучит очень привлекательно, в свете последних событий, когда в прошлом году мы узнали что большие компании вроде Microsoft и Apple следят за своими пользователями.

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

Многие помнят, что кликнув двойным щелчком по ярлыку в Windows нужно достаточно долго подождать, пока запустится программа. Здесь у Linux тоже преимущество - он намного быстрее. И это касается всех, кто использует компьютер с новеньким восьмиядреным процессором, и тех у кого старый ноутбук прошлого века. Если вы хотите еще большое скорости в Linux, следуйте инструкциям из этой статьи. Дальше мы рассмотрим как ускорить Linux. Мы будем ориентироваться в первую очередь на Ubuntu, но все эти советы могут быть применены также к другим дистрибутивам.

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

Еще лучше поэкспериментировать сначала с виртуальной машиной. Таким образом, вы можете делать все что захотите, а потом просто откатиться к последнему рабочему снимку.

1. Ускорение загрузчика Grub

Если у вас установлено две операционные системы, то вы, наверное, знакомы с этим меню загрузки. Но то что вы, скорее всего, не заметили, это обратный отсчет в самом низу, под областью ввода. Это время, на протяжении которого система будет ждать, перед тем как начать загружать дистрибутив по умолчанию.

Например, в Ubuntu - это 10 секунд. Обычно вы можете нажать Enter, но если вы находитесь далеко от машины, более благоразумным будет поставить интервал покороче, например, 3 секунды. Этого будет вполне достаточно чтобы выбрать ОС.

Чтобы ускорить загрузку linux откройте файл /etc/default/grub от имени root. Измените значение GRUB_TIMEOUT = 10, на 3. А затем обновите конфигурацию Grub. Вот:

sudo vi /etc/default/grub

sudo grub-update

sudo grub2-mkconfig -o /boot/grub/grub.cfg

2. Отключите сервисы

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

В системе инициализации на основе sysvinit все сервисы находятся в папке /etc/init.d и вы можете остановить те, которые вам не нужны. Посмотреть состояние всех сервисов можно командой:

service --status-all

Отключить сервис можно командой:

update-rc.d -f сервис remove

sudo systemctl disable сервис

Определить какие сервисы, нужны, а какие нет, вы можете просто выполнив поиск в интернете. Во многих дистрибутивах есть графические приложения для управления сервисами, например, в Ubuntu для этого придется воспользоваться консольной утилитой service, это поможет сильно ускорить работу linux. Также отключив лишние сервисы, можно сильно ускорить загрузку Linux.

3. Ускорение файлового менеджера Nautilus

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

Чтобы перестать тратить процессорное время на эту задачу перейдите в меню Правка , Предварительный просмотр в Nautilus и измените параметр из Всегда или Только локальные файлы на Никогда .

Вы увидите, что теперь Nautilus работает намного быстрее.

4. Уменьшение нагрузки

Для старого оборудования мы, как правило, выбираем специально легковесные дистрибутивы. Причина того, что VectorLinux и другие ему подобные дистрибутивы настолько хороши на слабом оборудовании - то что они не требуют много системных ресурсов.

Конечно, если вы хотите ускорить работу linux на своей машине, вы можете самостоятельно уменьшать ее нагрузку, а можете просто установить уже готовый дистрибутив. Если вы готовы экспериментировать, попробуйте один из легковесных дистрибутивов. Они будут работать намного быстрее.

5. Используйте более быстрый оконный менеджер

Если вы не хотите полностью менять дистрибутив, то все еще можно сделать множество улучшений за счет интеграции некоторых функций таких дистрибутивов. Оконный менеджер одна из них. Если вы используете тяжелые оконные менеджеры вроде KDE или Gnome, попробуйте что-либо более простое. Это даст значительный прирост производительности.

Самая важная задача оконного менеджера - управлять окнами, и давать вам достаточно контроля над ними. Но они могут выполнять намного больше функций чем вам нужно.

Если щелкнуть по верхней панели окна в KDE, и посмотреть какие опции там есть, то вы поймете о чем я говорю. Другой оконный менеджер может быть быстрее и меньше отвлекать.

Пожалуй, самым популярным есть Openbox, и он может быть установлен на большом количестве дистрибутивов.

После установки для запуска оконного менеджера наберите:

openbox --replace

Через несколько секунд вы увидите, что стиль окон изменился. Это и есть Openbox. с помощью контекстного меню вы можете перемещать окна, закреплять или устанавливать поверх других. Но больше ничего другого. Ваши окна теперь двигаются быстрее.

6. Ускоряем KDE

Если вы используете окружение рабочего стола KDE, то у вас есть отличный шанс получить ускорение работы linux. Хотя Plasma работает довольно быстро если у вас современная машина, но это сложный стек программного обеспечения. Каждый компонент KDE может быть настроен для более эффективной его работы. Мы уже рассматривали , читайте об этом подробно в отдельной статье.

7. Заблокируйте рекламу

При просмотре веб-страниц вы заметите что сайт загружается не сразу, он ждет пока будут загружены все компоненты страницы, в том числе и рекламные объявления. Flash анимация очень раздражает при большом количестве блоков на странице, поэтому вы можете ее заблокировать (не нужно этого делать на нашем сайте, мы белые и пушистые).

Для большинства популярных браузеров - Chromium, Firefox, Opera есть расширение Adblock, которое отлично справляется с этой функцией. Программа использует базу данных чтобы заблокировать наиболее популярные источники объявлений.

8. Используйте сочетания клавиш

Кому-то это может показаться очевидным. Работа только с клавиатурой намного быстрее, чем движение от мышки к клавиатуре и обратно. Много функций можно сделать с помощью клавиатуры. Например, стандартные команды копирования и вставки из меню правка.

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

Интерфейс запуска приложений открываемый по Alt+F2 может сделать намного больше. Например, вы можете набрать выключить для выключения или заблокировать для блокировки экрана. Вы можете выполнять простые расчеты начав выражение со знака =. Там есть еще много подобных функций в зависимости от плагинов. Наберите знак? и нажмите стрелку вправо чтобы узнать подробнее.

9. Пропатчите ядро

Если вам нужна максимальная производительность программного обеспечения, то множество исправлений можно внести в ядро. Оптимизация ядра Linux может дать отличный эффект. Вы можете оптимизировать ядро самостоятельно, но есть и более легкий путь. Вы можете использовать ядро, скомпилированное Con Koliva, оно включает огромное количество патчей производительности. Патчсет ядра называется -ck и он был собран с упором на производительность.

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

$ patch -p1 < patch-3.*-ck1

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

10. Разгоните видеокарту Nvidia

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

Не нужно использовать BIOS, достаточно панели управления NVIDIA. Прежде чем появятся эти параметры, вам нужно добавить строчку в конфигурационный файл X сервера. Этот файл больше не используется в большинстве дистрибутивов, но утилита настройки NVIDIA может его сгенерировать.

Просто запустите ее, перейдите на вкладку Конфигурация Х сервера и нажмите на кнопку Сохранить в файл конфигурации X.

После того как файл /etc/X11/xorg.conf будет создан откройте его в текстовом редакторе с правами root, найдите секцию Device который описывает вашу графическую карту и добавьте в конец строчку: Option "Coolbits" "5". Перезапустите Х сервер.

Теперь после запуска утилиты настройки NVIDIA вы увидите дополнительную страницу с настройкой тактовых частот. Нажмите кнопку Enable Overclocking и примите заявление об отказе. Теперь вы можете отрегулировать частоту работы для 2D и 3D рендеринга. Лучшие регулировать их одновременно.

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

11. Разгон оборудования

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

Многие материнские платы включают в себя пункты по умолчанию, для повышения скорости системы, без необходимости больших знаний в области компьютера.

Вы можете настроить все это в своем BIOS. Для доступа к нему используйте клавиши F2 или Del. Возможно, вы найдете там опции для ускорения процессора, увеличения частоты оперативной памяти и т д.

12. Повышение производительности сети

Linux уже очень давно поддерживает ipv6, но если вы его не используете, то его отключение может повысить быстродействие сети, таким образом, выполнив ускорение Linux при работе с сетью. Самый простой способ сделать это через NetworkManager.

Если вы используете Gnome, откройте апплет сетевых подключений. и выберите пункт редактировать для соединения которое вы используете. На вкладке ipv6 выберите отключить.

Если у вас KDE без NetworkManager, то можете установить глобальную переменную окружения KDE_NO_IPV6=1:

export KDE_NO_IPV6=1

Для сохранения изменений после перезагрузки можно добавить команду в файл /etc/profile.

Еще можно отключить модуль ядра, отвечающий за ipv6, для этого добавьте его в файл: /etc/modprobe.d/blacklist

Браузер Firefox тоже позволяет отключить ipv6. Просто наберите в адресной строке about:config и активируйте пункт \network.dns.disableIPv6.

Если вы работаете в небольшой сети, вы можете отключить arp в DHCP и настроить статические ip адреса. Добавьте строчку noarp в конфигурационный файл /etc/dhcpd.conf и перезапустите систему. Теперь адреса должны раздаваться быстрее.

13. Статическая линковка

Многие программы подгружают для своей работы библиотеки динамически, во время работы программы. На это уходит не очень много времени, но если приложения большие и подгружают много библиотек, то статическая линковка может дать отличное ускорение Linux. Для этого используются утилиты preload и prelink.

Prelink преобразует исполняемые файлы таким образом, чтобы они загружали как можно больше библиотек. Preload же следит за системой и держит в памяти часто используемые программы. После небольшой калибровки хорошо чувствуется оптимизация Linux.

Сначала установим Prelink:

sudo apt-get install prelink

Затем запустим утилиту для обработки всех исполняемых файлов:

sudo prelink --all

Для периодичного запуска prelink, чтобы выполнялась оптимизация Linux для новых файлов, откройте файл /etc/default/prelink и замените строчку PRELINKING=unknown на yes:

sudo gedit /etc/default/prelink

Установим Preload:

sudo apt-get install preload

Эту программу достаточно только установить, она не требует настройки после установки.

14. Используйте ZRAM

Если у вас недостаточно оперативной памяти, вы можете очень просто увеличить ее количество на 25, а то и 50% с помощью . Это модуль ядра, который позволяет сжимать содержимое оперативной памяти на лету, таким образом вместимость ОЗУ остается увеличивается, а скорость остается прежней. Это даст хорошее ускорение работы Linux для старых компьютеров.

15. Уменьшите активность жесткого диска

Система очень активно пишет и читает файлы из каталога /tmp. Это каталог для временных файлов, и с ним могут одновременно работать большое количество программ. Будет лучше, если содержимое этого каталога будет находиться в оперативной памяти. Чтобы ускорить работу linux, таким образом, добавьте строчку в файл /etc/fstab:

$ sudo vi /etc/fstab

tmpfs /tmp tmpfs defaults,noexec,nosuid 0 0

Сначала убедитесь не примонтирована ли уже папка tmp в оперативную память, выполнив команду mount. Во многих дистрибутивах эта оптимизация linux включена по умолчанию.

Но это еще не все. Не все системы рационально используют пространство подкачки на жестком диске. По умолчанию значение vm.swappiness установлено 60, поэтому, если (100-60) 40% оперативной памяти занято, система начнет сбрасывать данные на жесткий диск. Это справедливо для систем с небольшим количеством ОЗУ, 1-2 Гб, но если у вас 10 Гб, то нагружать жесткий диск когда у вас занято только 4 Гб несерьезно. Чтобы это изменить выполните команду.

Де́мон (англ. daemon) - в системах класса UNIX - служба, работающая в фоновом режиме без прямого общения с пользователем. Демоны обычно запускаются во время загрузки системы. Типичные задачи демонов: серверы сетевых протоколов (HTTP , FTP , электронная почта и др.), управление оборудованием, поддержка очередей печати, управление выполнением заданий по расписанию и т. д. В зависимости от задач, выполняемых компьютером, некоторые из этих демонов можно отключить и, таким образом, сэкономить на времени запуска системы и уменьшить нагрузку на систему во время работы. Для этого воспользуемся утилитой sysv-rc-conf . Утилита эта консольная, но очень проста и интуитивно понятна, поэтому использовать ее могут даже люди с паническим страхом терминала. Установка:

sudo apt-get install sysv-rc-conf

Запускаем:

sudo sysv-rc-conf

В терминале получаем следующее: Управление осуществляется несколькими клавишами: Пробел - ставим/убираем крестик, + - - остановка/запуск процесса, Q - выход.

Цифры в верхей строчке - это уровни выполнения. Для отключения сервиса, надо просто убрать крестик со всех уровней.

    Acpi-support - Лучше оставить уровень по умолчанию. То есть: 2,3,4,5.

    Acpid - Демон acpi. Этот и предыдущий процессы отвечают за управление питанием и очень важны и для ноутбуков, и для рабочих станций, так что лучше оставить их включенными. По умолчанию: 2,3,4,5.

    Adjtimex - Инструмент для тонкой подстройки часов в ядре. Обычно в списке загрузки его нет. В исключительных случаях, если он всё же находится в этом списке, значит тому были веские причины и лучше оставить его включенным.

    Alsa - Если используется звуковая подсистема alsa, то да, запуск надо оставить. Но если у вас есть служба alsa-utils, то эту можно отключить. По умолчанию: выключена, если включена alsa-utils.

    Alsa-utils - В моей системе эта служба заменяет alsa, так что я выключил alsa и включил эту на уровне S. -Примечание- Говоря «Выключил» я подразумеваю - снял все «X» со всех уровней выполнения. Если у вас их и не было - замечательно. Продолжаем настройку. По умолчанию: уровень выполнения S.

    Anacron - Подсистема cron, которая выполняет любую его задачу, которая не была выполнена вовремя. Чаще всего такое случается, если в момент наступления задачи по cron ваш компьютер был выключен. Например, updatedb запланирован каждый день на 2 часа ночи, но в это время компьютер не работал. При запуске компьютера anacron попытается определить пропущенные задачи и выполнит их. Я убрал эту службу, поскольку не так часто выключаю свой ноутбук, но в большинстве случаев она должна быть включена. По умолчанию: 2,3,4,5.

    Apmd - Эта служба меня немного смутила. У меня уже включен acpid, так зачем мне включать ещё и apmd? Если ваш компьютер не настолько старый, чтоб даже не поддерживать acpi, попробуйте отключить эту службу. Я отключил. По умолчанию: 2,3,4,5.

    Atd - Планировщик, наподобие cron. Я отключил. По умолчанию: 2,3,4,5.

    Binfmt-support - Поддержка ядром других форматов бинарников. Я оставил. По умолчанию: 2,3,4,5.

    Bluez-utiles - Я выключил. У меня нет устройств bluetooth. По умолчанию: 2,3,4,5.

    Bootlogd - Оставьте запускаться. По умолчанию: S.

    Cron - Тоже надо оставить. По умолчанию: 2,3,4,5.

    Cupsys - Подсистема для управления принтером. У меня принтера нет, так что я смело отключил, но вы смотрите по обстоятельствам. По умолчанию: 2,3,4,5.

    Dbus - Система сообщений (Message bus system). Очень важна, оставьте включённой. По умолчанию: 2,3,4,5.

    Dirmngr - Утилита управления списками сертификатов. Работает заодно с gnupg. По умолчанию: 2,3,4,5.

    Dns-clean - В основном служит для очистки DNS при использовании соединений dial-up. У меня нет dial-up, так что я выключил. По умолчанию: S.

    Evms - (Enterprise Volume Management System) - система управления томами для ОС Linux. EVMS предлагает единые унифицированные механизмы для управления дисками, дисковыми разделами, файловыми системами, физическими томами LVM ит.д. Я выключил. По умолчанию: S.

    Fetchmail - Демон доставки электронной почты. Я выключил. По умолчанию: 2,3,4,5.

    Gdm - Менеджер рабочего стола (Gnome Desktop Manager). Я его в любом случае уже выключил, когда решил загружаться в консоль. В данном случае - дело предпочтений, так что решать вам, хотите ли вы загружаться напрямую в GUI . По умолчанию: 2,3,4,5.

    Gdomap - Я понятия не имею, зачем этот процесс должен запускаться. Я не видел этого демона больше ни в одной системе, так что я его выключил и не чувствую какой-либо утраты. Есть какие-нибудь причины для его использования на ноутбуках или рабочих станциях? По умолчанию: 2,3,4,5.

    Gpm - Поддержка мыши для консоли. Если вы чувствуете, что не можете обойтись без мыши в консоли - поставьте уровень выполнения 1 и 2. Это всё, что нужно. По умолчанию: 2,3,4,5.

    Halt - Не менять. По умолчанию: 0.

    Hdparm - Скрипт для подстройки жёсткого диска. Я отключил уровни 2,3,4,5, но установил уровень S. Я полагаю, что открытие DMA, 32-битного ввода-вывода и т.д. принесёт пользу остальным процессам. Также я сменил родной скрипт на очень простой, который сделал самостоятельно. Я думаю, не стоит производить все эти избыточные проверки, если я сам знаю, что делаю. Файл конфигурации - /etc/hdparm.conf. По умолчанию: 2,3,4,5.

    Hibernate - Если ваша система поддерживает спящий режим - оставьте службу работать. В противном случае она бесполезна. По умолчанию: S.

    Hotkey-setup - Этот демон включает некоторые специфические горячие клавиши в ноутбуках. Есть заводская поддержка: HP, Acer, ASUS, Sony, Dell, и IBM. Если у вас ноутбук этих производителей, можно оставить службу запускаться, в противном случае её запуск будет бесполезен. По умолчанию: 2,3,4,5.

    Hotplug и hotplug-net - Включение подсистем hotplug занимает время. Я бы задумался, включать ли их вообще. Я сделал несколько изменений в своём файле /etc/network/interfaces. Вместо того, чтобы адресовать свою беспроводную карту в процессе hotplug, я включил её в автоматический режим. Таким образом, я могу отключить эти процессы. Я удостоверился, что даже при их отключении, ubuntu находит драйверы usb, цифровой камеры и так далее. Так что, думаю, отключение этих процессов достаточно безопасно. -Примечание- Если после отключения hotplug ваша звуковая карта перестала работать, можно включить его обратно. Или можно отредактировать файл /etc/modules, чтобы добавить модуль драйвера звуковой карты. Более поздние работают быстрее, проверено. По умолчанию: S.

    Hplip - Подсистема печати и обработки изображений HP. Я отключил. По умолчанию: S.

    Hwtools - Утилита для оптимизации irq.

    Ifrename - Скрипт по именованию сетевых интерфейсов. Звучит красиво, но я отключил. Нужен, в основном, для управления именами нескольких сетевых интерфейсов. С тех пор, как у меня две сетевые карты - беспроводная и проводная - они обозначены ядром как eth0 и ath0, так что процесс для меня бесполезен. По умолчанию: S.

    Ifupdown и ifupdown-clean - Не отключайте. Это скрипты для включения сетевых интерфейсов при загрузке. По умолчанию: ifupdown - 0,6,S и ifupdown-clean - S.

    Inetd или inetd.real - Посмотрите в файл /etc/inetd.conf и закомментируйте все службы, которые вам не нужны. Если активных служб после этого не осталось - демон можно смело убирать из запуска. По умолчанию: 2,3,4,5.

    Klogd - Не выключать. По умолчанию: 2,3,4,5.

    Laptop-mode - Служба для проверки в ноутбуке: не пора ли выкинуть батарею. Бесполезна для стационарного компьютера. По умолчанию: 2,3,4,5.

    Libpam-devperm - Демон для восстановления прав доступа к файлам-устройствам после сбоя системы.

    Linux-restricted-modules-common - Нужно посмотреть, не загружены ли несвободные модули в систему. Эти модули можно найти в /lib/linux-restricted-modules. Если такие модули не используются - можно смело отключать демона. По умолчанию: 0,6,S.

    Lm-sensors - Если материнская плата поддерживает сенсорные чипы, можно посмотреть их состояние.

    Lvm - Я не использую, потому отключил. Оставьте, если у вас есть lvm. По умолчанию: S.

    Makedev - Не отключать. По умолчанию: 2,3,4,5.

    Mdamd - Инструмент для управления устройствами RAID . В большинстве случаев можно отключить. По умолчанию: 2,3,4,5.

    Mdamd-raid - Инструмент RAID . По умолчанию: S.

    Module-init-tools - Загружает дополнительные модули из файла /etc/modules. Можно посмотреть его содержимое на наличие ненужных модулей. Обычно включен. По умолчанию: S.

    Mountvirtfs - Монтирование виртуальных файловых систем. Не отключать. По умолчанию: S.

    Networking - Поднимает сетевые интерфейсы и конфигурирует DNS при загрузке, путём сканирования файла /etc/network/interfaces. Отключать не стоит. По умолчанию: 0,6,S.

    Ntpdate - Синхронизирует время с сервером времени ubuntu (или заданным другим). По умолчанию: S. -Примечание- Если второй системой стоит Windows, лучше оставить процесс включённым. Windows хранит в BIOS не универсальное (по Гринвичу), а локальное время и при перезагрузке из одной системы в другую они будут пытаться корректировать друг друга. В последних версиях эта проблема вроде бы исправлена.

    Nvidia-kernel - Я собирал драйвер nvidia самостоятельно, поэтому мне служба не нужна. Если используете несвободный драйвер nvidia - оставьте службу включённой. По умолчанию: 1,2,3,4,5.

    Pcmcia - Активирует устройство PCMCIA. Я поставил уровень выполнения в 0,6,S вместо умолчательных 2,3,4,5, поскольку, по моему мнению, оборудование надо подключать в первую очередь. С другой стороны, если устройства PCMCIA не используются, то и службу можно отключать.

    Portmap - Демон для управления такими службами, как nis, nfs, и т.д. По умолчанию: 2,3,4,5,0,6,S.

    Powernowd - Клиент для управления cpufreq. Нужен в основном для ноутбуков с поддержкой технологии изменения частоты процессора. Полезен для ноутбуков и наоборот для стационарных компьютеров. По умолчанию: 2,3,4,5.

    Ppp и ppp-dns - Мне не нужно. У меня нет dial-up. По умолчанию: ppp - 2,3,4,5 и pppd-dns - S.

    Readahead - Похоже, readahead это разновидность «предзагрузчика». Загружает при старте несколько библиотек в оперативную память, что позволяет некоторым программам быстрее стартовать. Но увеличивает время загрузки системы на 3-4 секунды. По умолчанию: S.

    Reboot - Не менять. По умолчанию: 6.

    Resolvconf - Автоматически настраивает DNS в соответствии со статусом сети. По умолчанию: S.

    Rmnologin - Убирает nologin, если находит. У меня такого не будет, я убрал. По умолчанию: 2,3,4,5.

    Rsync - Демон rsync. Можно убрать, если не уверены, что он вам нужен. По умолчанию: 2,3,4,5.

    Urandom - Генератор случайных чисел. Нельзя угадать какому приложению, особенно в графике, может понадобиться. По умолчанию: 0,6,S.

    Usplash - Картинка при загрузке системы, с индикатором загрузки. Для полного отключения надо редактировать файл /boot/grub/menu.lst: закомментировать строку splashimage и убрать опцию splash из строки загрузки ядра. По умолчанию: 2,3,4,5.

    Vbesave - Утилита для настройки BIOS видеокарты. По умолчанию: 2,3,4,5.

    Xinetd - Сверхдемон inetd для управления другими демонами. Включать имеет смысл только в том случае, если есть демоны под его управлением.

Если Вы не уверены, за что отвечает служба, не отключайте ее. Отключение нужных служб может привести к полной или частичной неработоспособности как некоторых программ, так и системы в целом.

Если сейчас сравнить новые версии десктоп дистрибутива Ubuntu например с версией 14.04, вы должны были бы увидеть, что дистрибутивы Linux стали более «прожорливыми», да новые версии получили проблему в виде Unity которая жрет оперативку как слон и если у вас оперативной памяти меньше 2гб, будет не сладко. В сегодняшнем материале мы обсудим несколько способов более оптимального решения возникшей проблемы которые бы позволили уменьшить апетиты в использовании оперативной памяти. Первый, конечно же - это выбор легкого дистрибутива (Xubuntu или же Lubuntu и прочих). Второй способ, в данном случае мы постараемся уменьшить потребления памяти без ограничения в функциональности работы дистрибутива, для опытов мы выбрали Ubuntu 16.04 LTS.

Введение

Если вы только установили систему на компьютер который имеет два гигабайта ОЗУ, после первого запуска система будет кушать не меньше 1 Гб памяти. Вроде и не критично, но очень много, если взять хотя-бы в сравнение более маленький дистрибутив и сравнить потребление памяти. А если и запустить браузер например с 5-6 вкладками, то ваши 2 ГБ быстро израсходуются и вы увидите первые косяки в производительности прочие зависания браузера итд.

Рассмотрим что нам нужно в функциональности, а что нет.

  • Прежде всего список демонов которые загружаются по умолчанию. Разработчики Ubuntu, попытались сделать минимум, но в нашей ситуации стоит обратить внимание на то, что в зависимости от степени использования дистрибутива, много функционала может быть вовсе лишним, что в итоге может быть отключено и не будет кушать оперативную память.
  • Так же стоит обратить внимание на приложения которые вы не используете. Разное ПО использует плагины, которые реализуются в большей части случаев в виде загружаемых библиотек. В данной ситуации не лишней будет тонкая настройка и отключение ненужного. Стоит вспомнить и о графической подсистеме компоненты которой не всем нужны отключив которые можно немного высвободить оперативной памяти.

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

Отключаем лишние службы / сервисы

В Ubuntu 16.04 используется systemd, чтобы посмотреть ПО которое запускается во время начальной загрузки, мы можем использовать следующую команду:

Sudo systemctl list-units --type service

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

Список загружаемых сервисов systemd

AppArmor, предназначен для защиты системы, но в реальности если говорить о домашних системах, будет достаточно своевременно обновлять приложения. Если говорить о рисках заражения со стороны ПО, то он минимален, нужно очень постараться попасть на вредоносную страницу, начиненную эксплоитами, которые созданы под конкретную версию дистрибутива, так же стоит вспомнить о том, что по умолчанию профиль AppArmor для Firefox неактивен. Поэтому, если у вас приступ паники как у параноика, вы можете не отключать эту службу, но если вы мыслите трезво, можешь смело отключать, для чего воспользуйся следующей командой:

Sudo systemctl disable apparmor.service

Apport - это служба которая предназначена для отправления отчетов об ошибках в Canonical. Да, вроде и полезный инструмент, но представьте ситуацию, у вас мобильный 3G интернет и это окно об ошибках постоянно маячит перед глазами, в данной ситуации имеет смысл отключить данную службу, иногда это окно уж очень слишком часто вылазит когда его не ждешь, я лично отключил сразу же после установки так как иногда оно просто выводит своими появлениями когда его не ждешь. Отключать ли вам, вы должны сами решить для себя. Для отключения набираем команду:

Sudo systemctl disable apport.service

Avahi - это демон который предназначен для обнаружения служб / компьютеров в домене.local. Вроде и удобная штука, но на практике, если у вас есть пара компьютеров в локальной сети, смысла держать этот демон активным нет, мoжете смело отключить:

Sudo systemctl disable avahi-daemon.service

CGManager предназначен для управления cgroup позволяя непривилегированным пользователям получать доступ к cgroup и предотвращая выход из текущего cgroup в родительский не исключение и привилегированные приложения. Если трезво мыслить, он может пригодиться лишь при создании вложенных контейнеров LXC, если вы их не используете и не пользуетесь песочницей, в которой все это может пригодиться для запуска программ, смело отключайте:

Sudo systemctl disable cgmanager.service

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

Sudo systemctl disable colord.service

ModemManager - это интерфейс, позволяющий реализовать подключение к сети интернет используя мoдемы, каналы связи (2G/3G/4G/CDMA), способы соединения (RS232, USB, Bluetooth) и методoв управления (AT, QCDM, QMI, MBIM). Если у вас кабельный интернет и вы не планируете использовать модем, отключайте:

Sudo systemctl disable ModemManager.service

Speech Dispatcher - это унифицированный API, который имеет предназначение для изменения порядка вызова синтезатора, так же позволяет предотвратить наложения звука при использовании нескольких приложений и воспроизведении в них звука одновременно. Если вы не планируете использовать синтезаторы речи, отключайте:

Sudo systemctl disable speech-dispatcher.service

Whoopsie - эта служба имеет те же корни что и Apport, если вы ее отключили, так же стоит и поступить с Whoopsie. Прежде всего откройте конфиг /etc/default/whoopsie здесь нам нужно изменить значение в параметре report_crashes замени true на false, сохраняем и после отключаем службу:

Sudo systemctl disable whoopsie.service

Отключение компонентов программ и графической подсистемы

Если отключить графическую подсистему, то ваша Ubuntu будет использовать на 40%. Первое, о чем стоит вспомнить и что может существенно облегчить работу в ubuntu, это отключение онлайн-поиска, который в большей части никому не нужен вовсе. Чтобы отключить вы можете перейти в «Параметры системы -> Защита и приватность -> Поиск» и переключить «Отображать результаты поиска в интернете». Или же воспользоваться консольным способом и выполнить в терминале следующую команду:

Gsettings set com.canonical.Unity.Lenses remote-content-search none

Стоит вспомнить и о композитном менеджере Compiz, который имеет апетит как у слона и кушает вашу память сильнее, чем все остальные процессы. Чтобы умерить его апетиты, вам потребуется установить CompizConfig Settings Manager(после установки запустить):

Sudo apt-get install compizconfig-settings-manager ccsm

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

  • «Команды», если вы для комбинаций клавиш не задаете никаких команд, можете смело отключать; в Unity он не используется и никаких побочных последствий не вызовет если отключить.
  • Enhanced Zoom Desktop - это подобия «Экранной лупы». Если вам не нужно подобное ПО, отключайте.
  • Desktop Wall - это всем известный куб Compiz в 2D. Если вы не планируете использовать куб, отключайте.
  • Viewport Switcher - этот плагин, предназначен для переключения рабочих столов. Он так же создает нагрузки и если для вас он не нужен, отключайте.
  • В группе «Эффекты» можно отключить плагин: Animations и «Проявление/исчезание окон». Я в данном разделе вовсе все отключил и работаю без анимаций и без лишних красот так как в этом нет необходимости.
  • Session Management - предназначен для сохранения/восстановления положений и размера окон в сессии в промежутках между входом/выходом пользователя). Если вам это не нужно, отключайте как и я поступил.
  • При отключении лишних мусорных плагинов лучше всего перейти в вкладку «Все» и отключать ненужно лишь листая вверх или вниз где все будет под рукой.

Отключаем Compiz плагины через ccsm

Возьмем к примеру приложение Network Manager. В списке плагинов данного приложения имеется ofono, в том случае если вы не используете мобильные соединения не пользуетесь модемами и у вас лишь кабельный интернет, можете смело отключать если вы не планируете пользоваться модемами. Чтобы отключить, в терминале выполните команду sudo gedit /etc/NetworkManager/NetworkManager.conf в строчке Plugin удалите ,ofono и сохраните изменения.

Рассмотрим более пристально плагины Network Manager

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

Для отключения нужно сделать следующее, перейти в каталoг /etc/xdg/autostart:

Cd /etc/xdg/autostart sudo sed --in-place "s/NoDisplay=true/NoDisplay=false/g" onboard-autostart.desktop

на примере выше я отключил экранную клавиатуру, вы же подстраивайте как вам нужно прописав в конце нужный вам плагин. Если захотите снова включить, выполните команду вида:

Sudo sed --in-place "s/NoDisplay=false/NoDisplay=true/g" onboard-autostart.desktop

Посмотрим, что можно отключить:

  • Если вы не пользуетесь GPG, то gnome-keyring-gpg можете отключать, все равно системные утилиты будут напрямую обращаться к связке ключей.
  • Indicator-bluetooth, если вы не используете и не планируете использование Bluetooth, отключайте.
  • Indicator-messages предназначен для отображение входящих сообщений в почтовых клиентах, если не пользуетесь почтовыми клиентами, можете отключать, если пользуетесь, соответственно не отключать.
  • Indicator-printers - отображает подключение принтеры, если у вас нет принтера, отключайте.
  • Onboard-autostart - предназначен для запуска экранной клавиатуры, если не используете, отключайте, я отключил не раздумывая так как не пользуюсь ей и не планирую.
  • Orca-autostart - это экранная лупа, тот же мусор что и клавиатура, если у вас зрение хорошее, отключайте.
  • Print-applet - плагин который отображает задания на печать, как я писал выше к indicator-printers, если нет принтера, отключайте.
  • Telepathy-indicator - плагин который отображает уведомления от этого клиента, если вы им не пользуетесь, отключайте.
  • Update-notifier - плагин для уведомлений об обновлениях. Если вам не лень самому запустить процесс обновления, можете отключать.
  • Zeitgeist-datahub - плагин который имеет роль коллектора который запускает разные собиратели информации по технологии Zeitgeist. Эта технология регистрирует активного пользователя в целях восстановления хронологии событий. Да, стоит напомнить, что эта технология очень хорошо связана с Unity, чтобы ее отключить придется выполнить дополнительные манипуляции.

В первую очередь нужно закрыть доступ записи в файл БД для процесса zeitgeist-daemon, откройте терминал CTRL+ALT+T и выполним следующую команду:

Chmod -rw ~/.local/share/zeitgeist/activity.sqlite

Проверим, что этот процесс туда писать не может:

Zeitgeist-daemon --replace

Если вы выполнили все правильно, после выполнения команды выше, он должен поругается, что нет доступа к файлу БД, после можно отключать плагин.

Используем zRam для увеличения памяти

Используя zRam, мы можем немного пожертвовать в производительности для увеличения количества памяти. Как работает zRam, создается сжатое блочное устройство в вашей памяти и в последующем размещает на нем своп. В результате за счет сжатия мы получаем экономию памяти в два раза.

Для активации zRam, вам нужно установить следующие пакет:

Sudo apt-get install zram-config

после перезагрузиться. После чтобы проверить, посмотрите список ваших разделов подкачки:

Sudo swapon -s

Если все хорошо прошло, у вас на устройстве /dev/zram0 появится своп. По дефолту создается по одному на каждый процессор.

Вывод

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

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

Если у вас два гигабайта оперативной памяти, вместо нагрузочных приложений, например взяв офисный пакет LibreOffice Writer, вы можете заменить на более легкий AbiWord, вместо системного браузера который предустановлен по умолчанию Firefox, выберите более легкий, например Midori.

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