ວິທີການຕິດຕັ້ງລະບົບເອກະສານ Linux Linux ທີ່ຢູ່ຫ່າງໄກສອກຫຼີກຫລືໄດເລກະທໍລີໂດຍໃຊ້ SSHFS Over SSH


ຈຸດປະສົງຕົ້ນຕໍຂອງການຂຽນບົດຄວາມນີ້ແມ່ນເພື່ອໃຫ້ຄູ່ມືແນະ ນຳ ເປັນແຕ່ລະບາດກ້າວກ່ຽວກັບວິທີການຕິດຕັ້ງລະບົບເອກະສານ Linux ທີ່ຢູ່ຫ່າງໄກສອກຫຼີກໂດຍໃຊ້ລູກຄ້າ SSHFS ຜ່ານ SSH.

ບົດຂຽນນີ້ເປັນປະໂຫຍດ ສຳ ລັບຜູ້ໃຊ້ແລະຜູ້ບໍລິຫານລະບົບທີ່ຕ້ອງການຕິດຕັ້ງລະບົບເອກະສານທາງໄກໃນລະບົບທ້ອງຖິ່ນຂອງພວກເຂົາເພື່ອຈຸດປະສົງອັນໃດກໍ່ຕາມ. ພວກເຮົາໄດ້ທົດສອບການປະຕິບັດຕົວຈິງໂດຍການຕິດຕັ້ງລູກຄ້າ SSHFS ໃນ ໜຶ່ງ ຂອງລະບົບ Linux ຂອງພວກເຮົາແລະໄດ້ຕິດຕັ້ງລະບົບແຟ້ມເອກະສານທາງໄກ.

ກ່ອນທີ່ພວກເຮົາຈະຕິດຕັ້ງຕື່ມອີກໃຫ້ເຂົ້າໃຈກ່ຽວກັບ SSHFS ແລະວິທີການເຮັດວຽກຂອງມັນ.

SSHFS ແມ່ນຫຍັງ?

SSHFS ຫຍໍ້ມາຈາກລູກຄ້າ (Secure SHell FileSystem) ທີ່ຊ່ວຍໃຫ້ພວກເຮົາສາມາດຕິດຕັ້ງລະບົບແຟ້ມໄລຍະໄກແລະພົວພັນກັບບັນດາໄດເລກະທໍລີແລະເອກະສານຫ່າງໄກສອກຫຼີກໃນເຄື່ອງທ້ອງຖິ່ນໂດຍໃຊ້ SSH File Transfer Protocol (SFTP).

SFTP ແມ່ນໂປໂຕຄອນການໂອນໄຟລ໌ທີ່ປອດໄພເຊິ່ງສະ ໜອງ ການເຂົ້າເຖິງເອກະສານ, ການໂອນເອກະສານແລະຄຸນລັກສະນະການຄຸ້ມຄອງເອກະສານຫຼາຍກວ່າໂປແກຼມໂປແກຼມປອດໄພ. ເນື່ອງຈາກວ່າ SSH ໃຊ້ການເຂົ້າລະຫັດໃນຂະນະທີ່ໂອນໄຟລ໌ຜ່ານເຄືອຂ່າຍຈາກຄອມພິວເຕີ້ ໜຶ່ງ ໄປຫາຄອມພິວເຕີ້ອື່ນແລະ SSHFS ມາພ້ອມກັບໂມດູນ kernel ທີ່ມີຊື່ວ່າ FUSE (Filesystem in Userspace) ທີ່ຊ່ວຍໃຫ້ຜູ້ໃຊ້ທີ່ບໍ່ມີສິດທິພິເສດສາມາດສ້າງລະບົບແຟ້ມຂອງພວກເຂົາໂດຍບໍ່ຕ້ອງດັດແປງລະຫັດ kernel.

ໃນບົດຂຽນນີ້, ພວກເຮົາຈະສະແດງວິທີການຕິດຕັ້ງແລະ ນຳ ໃຊ້ລູກຄ້າ SSHFS ໃນການແຈກຈ່າຍ Linux ໃດ ໜຶ່ງ ເພື່ອຕິດຕັ້ງລະບົບແຟ້ມ Linux ທີ່ຢູ່ຫ່າງໄກສອກຫຼີກຫລືໄດເລກະທໍລີຢູ່ໃນເຄື່ອງ Linux ທ້ອງຖິ່ນ.

ໂດຍການຕັ້ງຄ່າຊຸດ sshfs ບໍ່ມີໃນທຸກໆການແຈກແຈງ Linux ທີ່ ສຳ ຄັນ, ທ່ານ ຈຳ ເປັນຕ້ອງເປີດໃຊ້ epel repository ພາຍໃຕ້ລະບົບ Linux ຂອງທ່ານຕິດຕັ້ງ sshfs ໂດຍການຊ່ວຍເຫຼືອຂອງ ຄຳ ສັ່ງ Yum ກັບຄວາມເພິ່ງພາອາໄສຂອງພວກມັນ.

# yum install sshfs
# dnf install sshfs              [On Fedora 22+ releases]
$ sudo apt-get install sshfs     [On Debian/Ubuntu based systems]

ເມື່ອຊຸດ sshfs ຕິດຕັ້ງແລ້ວ, ທ່ານ ຈຳ ເປັນຕ້ອງສ້າງໄດເລກະທໍລີ mount point ບ່ອນທີ່ທ່ານຈະຕິດຕັ້ງລະບົບແຟ້ມເອກະສານຂອງທ່ານ. ຍົກຕົວຢ່າງ, ພວກເຮົາໄດ້ສ້າງໄດເລກະທໍລີ mount ພາຍໃຕ້ /mnt/tecmint .

# mkdir /mnt/tecmint
$ sudo mkdir /mnt/tecmint     [On Debian/Ubuntu based systems]

ເມື່ອທ່ານສ້າງໄດເລກະທໍລີ mount point ຂອງທ່ານແລ້ວ, ດຽວນີ້ໃຊ້ ຄຳ ສັ່ງຕໍ່ໄປນີ້ເປັນຜູ້ໃຊ້ຮາກເພື່ອຕິດຕັ້ງລະບົບແຟ້ມໄລຍະໄກພາຍໃຕ້ /mnt/tecmint . ໃນກໍລະນີຂອງທ່ານ, ໄດເລກະທໍລີ mount ຈະບໍ່ມີຫຍັງເລີຍ.

ຄຳ ສັ່ງຕໍ່ໄປນີ້ຈະຕິດຕັ້ງລະບົບຫ່າງໄກສອກຫຼີກທີ່ມີຊື່ວ່າ /home/tecmint ພາຍໃຕ້ /mnt/tecmint ໃນລະບົບທ້ອງຖິ່ນ. (ຢ່າລືມແທນທີ່ x.x.x.x ກັບທີ່ຢູ່ IP ຂອງທ່ານແລະຈຸດທີ່ຕັ້ງຂອງທ່ານ).

# sshfs [email :/home/tecmint/ /mnt/tecmint
$ sudo sshfs -o allow_other [email :/home/tecmint/ /mnt/tecmint     [On Debian/Ubuntu based systems]

ຖ້າເຄື່ອງແມ່ຂ່າຍ Linux ຂອງທ່ານຖືກຕັ້ງຄ່າດ້ວຍການອະນຸຍາດທີ່ອີງໃສ່ລະຫັດ SSH, ຫຼັງຈາກນັ້ນທ່ານຈະຕ້ອງ ກຳ ນົດເສັ້ນທາງໄປສູ່ຄີສາທາລະນະຂອງທ່ານດັ່ງທີ່ສະແດງຢູ່ໃນ ຄຳ ສັ່ງຕໍ່ໄປນີ້.

# sshfs -o IdentityFile=~/.ssh/id_rsa [email :/home/tecmint/ /mnt/tecmint
$ sudo sshfs -o allow_other,IdentityFile=~/.ssh/id_rsa [email :/home/tecmint/ /mnt/tecmint     [On Debian/Ubuntu based systems]

ຖ້າທ່ານໄດ້ປະຕິບັດ ຄຳ ສັ່ງຂ້າງເທິງນີ້ຢ່າງປະສົບຜົນ ສຳ ເລັດໂດຍບໍ່ມີຂໍ້ຜິດພາດໃດໆ, ທ່ານຈະເຫັນລາຍຊື່ຂອງແຟ້ມໄລຍະໄກແລະໄດເລກະທໍລີທີ່ຕິດຢູ່ພາຍໃຕ້ /mnt/tecmint .

# cd /mnt/tecmint
# ls
 ls
12345.jpg                       ffmpeg-php-0.6.0.tbz2                Linux                                           news-closeup.xsl     s3.jpg
cmslogs                         gmd-latest.sql.tar.bz2               Malware                                         newsletter1.html     sshdallow
epel-release-6-5.noarch.rpm     json-1.2.1                           movies_list.php                                 pollbeta.sql
ffmpeg-php-0.6.0                json-1.2.1.tgz                       my_next_artical_v2.php                          pollbeta.tar.bz2

ຖ້າທ່ານດໍາເນີນການຄໍາສັ່ງ df -hT ທ່ານຈະເຫັນຈຸດລະບົບໄຟລ໌ຫ່າງໄກສອກຫຼີກ.

# df -hT
Filesystem                          Type        Size  Used Avail Use% Mounted on
udev                                devtmpfs    730M     0  730M   0% /dev
tmpfs                               tmpfs       150M  4.9M  145M   4% /run
/dev/sda1                           ext4         31G  5.5G   24G  19% /
tmpfs                               tmpfs       749M  216K  748M   1% /dev/shm
tmpfs                               tmpfs       5.0M  4.0K  5.0M   1% /run/lock
tmpfs                               tmpfs       749M     0  749M   0% /sys/fs/cgroup
tmpfs                               tmpfs       150M   44K  150M   1% /run/user/1000
[email :/home/tecmint fuse.sshfs  324G   55G  253G  18% /mnt/tecmint

ເພື່ອຕິດຕັ້ງລະບົບແຟ້ມເອກະສານໄລຍະໄກ, ທ່ານຕ້ອງການແກ້ໄຂເອກະສານທີ່ມີຊື່ວ່າ /etc/fstab . ເພື່ອເຮັດ, ເປີດເອກະສານກັບບັນນາທິການທີ່ທ່ານມັກ.

# vi /etc/fstab
$ sudo vi /etc/fstab     [On Debian/Ubuntu based systems]         

ໄປທີ່ລຸ່ມຂອງເອກະສານແລະຕື່ມເສັ້ນຕໍ່ໄປນີ້ໃສ່ມັນແລະບັນທຶກເອກະສານແລະອອກ. ການເຂົ້າຂ້າງລຸ່ມນີ້ລະບົບໄຟລ໌ເຊີຟເວີຫ່າງໄກສອກຫຼີກທີ່ມີການຕັ້ງຄ່າເລີ່ມຕົ້ນ.

sshfs#[email :/home/tecmint/ /mnt/tecmint fuse.sshfs defaults 0 0

ໃຫ້ແນ່ໃຈວ່າທ່ານໄດ້ເຂົ້າລະຫັດຜ່ານ SSH ທີ່ບໍ່ມີລະຫັດຢູ່ໃນລະຫວ່າງເຄື່ອງແມ່ຂ່າຍເພື່ອຕິດຕັ້ງລະບົບເອກະສານອັດຕະໂນມັດໃນລະຫວ່າງການເລີ່ມຕົ້ນລະບົບ.

ຖ້າຫາກວ່າເຄື່ອງແມ່ຂ່າຍຂອງທ່ານໄດ້ຖືກຕັ້ງຄ່າດ້ວຍການອະນຸຍາດທີ່ ສຳ ຄັນໂດຍໃຊ້ SSH, ຫຼັງຈາກນັ້ນເພີ່ມສາຍນີ້:

sshfs#[email :/home/tecmint/ /mnt/tecmint fuse.sshfs IdentityFile=~/.ssh/id_rsa defaults 0 0

ຕໍ່ໄປ, ທ່ານຕ້ອງການປັບປຸງເອກະສານ fstab ເພື່ອສະທ້ອນເຖິງການປ່ຽນແປງ.

# mount -a
$ sudo mount -a   [On Debian/Ubuntu based systems]

ເພື່ອຖອດລະບົບແຟ້ມເອກະສານໄລຍະໄກ, jun ອອກ ຄຳ ສັ່ງຕໍ່ໄປນີ້ມັນຈະຖອດລະບົບແຟ້ມເອກະສານໄລຍະໄກ.

# umount /mnt/tecmint

ທັງ ໝົດ ນີ້ ສຳ ລັບດຽວນີ້, ຖ້າທ່ານ ກຳ ລັງປະສົບກັບຄວາມຫຍຸ້ງຍາກຫລືຕ້ອງການຄວາມຊ່ວຍເຫຼືອໃນການຕິດຕັ້ງລະບົບແຟ້ມໄລຍະໄກ, ກະລຸນາຕິດຕໍ່ຫາພວກເຮົາຜ່ານ ຄຳ ເຫັນແລະຖ້າທ່ານຮູ້ສຶກວ່າບົດຄວາມນີ້ມີປະໂຫຍດຫລາຍແລ້ວທ່ານກໍ່ແບ່ງປັນໃຫ້ເພື່ອນຂອງທ່ານ.