Panduan singkat ini menjelaskan cara menginstal modul Perl di Linux dari CPAN (C menyeluruh P erl A arsipkan N jaringan) penyimpanan. Saat menulis panduan ini, ada 185.128 modul Perl tersedia di CPAN. Banyak program yang ditulis dalam bahasa pemrograman Perl bergantung pada modul Perl tertentu untuk melakukan tugas tertentu. Misalnya, beberapa hari yang lalu saya menguji Sysadmin-util yang menyediakan kumpulan alat yang berguna untuk sysadmin Linux/Unix . Saat saya menguji alat tertentu yang disebut multi-ping , saya mengalami kesalahan berikut:
$ ./multi-ping google.com The required Net::DNS module is missing. Aborting.
Dalam kasus seperti itu, Anda perlu menemukan dan menginstal modul Perl yang hilang untuk menggunakan program itu.
Instal Modul Perl Di Linux
Ada banyak alat yang tersedia untuk menginstal dan modul Perl. Kami akan mencoba dua alat yaitu cpan dan cpanm . Perlu disebutkan bahwa Banyak modul di CPAN memerlukan versi terbaru Perl versi 5.8 atau lebih tinggi.
Harap pastikan bahwa Anda telah menginstal 'make' paket pada distribusi Linux Anda. 'make' adalah alat penting untuk membangun Modul Perl.
Jika Anda tidak menginstal 'make', Anda mungkin mengalami kesalahan seperti di bawah ini:
Can't configure the distribution. You probably need to have 'make'.
Paket 'make' tersedia di repositori default sebagian besar distribusi Linux.
Untuk menginstal 'make' di Linux Arch dan variannya, jalankan:
$ sudo pacman -S make
Di Debian , Ubuntu , Linux Mint :
$ sudo apt install make
Di Fedora :
$ sudo dnf install make
Di RHEL , CentOS :
$ sudo yum install make
Di SUSE/openSUSE :
$ sudo zypper install make
Mari kita lanjutkan dan menginstal modul Perl.
Instal modul Perl menggunakan cpan
cpan adalah klien baris perintah untuk repositori CPAN dan didistribusikan dengan semua edisi Perl secara default.
Untuk menginstal modul Perl, misalnya Net::DNS , masuk ke shell cpan menggunakan perintah:
$ sudo cpan
Dan ketik perintah berikut dari cpan prompt untuk menginstal modul:
install Net::DNS
Setelah modul terpasang, ketik 'exit' untuk kembali ke cangkang Anda.
Anda juga dapat langsung menginstal modul dari Terminal menggunakan perintah:
$ sudo cpan Net::DNS
Instal modul Perl menggunakan Cpanminus
Cpanminus atau cpanm adalah klien cpan untuk mendapatkan, membongkar, membangun, dan menginstal modul dari repositori CPAN. Ini adalah skrip mandiri, bebas ketergantungan yang memerlukan konfigurasi nol. Banyak pengembang Perl berpengalaman lebih memilih cpanm daripada cpan.
cpanminus dapat diinstal dengan banyak cara.
1. Menggunakan Perl:
Untuk menginstal versi cpanm terbaru di sistem Linux Anda, jalankan saja:
$ curl -L https://cpanmin.us | perl - --sudo App::cpanminus
Perintah ini akan menginstal cpanm di seluruh sistem dan menginstal biner cpanm ke direktori bin Anda seperti /usr/local/bin .
2. Menggunakan manajer paket distribusi:
cpanm juga tersedia di repositori default beberapa distribusi Linux. Ini adalah versi stabil, tapi agak lama.
Untuk menginstal cpanminus di Arch Linux dan variannya, jalankan:
$ sudo pacman -S cpanminus
Di Debian, Ubuntu, Linux Mint:
$ sudo apt install cpanminus
Di CentOS:
$ sudo yum install perl-App-cpanminus
3. Pemasangan manual:
Atau, Anda dapat mengunduh biner cpanm terbaru secara manual dan memasukkannya ke dalam $PATH Anda seperti di bawah ini.
$ curl -L https://cpanmin.us/ -o cpanm
$ chmod +x cpanm
$ sudo mv cpanm /usr/local/bin/cpanm
Setelah menginstal cpanm, Anda dapat menginstal modul Perl apa pun, misalnya Net::DNS, dengan menjalankan perintah berikut dari Terminal Anda:
$ sudo cpanm Net::DNS
Contoh keluaran:
--> Working on Net::DNS Fetching http://www.cpan.org/authors/id/N/NL/NLNETLABS/Net-DNS-1.21.tar.gz ... OK Configuring Net-DNS-1.21 ... OK ==> Found dependencies: Digest::HMAC --> Working on Digest::HMAC Fetching http://www.cpan.org/authors/id/G/GA/GAAS/Digest-HMAC-1.03.tar.gz ... OK Configuring Digest-HMAC-1.03 ... OK Building and testing Digest-HMAC-1.03 ... OK Successfully installed Digest-HMAC-1.03 Building and testing Net-DNS-1.21 ... OK Successfully installed Net-DNS-1.21 2 distributions installed
Instal modul Perl yang hilang menggunakan manajer paket distribusi
Banyak modul Perl tersedia sebagai paket, sehingga Anda dapat menginstalnya menggunakan manajer paket distribusi Anda.
Di Debian, Ubuntu:
$ apt-cache search 'perl$' | grep Net::DNS
Keluaran:
libnet-dns-zonefile-fast-perl - fast BIND-style zonefile parser on top of Net::DNS
Seperti yang Anda lihat, modul Net::DS disediakan oleh "libnet-dns-zonefile-fast-perl", jadi mari kita instal menggunakan perintah:
$ sudo apt install libnet-dns-zonefile-fast-perl
Untuk menemukan modul yang hilang di Arch Linux, jalankan:
$ pacman -Ss '^perl-' | grep Net::DNS
Dan instal modul yang hilang menggunakan perintah 'pacman'.
Mencantumkan modul Perl yang diinstal
Untuk membuat daftar modul Perl yang diinstal, gunakan perintah 'perldoc':
$ perldoc perllocal
Contoh keluaran:
Thu Jan 30 10:45:11 2020: "Module" Digest::HMAC * "installed into: /usr/local/share/perl/5.26.1" * "LINKTYPE: dynamic" * "VERSION: 1.03" * "EXE_FILES: " Thu Jan 30 10:47:41 2020: "Module" Net::DNS * "installed into: /usr/local/share/perl/5.26.1" * "LINKTYPE: dynamic" * "VERSION: 1.21" * "EXE_FILES: " Thu Jan 30 10:48:54 2020: "Module" Digest::BubbleBabble * "installed into: /usr/local/share/perl/5.26.1" * "LINKTYPE: dynamic" * "VERSION: 0.02" * "EXE_FILES: "
Cara lain untuk membuat daftar modul Perl yang terinstal adalah dengan menggunakan perintah 'instmodsh' seperti di bawah ini.
$ instmodsh
Anda akan melihat output berikut:
Available commands are: l - List all installed modules m <module> - Select a module q - Quit the program cmd?
Dalam cmd prompt, ketik 'l' untuk membuat daftar modul.
Installed modules are: App::cpanminus Digest::BubbleBabble Digest::HMAC Module::Build Net::DNS Perl cmd?
Harap dicatat bahwa dua perintah di atas akan mencantumkan modul yang diinstal dengan cpan. Mungkin ada banyak modul yang diinstal baik secara manual atau diinstal sebelumnya dengan distribusi Linux Anda.
Untuk menemukan semua modul Perl yang terinstal, jalankan:
$ cpan -l
Atau,
$ cpan -a
Copot pemasangan modul Perl
Modul Perl dapat dengan mudah dihapus menggunakan cpanm menggunakan perintah:
$ sudo cpanm --uninstall Net::DNS
Ketik y dan tekan ENTER untuk menghapus modul dengan semua file konfigurasi.
Net::DNS contains the following files: /usr/local/man/man3/Net::DNS.3pm /usr/local/man/man3/Net::DNS::Domain.3pm /usr/local/man/man3/Net::DNS::DomainName.3pm [...] /usr/local/share/perl/5.26.1/Net/DNS/Text.pm /usr/local/share/perl/5.26.1/Net/DNS/Update.pm /usr/local/share/perl/5.26.1/Net/DNS/ZoneFile.pm Are you sure you want to uninstall Net::DNS? [y] y
Semoga membantu.