Различия
Здесь показаны различия между двумя версиями данной страницы.
Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия Последняя версия Следующая версия справа и слева | ||
wiki:ubuntu_optimization [2013/03/11 14:49] [Ускорение запуска программ, с помощью preload] использование только стандартных утилит для управления пакетами |
wiki:ubuntu_optimization [2018/01/10 11:58] [Настройка Swappiness] |
||
---|---|---|---|
Строка 3: | Строка 3: | ||
<note warning>Часть информации устарела. При применении к новым выпускам Ubuntu будьте осторожны!</note> | <note warning>Часть информации устарела. При применении к новым выпускам Ubuntu будьте осторожны!</note> | ||
- | ===== Краткое описание руководства ===== | + | ===== Краткое описание руководства ===== |
Эти инструкции будут полезны для оптимизации процесса загрузки, его ускорения, а также общей оптимизации и ускорения системы. | Эти инструкции будут полезны для оптимизации процесса загрузки, его ускорения, а также общей оптимизации и ускорения системы. | ||
Строка 11: | Строка 11: | ||
===== Оптимизация загрузки Ubuntu ===== | ===== Оптимизация загрузки Ubuntu ===== | ||
- | ==== Начальная оптимизация загрузки ==== | + | ==== Оптимизация начальной загрузки ==== |
- | Это хорошая идея - сразу после установки Ubuntu, также операцию можно выполнить и позже. В этом пункте мы реорганизуем некоторые файлы, необходимые при загрузке, сделая тем самым загрузку ubuntu немного быстрее. Все, что нужно сделать - это нажать ESC в меню загрузчика GRUB при включении компьютера, затем выбрать вторую строку (она выглядит примерно так: /vmlinuz-2.6.20-15-generic root=UUID=6162302f-3f32-4b73-bb56-c42f4f9fbce2 ...) нажмите кнопку <key>e</key> для редактирования строки. Добавьте слово profile в конец строки (не забудьте поставить пробел перед profile). После ввода нажмите <key>Enter</key> и затем клавишу <key>b</key> для загрузки системы. Первый раз система будет загружаться дольше чем обычно, последующие - будет загружаться быстрее первоначального варианта. | + | В Ubuntu по умолчанию установлена утилита ''readahead'', которая позволяет ускорить загрузку системы. Для того чтобы эта утилита давала максимальный эффект, рекомендуется время от времени загружать систему с параметром ''profile'', который обновляет кэши readahead. Чтобы сделать это, надо во время загрузки компьютера зайти в меню [[GRUB]], зажав <key>S</key> при включении компьютера, затем выбрать строку c названием Ubuntu и нажать кнопку <key>e</key> для редактирования параметров загрузки. В появившемся тексте найдите строку вида((Строка может незначительно отличатся в зависимости от версии системы.)) |
+ | <file>linux /vmlinuz-3.5.0-26-generic root=UUID=39efddef-c527-4bd0-bde5-82278c4fdeb3 ro quiet splash $vt_handoff</file> | ||
+ | и добавьте слово profile в конец строки (не забудьте поставить пробел перед profile). Для загрузки системы нажмите <key>C-x</key> или <key>F10</key>. С этой опцией система будет загружаться дольше обычного, так как будет производиться сбор информации. После полной загрузки нужно еще раз перезагрузиться. | ||
- | ==== Оптимизация файловой системы ==== | + | Эти действия обновляют информацию о всех используемых на этапе загрузки библиотеках и утилитах в файле ///etc/readahead/boot//, а в ///etc/readahead/desktop// - информацию о загрузке десктоп окружения. При следующей загрузке сервис readahead, при помощи программы ///sbin/readahead-list//, загрузит библиотеки и программы, упоминающиеся в индексе, в page cache, что немного уменьшит время загрузки. |
- | Следующие советы предназначены для систем с файловой системой EXT(3|4) и ReiserFS. | + | ==== Оптимизация файловой системы ==== |
- | *Открыть терминал, ввести:<code bash>gksu gedit /etc/fstab</code>Добавить к строке (/) обозначением корня системы. Другими словами, нужно изменить следующую строку:<file># /dev/sdb2 | + | === Отключение журнала для корневого раздела === |
- | UUID=f4d4d73d-4141-4701-a7e2-ec41664483a7 / ext3 defaults,errors=remount-ro 0 1</file>На:<file># /dev/sdb2 | + | ** Откройте терминал, введите: |
+ | .. <code bash>sudo gedit /etc/fstab</code> | ||
+ | .. Найдите следующую после комментария похожего на «/ was on /dev/sda2 during installation" строку и приведите ее к виду | ||
+ | .. <file># / was on /dev/sda2 during installation | ||
UUID=f4d4d73d-4141-4701-a7e2-ec41664483a7 / ext3 defaults,errors=remount-ro,noatime,data=writeback 0 1</file> | UUID=f4d4d73d-4141-4701-a7e2-ec41664483a7 / ext3 defaults,errors=remount-ro,noatime,data=writeback 0 1</file> | ||
- | <note important>**#/dev/sdb2\\ UUID=f4d4d73d-4141-4701-a7e2-ec41664483a7 ext3** - это лишь частный случай, у вас будут другие значения.</note> | + | .. добавив '',noatime,data=writeback'' . |
- | * Теперь введем следующие команды в консоли:<code bash>gksu gedit /boot/grub/grub.cfg</code>Добавьте следующую опцию:<file>rootflags=data=writeback</file>В конец следующей строки:<file># defoptions=quiet splash rootflags=data=writeback</file>так<file># altoptions=(recovery mode) single rootflags=data=writeback</file>Сохранить, затем ввести команды:<code bash>sudo update-grub</code>Введите следующие команды, чтобы изменить файловую систему на лету. | + | ** Теперь введите следующую команду в консоли: |
- | <note>ПРИМЕЧАНИЕ: Посмотрите обозначение раздела /dev/sdb2 которые является корнем системы (/). Если корневой раздел (/) обозначается по другому, измените /dev/sdb2 на соответствующее. Можете посмотреть /etc/fstab !</note><note warning>**ОПАСНО**: Следующая команда только для **EXT3** файловой системы! Для ReiserFS это НЕ будет работать, для внесения изменений нужно перезагрузить компьютер.</note> | + | .. <code bash>sudo gedit /etc/default/grub</code> |
- | * <code bash>sudo tune2fs -o journal_data_writeback /dev/sdb2</code>Это все, перезагрузитесь и войдите, скорость должна увеличиться при работе с видео, изображениями и аудио файлами. | + | .. и приведите строку |
- | * Параметры для ext4 для обладателей Источником Бесперебойного Питания (ИБП) | + | .. <file bash>GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"</file> |
- | * **barrier=0** Код файловой системы обязан перед созданием записи фиксации [журнала] быть абсолютно уверенным, что вся информация о транзакции помещена в журнал. Просто делать запись в правильном порядке недостаточно; современные диски имеют кэш большого объёма и меняют порядок записи для оптимизации производительности. Поэтому файловая система обязана явно сообщить диску о необходимости записать все журнальные данные на носитель перед созданием записи фиксации; если сначала будет создана запись фиксации, журнал может быть повреждён. Блокирующая система ввода-вывода ядра предоставляет такую возможность благодаря использованию механизма «шлагбаумов» (barriers); проще говоря, «шлагбаум» запрещает запись любых блоков, посланных после него, до того момента, как всё, что было прислано перед «шлагбаумом», будет перенесено на носитель. При использовании «шлагбаумов» файловая система может гарантировать, что всё, что находится на диске, целостно в любой момент времени. Отключая шлагбаум barrier=0, мы ускоряем операции записи на разделы ext4. | + | .. к следующему виду |
- | * **noatime, nodiratime** – отключение записи времени последнего доступа (для файлов/директорий). Или **relatime** - атрибут времени доступа (atime) обновляется, но только в том случае, если изменились данные файла (атрибут mtime) или его статус (атрибут ctime). Рекомендую использовать relatime. | + | .. <file bash>GRUB_CMDLINE_LINUX_DEFAULT="quiet splash rootflags=data=writeback"</file> |
- | * **commit** – время между сбросами буферов на диск. Рекомендую commit=100 | + | .. Сохраните файл. |
- | * Параметры для btrfs для обладателей Источником Бесперебойного Питания (ИБП) | + | ** Обновите конфигурацию загрузчика: |
- | * **nobarrier** Код файловой системы обязан перед созданием записи фиксации [журнала] быть абсолютно уверенным, что вся информация о транзакции помещена в журнал. Просто делать запись в правильном порядке недостаточно; современные диски имеют кэш большого объёма и меняют порядок записи для оптимизации производительности. Поэтому файловая система обязана явно сообщить диску о необходимости записать все журнальные данные на носитель перед созданием записи фиксации; если сначала будет создана запись фиксации, журнал может быть повреждён. Блокирующая система ввода-вывода ядра предоставляет такую возможность благодаря использованию механизма «шлагбаумов» (barriers); проще говоря, «шлагбаум» запрещает запись любых блоков, посланных после него, до того момента, как всё, что было прислано перед «шлагбаумом», будет перенесено на носитель. При использовании «шлагбаумов» файловая система может гарантировать, что всё, что находится на диске, целостно в любой момент времени. Отключая шлагбаум nobarrier, мы ускоряем операции записи на разделы btrfs. | + | .. <code bash>sudo update-grub</code> |
- | * **noatime, nodiratime** – отключение записи времени последнего доступа (для файлов/директорий). Или **relatime** - атрибут времени доступа (atime) обновляется, но только в том случае, если изменились данные файла (атрибут mtime) или его статус (атрибут ctime). Рекомендую использовать relatime. | + | ** Если у вас раздел отформатирован в одну из файловых систем из семейства **Ext** выполните следующую команду: |
- | * **nodatacow** – При включенном механизме copy-on-write появляются дополнительные издержки и параметром nodatacow мы отключаем эту возможность, которая на desktop компьютере редко используется. | + | .. <code bash>sudo tune2fs -o journal_data_writeback /dev/sdb2</code> |
- | * **vm.dirty_writeback_centisecs**. Увеличим время между сбросом «грязных» буферов vm.dirty_writeback_centisecs в /etc/sysctl.conf. Рекомендую vm.dirty_writeback_centisecs = 15000 | + | .. Помните, что название вашего раздела с корневой системой может отличатся от /dev/sdb2. |
+ | ** Перезагрузите компьютер. | ||
+ | |||
+ | === Параметры для Ext4 для обладателей Источником Бесперебойного Питания (ИБП) === | ||
+ | * **barrier=0** Код файловой системы обязан перед созданием записи фиксации [журнала] быть абсолютно уверенным, что вся информация о транзакции помещена в журнал. Просто делать запись в правильном порядке недостаточно; современные диски имеют кэш большого объёма и меняют порядок записи для оптимизации производительности. Поэтому файловая система обязана явно сообщить диску о необходимости записать все журнальные данные на носитель перед созданием записи фиксации; если сначала будет создана запись фиксации, журнал может быть повреждён. Блокирующая система ввода-вывода ядра предоставляет такую возможность благодаря использованию механизма «шлагбаумов» (barriers); проще говоря, «шлагбаум» запрещает запись любых блоков, посланных после него, до того момента, как всё, что было прислано перед «шлагбаумом», будет перенесено на носитель. При использовании «шлагбаумов» файловая система может гарантировать, что всё, что находится на диске, целостно в любой момент времени. Отключая шлагбаум barrier=0, мы ускоряем операции записи на разделы ext4. | ||
+ | * **noatime, nodiratime** – отключение записи времени последнего доступа (для файлов/директорий). Или **relatime** - атрибут времени доступа (atime) обновляется, но только в том случае, если изменились данные файла (атрибут mtime) или его статус (атрибут ctime). Рекомендую использовать relatime. | ||
+ | * **commit** – время между сбросами буферов на диск. Рекомендую commit=100 | ||
+ | |||
+ | === Параметры для btrfs для обладателей Источником Бесперебойного Питания (ИБП) === | ||
+ | * **nobarrier** Код файловой системы обязан перед созданием записи фиксации [журнала] быть абсолютно уверенным, что вся информация о транзакции помещена в журнал. Просто делать запись в правильном порядке недостаточно; современные диски имеют кэш большого объёма и меняют порядок записи для оптимизации производительности. Поэтому файловая система обязана явно сообщить диску о необходимости записать все журнальные данные на носитель перед созданием записи фиксации; если сначала будет создана запись фиксации, журнал может быть повреждён. Блокирующая система ввода-вывода ядра предоставляет такую возможность благодаря использованию механизма «шлагбаумов» (barriers); проще говоря, «шлагбаум» запрещает запись любых блоков, посланных после него, до того момента, как всё, что было прислано перед «шлагбаумом», будет перенесено на носитель. При использовании «шлагбаумов» файловая система может гарантировать, что всё, что находится на диске, целостно в любой момент времени. Отключая шлагбаум nobarrier, мы ускоряем операции записи на разделы btrfs. | ||
+ | * **noatime, nodiratime** – отключение записи времени последнего доступа (для файлов/директорий). Или **relatime** - атрибут времени доступа (atime) обновляется, но только в том случае, если изменились данные файла (атрибут mtime) или его статус (атрибут ctime). Рекомендую использовать relatime. | ||
+ | * **nodatacow** – При включенном механизме copy-on-write появляются дополнительные издержки и параметром nodatacow мы отключаем эту возможность, которая на desktop компьютере редко используется. | ||
+ | * **vm.dirty_writeback_centisecs**. Увеличим время между сбросом «грязных» буферов vm.dirty_writeback_centisecs в /etc/sysctl.conf. Рекомендую vm.dirty_writeback_centisecs = 15000 | ||
====Отключение ненужных служб (демонов)==== | ====Отключение ненужных служб (демонов)==== | ||
- | Де́мон (англ. daemon) — в системах класса UNIX — служба, работающая в фоновом режиме без прямого общения с пользователем. | + | [[daemon|Де́мон]] (англ. daemon) — в системах класса UNIX — служба, работающая в фоновом режиме без прямого общения с пользователем. |
- | Демоны обычно запускаются во время загрузки системы. Типичные задачи демонов: серверы сетевых протоколов (HTTP, FTP, электронная почта и др.), управление оборудованием, поддержка очередей печати, управление выполнением заданий по расписанию и т. д. | + | Демоны обычно запускаются во время загрузки системы. Типичные задачи демонов: серверы сетевых протоколов (HTTP, [[FTP]], электронная почта и др.), управление оборудованием, поддержка очередей печати, управление выполнением заданий по расписанию и т. д. |
- | В зависимости от задач, выполняемых компьютером, некоторые из этих демонов можно отключить и, таким образом, съэкономить на времени запуска системы и уменьшить нагрузку на систему во время работы. Для этого воспользуемся утилитой **sysv-rc-conf**. Утилита эта консольная, но очень проста и интуитивно понятна, поэтому использовать ее могут даже люди с паническим страхом терминала. Установка: | + | В зависимости от задач, выполняемых компьютером, некоторые из этих демонов можно отключить и, таким образом, сэкономить на времени запуска системы и уменьшить нагрузку на систему во время работы. Для этого воспользуемся утилитой **sysv-rc-conf**. Утилита эта консольная, но очень проста и интуитивно понятна, поэтому использовать ее могут даже люди с паническим страхом терминала. Установка: |
<code bash> sudo apt-get install sysv-rc-conf </code> | <code bash> sudo apt-get install sysv-rc-conf </code> | ||
Запускаем: | Запускаем: | ||
Строка 89: | Строка 106: | ||
- mountvirtfs - Монтирование виртуальных файловых систем. Не отключать. По умолчанию: S. | - mountvirtfs - Монтирование виртуальных файловых систем. Не отключать. По умолчанию: S. | ||
- networking - Поднимает сетевые интерфейсы и конфигурирует DNS при загрузке, путём сканирования файла /etc/network/interfaces. Отключать не стоит. По умолчанию: 0,6,S. | - networking - Поднимает сетевые интерфейсы и конфигурирует DNS при загрузке, путём сканирования файла /etc/network/interfaces. Отключать не стоит. По умолчанию: 0,6,S. | ||
- | - ntpdate - Синхронизирует время с сервером времени ubuntu (или заданным другим). По умолчанию: S. -Примечание- Если второй системой стоит Windows, лучше оставить процесс включённым. Windows хранит в биосе не универсальное (по гринвичу), а локальное время и при перезагрузке из одной системы в другую они будут пытаться корректировать друг друга. В последних версиях эта проблема вроде бы исправлена. | + | - ntpdate - Синхронизирует время с сервером времени ubuntu (или заданным другим). По умолчанию: S. -Примечание- Если второй системой стоит Windows, лучше оставить процесс включённым. Windows хранит в BIOS не универсальное (по Гринвичу), а локальное время и при перезагрузке из одной системы в другую они будут пытаться корректировать друг друга. В последних версиях эта проблема вроде бы исправлена. |
- nvidia-kernel - Я собирал драйвер nvidia самостоятельно, поэтому мне служба не нужна. Если используете несвободный драйвер nvidia - оставьте службу включённой. По умолчанию: 1,2,3,4,5. | - nvidia-kernel - Я собирал драйвер nvidia самостоятельно, поэтому мне служба не нужна. Если используете несвободный драйвер nvidia - оставьте службу включённой. По умолчанию: 1,2,3,4,5. | ||
- pcmcia - Активирует устройство PCMCIA. Я поставил уровень выполнения в 0,6,S вместо умолчательных 2,3,4,5, поскольку, по моему мнению, оборудование надо подключать в первую очередь. С другой стороны, если устройства PCMCIA не используются, то и службу можно отключать. | - pcmcia - Активирует устройство PCMCIA. Я поставил уровень выполнения в 0,6,S вместо умолчательных 2,3,4,5, поскольку, по моему мнению, оборудование надо подключать в первую очередь. С другой стороны, если устройства PCMCIA не используются, то и службу можно отключать. | ||
- portmap - Демон для управления такими службами, как nis, nfs, и т.д. По умолчанию: 2,3,4,5,0,6,S. | - portmap - Демон для управления такими службами, как nis, nfs, и т.д. По умолчанию: 2,3,4,5,0,6,S. | ||
- | - powernowd - Клиент для управления cpufreq. Нужен в основном для ноутбуков с поддержкой технологиии изменения частоты процессора. Полезен для ноутбуков и наоборот для стационарных компьютеров. По умолчанию: 2,3,4,5. | + | - powernowd - Клиент для управления cpufreq. Нужен в основном для ноутбуков с поддержкой технологии изменения частоты процессора. Полезен для ноутбуков и наоборот для стационарных компьютеров. По умолчанию: 2,3,4,5. |
- ppp и ppp-dns - Мне не нужно. У меня нет dial-up. По умолчанию: ppp - 2,3,4,5 и pppd-dns - S. | - ppp и ppp-dns - Мне не нужно. У меня нет dial-up. По умолчанию: ppp - 2,3,4,5 и pppd-dns - S. | ||
- readahead - Похоже, readahead это разновидность «предзагрузчика». Загружает при старте несколько библиотек в оперативную память, что позволяет некоторым программам быстрее стартовать. Но увеличивает время загрузки системы на 3-4 секунды. По умолчанию: S. | - readahead - Похоже, readahead это разновидность «предзагрузчика». Загружает при старте несколько библиотек в оперативную память, что позволяет некоторым программам быстрее стартовать. Но увеличивает время загрузки системы на 3-4 секунды. По умолчанию: S. | ||
Строка 117: | Строка 134: | ||
<note important>Если Вы не уверены, за что отвечает служба, не отключайте ее. Отключение нужных служб может привести к полной или частичной неработоспособности как некоторых программ, так и системы в целом.</note> | <note important>Если Вы не уверены, за что отвечает служба, не отключайте ее. Отключение нужных служб может привести к полной или частичной неработоспособности как некоторых программ, так и системы в целом.</note> | ||
+ | ====Отключение ненужного в автозагрузке==== | ||
+ | Начиная с версии 11.10 все системные программы в автозагрузке скрыты директивой NoDisplay. В окне "Автозапуск программ" отображаются только программы, добавленные пользователем. Для отображения всех программ, надо ввести в терминале команду: | ||
+ | <code bash> cd /etc/xdg/autostart && sudo sed --in-place 's/NoDisplay=true/NoDisplay=false/g' *.desktop </code> | ||
+ | Получим вот такое: | ||
+ | {{ :wiki:программы:autostart.png?800 |}} | ||
+ | Теперь осталось аккуратно отключить то, что не используется и перезагрузиться. На скриншоте ненужные мне программы и сервисы уже отключены. | ||
+ | Для возвращения окна "Автозапуск программ" в исходное состояние, можно воспользоваться командой: | ||
+ | <code bash> cd /etc/xdg/autostart && sudo sed --in-place 's/NoDisplay=false/NoDisplay=true/g' *.desktop </code> | ||
===== Системная оптимизация ===== | ===== Системная оптимизация ===== | ||
==== Настройка Swappiness ==== | ==== Настройка Swappiness ==== | ||
- | Изменим поведение Ubuntu в отношении использования ОЗУ и подкачки. Есть такой параметр vm.swappiness, который по умолчанию имеет значение 60, и контролирует процент свободной памяти, при которой начнется активный сброс страниц в раздел swap. Иными словами, при 100-60=40% занятой памяти, Ubuntu уже начнет использовать раздел swap. При большом количестве ОЗУ в компьютере, лучше изменить параметр vm.swappiness до 10 и тем самым приказать Ubuntu не использовать swap пока занятая ОЗУ не достигнет 100-10=90%. В консоли введите следующую команду:<code bash>gksu gedit /etc/sysctl.conf</code>Добавьте строку в конец файла:<file>vm.swappiness=10</file> | + | Изменим поведение Ubuntu в отношении использования ОЗУ и подкачки. Есть такой параметр vm.swappiness, который по умолчанию имеет значение 60, и контролирует, каким образом система будет работать с файлом подкачки ([[swap]]). Этот параметр может иметь следующие значения: |
- | ---- | + | ^ Значение параметра ^ Описание ^ |
+ | | vm.swappiness = 0 | Ядро будет использовать файл подкачки только в том случае, если значение свободной оперативной памяти будет меньше указанного в параметре vm.min_free_kbytes. | | ||
+ | | vm.swappiness = 1 | Для ядер версии 3.5 и выше, минимальное использование файла подкачки без его полного отключения. | | ||
+ | | vm.swappiness = 10 | Это значение часто рекомендуют для увеличения производительности при наличии достаточного объема оперативной памяти на компьютере | | ||
+ | | vm.swappiness = 60 | Значение по умолчанию | | ||
+ | | vm.swappiness = 100 | Система будет использовать файл подкачки очень интенсивно (НЕ РЕКОМЕНДУЕТСЯ, т.к. вызовет сильное замедление работы системы) | | ||
+ | При большом количестве ОЗУ в компьютере, лучше изменить параметр vm.swappiness до 10 либо до 1. В консоли введите следующую команду:<code bash>gksu gedit /etc/sysctl.conf</code>Добавьте строку в конец файла:<file>vm.swappiness=10</file> либо <file>vm.swappiness=1</file> | ||
+ | |||
+ | При этом "агрессивность" swap опредиляется несколькими праметрами | ||
+ | <code bash>swap_tendency = mapped_ratio/2 + distress + swappiness</code> | ||
+ | |||
+ | Где | ||
+ | **swapiness** - определенный парамет (или системой или переопределен пользователем vm.swappiness) | ||
+ | ** | ||
+ | distress** - сколько раз ядро пыталось освободить память (каждый раз повышается на 1, изначальное число 0) | ||
+ | |||
+ | **mapped_ratio** - процент занятой оперативной памяти | ||
+ | ** | ||
+ | swap_tendency** - если число 100 и более, то система будет свопить (второе ограничение - остаток свободной памяти менее 64МиБ) | ||
+ | |||
+ | Пример | ||
+ | |||
+ | Система еще не свопила перед этим, swappiness установлен по дефолту 60. То есть система первый раз засвопит при достижении значения свободной памяти в 80% | ||
+ | <code bash>100 = x/2 + 0 + 60</code> | ||
+ | |||
+ | Соответственно, с этим параметром стоит быть предельно осторожным, так как и увеличение и уменьшение параметра может привести к значительному замедлению системы. | ||
+ | |||
+ | vm.swappiness = 100 замедление может быть заметно сразу | ||
+ | |||
+ | vm.swappiness ~ 0 проявятся "жуткие" тормоза в процессе использования системы, особенно под нагрузкой | ||
+ | |||
+ | |||
+ | ==== Параллельная загрузка ==== | ||
<note important>Только для версии 9.04 и ниже!</note> | <note important>Только для версии 9.04 и ниже!</note> | ||
- | <note warning>Данный пункт («Параллельная» загрузка) не работает в 7.10! Страница с багом [[https://bugs.launchpad.net/ubuntu/+source/hal/+bug/149881|здесь]]</note> | + | <note warning>Данный пункт («Параллельная» загрузка) не работает в 7.10! Страница с багом [[https://bugs.launchpad.net/ubuntu/+source/hal/+bug/149881|здесь]]\\ Данный пункт ("Параллельная загрузка") не работает в 14.04! В связи с появлением upstart</note> |
* **"Параллельная" загрузка**. Если Вы имеете двухядерный процессор, или он поддерживает технологию hyperthreading - то их можно задействовать в системе. Откройте терминал и выполните команду:<code bash>gksu gedit /etc/init.d/rc</code>найдите **CONCURRENCY=none** и замените на:<file>CONCURRENCY=shell</file>Сохраните и перезагрузите компьютер. | * **"Параллельная" загрузка**. Если Вы имеете двухядерный процессор, или он поддерживает технологию hyperthreading - то их можно задействовать в системе. Откройте терминал и выполните команду:<code bash>gksu gedit /etc/init.d/rc</code>найдите **CONCURRENCY=none** и замените на:<file>CONCURRENCY=shell</file>Сохраните и перезагрузите компьютер. | ||
- | |||
Строка 135: | Строка 191: | ||
<note warning>В старых версиях Ubuntu протокол IPv6 отключается по-другому</note> | <note warning>В старых версиях Ubuntu протокол IPv6 отключается по-другому</note> | ||
- | ==== Ускорение запуска программ, с помощью preload ==== | ||
+ | ==== Ускорение запуска программ, с помощью preload ==== | ||
**Preload** -- демон, который собирает информацию о наиболее часто используемых программах, и кэширующий их и используемые ими библиотеки, что приводит к повышению скорости загрузки программ. Для установки нужно просто выполнить в терминале | **Preload** -- демон, который собирает информацию о наиболее часто используемых программах, и кэширующий их и используемые ими библиотеки, что приводит к повышению скорости загрузки программ. Для установки нужно просто выполнить в терминале | ||
<code bash>sudo apt-get install preload</code> | <code bash>sudo apt-get install preload</code> | ||
- | или запустить [[Центр приложений Ubuntu]], найти в нем preload и установить его. Настройки preload по умолчанию подходят большинству, поэтому изменять что-либо в файле ///etc/preload.conf// не обязательно. | + | или запустить [[Центр приложений Ubuntu]], найти в нем preload и установить его. |
- | ==== Кеширование символьных таблиц ==== | + | После установки preload перезагрузите компьютер и выполните в консоли команды |
+ | <code bash>sudo touch /var/lib/preload/preload.state | ||
+ | sudo chmod 600 /var/lib/preload/preload.state | ||
+ | sudo /etc/init.d/preload restart</code> | ||
+ | Проверить работу Preload можно посмотрев содержимое preload.state | ||
+ | <code>sudo cat /var/lib/preload/preload.state</code> | ||
+ | Если файл не пуст, значит демон работает. | ||
+ | Настройки preload по умолчанию подходят большинству, поэтому изменять что-либо в файле ///etc/preload.conf// не обязательно. | ||
+ | ==== Кеширование символьных таблиц ==== | ||
Создайте пустой каталог | Создайте пустой каталог | ||
<code>mkdir ~/.compose-cache</code> | <code>mkdir ~/.compose-cache</code> | ||
Строка 148: | Строка 212: | ||
===== Оптимизация DE ===== | ===== Оптимизация DE ===== | ||
- | ==== Ускорение Gnome ==== | + | ==== Ускорение GNOME 2 ==== |
* Открыть текстовый редактор и скопировать туда следующие строки<file>gtk-menu-popup-delay = 0</file><file>gtk-menu-popdown-delay = 0</file><file>gtk-menu-bar-popup-delay = 0</file>сохранить в своем "домашнем" каталоге под названием **.gtkrc-2.0** (не забыть про лидирующую точку) и перегрузить иксы. | * Открыть текстовый редактор и скопировать туда следующие строки<file>gtk-menu-popup-delay = 0</file><file>gtk-menu-popdown-delay = 0</file><file>gtk-menu-bar-popup-delay = 0</file>сохранить в своем "домашнем" каталоге под названием **.gtkrc-2.0** (не забыть про лидирующую точку) и перегрузить иксы. | ||
* Запустить gconf-editor<code>/apps/metacity/general</code> поставить галочку reduced_resources<code>/apps/panel/global</code> убрать галочку enable_animations<code>/desktop/gnome/interface</code> убрать галочку accessibility. <code>/apps/panel/global/panel_animation_speed</code> Установить текстовый параметр в значение panel-speed-fast, для ускорения анимации панели. Перезапустить сессию Gnome. | * Запустить gconf-editor<code>/apps/metacity/general</code> поставить галочку reduced_resources<code>/apps/panel/global</code> убрать галочку enable_animations<code>/desktop/gnome/interface</code> убрать галочку accessibility. <code>/apps/panel/global/panel_animation_speed</code> Установить текстовый параметр в значение panel-speed-fast, для ускорения анимации панели. Перезапустить сессию Gnome. | ||
- | |||
==== Ускорение запуска KDE программ в среде Gnome ==== | ==== Ускорение запуска KDE программ в среде Gnome ==== | ||
- | |||
* В gconf-editor устанавливаем значения:<code>/desktop/gnome/thumbnailers/disable_all = true</code><code>/apps/nautilus/preferences/show_image_thumbnails = never</code>Можно также удалить старые миниатюры, удалив директорию ~/.thumbnails | * В gconf-editor устанавливаем значения:<code>/desktop/gnome/thumbnailers/disable_all = true</code><code>/apps/nautilus/preferences/show_image_thumbnails = never</code>Можно также удалить старые миниатюры, удалив директорию ~/.thumbnails | ||
* Ускорим старт Qt программ. Для этого в Меню - Система - Параметры - Запускаемые приложения добавим запускаемую программу /usr/bin/kdeinit под именем FastQt. После перезагрузки компьютера, Qt программы будут быстрее стартовать, так как не нужно дополнительно запускать «минимальный набор KDE». | * Ускорим старт Qt программ. Для этого в Меню - Система - Параметры - Запускаемые приложения добавим запускаемую программу /usr/bin/kdeinit под именем FastQt. После перезагрузки компьютера, Qt программы будут быстрее стартовать, так как не нужно дополнительно запускать «минимальный набор KDE». | ||
==== Ускорение Unity ==== | ==== Ускорение Unity ==== | ||
- | + | * Установите, если не установлен ''[[ccsm|compizconfig-settings-manager]]''. | |
- | * Установите, если не установлен compizconfig-settings-manager. | + | * Запустите Менеджер настройки CompizConfig (Сompiz Configuration Settings Manager - ccsm) и перейдите в //OpenGL Plugin//, в котором отключите //Синхронизировать с VBlank//. |
- | * Запустите Менеджер настройки CompizConfig (Сompiz Configuration Settings Manager - ccsm) и перейдите в OpenGL Plugin, в котором отключите "Синхронизировать с VBlank". | + | * Перейдите в //Composite// и отключите //Определить частоту обновления//. |
- | * Перейдите в Composite и отключите "Определить частоту обновления". | + | * Отключите в разделе //Эффекты// плагины //Анимация// (Animations) и/или //Проявление/исчезание окон//. |
- | * Отключите в разделе Эффекты плагины Анимация (Animations) и/или Проявление/исчезание окон. | + | * Если не используете сенсорные устройства, то отключите плагин //Unity MT Grab Handles//. |
- | * Если не используете сенсорные устройства, то отключите плагин Unity MT Grab Handles. | + | * В //Общие// - //Общие настройки// выставьте //Задержка отклика// в 2000. |
- | * В Общие - Общие настройки выставьте "Задержка отклика" в 2000. | + | |
- | * Если у вас слабая видеоподсистема, то попробуйте использовать Unity2D без 3D эффектов. | + | |
===== Ссылки ===== | ===== Ссылки ===== | ||
- | * Обсуждение статьи [[http://forum.ubuntu.ru/index.php?topic=216048.0|на форуме]]. | + | * [[http://forum.ubuntu.ru/index.php?topic=216048.0|Обсуждение статьи на форуме]] |
* Сопутствующие темы можно найти на форуме [[http://forum.ubuntu.ru/index.php?topic=15450.0|здесь]] и [[http://forum.ubuntu.ru/index.php?topic=18527.0|здесь]] | * Сопутствующие темы можно найти на форуме [[http://forum.ubuntu.ru/index.php?topic=15450.0|здесь]] и [[http://forum.ubuntu.ru/index.php?topic=18527.0|здесь]] | ||
- | * Как собрать ядро под конкретную аппаратную конфигурацию [[http://www.linuxcenter.ru/lib/articles/system/kernel26_install.phtml]] | + | * [[http://www.linuxcenter.ru/lib/articles/system/kernel26_install.phtml|Ядерная физика для домохозяйки]]. Подробное руководство по сборке ядра. Может не подходить для новых ядер. |
- | * Перенос части операций с винчестером в оперативную память при работе с /tmp -> снижение обращений к винчестеру [[http://the-bosha.ru/2010/01/20/tmpfs|статья]] **используйте только когда много памяти** | + | * [[http://the-bosha.ru/2010/01/20/tmpfs|Используем tmpfs для небольшого ускорения работы ОС]] **используйте только когда много памяти** |
- | * Ускорение Ubuntu http://vasilisc.com/speedup_ubuntu | + | * [[http://dals.habrahabr.ru/blog/48367/|Разгон Firefox при помощи TmpFS]] |
- | * Более актуальная версия данной статьи об [[http://vasilisc.com/speedup_ubuntu|Ускорение Ubuntu]]. После проверки временем, советы будут переноситься в данную вики. | + | * [[http://vasilisc.com/speedup_ubuntu|Ускорение Ubuntu]] |
+ | * [[http://www.opennet.ru/tips/info/1712.shtml|Уменьшение времени загрузки Ubuntu Linux]] | ||
+ | * [[http://forum.ubuntu.ru/index.php?topic=45471.msg332528#msg332528|Если Firefox долго закрывается, медленно работает]] | ||
{{tag>ускорение оптимизация настройка_системы unity gnome kde}} | {{tag>ускорение оптимизация настройка_системы unity gnome kde}} |