دستور last در محیط لینوکس، اطلاعاتی را در مورد لاگینهای موفق کاربران ارائه می کند برای مثال، از طریق این دستور می توان آخرین کاربری که به سیستم لاگین کرده است را به همراه آدرس ip آن مشخص کرد:
[root@ol7 ~]# last
این دستور اطلاعات را از فایل var/log/wtmp/ خوانده و به کاربر نمایش می دهد پس در صورت حذف این فایل، اجرای دستور last هم با خطا مواجه خواهد شد:
[root@ol7 ~]# mv /var/log/wtmp /var/log/wtmp-old
[root@ol7 ~]# last
last: /var/log/wtmp: No such file or directory
Perhaps this file was removed by the operator to prevent logging last info.
محتوای فایل wtmp به صورت باینری می باشد و امکان اصلاح محتویات ان با کمک ویرایشگرهای رایج(از قبیل vim)، وجود ندارد:
با در نظر گرفتن این نکات، فرض کنید فردی قصد دارد اطلاعات ثبت شده برای کاربر oracle را در این فایل حذف کند و یا به جای نام کاربر oracle، کاربر usef را ثبت کند، در این صورت چه راهکاری وجود دارد؟
برای حذف و یا اعمال تغییر در این فایل، می توان از دستور utmpdump استفاده کرد با کمک این دستور، امکان خواندن محتویات لاگ فایلهای باینری نظیر wtmp فراهم می شود برای مثال، دستور زیر سبب نمایش محتوایات فایل wtmp خواهد شد:
[root@ol7 ~]# utmpdump /var/log/wtmp
همانطور که از خروجیدستورات قبلی قابل مشاهده است، اطلاعاتی در مورد زمان لاگین کاربر oracle در فایل wtmp ثبت شده است برای قرار دادن کلمه usef به جای کلمه oracle، خروجی دستورutmpdump را در یک فایل متنی ذخیره می کنیم:
فایل myfile.txt را باز کرده و تغییرات لازم را در آن ایجاد می کنیم:
[root@ol7 ~]# vi /root/myfile.txt
:%s/oracle/usef/g
بعد از اعمال تغییرات دلخواه، مجددا از دستور utmpdump به همراه سوییچ r استفاده کرده و محتوای فایل متنی root/myfile.txt/ را بصورت باینری در فایل var/log/wtmp/ ذخیره می کنیم:
همانطور که می بینید، با تغییرات اعمال شده، نام کاربر usef به جای کاربر oracle در خروجی دستور last نمایش داده شده است.
علاوه بر دستور last، دستورات دیگری هم هستند که اطلاعاتی را در مورد لاگین کاربران ارائه می کنند دستوراتی نظیر lastb که اطلاعاتی را در مورد لاگینهای ناموفق کاربران نمایش می دهد و دستورات w و who که در مورد کاربران متصل به سیستم، اطلاعاتی را نمایش می دهند.
دستور lastb، اطلاعاتش را از فایل باینری var/log/btmp/ خوانده و دو دستور w و who هم از فایل باینری var/log/wtmp/ اطلاعات را نمایش می دهند پس برای تغییر خروجی این دستورات هم باید این دو فایل باینری را با دستور utmpdump تغییر داد.
برای مثال، در دستور زیر، خروجی دستور who را دستکاری می کنیم: