題:
註銷其他用戶而無需先切換到該用戶
Richard Herron
2010-10-27 05:21:52 UTC
view on stackexchange narkive permalink

我的妻子使用單獨的帳戶,並在運行10.6的MBP上快速切換用戶。有時我想註銷她以釋放一些RAM,但我想避免以她的身份登錄,註銷然後再以我的身份重新登錄。

我看到了一個終端解決方案。 。 有沒有更好的辦法?謝謝!

您需要更好地定義“是否有更好的方法”。對我而言,沒有什麼比計算機終端更好的了。如果您想要一個應用程序,只需將terminal命令包裝在一個automator或applescript應用程序中。
@mankoff,好點!但這不是Arch Linux論壇,所以假設我想要一個GUI /內置解決方案:)。但是,您是對的,我只能編寫一個Shell腳本。
這是腳本解決方案的鏈接(我在發布之前就看到了它,但是它來自2005年,所以我認為到目前為止,這個簡單的功能必須已經集成到GUI中)。 http://forums.macrumors.com/showthread.php?t=118545
我不知道內置的GUI解決方案...
好,謝謝,全部!當我寫一個好的腳本時,我會把它發回到這裡。
妻子和RAM不能讓您在一起開心。您必須選擇一個。現在腳本在哪裡
在告訴計算機執行某項操作時,沒有什麼比終端命令“更好”了。
五 答案:
Josh
2010-11-05 18:42:26 UTC
view on stackexchange narkive permalink

使用終端,您可以殺死她的 loginwindow 進程,並且她打開的所有程序都將被關閉...但是這將導致她丟失任何尚未保存的工作! 實際上,這就是您需要以她的身份登錄才能註銷的原因:以她的身份登錄時,她的所有程序都可以再次訪問GUI,因此它們可以提示您確認關閉,保存更改或在註銷之前採取其他措施。

如果您確定她只有打開的網絡瀏覽器,iTunes等功能,而沒有Pages,Word,Photoshop或其他任何功能其他帶有文檔的文件,則可以從終端嘗試:

  kill`ps awwwwux | grep her_short_username | grep loginwindow | grep -v grep | awk“ {print \ $ 2}”` 

在OSX 10.10.4上:(從最後一條評論稍作編輯):

  export pn =`ps awwwwux | awk'/ her_short_username / && / loginwind [o] w / {print $ 2}'`sudo kill -9 $ pn  
同意警告,如果您不登錄查看她在做什麼,那麼您就不知道註銷她可能會花費多少。
是啊,你說得對。大多數情況下,它是通過網絡瀏覽的……但是有一次它不會!謝謝!
如果您通過“ Activity Monitor.app”強制終止她的“ loginwindow”,則可以同時方便地瀏覽一下她尚未打開的其他進程。
如果仍然以任何方式運行Awk,可以很容易地避免使用多個`grep`命令。`ps awwwwux |awk'/ her_short_username / && / loginwind [o] w / {打印$ 2} ||xargs kill`,另請參見http://www.iki.fi/era/unix/award.html#grep
我同意,這是一個更好的命令行@tripleee,。我的awk在5年前還不夠好:-)
只需在更新後的命令中修正拼寫錯誤,讀為“ sudu”,應讀為“ sudo”。
是僅10.10.4,還是10.10.4及更高版本?
Bennett McElwee
2011-12-07 18:06:40 UTC
view on stackexchange narkive permalink

您可以使用活動監視器通過殺死另一個用戶的登錄過程來註銷該用戶:

  1. 運行活動監視器
  2. 在過濾器中在右上角,鍵入 loginwindow
  3. User 列中單擊具有用戶名的行
  4. 單擊退出過程,然後強制退出,然後輸入密碼。
  5. ol>

    這只是 Josh's的一個更好的(?)GUI版本。答案

    在第2步之前,您可以查看其他用戶的運行進程,以查看他們是否正在運行任何可能在註銷時丟失數據的應用程序。

我嘗試了此操作,但仍看到其他用戶的進程在“活動監視器”中運行。的確,該帳戶顯示為已在用戶切換菜單中註銷,但似乎與註銷並不完全相同。
相同。也許這在Bennet使用的最新操作系統中不起作用
Ulukai
2017-01-28 16:42:11 UTC
view on stackexchange narkive permalink

此命令比建議的命令簡單,它將具有殺死所有用戶進程的期望結果(我不得不運行兩次)

sudo pkill -9 -u用戶

如果您只想終止該用戶的登錄窗口進程,則可以執行以下操作:

sudo pkill -9 -u用戶登錄窗口

在我看來,這是一個比其他方法明顯更好,更慣用的答案(從unix sysadmin的角度來看)。
mempman
2017-06-17 07:17:49 UTC
view on stackexchange narkive permalink

我認為最簡單的方法是: sudo killall -9 -u 妻子名稱

使用MacOS Mojave,這是嘗試了許多方法之後的唯一解決方案,這些方法不僅殺死了LoginWindow進程,而且殺死了該用戶擁有的許多其他進程。僅殺死該用戶的LoginWindow進程並不會殺死該用戶啟動的許多其他進程。 該解決方案(用我妻子的名字代替)擺脫了她登錄後開始的每個過程。類似於重新啟動計算機,然後自己登錄。
mouviciel
2011-12-07 19:29:22 UTC
view on stackexchange narkive permalink

在我看來,可能的數據丟失遠遠超過可能在RAM中獲得的增益。

此外,自從Unix在進程空閒時能夠將內存交換到磁盤以來,已經有很長時間了。

一個問題是,當用戶退出時,他們的進程可能不會處於空閒狀態。他們可能正在消耗CPU和內存。在這方面,遊戲似乎特別糟糕。
問題提到了妻子,但實際上還有一個更好的情況-當您的孩子超過了當天的時間限制,只玩遊戲和做其他不需要儲蓄的事情時。現在,您不僅需要以孩子的身份登錄,還需要增加時間才能註銷他們。
@Michael就是_my_用例。:)


該問答將自動從英語翻譯而來。原始內容可在stackexchange上找到,我們感謝它分發的cc by-sa 2.0許可。
Loading...