Копаясь в материалах, по обновлению FreeBSD [1], нашел интересную утилиту - "Fastest_cvsup". Ее задача - определить самый быстрый сервер для загрузки обновлений. Заинтересовало. Решил "пощупать". Идем в порты и даем команду на инсталляцию:
# cd /usr/ports/sysutils/fastest_cvsup && make install clean && rehash |
Установка заняла несколько секунд. По завершению установки "полез" читать маны - man fastest_cvsup. Теперь более подробно о возможностях:
- "-h" - отображает синтаксис использования и доступные ключи:
# fastest_cvsup -h fastest_cvsup - finds fastest CVSup server Usage: /usr/local/bin/fastest_cvsup [-h] [-q|Q] [-r] -c (country codes|local|all) See the man page, fastest_cvsup(7), for more details. |
- "-q"- "тихий режим". Возвращает только самый быстрый сервер и статус-бар;
- "-Q" - "очень тихий режим". Статус - бар отсутствует. Выдает только результат;
- "-r" - использует список удаленных серверов с online FreeBSD Handbook;
- "-c country codes" - позволяет указать код страны;
- "-c tld" - проверяет сервера в Top Level Domain;
- "-c local" - использует страны, заданные в @LOCAL_CC массиве;
- "-c all" - использует все FreeBSD сервера.
Итак, займемся поиском самого быстрого зеркала в UA-IX:
# fastest_cvsup -c ua >> Querying servers in countries: ua --> Connecting to cvsup.ua.freebsd.org [83.218.232.71]... - server replied: OK 17 0 SNAP_16_1h CVSup server ready - time taken: 2.99 ms --> Connecting to cvsup2.ua.freebsd.org [62.244.55.197]... - server replied: OK 17 0 SNAP_16_1h CVSup server ready - time taken: 1.84 ms --> Connecting to cvsup3.ua.freebsd.org [212.42.64.9]... - server replied: OK 17 0 SNAP_16_1h CVSup server ready - time taken: 1.87 ms ==> DNS lookup failed for cvsup4.ua.freebsd.org --> Connecting to cvsup5.ua.freebsd.org [213.186.196.224]... * error: connect: timeout --> Connecting to cvsup6.ua.freebsd.org [62.149.2.9]... - server replied: OK 17 0 SNAP_16_1h CVSup server ready - time taken: 1.23 ms --> Connecting to cvsup7.ua.freebsd.org [213.186.196.224]... * error: connect: timeout --> Connecting to cvsup8.ua.freebsd.org [83.218.232.71]... - server replied: OK 17 0 SNAP_16_1h CVSup server ready - time taken: 1.45 ms --> Connecting to cvsup9.ua.freebsd.org [80.249.224.11]... - server replied: OK 17 0 SNAP_16_1h CVSup server ready - time taken: 10.93 ms --> Connecting to cvsup10.ua.freebsd.org [78.152.160.14]... - server replied: OK 17 0 SNAP_16_1h CVSup server ready - time taken: 6.85 ms --> Connecting to cvsup11.ua.freebsd.org [217.20.163.35]... - server replied: OK 17 0 SNAP_16_1h CVSup server ready - time taken: 1.39 ms >> Speed Daemons: - 1st: cvsup6.ua.freebsd.org - 2nd: cvsup11.ua.freebsd.org - 3rd: cvsup8.ua.freebsd.org |
А теперь тот же поиск, но в "тихом режиме". Посмотрим в чем разница:
# fastest_cvsup -q -c ua -=(ooooooooooo)=(cvsup11.ua.freebsd.org)=- cvsup2.ua.freebsd.org |
Попробовал еще вариант "fastest_cvsup -q -c all" - не дождался!
Кстати, стоит отметить, что fastest_cvsup определяет самый быстрый сервер не только по результатам ping, но и учитывает скорость открытия соединения!
После определения "самого быстрого" зеркала, можете смело вписывать его в конфигурационный файл csup [1].