Câu trả lời:
Theo strace finger
, trên hệ thống của tôi, nó nhận được danh sách người dùng hiện tại từ
open("/var/run/utmp", O_RDONLY|O_CLOEXEC) = 4
và thông tin chi tiết về từng người bằng cách stat
pty
stat("/dev//pts/0", {st_mode=S_IFCHR|0620, st_rdev=makedev(136, 0), ...}) = 0
khi chạy mà không có đối số. Khi bạn chạy nó @localhost
, nó sẽ cố gắng sử dụng fingerd
daemon, và vì nó không phải là năm 1993 nữa, nên nó không chạy - do đó connection refused
.
Chỉnh sửa khi chạy với một đối số user
, thay vì @remote-system
, nó sẽ lấy thông tin từ trường GECOS trong /etc/passwd
thư mục chính (đối với các tệp như ~/.plan
). Nó không có đặc quyền, vì vậy người dùng sẽ cần các thư mục gốc và các tệp kế hoạch bạn có thể đọc để hiển thị, ví dụ như tệp kế hoạch. Ở đây (cũng từ strace
) bạn thấy cả hai đều cố gắng và thất bại, để mở một số tệp này trong thư mục của người dùng khác, đó là chế độ 750 (và tôi không thuộc nhóm của cô ấy):
lstat("/home/cby/.pgpkey", 0x7fff52fcec60) = -1 EACCES (Permission denied)
lstat("/home/cby/.project", 0x7fff52fcec60) = -1 EACCES (Permission denied)
lstat("/home/cby/.plan", 0x7fff52fcec60) = -1 EACCES (Permission denied)
finger offlineusername
)? Mặc dù tôi đã không hỏi điều đó trong bài viết của mình. Tôi nên chỉnh sửa câu hỏi hoặc đăng một câu hỏi mới?
who
. Nhưng tôi không chạy (hoặc cài đặt) fingerd
; điêu đo se ky dị.
fingerd
trên các hệ thống kết nối internet. Tôi đã cập nhật câu trả lời phù hợp với câu hỏi bổ sung của bạn; Tôi nghĩ rằng một nhận xét là ổn cho một điểm bổ sung nhỏ như vậy, thay vì mở một câu hỏi hoàn toàn mới. Nhân tiện, tôi nhận thấy bạn là người mới đối với SF (hoan nghênh!); vui lòng dành chút thời gian để tham gia trợ giúp của chúng tôi , nếu bạn chưa có và tìm hiểu về việc chấp nhận câu trả lời cho các câu hỏi (trong số những điều khác).
who
, tôi chỉ từng sử dụng nó cùng vớifingerd
và do đó, cảfinger
vàfingerd
thậm chí không được cài đặt trên hệ thống của tôi nữa.