Linux Yöneticisi - CentOS Linux için Perl Kurulumu
Perluzun zamandır buralarda. Başlangıçta metin dosyalarını ayrıştırmak için kullanılan bir raporlama dili olarak tasarlanmıştır. Artan popülerlikle Perl, güçlü bir betik dili için bir modül desteği veya CPAN, soketler, iş parçacığı ve diğer özellikler ekledi.
Perl'in PHP, Python veya Ruby'ye göre en büyük avantajı şudur: İşleri minimum telaşla yapar. Perl'in bu felsefesi her zaman işlerin doğru şekilde yapıldığı anlamına gelmez. Bununla birlikte, Linux'taki yönetim görevleri için Perl, bir betik dili için tercih edilen seçenek olarak kabul edilir.
Perl'in Python veya Ruby'ye göre bazı avantajları şunlardır:
Güçlü metin işleme
Perl komut dosyalarını hızlı ve kirli hale getirir (genellikle bir Perl betiği Python veya Ruby'deki eşdeğerden birkaç düzine satır daha kısadır)
Perl her şeyi yapabilir (neredeyse)
Perl'in bazı dezavantajları:
Sözdizimi kafa karıştırıcı olabilir
Perl'de kodlama stili benzersiz olabilir ve işbirliğini engelleyebilir
Perl gerçekten Nesne Yönelimli değil
Tipik olarak, Perl kullanıldığında standardizasyon ve en iyi uygulama üzerine çok fazla düşünce yoktur.
Perl, Python veya PHP kullanıp kullanmayacağınıza karar verirken; aşağıdaki sorular sorulmalıdır -
- Bu uygulamanın versiyonlamaya ihtiyacı olacak mı?
- Başkalarının kodu değiştirmesi gerekecek mi?
- Başkalarının bu uygulamayı kullanması gerekecek mi?
- Bu uygulama başka bir makinede veya CPU mimarisinde kullanılacak mı?
Yukarıdakilerin hepsine verilen cevaplar "hayır" ise, Perl iyi bir seçimdir ve nihai sonuçlar açısından işleri hızlandırabilir.
Bununla birlikte, CentOS sunucumuzu Perl'in en son sürümünü kullanacak şekilde yapılandıralım.
Perl'i kurmadan önce Perl desteğini anlamamız gerekiyor. Resmi olarak, Perl yalnızca son iki kararlı sürümden beri desteklenmektedir. Bu nedenle, geliştirme ortamımızı CentOS sürümünden izole ettiğimizden emin olmak istiyoruz.
İzolasyonun nedeni şudur: birisi Perl'de bir aracı CentOS topluluğuna yayınlarsa, CentOS ile birlikte gönderilen Perl üzerinde çalışacak şekilde büyük olasılıkla değiştirilecektir. Ancak, geliştirme amacıyla en son sürümün de yüklenmesini istiyoruz. Python gibi, CentOS da Perl'i gönderir ve üstün değil güvenilirliğe odaklanır.
CentOS 7'deki mevcut Perl sürümümüzü kontrol edelim.
[root@CentOS]# perl -v
This is perl 5, version 16, subversion 3 (v5.16.3) built for x86_64-linux-thread-multi
Şu anda Perl 5.16.3'ü çalıştırıyoruz. Bu yazı itibariyle en güncel sürüm: perl-5.24.0
Kodumuzda güncel Perl modüllerini kullanabilmek için kesinlikle sürümümüzü yükseltmek istiyoruz. Neyse ki, Perl ortamlarını korumak ve Perl'in CentOS sürümümüzü izole tutmak için harika bir araç var. Denirperlbrew.
Perl Brew kuralım.
[root@CentOS]# curl -L https://install.perlbrew.pl | bash
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 170 100 170 0 0 396 0 --:--:-- --:--:-- --:--:-- 397
100 1247 100 1247 0 0 1929 0 --:--:-- --:--:-- --:--:-- 1929
Artık Perl Brew kurulduğuna göre, Perl'in en son sürümü için bir ortam oluşturalım.
İlk olarak, perlbrew kurulumunu başlatmak için şu anda kurulu olan Perl sürümüne ihtiyacımız olacak. Böylece CentOS deposundan bazı gerekli Perl modüllerini alalım.
Note - Mümkün olduğunda, CentOS Perl kurulumumuzda her zaman CPAN yerine CentOS Perl modüllerini kullanmak istiyoruz.
Step 1 - CentOS Perl Make :: Maker modülünü kurun.
[root@CentOS]# yum -y install perl-ExtUtils-MakeMaker.noarch
Step 2 - Perl'nin en son sürümünü yükleyin.
[root@CentOS build]# source ~/perl5/perlbrew/etc/bashrc
[root@CentOS build]# perlbrew install -n -j4 --threads perl-5.24.1
Perl kurulumumuz için seçtiğimiz seçenekler:
n - Test yok
j4 - Kurulum rutinleri için paralel olarak 4 iş parçacığı yürütün (bir dört çekirdekli CPU kullanıyoruz)
threads - Perl için iş parçacığı desteğini etkinleştirin
Kurulumumuz başarıyla gerçekleştirildikten sonra en yeni Perl ortamımıza geçelim.
[root@CentOS]# ~/perl5/perlbrew/bin/perlbrew use perl-5.24.1
A sub-shell is launched with perl-5.24.1 as the activated perl. Run 'exit' to finish it.
[root@CentOS]# perl -v
This is perl 5, version 24, subversion 1 (v5.24.1) built for x86_64-linuxthread-multi
(with 1 registered patch, see perl -V for more detail)
Copyright 1987-2017, Larry Wall
Perl may be copied only under the terms of either the Artistic License or the GNU General
Public License, which may be found in the Perl 5 source kit.
Complete documentation for Perl, including FAQ lists, should be found on this system
using "man perl" or "perldoc perl". If you have access to the Internet, point your
browser at http://www.perl.org/, the Perl Home Page.
[root@CentOS]#
Perlbrew ortamımız bağlamında çalışan basit perl komut dosyası yazdırma perl sürümü -
[root@CentOS]# cat ./ver.pl
#!/usr/bin/perl
print $^V . "\n";
[root@CentOS]# perl ./ver.pl
v5.24.1
[root@CentOS]#
Perl kurulduktan sonra, perl brew cpanm ile cpan modüllerini yükleyebiliriz -
[root@CentOS]# perl-brew install-cpanm
Şimdi , perl brew'de mevcut Perl sürüm 5.24.1 ile LWP modülünü yapmak için cpanm yükleyicisini kullanalım.
Step 1 - Mevcut Perl sürümümüzün bağlamına geçin.
[root@CentOS ~]# ~/perl5/perlbrew/bin/perlbrew use perl-5.24.1
Etkinleştirilmiş perl olarak perl-5.24.1 ile bir alt kabuk başlatılır. Bitirmek için 'çıkış'ı çalıştırın.
[root@CentOS ~]#
Step 2 - LWP User Agent Perl Module'ü kurun.
[root@CentOS ~]# ~/perl5/perlbrew/bin/cpanm -i LWP::UserAgent
Step 3 - Şimdi Perl ortamımızı yeni CPAN modülü ile test edelim.
[root@CentOS ~]# cat ./get_header.pl
#!/usr/bin/perl
use LWP;
my $browser = LWP::UserAgent->new();
my $response = $browser->get("http://www.slcc.edu/");
unless(!$response->is_success) {
print $response->header("Server");
}
[root@CentOS ~]# perl ./get_header.pl
Microsoft-IIS/8.5 [root@CentOS ~]#
İşte aldın! Perl Brew, perl ortamlarının izole edilmesini kolaylaştırır ve Perl ile işler geliştikçe en iyi uygulama olarak düşünülebilir.