Linux Sistemlerde FTP Dizinlerinin Mount Edilmesi
Warning: mysqli_query(): (HY000/3): Error writing file '/tmp/MYASMYug' (Errcode: 28 - No space left on device) in /usr/share/nginx/html/syslogs/wp-includes/class-wpdb.php on line 2349
Nix sistemlerde, herhangi bir ftp sunucusundaki alana direk erişim için dosya sistemi desteği sunan bir kaç paket mevcut. Bunlardan birisi de, bu yazıda kullanımından bahsedeceğim curl ve fuse tabanlı ftp dosya sistemi olan CurlFtpFS'dir.
Bir ftp alanını sisteme mount etmek, ilgili alana herhangi bir ftp istemcisi kullanmaksızın süratlice erişme imkanı sağlamasından ötürü işleri hızlandıran güzel bir yöntemdir. İşte bu nedenle, yazının devamında CurlFtpFs kullanarak, ftp alanlarını, sabit diskmiş gibi sisteme mount etmek ve sistem açılışlarında otomatik olarak yeniden mount edilmesinden bahsedeceğim. |
CurlFtpFs'in, bir çok dağıtım için önceden derlenmiş paketi bulunuyor bu nedenle kaynak koddan kurmaya gerek kalmaksızın, sisteminizin paket yöneticisini kullanarak kolayca sisteme yükleyebiliyorsunuz. Ayrıca, sslv3 ve tlsv1 desteği bulunması, ftp server time out durumlarında yeniden bağlanmak gibi güzel özellikleri bulunuyor. Aşağıda kurulum ve kullanımı ile ilgili bilgileri bulabilirsiniz.
Kurulum
Yukarıda da bahsettiğim gibi, bir çok dağıtım için pre compiled paket bulunuyor. Kurulumu paket yöneticinizi kullanarak dağıtımınıza göre aşağıdaki şekilde yapabilirsiniz:
Debian / Ubuntu
Debian ya da Ubuntu gibi dağıtımlar kullanıyorsanız CurlFtpFS paket depolarında öntanımlı olarak bulunuyor bu nedenle herzamanki gibi apt-get ile aşağıdaki şekilde kurmak mümkün.
# apt-get install curlftpfs
RHEL / CentOS / Fedora
RHEL tabanlı rpm kullanan sistemlerde ise CurlFtpFS rpm paketleri rpmforge yum deposunda bulunuyor, bu depoyu sisteminize ekleyebileceğiniz kurulumu yapabileceğiniz gibi depoyu sisteme yüklemeden kurulum için aşağıdaki adımları izleyebilirsiniz.
# wget http://dag.wieers.com/rpm/packages/fuse-curlftpfs/fuse-curlftpfs-0.9.1-1.el5.rf.i386.rpm # rpm --import http://dag.wieers.com/rpm/packages/RPM-GPG-KEY.dag.txt # yum install fuse-curlftpfs-0.9.1-1.el5.rf.i386.rpm
Not: Kurulumdan önce paketin son sürümünün olup olmadığını http://dag.wieers.com/rpm/packages/fuse-curlftpfs/ adresinden kontrol edebilirsiniz.
Kullanım
Örnek olarak 192.168.12.12 ip adresli ftp sunucusunda bulunan alanı, sistemin /mnt/ftp dizinine şu şekilde mount ediyoruz:
# mkdir /mnt/ftp # curlftpfs kullaniciadi:[email protected] /mnt/ftp/
Bu şekilde ftp alanı mount edilmiş olacaktır; ancak yukarıdaki gibi kullanıcı adı ve şifreyi görüntülenebilecek şekilde yazmak güvenlik açısından pek uygun değildir. Zira, ftp bilgileriniz history dosyasından tespit edilebilir. Ayrıca, süreç listesinde de görüntülenecektir. (ps aux |grep curlftp) Bu nedenle kullanıcı adı ve şifreyi komut satırından girmek yerine, kullanıcınızın home dizininden .netrc isimli bir dosya açarak kullanıcı bilgilerini aşağıdaki formatta yazabilirsiniz.
machine 192.168.12.12 login kullaniciadi password şifre
Daha sonra da dosyanın izinlerini 600 olarak set ederseniz, sizin kullanıcınızdan başka kimse ilgili dosyanın içeriğini görüntüleyemez.
# chmod 600 /home/kullaniciadi/.netrc
.netrc dosyanız hazırsa mount komutu şu şekilde olacaktır:
# curlftpfs 192.168.12.12 /mnt/ftp/
Şimdi, ftp alanı daha güvenli bir şekilde bağlanmış durumda.
mount diyerek kontrol ettiğiniz zaman ilgili alanın /mnt/ftp dizinine bağlandığını görebilirsiniz.
/dev/sda1 on /boot type ext2 (rw) /dev/mapper/debvm-home on /home type ext3 (rw) /dev/mapper/debvm-tmp on /tmp type ext3 (rw) /dev/mapper/debvm-usr on /usr type ext3 (rw) /dev/mapper/debvm-var on /var type ext3 (rw) fusectl on /sys/fs/fuse/connections type fusectl (rw) curlftpfs on /mnt/ftp type fuse.curlftpfs (rw,noexec,nosuid,nodev)
Sistem açılışlarında otomatik olarak mount işlemi için ise, /etc/fstab dosyanıza aşağıdaki şekilde bir ekleme yapabilirsiniz.
curlftpfs#192.168.12.12 /mnt/ftp fuse rw,user,auto 0 0
Not: .netrc dosyası kullanmıyorsanız kullanici adi ve sifrenizi de belirtmeniz gerekir.
Örn: curlftpfs#kullaniciadi:[email protected] /mnt/ftp fuse rw,user,auto 0 0
Son olarak mount -a diyerek fstab'ı yeniden okunarak ve mount işleminin yapılmasını sağlayabilirsiniz. (Daha öncesinden ftp alanı mount edilmemiş olmalıdır.)
# mount -a
FTP dizini sorunsuz mount edildiyse, artık açılışlarda da otomatik olarak bağlanacaktır.
Daha fazla ilgi için aşağıdaki adresten yararlanabilirsiniz:
http://curlftpfs.sourceforge.net/
Bu yazılar da ilginizi çekebilir:
- FreeBSD Sistemlerde RamDisk Oluşturulması
- VMware – Guestlerin Komut Satırından Start/Stop Edilmesi
- CentOS NFS Server ve Client Yapılandırması
- Bir Dizin Yapısının Kopyalanması
- Windows paylaşımlarına *nix ortamlarından erişmek
Yorumlar
Trackbacks
- Ftp dizinlerinizi mount edin | Linux İpuçları
Yorumda bulunun.