PHP工作中常用的Linux命令

一漠秋,基本命令:

1笙蒙,查看命令幫助文檔
#man 命令英文原意:manual
man kill       : 查看kill命令的文檔

二,查看服務(wù)器運行情況

1庆锦,進程
#查看指定進程格式
ps -ef | grep php
UID       PID       PPID      C     STIME    TTY       TIME         CMD
root     17285     1          0     7月08     ?       00:00:33 php-fpm: master process (/usr/local/php/etc/php-fpm.conf)
www      17286 17285          0     7月08     ?       00:00:00 php-fpm: pool www
www      17287 17285          0     7月08     ?       00:00:00 php-fpm: pool www

#顯示所有包含其他使用者的行程 
#a-顯示所有用戶的進程    u-顯示進程的用戶和擁有者    x-顯示不依附于終端的進程
ps -aux 

#殺死一個進程:
# -s 9   -s 指定發(fā)送的信號   捅位,這個信號是 9 ,9代表:發(fā)出殺死信號   
kill -s 9 4328           :強制殺死進程號為4328的進程

#如果有多個進程肥荔,通過進程名稱殺死進程:
killall -s 9 php-fpm     :殺死所有php-fpm進程

#展示進程與進程之間的關(guān)系
pstree -apnh 17283    :只展示進程號和名稱:pstree -p 17283   如下:

mysqld_safe(17283)───mysqld(17828)─┬─{mysqld}(17829)
                                   ├─{mysqld}(17830)
                                   ├─{mysqld}(17831)
                                   ├─{mysqld}(17832)

#展示進程的先后調(diào)起:
ps aft | grep mysql
2绿渣,端口

1,lsof(list open files)是一個列出當前系統(tǒng)打開文件的工具燕耿。

#查看服務(wù)器 8000 端口的占用情況:
lsof -i:80
COMMAND     PID USER   FD   TYPE  DEVICE SIZE/OFF NODE NAME
nginx     17272 root    8u  IPv4 8417681      0t0  TCP *:http (LISTEN)
nginx     17272 root    9u  IPv4 8417682      0t0  TCP *:http (LISTEN)

#更多命令:
lsof -i:8080:查看8080端口占用
lsof abc.txt:顯示開啟文件abc.txt的進程
lsof -c abc:顯示abc進程現(xiàn)在打開的文件
lsof -c -p 1234:列出進程號為1234的進程所打開的文件

2中符,netstat 命令用于顯示網(wǎng)絡(luò)狀態(tài)。查看監(jiān)聽某個端口的進程 https://www.runoob.com/linux/linux-comm-netstat.html

# -a或--all 顯示所有連線中的Socket誉帅。
# -n或--numeric 直接使用IP地址淀散,而不通過域名服務(wù)器右莱。
# -p或--programs 顯示正在使用Socket的程序識別碼和程序名稱。
netstat -anp | grep 9501  
3档插,內(nèi)存慢蜓,CUP,硬盤

1郭膛,free命令晨抡,查看系統(tǒng)內(nèi)存,可以man free查看具體參數(shù)與返回值

free
free -h  #人性化表示數(shù)值
free -g  # 以g為單位返回

2则剃,df 查看硬盤容量耘柱,du顯示目錄或文件的大小

df -hl
df -hl 查看磁盤剩余空間
df -h 查看每個根路徑的分區(qū)大小
du -sh [目錄名] 返回該目錄的大小
du -sm [文件夾] 返回該文件夾總M數(shù)
du -h [目錄名] 查看指定文件夾下的所有文件大小(包含子文件夾)

3棍现,top命令

top - 00:49:23 up 18 days,  7:10,  1 user,  load average: 0.00, 0.01, 0.05
Tasks:  92 total,   1 running,  91 sleeping,   0 stopped,   0 zombie
%Cpu(s):  0.3 us,  0.2 sy,  0.0 ni, 99.5 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
KiB Mem :  1777920 total,   100120 free,   515312 used,  1162488 buff/cache
KiB Swap:  2076668 total,  2027028 free,    49640 used.  1034620 avail Mem

 PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND
20618 root      20   0  157576   2168   1548 R   0.3  0.1   0:00.65 top
   1 root      20   0  125180   2900   1780 S   0.0  0.2   0:08.78 systemd

內(nèi)容解析:

  1. 第一行: 00:49:23 系統(tǒng)時刻 调煎; up 18days 系統(tǒng)啟動后到現(xiàn)在的時間 ; 1user 當前登陸的用戶數(shù)己肮; load average 當前系統(tǒng)負載的平均值士袄,后面的三個值分別為1分鐘前、5分鐘前谎僻、15分鐘前進程的平均數(shù)娄柳,一般的可以認為這個數(shù)值超過 CPU 數(shù)目時,CPU 將比較吃力的負載當前系統(tǒng)所包含的進程
  2. 第二行:Tasks:92 total 當前系統(tǒng)進程總數(shù)戈稿;1 running 當前運行中的進程數(shù)西土;91 sleeping 當前處于等待狀態(tài)中的進程數(shù);0 stoped 被停止的系統(tǒng)進程數(shù)鞍盗;0 zombie 僵尸進程數(shù)
  3. 第三行:CPU:0.3% us 用戶空間占用CPU百分比需了;0.2% sy 內(nèi)核空間占用CPU百分比;0.0% ni 用戶進程空間內(nèi)改變過優(yōu)先級的進程占用CPU百分比般甲;99.5% id 空閑CPU百分比肋乍;0.0% wa 等待輸入輸出的CPU時間百分比;0.0% hi敷存;0.0% si墓造;0.0% st
  4. 第四行(Mem):total 物理內(nèi)存總量;used 使用的物理內(nèi)存總量锚烦;free 空閑內(nèi)存總量觅闽; buffers 用作內(nèi)核緩存的內(nèi)存量
  5. 第五行(Swap):表示類別同第四行(Mem),但此處反映著交換分區(qū)(Swap)的使用情況涮俄。通常蛉拙,交換分區(qū)(Swap)被頻繁使用的情況,將被視作物理內(nèi)存不足而造成的彻亲。
    total 交換區(qū)總量孕锄;used 使用的交換區(qū)總量吮廉;free 空閑交換區(qū)總量;cached 緩沖的交換區(qū)總量
  6. 最下部分的進程列表欄:以 PID 區(qū)分的進程列表將根據(jù)所設(shè)定的畫面更新時間定期的更新畸肆。通過 top 內(nèi)部命令可以控制此處的顯示方式:
      PID:進程的ID
      USER:進程所有者
      PR:進程的優(yōu)先級別宦芦,越小越優(yōu)先被執(zhí)行
      NInice:值
      VIRT:進程占用的虛擬內(nèi)存
      RES:進程占用的物理內(nèi)存
      SHR:進程使用的共享內(nèi)存
      S:進程的狀態(tài)。S表示休眠轴脐,R表示正在運行调卑,Z表示僵死狀態(tài),N表示該進程優(yōu)先值為負數(shù)
      %CPU:進程占用CPU的使用率
      %MEM:進程使用的物理內(nèi)存和總內(nèi)存的百分比
      TIME+:該進程啟動后占用的總的CPU時間大咱,即占用CPU使用時間的累加值令野。
      COMMAND:進程啟動命令名稱
  7. top 運行中可以通過 top 的內(nèi)部命令對進程的顯示方式進行控制。內(nèi)部命令如下表:
    s- 改變畫面更新頻率
    l - 關(guān)閉或開啟第一部分第一行 top 信息的表示
    t - 關(guān)閉或開啟第一部分第二行 Tasks 和第三行 Cpus 信息的表示
    m - 關(guān)閉或開啟第一部分第四行 Mem 和 第五行 Swap 信息的表示
    N - 以 PID 的大小的順序排列表示進程列表(第三部分后述)
    P - 以 CPU 占用率大小的順序排列進程列表 (第三部分后述)
    M - 以內(nèi)存占用率大小的順序排列進程列表 (第三部分后述)
    h - 顯示幫助
    n - 設(shè)置在進程列表所顯示進程的數(shù)量
    q - 退出 top

三徽级,網(wǎng)絡(luò)

1,查看IP地址

ifconfig 或者 ip addr: 查看IP 聊浅。 虛擬機查看IP地址失敗時:https://www.cnblogs.com/technology-huangyan/p/9146699.html

2餐抢,telnet簡單使用

我們訪問服務(wù)器的某個端口,訪問不了低匙,可以在服務(wù)器上使用telnet來判斷能否進行訪問旷痕。如果服務(wù)器的telnet能訪問,則排除是服務(wù)進程掛了的可能性顽冶;而應(yīng)該考慮是防火墻欺抗,阿里云控制臺的端口開放與否等原因。并進行排查强重。

yum install telnet       : 安裝telnet
telnet 127.0.0.1 80      :測試本地80端口是否開放
telnet 120.79.5.254 22    :測試遠程服務(wù)器的22端口是否能鏈接  Connected to 120.79.5.254.表示成功绞呈。
3,ping :執(zhí)行 ping 指令會使用 ICMP 傳輸協(xié)議间景,發(fā)出要求回應(yīng)的信息佃声,若遠端主機的網(wǎng)絡(luò)功能沒有問題,就會回應(yīng)該信息倘要,因而得知該主機運作正常圾亏。
ping www.baidu.com
4,F(xiàn)irewalls防火墻
centos默認已經(jīng)下載Firewalls封拧,如果沒有志鹃,安裝:yum install -y firewalld        yum install -y firewall-config 
1,查看狀態(tài): systemctl status firewalld      查看已經(jīng)開放的端口:firewall-cmd --list-ports
2泽西,開啟Firewalls: systemctl start firewalld        開機啟動:systemctl enable firewalld       
3曹铃,關(guān)閉Firewalls: systemctl stop firewalld        取消開機啟動:systemctl disable firewalld   
4,重啟:systemctl restart firewalld
5尝苇,添加端口:firewall-cmd --permanent --zone=public --add-port=21/tcp
firewall-cmd --permanent --zone=public --add-port=80/tcp
firewall-cmd --permanent --zone=public --add-port=3306/tcp
firewall-cmd --permanent --zone=public --add-service=ftp

四铛只,管理服務(wù)與常用軟件(本章前提:由lnmp安裝的nginx+mysql+php環(huán)境)

1埠胖,管理服務(wù)

1,service命令用于對系統(tǒng)服務(wù)進行管理淳玩。service命令本身是一個shell腳本直撤,它在/etc/init.d/目錄查找指定的服務(wù)腳本,然后調(diào)用該服務(wù)腳本來完成任務(wù)蜕着。

chkconfig --list          :查看系統(tǒng)服務(wù)列表谋竖,以及每個服務(wù)的運行級別。
chkconfig <service> on    :設(shè)置指定服務(wù)<service>開機時自動啟動承匣。
chkconfig <service> off   :設(shè)置指定服務(wù)<service>開機時不自動啟動蓖乘。

man service               :查看service文檔
service php-fpm start     :開啟php-fpm服務(wù)
service php-fpm stop      :停止php-fpm服務(wù)
service php-fpm reload    :重新加載配置文件
service php-fpm restart   :重啟php-fpm服務(wù)
service php-fpm status    :查看服務(wù)狀態(tài)

nginx與mysql服務(wù)器同理

2,systemctl命令 http://www.ruanyifeng.com/blog/2016/03/systemd-tutorial-commands.html

systemctl status    :查看系統(tǒng)狀態(tài)和單個 Unit 的狀態(tài)韧骗。
systemctl start php-fpm 開啟php-fpm服務(wù)
systemctl stop php-fpm
systemctl status php-fpm
systemctl restart php-fpm
systemctl reload php-fpm

2嘉抒,lnmp 相關(guān)操作
lnmp status
lnmp start
lnmp stop
lnmp reload
lnmp restart
3,php袍暴,MySql些侍,Nginx,Redis文件位置
#php配置文件:1政模,find / -name php.ini   2岗宣,打開phpinfo()看一看,3淋样,php --ini
一般在: /usr/local/php/etc/php.ini

#php-fpm配置文件:
一般在:/usr/local/php/etc/php-fpm.conf

#mysql配置文件:https://zhuanlan.zhihu.com/p/52862020
一般在:/etc/my.cnf

#nginx配置文件:find / -name nginx.conf
/usr/local/nginx/conf

#redis安裝與配置:https://www.cnblogs.com/heqiuyong/p/10463334.html
1耗式,設(shè)置了軟鏈:ln -s /usr/local/redis/bin/redis-cli /usr/bin/redis   所有直接:redis  就打開了redis客戶端
2,啟動redis:/usr/local/redis/bin/redis-server /usr/local/redis/bin/redis.conf

五趁猴,后臺運行腳本

1刊咳,當我們想后臺執(zhí)行一個PHP腳本,并且收集它輸出的信息躲叼,以便我們?nèi)ゲ榭绰帧N覀兛梢酝ㄟ^ nohup 配合 & 一起使用。把信息打印到當前工作目錄的nohup.out文件枫慷。

nohup php /data/test_nohup.php 2>&1 &
nohup php /data/test_nohup.php >> /home/test.log 2>&1 &

其中: 2>&1的意思是將標準錯誤(2)也定向到標準輸出(1)的輸出文件中让蕾。
Linux 中三種標準輸入輸出,分別是STDIN或听,STDOUT探孝,STDERR,對應(yīng)的數(shù)字是0誉裆,1顿颅,2。

2足丢,如果我們想查看實時更新的信息粱腻,可以使用tail -n 20 -f ./nohup.out 來進行查看庇配。

六,結(jié)語

本文主要是自己的一些總結(jié)绍些,對Linux的理解還是比較淺的捞慌,但好記性不如爛筆頭,何況自己的記性比較差柬批,所以就記錄下來啸澡。其他的一些常用的Linux命令會寫在另一篇文章中,下期更新氮帐。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末嗅虏,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子上沐,更是在濱河造成了極大的恐慌皮服,老刑警劉巖,帶你破解...
    沈念sama閱讀 212,080評論 6 493
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件参咙,死亡現(xiàn)場離奇詭異冰更,居然都是意外死亡,警方通過查閱死者的電腦和手機昂勒,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,422評論 3 385
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來舟铜,“玉大人戈盈,你說我怎么就攤上這事∽慌伲” “怎么了塘娶?”我有些...
    開封第一講書人閱讀 157,630評論 0 348
  • 文/不壞的土叔 我叫張陵,是天一觀的道長痊夭。 經(jīng)常有香客問我刁岸,道長,這世上最難降的妖魔是什么她我? 我笑而不...
    開封第一講書人閱讀 56,554評論 1 284
  • 正文 為了忘掉前任虹曙,我火速辦了婚禮,結(jié)果婚禮上番舆,老公的妹妹穿的比我還像新娘酝碳。我一直安慰自己,他們只是感情好恨狈,可當我...
    茶點故事閱讀 65,662評論 6 386
  • 文/花漫 我一把揭開白布疏哗。 她就那樣靜靜地躺著,像睡著了一般禾怠。 火紅的嫁衣襯著肌膚如雪返奉。 梳的紋絲不亂的頭發(fā)上贝搁,一...
    開封第一講書人閱讀 49,856評論 1 290
  • 那天,我揣著相機與錄音芽偏,去河邊找鬼雷逆。 笑死,一個胖子當著我的面吹牛哮针,可吹牛的內(nèi)容都是我干的关面。 我是一名探鬼主播,決...
    沈念sama閱讀 39,014評論 3 408
  • 文/蒼蘭香墨 我猛地睜開眼十厢,長吁一口氣:“原來是場噩夢啊……” “哼等太!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起蛮放,我...
    開封第一講書人閱讀 37,752評論 0 268
  • 序言:老撾萬榮一對情侶失蹤缩抡,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后包颁,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體瞻想,經(jīng)...
    沈念sama閱讀 44,212評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,541評論 2 327
  • 正文 我和宋清朗相戀三年娩嚼,在試婚紗的時候發(fā)現(xiàn)自己被綠了蘑险。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 38,687評論 1 341
  • 序言:一個原本活蹦亂跳的男人離奇死亡岳悟,死狀恐怖佃迄,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情贵少,我是刑警寧澤呵俏,帶...
    沈念sama閱讀 34,347評論 4 331
  • 正文 年R本政府宣布,位于F島的核電站滔灶,受9級特大地震影響普碎,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜录平,卻給世界環(huán)境...
    茶點故事閱讀 39,973評論 3 315
  • 文/蒙蒙 一麻车、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧斗这,春花似錦绪氛、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,777評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春序目,著一層夾襖步出監(jiān)牢的瞬間臂痕,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,006評論 1 266
  • 我被黑心中介騙來泰國打工猿涨, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留握童,地道東北人。 一個月前我還...
    沈念sama閱讀 46,406評論 2 360
  • 正文 我出身青樓叛赚,卻偏偏與公主長得像澡绩,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子俺附,可洞房花燭夜當晚...
    茶點故事閱讀 43,576評論 2 349

推薦閱讀更多精彩內(nèi)容