Журнал LinuxFormat - перейти на главную

LXF124:TopSpeed

Материал из Linuxformat
(Различия между версиями)
Перейти к: навигация, поиск
(викификация, оформление)
 
(Тюнинг для вашей сети)
Строка 1174: Строка 1174:
  
 
: Если закачки стали тормозить, следуйте нашим советам.
 
: Если закачки стали тормозить, следуйте нашим советам.
 +
 +
Итак, вы настроили
 +
маршрутизатор,
 +
оптимизировали
 +
сервер
 +
и сменили
 +
все широкополосные
 +
фильтры
 +
в своем
 +
доме – но скорость
 +
все еще мала.
 +
Прежде
 +
чем злобно
 +
звонить
 +
своему
 +
провайдеру,
 +
проверьте,
 +
не является
 +
ли узким
 +
местом
 +
клиентская
 +
машина.
 +
С помощью
 +
следующих
 +
настроек
 +
вы сможете
 +
улучшить
 +
вашу
 +
связь или, по крайней
 +
мере,
 +
исключить
 +
свой компьютер
 +
как причину
 +
неисправности.
 +
 +
====Дать хосту имя ‘localhost’====
 +
 +
Само по себе революции
 +
это не произведет,
 +
однако в сочетании с другими
 +
приведенными здесь сетевыми трюками
 +
увеличит скорость сети
 +
вашей машины. Просто
 +
откройте от имени root
 +
в текстовом редакторе
 +
файл '''/etc/hosts''' и поменяйте
 +
самые
 +
верхние
 +
строки
 +
на
 +
 +
127.0.0.1 localhost yourhost
 +
127.0.0.1 yourhost
 +
 +
где '''yourhost''' – имя машины
 +
(например,
 +
'''bobdesktop'''). Обязательно
 +
сохраните
 +
старую
 +
копию
 +
файла
 +
'''/etc/hosts''', на случай,
 +
если
 +
что-
 +
то пойдет
 +
не так!
 +
 +
====Оптимизация настроек TCP====
 +
 +
Дистрибутивы поставляются с настройками
 +
для «усредненных»
 +
пользователей Интернета, однако
 +
в пестром
 +
мире 3G, телефонных модемов и ADSL понятия
 +
«среднего потребителя» не существует.
 +
Отредактируйте
 +
от имени root файл '''/etc/sysctl.conf''', добавив
 +
в него
 +
такие
 +
строки:
 +
 +
net.ipv4.tcp_timestamps = 0
 +
net.ipv4.tcp_sack = 1
 +
 +
(Отчасти
 +
это метод
 +
проб и ошибок,
 +
так что сохраняйте
 +
резервные
 +
копии
 +
изменяемых
 +
вами
 +
файлов).
 +
Верхняя
 +
строка
 +
удаляет
 +
временные
 +
отметки,
 +
сокращая
 +
сетевые
 +
пакеты
 +
на 12 байт. Нижняя
 +
включает
 +
т. н. «выборочное
 +
подтверждение» (Selective Acknowledgement, SAK) и уменьшает
 +
число
 +
пакетов,
 +
передаваемых
 +
повторно.
 +
Это может
 +
оказаться
 +
заметным
 +
на «плохом» канале,
 +
но не даст
 +
ощутимого
 +
эффекта
 +
в надежной
 +
сети.
 +
 +
====Метрики и история====
 +
 +
Вы можете продолжить
 +
оптимизацию своих
 +
TCP-настроек,
 +
приписав в тот же текстовый
 +
файл следующие
 +
строки:
 +
 +
net.ipv4.tcp_no_metrics_save = 1
 +
net.core.netdev_max_backlog = 2500
 +
 +
Верхняя
 +
строка
 +
ускоряет
 +
соединение,
 +
обеспечивая,
 +
чтобы
 +
TCP-метрики
 +
для закрытых
 +
соединений
 +
не сохранялись
 +
в кэше.
 +
Вторая
 +
устанавливает
 +
размер
 +
«истории» (backlog) пакетов.
 +
Что касается
 +
примерных
 +
значений
 +
параметра
 +
'''netdev_max_backlog''', то для беспроводных
 +
или старых
 +
сетей
 +
Ethernet рекомендуется
 +
брать около
 +
2000, а для Gigabyte Ethernet – около
 +
5000. С другой
 +
стороны,
 +
для дорогого
 +
10-ГБ кабеля
 +
Ethernet
 +
это значение
 +
можно
 +
повысить
 +
до 30000. Чем медленнее
 +
соединение,
 +
тем короче
 +
должна
 +
быть «история», и цель этой настройки – подобрать
 +
такой
 +
размер
 +
буфера
 +
входящих
 +
пакетов,
 +
при котором
 +
ядро
 +
успевает
 +
обработать
 +
их все без отклонения
 +
и повторной
 +
передачи.
 +
 +
====Вариации окна TCP====
 +
 +
Настройки окна TCP определяют
 +
минимальный и максимальный размер
 +
пакетов, которые можно
 +
получать
 +
и посылать.
 +
Владельцы
 +
телефонных
 +
модемов
 +
обнаружат
 +
повышение
 +
скорости
 +
при меньшем
 +
размере
 +
пакетов,
 +
а пользователи
 +
широкополосных
 +
каналов – при большем
 +
размере.
 +
Отредактируйте
 +
'''/etc/sysctl.conf''' от имени
 +
root, приписав
 +
туда
 +
 +
net.ipv4.tcp_window_scaling = 1
 +
net.ipv4.tcp_wmem = 10240 87380 16777216
 +
net.ipv4.tcp_rmem = 10240 87380 16777216
 +
net.ipv4.tcp_mem = 16777216 16777216 16777216
 +
net.core.rmem_max = 16777216
 +
net.core wmem_max = 16777216
 +
 +
Эти цифры
 +
оптимизированы
 +
для 2-Мбит соединения
 +
через
 +
широкополосную
 +
беспроводную
 +
связь Sky, а в общем
 +
случае
 +
рекомендуемый
 +
размер
 +
пакета
 +
равен
 +
максимальной
 +
ширине
 +
полосы,
 +
деленной
 +
на время
 +
ожидания.
 +
Эти значения
 +
можно
 +
найти,
 +
зайдя
 +
на http://www.speedtest.net; заодно
 +
можно
 +
проанализировать,
 +
как ваши
 +
изменения
 +
повлияли
 +
на связь, посетив
 +
http://www.speedguide.net:8080.
 +
 +
====Советы читателей: ''MySQL''====
 +
 +
Если у вас работает база
 +
данных ''MySQL'',
 +
вы можете
 +
сделать
 +
резервную
 +
копию
 +
в одном
 +
файле,
 +
всего
 +
одной
 +
командой
 +
в терминале:
 +
 +
mysqldump -u root -p -F -- masterdata=2 --delete-master-logs -A > backup.sql
 +
 +
Если она не сработает, убедитесь,
 +
что в файле '''~/.my.cnf''' (который,
 +
может
 +
быть,
 +
придется
 +
создать),
 +
выставлено
 +
'''logbin=mysql-bin'''. Этот файл также
 +
можно
 +
использовать
 +
для установки
 +
беспарольного
 +
входа.
 +
Добавьте
 +
в него
 +
следующие
 +
строки:
 +
 +
[client]
 +
user=имя_пользователя
 +
password=пароль
 +
 +
Главное – не позволяйте
 +
другим
 +
пользователям
 +
системы
 +
просматривать
 +
данный
 +
файл, ведь он содержит
 +
пароли
 +
''MySQL''
 +
в текстовом
 +
виде!
 +
Можно
 +
ограничить
 +
права
 +
доступа
 +
следующей
 +
командой:
 +
 +
chmod 600 ~/.my.cnf
 +
 +
Теперь
 +
для входа
 +
просто
 +
введите
 +
в терминале
 +
''mysql'' без параметров.
 +
При необходимости
 +
использовать
 +
другие
 +
реквизиты
 +
просто
 +
укажите
 +
их в командной
 +
строке
 +
''mysql''.
 +
 +
''Спасибо Джону Хадсону [John Hudson] и Леандро Моргадо [Leandro Morgado] (Sun Microsystems) за эти советы.''

Версия 10:06, 11 ноября 2010

Содержание

Ускоряем Linux

Всего несколько настроек могут сделать всеми любимую ОС легче, быстрее и мощнее. Боб Мосс перерыл пол-Интернета, чтобы узнать, какие именно.

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

Увы, не всегда. Сообществам, развивающим популярные дистрибутивы, нужно привлечь самую широкую аудиторию и гарантировать совместимость с любым оборудованием. Получается, что у тех, кто ставит дистрибутив на нетбуке или недорогом ПК, практически та же конфигурация ПО, что и у владельца мощного игрового компьютера. Но так не должно быть!

При помощи пары-другой настроек и небольшого экспериментирования ваша Linux-система высвободит скрытый потенциал машины. У вас процессор с двумя ядрами? Запускайте процессы параллельно. Избыток оперативной памяти? Отведите его под кэш данных. Сила всеми любимой свободной ОС в том, что ее можно настроить с самого основания, так что Linux – идеальный инструмент для подгонки по вашим меркам.

Ну, а если у вас сверхбыстрая система, куда уж еще эффективнее? Мы расспросили читателей LXF и выдающихся членов сообщества свободного ПО об их любимых ухищрениях для повышения производительности — вам они тоже пригодятся!

Быстрая загрузка

Тратите бесценные мгновения своей жизни, дожидаясь появления рабочего стола?

Любую рабочую машину хотелось бы приводить в готовность как можно скорее, а при вялой загрузке ваш трудовой порыв выдыхается. Именно поэтому наши реформы начинаются с сокращения времени загрузки. Но сперва предупредим: до внесения изменений в конфигурационные файлы обязательно сделайте резервные копии, так как ошибка в загрузчике может сделать компьютер с Linux неработоспособным!

Ликвидация задержки

Можно заметить, что при каждой загрузке идет небольшой обратный отсчет, [обычно] от трех до нуля. Изначально это было введено для гарантии, что более старое оборудование успеет подготовиться к работе до того, как стартует ядро. Современным системам такого не требуется; вот и устраним лишнюю задержку. Откройте от имени суперпользователя-root в текстовом редакторе файл /boot/grub/menu.lst и поищите строку, содержащую:

timeout=3

Найдя ее, исправьте значение на ноль. После сохранения, выхода и перезагрузки вы заметите, что сэкономили целых три секунды. Однако это может оказаться неудобным, если у вас двойная загрузка: придется как-то успевать выбирать «неумолчательную» ОС.

Улучшим работу диска

Если ваш жесткий диск DMA-совместим (DMA – это Direct Memory Access, прямой доступ к памяти), но данный режим почему-то не активирован, небольшой настройкой можно существенно повысить пропускную способность. Это ускорит загрузку: время чтения уменьшится, а общая производительность винчестера повысится. Сначала установите hdparm из вашего менеджера пакетов, затем откройте терминал root и введите:

hdparm -d1 /dev/hda

заменив /dev/hda на имя устройства, соответствующего вашему жесткому диску. Вы можете также добавить соответствующий ключ -X – подробности можно найти на man-странице hdparm.

Пользователи Gnome могут делать все это автоматически, зайдя в Система > Администрирование > Службы. Затем команду следует добавить как пункт, приписав в начале gksudo, чтобы она выполнялась с правами root без дополнительной аутентификации.

Параллелизм

Распараллеливание может дать сильный выигрыш в производительности, ведь выполнение сразу двух процессов вдвое экономит время по сравнению с их поочередной работой (по крайней мере, в теории). Воспользуйтесь этим в системах на базе Debian/Ubuntu, открыв (от имени root) файл /etc/init.d/rc в текстовом редакторе и отыскав такую строку:

CONCURRENCY=none

Затем замените none на shell, сохраните файл и закройте редактор. При следующем старте вы увидите заметное уменьшение времени загрузки (обычно на одну или две секунды).

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

Оптимизация памяти

Прекрасный способ повысить производительность – умело распорядиться подкачкой. Раздел подкачки – это место, где ядро Linux временно хранит содержимое оперативной памяти, быстро возвращая его обратно в ОЗУ при необходимости. Выделенный раздел не обязателен, однако он также используется для сохранения состояния машины при переходе в спящий режим. Эффект от данной подсказки будет зависеть от вашей системы и от того,есть ли у вас раздел подкачки, однако при достаточном ОЗУ вы увидите, что менее активное использование подкачки приводит к заметному повышению производительности. Откройте в текстовом редакторе, запущенном от имени root, файл /etc/sysctl.conf и припишите в самый конец следующую строку:

vm.swappiness=10

(Чтобы изменения возымели действие, понадобится перезагрузка.) Значение можно менять, отслеживая изменение производительности. Чем меньше этот параметр, тем реже будет использоваться подкачка, и тем больше данных будет храниться в памяти. Представленное значение, на наш взгляд, давало лучшую производительность на тестовой системе с 512 МБ ОЗУ.

Однако этот совет не ограничивается системами с большим ОЗУ – системы с 256 МБ и даже меньше обретут большую производительность, если увеличить интенсивность подкачки: при этом в раздел подкачки попадет больше данных, высвободив память для штатных задач. Точные значения разнятся от системы к системе и требуют экспериментов, главным образом потому, что чтение данных из раздела подкачки занимает больше времени, чем чтение из памяти; но конечный результат обычно стоит затраченных усилий.

Глас Гуру № 1 – Ричард Столлмен

Richard Stallman Основатель проекта GNU

«Главный совет, который я могу дать пользователям – работайте в командной строке. Ограничиваясь GUI, вы смотрите на свою систему сквозь мутное стекло.»

Лучший совет: «Недавно я узнал о команде BashM- (если у вас нет клавиши Meta, нажмите Escape, а потом точку), которая копирует последний аргумент предыдущей команды.»

Оптимизация Gnome

Отправьте ненужные элементы автозапуска и элементы меню на свалку истории.

Наряду с KDE, Gnome является одним из двух наиболее широко используемых окружений рабочего стола в экосистеме Linux, но по части производительности и скорости его резво обгоняют Xfce и другие более легковесные альтернативы. Хотя… несколько подстроек, и Gnome сможет держаться с ними голова к голове.

Установка preload

Preload – это демон, который анализирует состав ваших повседневных задач и выбирает наиболее вероятные в использовании бинарники и файлы, чтобы снизить время загрузки и повысить общую производительность. В Ubuntu просто поищите “preload” в менеджере пакетов, но в других дистрибутивах стоит проверить, запущена ли эта служба. Чтобы включить ее, наберите

service preload on

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

Автоматический вход

Ну да, мы постоянно напоминаем вам о важности безопасности. Однако если вы живете один в замке, не имеющем выхода в Интернет, отчего бы не включить автоматический вход – сэкономится время на ввод пароля! Проще всего сделать это через GUI. Просто зайдите в System > Administration > Login Window [Система > Администрирование > Вход в систему]. Представьтесь системе, перейдите на вкладку Security [Безопасность] и поставьте галочку рядом с Automatic Login [Автовход]. Затем в выпадающем списке отметьте пользователей, для которых автоматический вход будет работать.

К сожалению, пользователям Fedora такая возможность недоступна, и необходимые изменения нужно проделывать вручную. Чтобы включить автоматический вход, откройте в текстовом редакторе, работающем от имени root, файл /etc/gdm/custom.conf и затем припишите в конце такие строки:

[daemon]
TimedLoginEnable=True
TimedLogin=UserName
TimedLoginDelay=0

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

Проволочные рамки

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

gconftool-2 -- type bool -- set /apps/metacity/general/reduced_resources true

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

Ускорение меню

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

Однако на современном оборудовании это не всегда необходимо, и данную опцию можно спокойно поменять. Создайте в вашем домашнем каталоге новый файл под названием .gtkrc-2.0 и откройте его в вашем любимом текстовом редакторе, где наберите

gtk-menu-popup-delay=0

Сохранив файл, нажмите Ctrl+Alt+Backspace для перезапуска xserver, и ваши меню будут открываться заметно быстрее.

Советы читателей: Экономия в терминале

Сочетание клавиш Действие
Ctrl+L Очистка терминала (работает в Konsole и Bash)
Вверх, затем Ctrl+T Берет последнюю введенную команду и меняет местами последние две буквы
Ctrl+R Поиск в истории введенных команд (только в Bash)
Ctrl+Alt+(F1-7) Переход в виртуальный терминал (F7 возвращает в GUI, если только у вас не Fedora)
Alt+Лево/Право Циклическое перемещение по терминалам (если вы не в GUI)

Эти советы нам дали: mugstar, TomMan, tad, indie, patsychomper и Anonymous Penguin на TuxRadar.com.

Оптимизация KDE

Скрытые функции KDE резко повышают производительность.

В последнее время о KDE пишут всякое. Однако при том, что у KDE 4 несомненно прекрасный внешний вид, и новые плазмоиды ставят его вне конкуренции, он все еще не может тягаться с KDE 3 (или даже Gnome) в плане скорости и производительности. Хотя эти проблемы усиленно решаются, несколько настроек могут сэкономить пару секунд драгоценного времени загрузки и сделать весь рабочий стол гораздо более отзывчивым.

Ускорение ext3

Можно приобрести значительное преимущество в производительности, задействовав в ext3 режим обратной записи [writeback]. Это свойство не ограничивается системами с KDE, однако почти во всех дистрибутивах оно по умолчанию отключено – в основном потому, что обеспечивает защиту от сбоя для метаданных файловой системы, но не для хранящихся в файлах данных. Данная настройка не оказывает заметного влияния при типовых нагрузках на диск, как в домашней системе, но может сказаться при высокой интенсивности операций чтения/записи, что является прерогативой серверов. Сделав резервную копию данных, откройте от имени root в текстовом редакторе файл /etc/fstab, найдите строку с фрагментом

relatime,errors=remount-ro

и замените ее на

noatime,nodiratime,errors=remount-ro,data=writeback

Если слева или справа от этого фрагмента не будет текста, то вы где-то ошиблись! Сохраните файл и выйдите из редактора, затем откройте /boot/grub/menu.lst и найдите следующие строки:

# defoptions quiet splash
#altoptions=(recoverymode) single

Они стоят не рядом, однако найдя их, припишите к каждой из них следующее:

rootflags=data=writeback

затем сохраните и закройте файл. Откройте терминал root, выполните update grub. Теперь можно просто перезагрузиться, чтобы все изменения вступили в силу, либо применить их на лету, установив tune2fs из вашего менеджера пакетов. При выборе последнего варианта вам нужно будет еще открыть терминал root и ввести там

tune2fs -o journal_data_writeback /dev/hda1

заменив /dev/hda1 на ваш корневой раздел.

Отключение IPv6

Пусть IPv6 уже кое-где реализован, Konqueror вынужден преобразовывать в него более распространенный IPv4 – так что при отключении IPv6 вы получите выигрыш в скорости. Способы сделать это различны для разных дистрибутивов. Например, в Kubuntu нужно отредактировать файл /etc/environment от имени root, добавив такую строку:

KDE_NO_IPV6=True

В openSUSE, отредактируйте от имени root /etc/sysconfig/windowmanager, где отыщите строку

KDE_USE_IPV6=”yes”

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

Автоматический вход

Gnome – не единственный рабочий стол, допускающий автоматический вход в систему: пользователи KDE 4 могут поступить так же, зайдя в System Settings [Параметры системы] и щелкнув по вкладке Advanced [Дополнительно], а потом перейдя к менеджеру входа в систему и задействовав автоматический вход на вкладке Convenience [Удобства]. Вам также нужно будет пометить пользователя, который будет входить автоматически, в выпадающем списке, расположенном под галочкой. После перезагрузки экран входа пропустится, вы сразу увидите заставку KDE 4.

Старт с пустого сеанса

По умолчанию KDE 4 сохраняет ряд данных о вашем текущем сеансе (открытые окна, запущенные процессы и пр.), чтобы при следующем входе в систему он был таким же, как и при окончании работы. Это удобство, однако, замедляет загрузку, так как все данные подгружаются заново. Проблемы можно избежать, приказав стартовать с пустого сеанса. Выберите System Settings (или Configure Desktop в OpenSUSE) в меню KDE и на вкладке Advanced запустите менеджер сеансов. Ближе к низу формы поставьте переключатель в положение Start With An Empty Session [Начинать с пустой сессии], затем нажмите Apply [Применить].

Быстрый старт Konqueror

Konqueror заработает намного быстрее, если включить предзагрузку. Это требует немного памяти, но зато при запуске Konqueror откроется раза в два шустрее, и как раз на том месте, где вы его закрыли. Если вы используете старт KDE с пустой сессии, для паники нет причин, так как мы настроим автоматический запуск предзагрузки при запуске KDE. Чтобы включить предзагрузку, откройте браузер и зайдите в Settings > Configure Konqueror [Параметры > Настроить Konqueror]. В разделе Performance [Производительность] отметьте опцию Preload An Instance After KDE Startup [Загружать экземпляр после запуска KDE]. Тут же можно указать, сколько экземпляров Konqueror будут предварительно загружаться, в зависимости от того, сколько окон Konqueror вам надо держать открытыми одновременно.

Глас Гуру № 2 – Гаэль Дюваль

Gaёl Duval Основатель Mandriva и Ulteo «Очень сложно думать про малоизвестные хаки и подсказки, ведь на свете столько умников – многие из них знают куда больше меня!»

Лучший совет: «Я всегда пользуюсь ‘!кусок_команды’ в качестве повторителя команды оболочки, которую хочу вызвать снова. Например, если я недавно вводил ‘ps auxww’ и хочу выполнить это еще раз, я просто ввожу ‘!ps’. Конечно, здорово использовать это совместно с номером команды, возвращаемом из списка прошлых команд с помощью ‘history’. Просто введите ‘!номер_команды’, и повторится команда из списка истории команд.»

Тюнинг для вашей сети

Если закачки стали тормозить, следуйте нашим советам.

Итак, вы настроили маршрутизатор, оптимизировали сервер и сменили все широкополосные фильтры в своем доме – но скорость все еще мала. Прежде чем злобно звонить своему провайдеру, проверьте, не является ли узким местом клиентская машина. С помощью следующих настроек вы сможете улучшить вашу связь или, по крайней мере, исключить свой компьютер как причину неисправности.

Дать хосту имя ‘localhost’

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

127.0.0.1 localhost yourhost
127.0.0.1 yourhost

где yourhost – имя машины (например, bobdesktop). Обязательно сохраните старую копию файла /etc/hosts, на случай, если что- то пойдет не так!

Оптимизация настроек TCP

Дистрибутивы поставляются с настройками для «усредненных» пользователей Интернета, однако в пестром мире 3G, телефонных модемов и ADSL понятия «среднего потребителя» не существует. Отредактируйте от имени root файл /etc/sysctl.conf, добавив в него такие строки:

net.ipv4.tcp_timestamps = 0
net.ipv4.tcp_sack = 1

(Отчасти это метод проб и ошибок, так что сохраняйте резервные копии изменяемых вами файлов). Верхняя строка удаляет временные отметки, сокращая сетевые пакеты на 12 байт. Нижняя включает т. н. «выборочное подтверждение» (Selective Acknowledgement, SAK) и уменьшает число пакетов, передаваемых повторно. Это может оказаться заметным на «плохом» канале, но не даст ощутимого эффекта в надежной сети.

Метрики и история

Вы можете продолжить оптимизацию своих TCP-настроек, приписав в тот же текстовый файл следующие строки:

net.ipv4.tcp_no_metrics_save = 1
net.core.netdev_max_backlog = 2500

Верхняя строка ускоряет соединение, обеспечивая, чтобы TCP-метрики для закрытых соединений не сохранялись в кэше. Вторая устанавливает размер «истории» (backlog) пакетов. Что касается примерных значений параметра netdev_max_backlog, то для беспроводных или старых сетей Ethernet рекомендуется брать около 2000, а для Gigabyte Ethernet – около 5000. С другой стороны, для дорогого 10-ГБ кабеля Ethernet это значение можно повысить до 30000. Чем медленнее соединение, тем короче должна быть «история», и цель этой настройки – подобрать такой размер буфера входящих пакетов, при котором ядро успевает обработать их все без отклонения и повторной передачи.

Вариации окна TCP

Настройки окна TCP определяют минимальный и максимальный размер пакетов, которые можно получать и посылать. Владельцы телефонных модемов обнаружат повышение скорости при меньшем размере пакетов, а пользователи широкополосных каналов – при большем размере. Отредактируйте /etc/sysctl.conf от имени root, приписав туда

net.ipv4.tcp_window_scaling = 1
net.ipv4.tcp_wmem = 10240 87380 16777216
net.ipv4.tcp_rmem = 10240 87380 16777216
net.ipv4.tcp_mem = 16777216 16777216 16777216
net.core.rmem_max = 16777216
net.core wmem_max = 16777216

Эти цифры оптимизированы для 2-Мбит соединения через широкополосную беспроводную связь Sky, а в общем случае рекомендуемый размер пакета равен максимальной ширине полосы, деленной на время ожидания. Эти значения можно найти, зайдя на http://www.speedtest.net; заодно можно проанализировать, как ваши изменения повлияли на связь, посетив http://www.speedguide.net:8080.

Советы читателей: MySQL

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

mysqldump -u root -p -F -- masterdata=2 --delete-master-logs -A > backup.sql

Если она не сработает, убедитесь, что в файле ~/.my.cnf (который, может быть, придется создать), выставлено logbin=mysql-bin. Этот файл также можно использовать для установки беспарольного входа. Добавьте в него следующие строки:

[client]
user=имя_пользователя
password=пароль

Главное – не позволяйте другим пользователям системы просматривать данный файл, ведь он содержит пароли MySQL в текстовом виде! Можно ограничить права доступа следующей командой:

chmod 600 ~/.my.cnf

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

Спасибо Джону Хадсону [John Hudson] и Леандро Моргадо [Leandro Morgado] (Sun Microsystems) за эти советы.

Персональные инструменты
купить
подписаться
Яндекс.Метрика