วิธีการบล็อกคำสั่งสมมติว่าmkdir
สำหรับผู้ใช้ที่เฉพาะเจาะจง
สิ่งที่ฉันเพิ่งสร้างฟังก์ชั่นอ่านอย่างเดียวและเก็บไว้ในโปรไฟล์ผู้ใช้ ~/.bashrc
/bin/mkdir() {
echo "mkdir command not allow for you"
}
mkdir() {
echo "mkdir command not allow for you"
}
./mkdir() {
echo "mkdir command not allow for you"
}
readonly -f /bin/mkdir
readonly -f mkdir
readonly -f ./mkdir
ทดสอบ:
rahul@ubuntu:~$ cd /bin/
rahul@ubuntu:/bin$ ./mkdir /home/rahul/ggg
mkdir command not allow for you
rahul@ubuntu:/bin$ cd
rahul@ubuntu:~$ mkdir testing
mkdir command not allow for you
rahul@ubuntu:~$ /bin/mkdir testing
mkdir command not allow for you
ดังนั้นคำถามของฉันคืออะไรควรเป็นวิธีการบรรลุนี้ มีเครื่องมือสำหรับสิ่งนี้หรือไม่?
อัปเดต 1 # แต่ถ้าผู้ใช้ฉลาดเขาสามารถคัดลอกไบนารี mkdir และเปลี่ยนชื่อและใช้งานได้ ดังนั้นวิธีการบรรลุเป้าหมายนี้
cp /bin/mkdir mkdir2
จากนั้นใช้ :(
cp -r /usr/local/lib ggg
จะสร้างไดเรกทอรีที่เรียกว่าggg
(มีสำเนาของเนื้อหา/usr/local/lib
ถ้ามีซึ่งผู้ใช้สามารถลบได้) คุณสามารถใช้find / -type d -empty
เพื่อค้นหาไดเรกทอรีว่างเปล่าเพื่อคัดลอก
mkdir
และเปลี่ยนชื่อหรือแม้แต่เพียงคัดลอกและเปลี่ยนชื่อไบนารีที่มีอยู่ นอกจากนี้ยังมีตัวเชลล์สำหรับการแทนที่นามแฝงและฟังก์ชั่น