Python學習第157課——Linux切換用戶、關機、查看正在運行的程序

2021-01-07 石問新

【每天幾分鐘,從零入門python編程的世界!】

我們接著介紹Linux中的命令。

現在假設有這樣的一個情況:

假如說你是一個Linux系統專家,你有一個朋友,他的Linux系統出了問題,邀請你幫他解決一下。由於不是你的系統,那麼你可能首先就需要確定是誰登錄了這個系統,登錄系統的這個用戶名的身份有什麼樣的權限,這樣方便你做進一步的問題排查。

那麼如何知道當前登錄這個系統的人的身份呢?--使用下面的命令就可以顯示出來他的:

●whoami

說明:此命令用於顯示出當前登錄系統的人的身份(用戶名)。

我們打開Terminal,先輸入自己的用戶名和密碼。

我在這裡輸入我自己的用戶名xiaozhi,登錄進了系統。

然後我輸入whoami,然後回車,就顯示出當前登錄這個系統的人的身份:xiaozhi。如下圖:

現在我的這個系統是以xiaozhi這個身份登陸的,我想以另一個身份登錄,用什麼命令呢?

●su 已經存在的用戶名

說明:su是substitute的簡寫,substitute就是替代的意思。所以以su開頭,後面跟一個已經存在的用戶名,使用這個命令,就會把系統切換到su後面跟的這個用戶名的身份。

如果需要你再輸入切換過來的用戶名和密碼,再輸入這個用戶名和密碼就行。

如果su 後面跟的是一個不存在的用戶名,或者說你隨便亂打的字母,就會提示這個用戶不存在。

如下圖:

如上圖,我在su後面隨便輸入了wahaha這個用戶名,顯示結果就是:

user wahaha does not exist

如果我想退出或者說註銷當前登錄的用戶,使用下面的命令:

●exit

說明:這個命令用於退出或者說註銷當前登錄的用戶。

這個命令必須是小寫,Linux系統對命令的字母大小寫非常敏感,如果是小寫就必須是小寫,如果是大寫就必須是大寫,不能輸錯。

輸入exit並回車後,就會退出當前登錄的用戶,回到登錄前的狀態。

如下圖:

登錄系統就是輸入你的用戶名和密碼,退出系統就是輸入exit。

我們是在自己電腦上創建了一個虛擬機,然後又把虛擬機開機進入虛擬機上的Linux系統的。現在如果我們想關機,使用什麼命令呢?

有三個常見的關機命令:

●halt

說明:這個命令相當於把整個系統停止,差不多相當於讓系統休眠的意思。

halt這個英文單詞本身就是停止、中止的意思。

●poweroff

說明:關閉系統和電源。

●shutdown -H/-P/-r/-h/-k

說明:shutdown命令用於關機,shutdown後面跟-H/-P/-r/-h/-k這幾個選項,有不同的意義。

我們可以在命令行輸入shutdown --help,這樣相當於查看shutdown的說明書。

如下圖:

shutdown -H

shutdown後面跟-H,相當於halt的命令。

shutdown -P

shutdown後面跟-P,相當於poweroff的命令。

shutdown -r

shutdown後面跟-r,就是重啟的意思。r是reboot的首字母。reboot就是重啟的意思。

shutdown -h

shutdown後面跟-h,等同於poweroff的命令,比halt的權限要高。

shutdown -k

shutdown後面跟-k,相當於先給一個關機的警告,然後再讓你做決定。

shutdown -c

shutdown後面跟-c,相當於給關機的過程一個倒計時的期限。在這個倒計時的期限內可以取消關機。

我們現在看看shutdown -k是什麼效果:

當我們輸入shutdown -k時,它會提示:Must be root.

意思是權限不夠,那麼我們使用超級權限,超級權限就是在前面加上sudo,即:sudo shutdown -k

然後需要輸入密碼,輸入密碼後,會提示將會在什麼時間關機,可以用shutdown -c命令去取消。

halt、poweroff、shutdown三個命令的大概區別:

halt是最簡單的關機命令,相當於調用shutdown -h。

poweroff是關閉系統之後,還要關閉電源。

shutdown是以一種安全的方式關閉系統,所有登錄系統的用戶都可以看到關機的提示信息。可以指定立刻關機,也可以指定系統在延時一定時間後關機。這可以使其他程序有時間對處於編輯狀態的文件進行存儲、將緩衝數據進行清除等等。

如果我們想看看系統中最佔空間、最佔資源的程序是什麼,就可以使用一個命令:

●top

說明:這個命令就相當於我們在Windows系統裡面打開任務管理器的操作。可以看到系統後臺有哪些程序正在運行,哪些程序佔用資源和內存最高。

比如說你做系統管理員的話,如果伺服器正在被入侵,那麼使用top命令是非常有用的。假如說你用top看到後臺有一個你不認識的程序正在運行,而且它還佔用大量的內存空間和資源,有可能就是你的伺服器被入侵了,這時就可以用前面的PID來反查出現了什麼情況。至於怎麼反查後面再學習。

top命令就是查看系統後臺有哪些程序在運行。

我們在命令行輸入top,回車,如下圖:

這就是系統後臺正在運行的程序,而且這個結果是不斷變化的,就是運行的程序是在實時變動的。

我們還可以在這個界面上按下h,就會出現關於這個界面上的命令操作的說明。

按下h後,如下圖:

如果要退出上面的界面,可以按q鍵,就會回到top命令結果的頁面,如果要退出top命令結果的頁面,也是按q鍵,在top命令結果的頁面按下q鍵之後,這個top命令的結果就不再實時變化了,說明退出了這個頁面,回到了命令行正常狀態。

如果要把Terminal中前面的信息都清除,使用命令:

●clear

說明:清除命令行中的信息。

使用clear命令之後,就會清除命令行中的信息,效果如下:

大家可以自行動手實踐。

我是時問新,歡迎關注我。跟我一起從零開始學習Python,每天花一點時間,開啟python編程新世界的大門,領略新的風光,讓人生多一種可能!

相關焦點

  • Linux文件的常用操作命令
    linux文件操作常用指令1、系統命令runlevel # 查看當前的運行級別systemctl status firewalld # 開啟網絡服務功能stop # 關閉restart # 重啟reload # 重載reboot # 重啟halt # 關機poweroff # 關機2、查看文件常用命令cat # 在命令提示符下查看文件內容more # 在命令提示符中分頁查看文件內容
  • 漫畫:如何分析運行中的 Python 程序?
    要排查的是線上正在運行的 Python 程序2.「凌晨 3 點多的時候可能出現」,表示問題並不是每天都出現的線上服運行在真實環境,使用真實數據長時間運行,這種非必發性的錯誤通常難以在測試服或灰度服中發現,而且這種錯誤看日誌通常難以判斷出現這種問題的真正原因,可能其他地方的代碼出現了問題,但沒有被處理,導致異常狀態一直堆積,一段時間後才出現的問題。
  • linux關機命令是什麼-太平洋IT百科手機版
    linux關機命令是什麼  Liux是一套免費使用和自由傳播的類Uix作業系統,是一個基於POSIX和UNIX的多用戶、多任務、支持多線程和多CPU的作業系統。那麼linux關機命令是什麼?下面為大家介紹下linux關機命令,趕緊看看吧。
  • Linux:運行級別與重新啟動
    學習關閉或重啟您的 Linux 系統,警告用戶系統正在關閉,切換到一個多少有點限制性的運行級別。這一流程對於許多Linux 愛好者來說,還很陌生。下面請IBM的高級程式設計師Ian Shields具體介紹下Linux的運行級別、關機和重新啟動。
  • 如何給正在運行的Linux應用程式注入代碼
    1、簡介假設Linux上正在運行某程序,像Unix守護程序等,我們不想終止該程序,但是同時又需要更新程序的功能。首先映入腦海的可能是更新程序中一些已知函數,添加額外的功能,這樣就不會影響到程序已有的功能,且不用終止程序。
  • 20分鐘吃掉Linux常用命令40式
    #切換到上級目錄, linux中一個點表示當前路徑,二個點表示當前路徑上級路徑例2:cd ~ #切換到主目錄例3:cd /User/liangyun03/ # 切換到某個絕對路徑,linux中以/開頭的路徑表示絕對路徑例4:cd
  • Python學習第173課——Linux複製文件命令
    還記得我們上節課創建的文件夾linux嗎?它裡面我們又創建了linux_intro(Linux介紹)、red_hat(紅帽)、full_stack(全棧工程師)這結果文件夾,其實Linux系統介紹、紅帽體系、全站工程師這幾方面的知識點,都是可以通過Linux把它們相互連通在一起。
  • Linux 平臺下 Python 腳本編程入門(一)
    容易上手,廣泛使用,擁有海量「開箱即用」的模塊(它是一組包含 Python 語句的外部文件),Python 理所當然地成為了美國計算機專業大學生在一年級時所上的程序設計課所用語言的不二之選。在這個由兩篇文章構成的系列中,我們將回顧 Python 的基礎部分,希望初學編程的你能夠將這篇實用的文章作為一個編程入門的跳板,和日後使用 Python 時的一篇快速指引。
  • 怎樣設置嵌入式Linux開機自動運行用戶程序?
    本文是Linux嵌入式開發日常記錄,今天和大家分享下如何讓嵌入式Linux系統開機後自動運行用戶編寫的程序?嵌入式系統的目標是要執行用戶編寫的、完成指定任務的程序,並且這個用戶程序應該在系統啟動後自動執行。
  • Linux絕對路徑和相對路徑詳解
    Linux 系統中,文件是存放在目錄中的,而目錄又可以存放在其他的目錄中,因此,用戶(或程序)可以藉助文件名和目錄名,從文件樹中的任何地方開始,
  • Python學習第172課——Linux中一次性創建多層目錄以及遞歸列出...
    我們現在是學習Linux,Linux是伺服器、雲計算方面的東西,我要把這些東西都掌握,我們現在要開始去學,那我們現在在桌面專門建一個文件夾,名字叫做Linux,這個文件夾用來保存我們專門去學習的東西。然後我們把目錄切換到linux這個文件夾裡面去,切換進去之後,裡面是空的,現在我們在linux這個文件夾裡面一次性創建3個文件,比如我們一次性創建linux_intro、red_hat、full_stack、game這4個文件夾,可以使用命令:mkdir linux_intro red_hat full_stack game
  • 如何編寫和運行Python程序
    本篇介紹在Windows、Linux、Mac OS不同環境下如何編寫和運行Pyhton程序。通過本篇的學習,可以達成如下目標。交互式解釋器會等待用戶輸入Python語句。輸入Python語句並回車,解釋器會執行語句並輸出結果。交互式解釋器是學習Python語言比較好的工具,優點是輸入Python語句可以立即得到反饋。在Windows環境下啟動交互式解釋器Windows啟動Python交互式解釋器有兩種方式。
  • 編寫一個簡單的遊戲來學習 Python | Linux 中國
    在這個系列中,我們要用不同的程式語言編寫相同的應用,以比較各種語言是如何工作的,並說明使用標準測試程序是學習新編程好方法。  當你學習一門新的程式語言時,關注它們的共同點是件好事。變量、表達式和語句是大多數程式語言的基礎。一旦你理解了這些概念,你就可以開始弄清楚其餘的東西。
  • Linux入侵排查思路
    w 命令,查看此時此刻登陸的用戶正在做什麼1)使用history命令是可以查看當前用戶執行過的系統命令2)打開/home個帳戶目錄下的.bash_history,查看普通帳戶的歷史命令通常我們使用history命令只能查看到運行的命令,不能確定ip,運行的時間需要對/etc/profile程序進行改造升級,更好的對入侵檢測進行排查
  • linux pwn入門學習到放棄
    本文記錄菜鳥學習linux pwn入門的一些過程,詳細介紹linux上的保護機制,分析一些常見漏洞如棧溢出,堆溢出,use after free等,以及一些常見工具集合介紹等。先來學習一些關於linux方面的保護措施,作業系統提供了許多安全機制來嘗試降低或阻止緩衝區溢出攻擊帶來的安全風險,包括DEP、ASLR等。
  • Python+AI+選修課第5課:我的第二個AI程序人臉大挪移誕生記
    在csdn上發現了《Python實現AI換臉》這篇文章,因源程序省略了很多細節,在使用上也很不方便,於是在其基礎上做了完善,形成了一個能夠選擇文件進行換臉的exe文件。趁熱打鐵,本周的選修課就將第七周的內容前置了。怎麼樣,有沒有被我大挪移後的臉噁心到?
  • 3個學生的linux視頻學習筆記
    對於Windows用戶要把所有軟體裝在C盤,對於Mac用戶則默認安裝,安裝軟體時勿出現中文路徑。視頻介紹了學習linux需要用到的學習資料,包括一本書:Linux命令行與shell腳本編程大全,以及以前的學員寫的很詳細的學習經驗。
  • 為何Cortex-M處理器運行不了linux
    在多用戶、多進程的作業系統中,MMU使得各個用戶進程都有獨立的地址空間。圖2 MMU的地位任何微控制器都存在一個程序能夠產生的地址集和,被稱為虛擬地址範圍。以32為機為例,虛擬地址範圍為0~0xFFFFFFFF (4G)。當該控制器尋址一個256M的內存時,它的可用地址範圍被限定為0x00000000~0x0FFFFFFF(256M)。
  • 搭上python號小火箭,程序運行越來越快!
    但Python運行的慢是歷來被詬病的,一些人黑Python的一點是Python的程序運行速度奇慢。這一方面和語言有關,另一方面可能就是你代碼的問題。其實,無論使用哪種程式語言,特定程序的運行速度很大程度上都取決於該程序的開發人員及其編寫快而優的程序的技巧和能力。語言方面的問題我們解決不了,所以只能在編程技巧上來提高程序的運行效率。
  • Python最佳經典學習路線
    如何學習Python python語言基礎:(帶你熟悉python語言的特性,學會使用python開發環境,使用python開發一些簡單的案例) (1)Python3入門,數據類型,字符串 (2)判斷/循環語句,函數,