Trong khi học về RHCE, tôi đã gặp một tình huống mà chuyển hướng stdin không hoạt động bash
:
# file /tmp/users.txt
/tmp/users.txt: cannot open `/tmp/users.txt' (No such file or directory)
# semanage login -l > /tmp/users.txt
# file /tmp/users.txt
/tmp/users.txt: empty
Tuy nhiên, điều này hoạt động:
# file /tmp/users.txt
/tmp/users.txt: cannot open `/tmp/users.txt' (No such file or directory)
# semanage login -l >> /tmp/users.txt
# file /tmp/users.txt
/tmp/users.txt: ASCII text
Tại sao điều này là trường hợp?
Cập nhật lần 1:
Quyền:
# ls -ld /tmp
drwxrwxrwt. 8 root root 4096 Jul 17 15:27 /tmp
ACL (không phải là gắn ACL mà chỉ trong trường hợp):
# getfacl /tmp
getfacl: Removing leading '/' from absolute path names
# file: tmp
# owner: root
# group: root
# flags: --t
user::rwx
group::rwx
other::rwx
Và tôi đang thực hiện tất cả các lệnh như root
(do đó dấu nhắc băm).
Cập nhật lần 2
Per Caleb, danh sách quyền đầy đủ của /tmp
:
# ls -al /tmp
total 40
drwxrwxrwt. 8 root root 4096 Jul 17 15:37 .
dr-xr-xr-x. 26 root root 4096 Jul 17 15:07 ..
drwx------. 2 melmel melmel 4096 Jul 16 21:08 .esd-500
drwxrwxrwt. 2 root root 4096 Jul 17 15:07 .ICE-unix
drwx------. 2 gdm gdm 4096 Jul 17 15:08 orbit-gdm
drwx------. 2 gdm gdm 4096 Jul 17 15:07 pulse-5E9i88IGxaNh
drwx------. 2 melmel melmel 4096 Jul 16 21:08 pulse-329qCo13Xk
-rw-------. 1 root root 0 Jul 16 14:32 tmpXd9THg
-rw-------. 1 root root 0 Jul 16 12:55 tmpie0O98
-rw-------. 1 root root 0 Jul 16 20:23 tmpr10LrK
-r--r--r--. 1 root root 11 Jul 17 15:07 .X0-lock
drwxrwxrwt. 2 root root 4096 Jul 17 15:07 .X11-unix
-rw-r--r--. 1 root root 865 Jul 16 20:20 yum.conf.security
-rw-------. 1 root root 0 Jul 10 14:57 yum.log
Cập nhật lần 3:
Mỗi Hello71:
# mount | grep /tmp
# mount | grep -w '/'
/dev/mapper/vg_svr-tap-lv_root on / type ext4 (rw)
Trả lời câu hỏi của Gilles:
Đây có phải là thứ bạn đọc trong một cuốn sách, hoặc bạn đã đạt đến tình huống này trên một chiếc máy thực sự?
Nhận thấy điều này trong khi thực hiện một phòng thí nghiệm trong một cuốn sách trên một máy thật.
Là Selinux đang sử dụng?
# sestatus
SELinux status: enabled
SELinuxfs mount: /selinux
Current mode: enforcing
Mode from config file: enforcing
Policy version: 24
Policy from config file: targeted
Một số ảo hóa Linux trên Linux?
Đúng. KVM / QEMU khách.
Tôi yêu cầu thứ hai của Hello71, ngoại trừ vui lòng grep / tmp / Proc / mounts
Không có gì phù hợp.
Ngoài ra env | xin vui lòng grep '^ LD_'.
Không có gì phù hợp.
Ồ, và chúng ta có thể loại trừ các cuộc tấn công hoạt động
Vâng, chúng tôi có thể. Tôi là người duy nhất có quyền truy cập vào khách này.
file
lệnh trước và sau khi chuyển hướng IO. Như vậy đã đủ chưa?
mount | grep /tmp
?
ls -al
/ tmp và /tmp/users.txt không?