บังคับให้ออกจากระบบผู้ใช้


60

ฉันเมื่อฉันเข้าสู่เครื่องเป็นrootและพิมพ์whoเพื่อดูว่าผู้ใช้ที่เข้าสู่ระบบฉันพบคนอื่นเข้าสู่ระบบในฐานะที่เป็นราก

devuser   pts/0        2011-11-18 09:55 (xxx.xxx.xxx.xxx)
root      pts/1        2011-11-18 09:56 (xxx.xxx.xxx.xxx)
testuser  pts/2        2011-11-18 14:54 (xxx.xxx.xxx.xxx)
root      pts/3        2011-11-18 14:55 (xxx.xxx.xxx.xxx)

ฉันจะบังคับให้ผู้ใช้รูทที่ pts / 3 ออกจากระบบได้อย่างไร


9
คุณมีปัญหาที่ใหญ่กว่าในการแก้ไข ปิดใช้งานการเข้าสู่ระบบโดยตรงของรากและบังคับให้ผู้ใช้ของคุณใช้ sudo
Xenoactive

คำตอบ:


55

คุณยกเลิกเซสชันโดยฆ่ากระบวนการหลักเรียกว่าเซสชันผู้นำ ค้นหากระบวนการที่ใช้:

ps -dN|grep pts/3

10
แล้วฆ่ากระบวนการนั้นโดยใช้kill -9 <processid>
Mithun Sreedharan

5
เพียงแค่kill <pid>ควรจะเพียงพอใช่มั้ย? โปรดบันทึกkill -9s สำหรับกระบวนการที่ทำงานผิดปกติอย่างรุนแรงซึ่งไม่ตอบสนองต่อ INT, HUP หรือ TERM; มันเป็นเหมือนความแตกต่างระหว่างการปิดคอมพิวเตอร์โดยใช้ระบบเมนูของระบบปฏิบัติการกับการดึงปลั๊กบนคอมพิวเตอร์
TheDudeAbides

26

หากต้องการฆ่าและล็อกเอาต์ผู้ใช้คุณสามารถส่งสัญญาณ KILL พิมพ์คำสั่งต่อไปนี้:

# skill -KILL -u vivek

ตรวจสอบลิงก์เหล่านี้สำหรับข้อมูลเพิ่มเติม:


6
ถ้าฉันลงชื่อเข้าใช้ด้วยชื่อผู้ใช้เดียวกัน
Mithun Sreedharan

เหล่านี้งานคำสั่งสำหรับผู้ใช้ super .. คุณต้องเข้าสู่ระบบเป็นผู้ใช้ super .. ระบบปฏิบัติการเครือข่ายทำตามวิธีนี้เพื่อความปลอดภัย .. ฉันคิดว่าการเชื่อมโยงเหล่านี้จะพูดเหมือนกันเข้าสู่ระบบเป็นผู้ดูแลระบบ ..
Niranjan ซิงห์

มันเตะฉันออกเช่นsudo su -กันแม้ว่าฉันจะเป็นคนรูท แต่ฉันคิดว่าฉันไม่ได้อยู่ในท้ายที่สุด กลับไปที่เซิร์ฟเวอร์แสดงให้ฉันเห็นว่าเป็นเพียงคนเดียว ฉันมี 4 กรณีของตัวเองฉันเดาว่าฉันจะพูด
pjammer

5
@Mithun คุณสามารถใช้แทน-t <terminal name> -u
Melebius

1
ตอนนี้ลิงก์ cyberciti บอกว่า "คำเตือน! เครื่องมือเหล่านี้ล้าสมัยไม่สามารถพกพาได้และอยู่ที่นี่เนื่องจากเหตุผลทางประวัติศาสตร์ลองใช้คำสั่ง killall, pkill และ pgrep แทนดังนี้" pkill -KILL -u vivekทำงานได้เช่นกัน
EM0

0

การปรับปรุงคำตอบของ Fabel เล็กน้อยด้านบน:

\# *for pid in $(for ptsn in $(w | grep **user_name** | grep pts | awk '{print $2}'); do ps -dN | grep "$ptsn " | awk '{print $1}' ; done); do kill -9 $pid; done*
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.