5 ຄຳ ສັ່ງສົນທະນາເພື່ອເຮັດໃຫ້ເອກະສານ ສຳ ຄັນສາມາດປັບປຸງໄດ້ທັນທີ (ບໍ່ສາມາດປ່ຽນແປງໄດ້) ໃນ Linux
ສົນທະສັນຍາ (ປ່ຽນຄຸນລັກສະນະ) ແມ່ນສາຍບັນທຶກ Linux ທີ່ໃຊ້ເພື່ອ ກຳ ນົດ/ບໍ່ ກຳ ນົດຄຸນລັກສະນະບາງຢ່າງໃຫ້ກັບເອກະສານໃນລະບົບ Linux ເພື່ອຮັບປະກັນການລຶບໂດຍບັງເອີນຫຼືການດັດແປງເອກະສານແລະແຟ້ມທີ່ ສຳ ຄັນ, ເຖິງແມ່ນວ່າທ່ານໄດ້ເຂົ້າສູ່ລະບົບແລ້ວ. ໃນເປັນຜູ້ໃຊ້ຮາກ.
ໃນລະບົບແຟ້ມ Linux ຂອງ Linux i.e. ext2, ext3, ext4, btrfs, ແລະອື່ນໆສະ ໜັບ ສະ ໜູນ ທຸງທຸກຢ່າງ, ເຖິງວ່າທຸງທັງ ໝົດ ຈະບໍ່ສະ ໜັບ ສະ ໜູນ ທຸກໆ FS ທີ່ບໍ່ແມ່ນ native. ຫນຶ່ງບໍ່ສາມາດລຶບຫລືດັດແປງເອກະສານ/ໂຟນເດີເມື່ອຄຸນລັກສະນະຖືກຕັ້ງຄ່າກັບ ຄຳ ສັ່ງ chattr, ເຖິງແມ່ນວ່າຜູ້ ໜຶ່ງ ມີສິດເຕັມຮູບແບບໃນມັນ.
ນີ້ມີປະໂຫຍດຫຼາຍໃນການ ກຳ ນົດຄຸນລັກສະນະຕ່າງໆໃນໄຟລ໌ຂອງລະບົບເຊັ່ນ passwd ແລະ shadow file ເຊິ່ງຂໍ້ມູນຂອງຜູ້ໃຊ້ມີ.
# chattr [operator] [flags] [filename]
ຕໍ່ໄປນີ້ແມ່ນບັນຊີລາຍຊື່ຂອງຄຸນລັກສະນະ ທຳ ມະດາແລະທຸງທີ່ກ່ຽວຂ້ອງສາມາດຕັ້ງ/ບໍ່ ກຳ ນົດໂດຍໃຊ້ ຄຳ ສັ່ງ chattr.
<
<
ນີ້, ພວກເຮົາຈະສະແດງຕົວຢ່າງ ຄຳ ສັ່ງຂອງ chattr ເພື່ອ ກຳ ນົດ/ບໍ່ ກຳ ນົດຄຸນລັກສະນະໃຫ້ກັບແຟ້ມແລະແຟ້ມ.
1. ວິທີການເພີ່ມຄຸນລັກສະນະໃນແຟ້ມຕ່າງໆເພື່ອຮັບປະກັນການລຶບ
ເພື່ອຈຸດປະສົງການສາທິດ, ພວກເຮົາໄດ້ໃຊ້ໂຟນເດີ ການສາທິດ ແລະແຟ້ມ ສຳ ຄັນ_file.conf ຕາມ ລຳ ດັບ. ກ່ອນທີ່ຈະຕັ້ງຄ່າຄຸນລັກສະນະ, ໃຫ້ແນ່ໃຈວ່າຈະກວດສອບວ່າແຟ້ມທີ່ມີຢູ່ແລ້ວມີຄຸນລັກສະນະໃດທີ່ ກຳ ນົດໂດຍໃຊ້ ຄຳ ສັ່ງ 'l--'. ທ່ານຍັງບໍ່ໄດ້ເຫັນຜົນໄດ້ຮັບ, ປະຈຸບັນຍັງບໍ່ໄດ້ ກຳ ນົດຄຸນລັກສະນະໃດໆ.
ls -l total 0 drwxr-xr-x. 2 root root 6 Aug 31 18:02 demo -rwxrwxrwx. 1 root root 0 Aug 31 17:42 important_file.conf
ເພື່ອ ກຳ ນົດຄຸນລັກສະນະ, ພວກເຮົາໃຊ້ເຄື່ອງ ໝາຍ + ແລະເພື່ອບໍ່ໃຊ້ ໝາຍ - ເຊັນກັບ ຄຳ ສັ່ງ chattr. ສະນັ້ນ, ຂໍໃຫ້ຕັ້ງຄ່າທີ່ບໍ່ສາມາດປ່ຽນແປງໄດ້ຢູ່ໃນແຟ້ມທີ່ມີທຸງ + i ເພື່ອປ້ອງກັນບໍ່ໃຫ້ໃຜລຶບເອກະສານ, ເຖິງແມ່ນວ່າຜູ້ໃຊ້ຮາກບໍ່ມີສິດທີ່ຈະລຶບມັນໄດ້.
chattr +i demo/ chattr +i important_file.conf
ໝາຍ ເຫດ: ບິດທີ່ບໍ່ສາມາດປ່ຽນແປງໄດ້ + i ສາມາດ ກຳ ນົດໂດຍຜູ້ໃຊ້ superuser (i.e root) ຫຼືຜູ້ໃຊ້ທີ່ມີສິດທິພິເສດ sudo ສາມາດຕັ້ງຄ່າໄດ້.
ຫຼັງຈາກຕັ້ງຄ່າເລັກນ້ອຍທີ່ບໍ່ສາມາດປ່ຽນແປງໄດ້, ໃຫ້ກວດພິສູດຄຸນລັກສະນະດັ່ງກ່າວດ້ວຍ ຄຳ ສັ່ງວ່າ 'ເສີຍຫາຍ'.
lsattr ----i----------- ./demo ----i----------- ./important_file.conf
ດຽວນີ້, ພະຍາຍາມທີ່ຈະລົບລ້າງຢ່າງແຮງ, ປ່ຽນຊື່ຫຼືປ່ຽນສິດ, ແຕ່ມັນຈະບໍ່ອະນຸຍາດເວົ້າວ່າ "ການປະຕິບັດງານບໍ່ໄດ້ຮັບອະນຸຍາດ".
rm -rf demo/ rm: cannot remove âdemo/â: Operation not permitted
mv demo/ demo_alter mv: cannot move âdemo/â to âdemo_alterâ: Operation not permitted
chmod 755 important_file.conf chmod: changing permissions of âimportant_file.confâ: Operation not permitted
2. ວິທີການຍົກເລີກຄຸນລັກສະນະໃນ Files
ໃນຕົວຢ່າງຂ້າງເທິງ, ພວກເຮົາໄດ້ເຫັນວິທີການ ກຳ ນົດຄຸນລັກສະນະເພື່ອຮັບປະກັນແລະປ້ອງກັນໄຟລ໌ຈາກການລຶບທີ່ເກີດຂື້ນໂດຍບັງເອີນ, ໃນທີ່ນີ້ໃນຕົວຢ່າງນີ້, ພວກເຮົາຈະເຫັນວິທີການຕັ້ງຄ່າການ ກຳ ນົດສິດ (ບໍ່ໄດ້ ກຳ ນົດ) ແລະອະນຸຍາດໃຫ້ເຮັດໃຫ້ໄຟລ໌ປ່ຽນແປງຫລືປ່ຽນແປງໄດ້ໂດຍ ນຳ ໃຊ້ - i ທຸງ.
chattr -i demo/ important_file.conf
ຫຼັງຈາກການອະນຸຍາດການຕັ້ງຄ່າຄືນ ໃໝ່, ກວດສອບສະຖານະພາບທີ່ບໍ່ປ່ຽນແປງຂອງແຟ້ມໂດຍໃຊ້ ຄຳ ສັ່ງ 'lsattr'.
lsattr ---------------- ./demo ---------------- ./important_file.conf
ທ່ານເຫັນໃນຜົນໄດ້ຮັບຂ້າງເທິງວ່າທຸງ“ -i ’ຖືກຖອດອອກ, ນັ້ນ ໝາຍ ຄວາມວ່າທ່ານສາມາດເອົາທຸກເອກະສານແລະໂຟນເດີທີ່ຢູ່ໃນໂຟນເດີ tecmint ອອກຢ່າງປອດໄພ.
rm -rf * ls -l total 0
3. ວິທີການຮັບປະກັນເອກະສານ/etc/passwd ແລະ/etc/shadow
ການຕັ້ງຄ່າຄຸນລັກສະນະທີ່ບໍ່ສາມາດປ່ຽນແປງໄດ້ໃນແຟ້ມ /etc/passwd ຫຼື /etc/ເງົາ , ເຮັດໃຫ້ພວກເຂົາປອດໄພຈາກການ ກຳ ຈັດຫຼືບັງເອີນໂດຍບັງເອີນແລະມັນກໍ່ຈະປິດການສ້າງບັນຊີຜູ້ໃຊ້.
chattr +i /etc/passwd chattr +i /etc/shadow
ຕອນນີ້ພະຍາຍາມສ້າງຜູ້ໃຊ້ລະບົບ ໃໝ່, ທ່ານຈະໄດ້ຮັບຂໍ້ຄວາມຜິດພາດໂດຍກ່າວວ່າ 'ບໍ່ສາມາດເປີດ/etc/passwd'.
useradd tecmint useradd: cannot open /etc/passwd
ວິທີນີ້ທ່ານສາມາດ ກຳ ນົດການອະນຸຍາດທີ່ບໍ່ສາມາດປ່ຽນແປງໄດ້ໃນເອກະສານ ສຳ ຄັນຂອງທ່ານຫຼືແຟ້ມການຕັ້ງຄ່າລະບົບເພື່ອປ້ອງກັນຈາກການລຶບ.
4. ຕື່ມຂໍ້ມູນໂດຍບໍ່ຕ້ອງດັດແປງຂໍ້ມູນທີ່ມີຢູ່ໃນ File
ສົມມຸດວ່າ, ທ່ານພຽງແຕ່ຕ້ອງການທີ່ຈະອະນຸຍາດໃຫ້ທຸກຄົນພຽງແຕ່ເພີ່ມຂໍ້ມູນໃສ່ໃນເອກະສານໂດຍບໍ່ມີການປ່ຽນແປງຫຼືດັດແກ້ຂໍ້ມູນທີ່ໃສ່ແລ້ວ, ທ່ານສາມາດໃຊ້ຄຸນລັກສະນະດັ່ງຕໍ່ໄປນີ້.
chattr +a example.txt lsattr example.txt -----a---------- example.txt
ຫຼັງຈາກຕັ້ງຮູບແບບເອກະສານຊ້ອນທ້າຍ, ເອກະສານສາມາດເປີດເພື່ອຂຽນຂໍ້ມູນໃນຮູບແບບເອກະສານຊ້ອນທ້າຍເທົ່ານັ້ນ. ທ່ານສາມາດ ກຳ ນົດຄຸນລັກສະນະເພີ່ມເຕີມດັ່ງຕໍ່ໄປນີ້.
chattr -a example.txt
ຕອນນີ້ພະຍາຍາມທົດແທນເນື້ອຫາທີ່ມີຢູ່ແລ້ວໃນຕົວຢ່າງ file.txt, ທ່ານຈະໄດ້ຮັບຂໍ້ຜິດພາດໂດຍກ່າວວ່າ 'ການ ດຳ ເນີນງານບໍ່ໄດ້ຮັບອະນຸຍາດ'.
echo "replace contain on file." > example.txt -bash: example.txt: Operation not permitted
ຕອນນີ້ພະຍາຍາມເພີ່ມເນື້ອຫາ ໃໝ່ ໃສ່ໃນຕົວຢ່າງ file.txt ທີ່ມີຢູ່ແລ້ວແລະພິສູດມັນ.
echo "replace contain on file." >> example.txt
cat example.txt Here is the example to test 'a' attribute mean append only. replace contain on file.
5. ວິທີການຮັບປະກັນລາຍຊື່
ເພື່ອຮັບປະກັນໄດເລກະທໍລີແລະເອກະສານທັງ ໝົດ, ພວກເຮົາໃຊ້ '-R' (ກັບຄືນ ໃໝ່) ກັບ '+ i' ທຸງພ້ອມດ້ວຍເສັ້ນທາງເຕັມຂອງໂຟນເດີ.
chattr -R +i myfolder
ຫຼັງຈາກການ ກຳ ນົດຄຸນລັກສະນະຂອງການຄົ້ນຫາຄືນ ໃໝ່, ພະຍາຍາມລຶບໂຟນເດີແລະແຟ້ມຂອງມັນ.
rm -rf myfolder/ rm: cannot remove 'myfolder/': Operation not permitted
ເພື່ອ ກຳ ນົດການອະນຸຍາດ, ພວກເຮົາໃຊ້ປຸ່ມປ່ຽນ '-R' ດຽວກັນ (ກັບຄືນ ໃໝ່) ດ້ວຍທຸງ '-i' ພ້ອມກັບເສັ້ນທາງເຕັມຂອງໂຟນເດີ.
chattr -R -i myfolder
ນັ້ນແມ່ນມັນ! ເພື່ອຮູ້ເພີ່ມເຕີມກ່ຽວກັບຄຸນລັກສະນະຂອງ ຄຳ ສັ່ງຂອງ chattr, ທຸງແລະຕົວເລືອກໃຊ້ ໜ້າ man.