Linux용 명령줄 파일 다운로드 가속기 Axel

여러 리눅스 배포판을 다운로드하고 시도하는 것을 즐기는 유형이라면, 우리는 설명대로 움직이고 말하는 다운로드 가속기를 환영해줄 것입니다. – 그 설명대로 하는 일을 하는 가속기.

이 안내서에서는 Axel을 소개할 것입니다. 이는 가벼운 wget 복제본으로, 의존성이 없습니다(다만 gccmakeutils가 필요합니다).

Axel – Linux Commandline Download Accelerator

그 설명에서는 바이트 중요 시스템에 특별히 적합하다고 명시되어 있지만, axel은 어디에나 설치하고 사용할 수 있으며 HTTP/FTP 링크를 통해 동시에 여러 파일을 다운로드하는 것 뿐만 아니라 속도를 높일 수도 있습니다.

리눅스용 명령줄 다운로드 가속기인 Axel 설치하기우리가 이전에 언급했듯이, axel은 또 다른 다운로드 도구가 아닙니다. 이는 여러 연결을 사용하여 파일을 목적지에서 검색하고 여러 거울을 사용하도록 구성할 수도 있습니다. 이를 통해 HTTPFTP 다운로드가 가속화됩니다.

앞서 언급했듯이, 악셀은 단순한 다운로드 도구가 아닙니다. 이 도구는 HTTPFTP 다운로드를 여러 연결을 통해 파일을 목적지에서 가져오는 방식으로 가속화시키며, 또한 여러 미러를 사용하도록 구성할 수 있습니다.

이런 기능만으로도 이 도구를 사용해보고 싶어질 수 있지만, 악셀은 응답이 없거나 지정된 시간 동안 데이터를 반환하지 않는 연결을 자동으로 중단 및 재시작하는 기능도 지원합니다.

또한, 권한이 있다면 악셀을 활용하여 서버에 대한 동시에 여러 개의 FTP 연결을 열어 각 연결당 할당된 대역폭을 증가시킬 수 있습니다.

이런 작업을 할 수 없거나 확실하지 않다면, 여러 서버에 각각 연결하여 동시에 모두에서 다운로드할 수 있습니다.

마지막으로, 악셀은 다른 리눅스 다운로드 가속기와는 달리 다운로드 시점에 모든 데이터를 단일 파일에 저장하는 방식을 취하며, 데이터를 별도의 파일에 기록하여 나중에 병합하는 것과는 달리 작동합니다.

CentOS/RHEL 8/7에서는 EPEL 저장소를 활성화해야 악셀을 설치할 수 있습니다:

# yum install epel-release
# yum install axel

Fedora에서는 기본 저장소에서 사용할 수 있습니다.

# yum install axel   
# dnf install axel   [On Fedora 23+ releases]

데비안우분투, 리눅스 민트와 같은 파생판에서 악셀aptitude로 직접 설치할 수 있습니다:

# aptitude install axel

Arch LinuxManjaro Linux, OpenSUSE Linux와 같은 관련 배포판에서 악셀을 다음과 같이 직접 설치할 수 있습니다:

$ sudo pacman -S axel       [On Arch/Manjaro]
$ sudo zypper install axel  [On OpenSUSE]

악셀이 설치되면 두 발로 뛰어들어 봅시다.

악셀 구성 – 리눅스 다운로드 액셀레이터

/etc/axelrc를 사용하여 악셀을 구성할 수 있으며 호출할 때 명령줄에서 추가 옵션을 전달할 수 있습니다. 구성 파일은 잘 문서화되어 있지만 여기에서는 가장 유용한 옵션에 대해 검토합니다.

reconnect_delay는 악셀이 서버에 새 연결을 시작하려고 다시 시도하기 전에 대기하는 초 수입니다.

max_speed는 자체 설명이다. 값은 초당 바이트(B/s)로 제공됩니다. 다운로드하는 동안 악셀이 많은 대역폭을 소비하지 않도록 사용 가능한 대역폭을 고려한 적절한 값으로 이 변수를 설정하고 싶을 수 있습니다.

중요: 실제 최대 다운로드 속도는 인터넷 연결에 따라 다르다는 점에 유의하십시오. max_speed5MB/s로 설정하면 인터넷 연결이 1.22MB/s에 도달하면 아무 일도 일어나지 않습니다. (아래 예제에서 볼 수 있듯이 내 경우에도 그렇습니다. 그 값을 남겨두었습니다).

num_connections는 axel이 시작하려는 최대 연결 수입니다. 추천 값(4)은 대부분의 경우에 충분하며 다른 FTP 사용자에 대한 존중을 위해 주로 제공됩니다. 일부 서버는 다중 연결을 허용하지 않을 수도 있다는 점에 유의하세요.

connection_timeout은 axel이 응답을 받기까지 기다리는 초 수를 나타냅니다. 응답을 받지 못하면 자동으로 중단하고 다시 시작하려고 시도합니다.

http_proxyHTTP_PROXY 환경 변수가 시스템 전체로 설정되지 않은 경우 프록시 서버를 설정할 수 있습니다. 이 변수는 HTTP_PROXY(http://:PORT)와 동일한 형식을 사용합니다.

no_proxy는 프록시를 통해 도달하지 말아야 할 로컬 도메인 목록으로, 쉼표로 구분됩니다. 이 설정은 선택 사항입니다.

buffer_size는 현재 모든 연결에서 한 번에 읽을 수 있는 최대 바이트 수를 나타냅니다.

verbose는 화면에 다운로드 관련 메시지를 인쇄할지 여부를 선택할 수 있습니다. 비활성화하려면 이 값을 0으로 설정하고, 메시지를 계속 표시하려면 1로 설정하세요.

interfaces는 둘 이상의 네트워크 인터페이스가 있는 경우 인터넷에 액세스할 수 있는 인터페이스를 나열할 수 있습니다. 명시적으로 설정하지 않으면 axel은 라우팅 테이블의 첫 번째 인터페이스를 사용합니다.

유사한 구성 옵션은 다음 위치에서 사용할 수 있습니다:

# axel --help

신중하게 살펴보면, 대부분의 명령줄 옵션이 구성 파일의 옵션과 비슷하다는 것을 알 수 있습니다. 또한, -o (–output) 옵션을 사용하면 출력 파일 이름을 지정할 수 있습니다.

사용하면 원본 파일 이름을 대체합니다. 명령줄 옵션을 설정하면 구성 파일에 설정된 옵션을 덮어쓰게 됩니다.

리눅스에서 Axel을 사용하여 파일을 더 빠르게 다운로드하는 방법

구성 파일에서 다음과 같은 설정을 사용할 것입니다 (해당 줄을 주석 해제):

reconnect_delay = 20
max_speed = 500000
num_connections = 4
connection_timeout = 30
buffer_size = 10240
verbose = 1
Configuring Axel Download Accelerator

이제 HTTPFTP 링크에서 wgetaxel을 사용하여 다운로드 시간을 비교해 보겠습니다. 어떤 크기의 파일이든 선택할 수 있지만 간단하게 다음 주소에서 100 MB 파일을 다운로드하겠습니다:

  1. ftp://speedtest:[email protected]/test100Mb.db
  2. http://speedtest.ftp.otenet.gr/files/test100Mb.db

FTP와 Axel 다운로드 시간 비교

wget로 FTP 다운로드 (평균 459 KB/s):
# wget ftp://speedtest:[email protected]/test100Mb.db
Download Files with FTP in Linux Using Wget
axel로 FTP 다운로드 (평균 1181.43 KB/s):
# axel -n 10 --output=axel-test100Mb.db ftp://speedtest:[email protected]/test100Mb.db
Download Files Over FTP Using Axel

HTTP와 Axel 다운로드 시간 비교

wget로 HTTP 다운로드 (평균 482 KB/s):
# wget http://speedtest.ftp.otenet.gr/files/test100Mb.db
Download Files Using HTTP with Wget
axel로 HTTP 다운로드 (평균 1178.93 KB/s):
# axel -n 10 --output=axel-test100Mb.db http://speedtest.ftp.otenet.gr/files/test100Mb.db
Download Files Over HTTP Using Axel

위에서 수행한 테스트 결과에서 볼 수 있듯이, axelFTP 또는 HTTP 다운로드를 크게 가속시킬 수 있습니다.

요약

이 기사에서는 axel을 사용하는 방법을 설명하고, FTP/HTTP 다운로드 가속기로서 다른 프로그램들보다 빠른 성능을 보이는 이유를 보여주었습니다. 이는 원격 서버에 동시에 여러 개의 연결을 열 수 있기 때문입니다. wget.

놓치지 마세요: 리눅스 시스템을 위한 5가지 인기 있는 다운로드 매니저

놓치지 마세요: 리눅스의 10가지 Wget(파일 다운로더) 명령어 예제

여기서 보여드린 내용이 여러분이 axel을 사용해 보도록 독려하길 바라며, 아래 양식을 통해 질문이나 의견이 있으시면 알려주세요. 독자로부터의 피드백을 항상 기다리고 있습니다.

Source:
https://www.tecmint.com/axel-commandline-download-accelerator-for-linux/