Apt-get наверное является одной из самых используемых команд в Ubuntu. С помощью этой команды вы с консоли можете устанавливать, удалять или обновлять необходимое программное обеспечение или редактировать источники приложений (репозитории). Это очень полезная и хорошая команда, но ее можно сделать еще лучше с помощью специального скрипта под именем apt-fast.
Что такое apt-fast?
Apt-fast — это как бы стартовый скрипт для таких утилит как apt-get или aptitude, который может кардинально изменить в лучшую сторону время загрузки пакетов из APT-источников путем использования мультисоединений во время загрузки конкретного пакета. Вот пример того как apt-fast улучшает скорость загрузки пакетов для широких каналов по сравнению с apt-get. Для примера использовалась установка браузера Midori.
Результат для apt-get:
Get:1 http://fr.archive.ubuntu.com/ubuntu/ precise/main libunique-1.0-0 i386 1.1.6-4 [25.2 kB]
Get:2 http://fr.archive.ubuntu.com/ubuntu/ precise/universe midori i386 0.4.3-1ubuntu1 [1,131 kB]
Fetched 1,156 kB in 1s (659 kB/s)
Результат для apt-fast:
Initializing download: http://fr.archive.ubuntu.com/ubuntu/pool/universe/m/midori/midori_0.4.3-1ubuntu1_i386.deb
File size: 1130792 bytes
Opening output file midori_0.4.3-1ubuntu1_i386.deb
Starting downloadConnection 2 finished ]
Connection 0 finished ]
Connection 3 finished ]
Connection 1 finished ]
Connection 5 finished ]
Connection 6 finished ]
Connection 7 finished ]
Connection 8 finished ]
Connection 4 finished ]
[100%] […………………………………………..] [1022.6KB/s] [00:00]Downloaded 1104.3 kilobytes in 1 second. (1022.64 KB/s)
Как видно из примеров скорость загрузки была увеличена с 659 КВ/s до 1022 KB/s с помощью скрипта apt-fast, который использует многопотоковый загрузчик axel. Такое увеличение скорости заметно только при скачивании больших по размеру пакетов. На меленьких пакетах прирост не велик.
Как правильно установить apt-fast?
Аpt-fast может быть легко установлен с официального источника путем использования следующих команд в терминале:
sudo add-apt-repository ppa:apt-fast/stable
sudo apt-get update
sudo apt-get install apt-fast axel
После ввода последней команды для установки apt-fast и axel вы увидите псевдо графический режим терминала, который поможет настроить apt-fast.
Примечание: если вы еще не знаете как пользоваться псевдо графическим интерфейсом терминала, то просто используйте клавишу Tab чтобы переключаться между опциями, стрелками выбирать нужный вариант и Enter чтобы нажимать на псевдо клавишу. Для перехода на следующую страницу выбирайте и нажимайте на клавишу ОК.
На первой странице необходимо выбрать «apt-get»:
На следующей странице выбираем «axel»:
Теперь необходимо задать максимальное число одновременных соединений. По-умолчанию установлено значение 5. В моем примере оно было увеличено до 10. Чем больше значение, тем больше зеркал будет использовать скрипт. С одной стороны это хорошо, но с другой — если будут попадаться медленные зеркала, то это будет сказываться на скорости загрузки. Вы можете задать любое число, но адекватное значение в этом окне колеблется в пределах 5-15.
В следующих 3-х окнах нет необходимости выполнять какие либо изменения, просто используйте введенные там значения по-умолчанию выбирая и нажимая на клавишу ОК.
Вот и все, установка закончена. Если вам в дальнейшем будет необходимо изменить какие-то из параметров, просто откройте и отредактируйте файл «/etc/apt-fast.conf», все эти настройки хранятся в нем.
Как использовать apt-fast?
Пользоваться apt-fast также просто как и apt-get. Вы можете пользоваться всеми теми же командами что и для apt-get, просто замените в команде слово «get» на «fast». Вот как выглядят наиболее распространенные команды:
- установка пакета: sudo apt-fast install имя_пакета;
- удаление пакета: sudo apt-fast remove имя_пакета;
- обновление списка пакетов: sudo apt-fast update;
- обновление системы: sudo apt-fast upgrade.
Apt-fast обладает всеми теми же свойствами что и apt-get включая и автодополнение с помощью клавиши Tab. Кроме этого вы и дальше сможете пользоваться командой apt-get вместо apt-fast без всяких проблем.
Русификация apt-fast
Понятное дело что этот скрипт возвращает в командную строку фразы на английском языке, но как и любой другой скрипт его можно откорректировать с помощью любого текстового редактора.
Примечание: в процессе русификации вы можете случайно изменить или удалить нужную часть скрипта, что может привести к тому что он просто перестанет работать или будет вызывать непоправимую ошибку. Поэтому будьте внимательны и для начала перед редактированием скопируйте файл скрипта, например, в вашу домашнюю папку чтобы затем была возможность все вернуть назад.
После установки файл скрипта находиться по следующему адресу: /usr/sbin/apt-fast. Для того чтобы его отредактировать можете воспользоваться встроенным редактором mc или редактором nano:
sudo nano /usr/sbin/apt-fast
Далее ищем строку под номером 87 и изменяем ее с такого вида:
echo -e «${cGreen}\n Working… this may take a while.${endColor}»
к примеру на такой:
echo -e «${cGreen}\n Работаю… это может занять некоторое время.${endColor}»
Аналогично для всех следующих строк.
Строку под номером 114 можно изменить так:
echo -ne «${cRed} If you want to download the packages on your system press Y else n to abort. [Y/n]: ${endColor}»
на:
echo -ne «${cRed} Если вы хотите загрузить выбранные пакеты для вашей системы, нажмите Y, а иначе N для выхода. [Y/n]: ${endColor}»
Строку под номером 117 можно изменить так:
read -sn1 -t 20 answer || { echo -e «${cRed}\n Timed out.${endColor}»; LCK_RM; exit 1; }
на:
read -sn1 -t 20 answer || { echo -e «${cRed}\n Время вышло.${endColor}»; LCK_RM; exit 1; }
И наконец 158:
echo -e «${cGreen} \nDone! Verify that all packages were installed successfully. If errors are found, run ${endColor}${cRed}\`apt-fast clean\`${endColor}${cGreen} as root and try again.\n${endColor}»
на:
echo -e «${cGreen} \nВыполнено! Убедитесь что все пакеты были успешно установлены. Если же присутствуют ошибки, запустите ${endColor}${cRed}\`apt-fast clean\`${endColor}${cGreen} от имени root и попробуйте опять.\n${endColor}»
Вот и все. Комментируйте, спрашивайте.