日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

Linux命令面试突击

發布時間:2023/12/10 linux 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Linux命令面试突击 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Linux 命令常見面試題總結。

其它面試知識點突擊整理:

序號文章
1Java基礎面試突擊
2JVM面試突擊
3設計模式面試突擊
4并發編程面試突擊
5消息隊列Kafka面試突擊
6Redis面試突擊
7計算機網絡面試突擊
8Spring面試突擊
9Dubbo面試突擊
10MyBatis面試突擊
11操作系統面試突擊
12MySQL面試突擊
13Linux命令面試突擊

文章目錄

      • 1. 說一下常用的Linux命令?
      • 2. 如何查看所有java進程
      • 3. 如何殺掉某個服務的進程
      • 4. 啟動/停止服務
      • 5. 如何查看測試項目的日志
      • 6. 如何查看某個端口是否被占用
      • 7. 查看當前所有已經使用的端口情況
      • 8. 如何查找一個文件大小超過5M的文件
      • 9. 如果知道一個文件名稱,怎么查這個文件在linux下的哪個目錄
      • 10. find查找文件
      • 11. vim(vi)編輯器
      • 12. /etc/hosts?件什么作??
      • 13. 硬鏈接和軟連接的區別?
      • 14. linux連接超時,處理方案
      • 15. 用什么命令對一個文件的內容進行統計?(行號、單詞數、字節數)
      • 16. Linux 中進程有哪幾種狀態?在 ps 顯示出來的信息中,分別用什么符號表示的?
      • 17. 哪個命令專門用來查看后臺任務?
      • 18. 使用什么命令查看磁盤使用空間? 空閑空間呢?
      • 19. du 和 df 的定義,以及區別?
      • 20. Java服務端問題排查(OOM,CPU?,Load?,類沖突)?

1. 說一下常用的Linux命令?

序號命令命令解釋
1top查看內存
2df -h查看磁盤存儲情況
3iotop查看磁盤IO讀寫
4iotop -0直接查看比較高的磁盤讀寫程序
5nestat -tunlp | grep 端口號查看端口占用情況
6uptime查看報告系統運行時常及平均負載
7ps aux查看進程
8ls【參數 -a -l】列出文件列表
9mkdir rmdir創建目錄和移除目錄
10tar -xvf (-zcvf)tail打包 (打包并壓縮)
11grep查找字符串
12pwd顯示當前所在目錄
13vim vi編輯器
14touch創建空文件
15ifconfig查看 ip 地址及接口信息
16netstat查看網絡是否連通

2. 如何查看所有java進程

grep是搜索關鍵字>ps -ef | grep java-aux 顯示所有狀態>ps -aux | grep java

3. 如何殺掉某個服務的進程

kill 命令用于終止進程-9 強迫進程立即停止>kill -9 [PID]這里pid需要用 ps -ef | grep 查詢pid

4. 啟動/停止服務

以啟動Tomcat為例,先cd到啟動的.sh文件目錄> cd /java/tomcat/bin> ./startup.sh停止Tomcat服務命令>./shutdown.sh

5. 如何查看測試項目的日志

一般測試的項目里面,有個logs的目錄文件,會存放日志文件,有個xxx.out的文件,可以用tail -f 動態實時查看后端日志先cd 到logs目錄(里面有xx.out文件)>tail -f xx.out這時屏幕上會動態實時顯示當前的日志,ctr+c停止查看最近1000行日志>tail -1000 xx.out

6. 如何查看某個端口是否被占用

>netstat -anp | grep 端口號


圖中主要看監控狀態為LISTEN表示已經被占用,最后一列顯示被服務mysqld占用,查看具體端口號,只要有如圖這一行就表示被占用了。

查看82端口的使用情況,如圖

>netstat -anp |grep 82


可以看出并沒有LISTEN那一行,所以就表示沒有被占用。此處注意,圖中顯示的LISTENING并不表示端口被占用,不要和LISTEN混淆哦,查看具體端口時候,必須要看到tcp,端口號,LISTEN那一行,才表示端口被占用了。

7. 查看當前所有已經使用的端口情況

netstat -nultp(此處不用加端口號)

8. 如何查找一個文件大小超過5M的文件

>find . -type f -size +100M

9. 如果知道一個文件名稱,怎么查這個文件在linux下的哪個目錄

如:要查找tnsnames.ora文件

>find / -name tnsnames.ora查到:/opt/app/oracle/product/10.2/network/admin/tnsnames.ora/opt/app/oracle/product/10.2/network/admin/samples/tnsnames.ora

還可以用locate 來查找

>locate tnsnames.ora結果是:/opt/app/oracle/product/10.2/hs/admin/tnsnames.ora.sample

10. find查找文件

find / -name httpd.conf  #在根目錄下查找文件httpd.conf,表示在整個硬盤查找find /etc -name httpd.conf  #在/etc目錄下文件httpd.conffind /etc -name ‘srm’  #使用通配符(0或者任意多個)。表示在/etc目錄下查找文件名中含有字符串‘srm’的文件find . -name ‘srm’   #表示當前目錄下查找文件名開頭是字符串‘srm’的文件按照文件特征查找     find / -amin -10   # 查找在系統中最后10分鐘訪問的文件(access time)find / -atime -2   # 查找在系統中最后48小時訪問的文件find / -empty   # 查找在系統中為空的文件或者文件夾find / -group cat   # 查找在系統中屬于 group為cat的文件find / -mmin -5   # 查找在系統中最后5分鐘里修改過的文件(modify time)find / -mtime -1   #查找在系統中最后24小時里修改過的文件find / -user fred   #查找在系統中屬于fred這個用戶的文件find / -size +10000c  #查找出大于10000000字節的文件(c:字節,w:雙字,k:KB,M:MB,G:GB)find / -size -1000k   #查找出小于1000KB的文件

11. vim(vi)編輯器

有命令模式、輸入模式、末行模式三種模式。

  • 命令模式:查找內容(/abc、跳轉到指定行(20gg)、跳轉到尾行(G)、跳轉到首行(gg)、刪除行(dd)、插入行(o)、復制粘貼(yy,p)
  • 輸入模式:編輯文件內容
  • 末行模式:保存退出(wq)、強制退出(q!)、顯示文件行號(set nu)

在命令模式下,輸入a或i即可切換到輸入模式,輸入冒號(:)即可切換到末行模式;在輸入模式和末行模式下,按esc鍵切換到命令模式

12. /etc/hosts?件什么作??

在當前主機給ip設置別名,通過該別名可以訪問到該ip地址,通過別名、ip訪問的效果是?樣的。

13. 硬鏈接和軟連接的區別?

硬鏈接:

  • ?件有相同的 inode 及 data block;
  • 只能對已存在的?件進?創建;
  • 不能交叉?件系統進?硬鏈接的創建;
  • 不能對?錄進?創建,只可對?件創建;
  • 刪除?個硬鏈接?件并不影響其他有相同 inode 號的?件。
  • 軟鏈接:

  • 軟鏈接有??的?件屬性及權限等;
  • 可對不存在的?件或?錄創建軟鏈接;
  • 軟鏈接可交叉?件系統;
  • 軟鏈接可對?件或?錄創建;
  • 創建軟鏈接時,鏈接計數 i_nlink 不會增加;
  • 刪除軟鏈接并不影響被指向的?件,但若被指向的原?件被刪除,則相關軟連接被稱為死鏈接(即
    danglinglink,若被指向路徑?件被重新創建,死鏈接可恢復為正常的軟鏈接)。
  • 14. linux連接超時,處理方案

  • 測試網絡是否通

    ping 遠程IP
  • 如果能ping通則表示與服務器網絡連接是正常,接下來測試端口

    telnet 遠程ip 端口
  • 如果telnet不上,要考慮服務器是否有防火墻攔截

    CentOS7查看防火墻是否運行 firewall-cmd --state CentOS6查看防火墻是否運行 /sbin/service iptables status
  • 如果防火墻被攔截,需要放行端口。如果防火墻沒有攔截,則要考慮服務內部是否配置限定IP訪問。

    MySQL、MongoDB、Redis都有bind選項,用來限定客戶端IP

  • 再檢查服務內部是否有其它權限設置,例如MySQL有遠程訪問配置,Redis有protected-mode改為no

  • 15. 用什么命令對一個文件的內容進行統計?(行號、單詞數、字節數)

    wc 命令 - c 統計字節數 - l 統計行數 - w 統計字數

    16. Linux 中進程有哪幾種狀態?在 ps 顯示出來的信息中,分別用什么符號表示的?

  • 不可中斷狀態:進程處于睡眠狀態,但是此刻進程是不可中斷的。不可中斷, 指進程不響應異步信號。
  • 暫停狀態/跟蹤狀態:向進程發送一個 SIGSTOP 信號,它就會因響應該信號 而進入 TASK_STOPPED狀態;當進程正在被跟蹤時,它處于 TASK_TRACED 這個特殊的狀態?!罢诒桓櫋敝傅氖沁M程暫停下來,等待跟蹤它的進程對它進行操作。
  • 就緒狀態:在 run_queue 隊列里的狀態
  • 運行狀態:在 run_queue 隊列里的狀態
  • 可中斷睡眠狀態:處于這個狀態的進程因為等待某某事件的發生(比如等待 socket 連接、等待信號量),而被掛起
  • zombie 狀態(僵尸):父親沒有通過 wait 系列的系統調用會順便將子進程的尸體(task_struct)也釋放掉
  • 退出狀態
  • D 不可中斷 Uninterruptible(usually IO) R 正在運行,或在隊列中的進程 S 處于休眠狀態 T 停止或被追蹤 Z 僵尸進程 W 進入內存交換(從內核 2.6 開始無效) X 死掉的進程

    17. 哪個命令專門用來查看后臺任務?

    job -l

    把后臺任務調到前臺執行使用什么命令?把停下的后臺任務在后臺執行起來用什么命令?

    把后臺任務調到前臺執行 fg把停下的后臺任務在后臺執行起來 bg

    18. 使用什么命令查看磁盤使用空間? 空閑空間呢?

    df -hl 文件系統 容量 已用 可用 已用% 掛載點 Filesystem Size Used Avail Use% Mounted on /dev/hda2 45G 19G 24G 44% / /dev/hda1 494M 19M 450M 4% /boot

    19. du 和 df 的定義,以及區別?

    • du 顯示目錄或文件的大小
    • df 顯示每個<文件>所在的文件系統的信息,默認是顯示所有文件系統。 (文件系統分配其中的一些磁盤塊用來記錄它自身的一些數據,如 i節點,磁盤分布圖,間接塊,超級塊等。這些數據對大多數用戶級的程序來說是不可見的,通常稱為 Meta Data。)
    • du命令是用戶級的程序,它不考慮 Meta Data,而 df 命令則查看文件系統的磁盤分配圖并考慮 Meta Data。
    • df 命令獲得真正的文件系統數據,而 du 命令只查看文件系統的部分情況。

    20. Java服務端問題排查(OOM,CPU?,Load?,類沖突)?

    (1)業務?志相關:

    1. less或者more 2. grep 3. tail -f filename 注意:切忌vim直接打開??志?件,因為會直接加載到內存的

    (2)數據庫相關:

    1. 登錄線上庫,show processlist查看數據庫連接情況

    (3) jvm相關:

    1. jps 顯示java進程 2. jinfo 實時查看和調整jvm參數 3. jstat 監控jvm各種運?狀態信息; 4. jstack(Stack Trace for Java)命令?于?成JVM進程當前時刻的線程的調?堆棧,可以?來定位線程間死鎖、鎖等待、等待外部資源等 5. jmap(Memory Map for Java) 命令?于?成堆轉儲快照dump?件,除了這種?式還可以通過-XX:HeapDumpOnOutOfMemoryError參數,可以在虛擬機發?OOM的時候?動?成堆的dump?件,或者kill -3命令發出進程退出信號"嚇唬"?下虛擬機,也能拿到dump?件。

    (4)oom問題:

    1. 配置了-XX:+HeapDumpOnOutOfMemoryError, 在發?OOM的時候會在-XX:HeapDumpPath?成堆的dump?件,結合MAT,可以對dump?件進?分析,查找出發?OOM的原因。 2. 另外?動dump堆快照,可以使?命令jmap -dump:format=b,file=file_name pid 或者kill -3 pid

    (5)死鎖:

    1. jps -v 2. jstack -l pid

    (6) 線程block、線程數暴漲:

    1. jstack -l pid |wc -l 2. jstack -l pid |grep “BLOCKED”|wc -l 3. jstack -l pid |grep “Waiting on condition”|wc -l 線程block問題?般是等待io、等待?絡、等待監視器鎖等造成,可能會導致請求超時、造成造成線程數暴漲導致系統502等。

    (7) 服務器問題:

    1)CPU

    top

    2)內存

    free -m -c10 -s1: a. -m:以MB為單位顯示,其他的有-k -g -b b. -s: 間隔多少秒持續觀察內存使?狀況 c. -c:觀察多少次

    vmstat 1 10:1表示每隔1s輸出?次,10 表示輸出10次 a. r: 運?隊列中進程數量,這個值也可以判斷是否需要增加CPU。(?期?于1) b. b: 等待IO的進程數量。

    iostat -m 1 10: -m:某些使?block為單位的列強制使?MB為單位 1 10:數據顯示每隔1秒刷新?次,共顯示10次


    3)網絡

    netstat -antp: -a (all)顯示所有選項,默認不顯示LISTEN相關 -t (tcp)僅顯示tcp相關選項 -u (udp)僅顯示udp相關選項 -n 拒絕顯示別名,能顯示數字的全部轉化成數字。 -l 僅列出有在 Listen (監聽) 的服服務狀態 -p 顯示建?相關鏈接的程序名

    (8)排查工具

    Java常?問題排查?具及?法(top,iostat,vmstat,sar,tcpdump,jvisualvm,jmap,jconsole)

    具體參考:Java自帶的性能監測工具用法簡介——jstack、jconsole、jinfo、jmap、jdb、jsta、jvisualvm

    參考

    Java面試常問linux命令

    Java linux面試題及答案

    Linux命令常見面試題

    Java面試題 -Linux命令

    總結

    以上是生活随笔為你收集整理的Linux命令面试突击的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。