13-Linux高級(jí)

一、常用命令補(bǔ)充

  • 文件查看
例如:
  $ ls -l  // 查看文件信息
簡(jiǎn)寫(xiě):
  $ ll
  • 文件實(shí)時(shí)查看
例如: 
  $ tail -f hello.c  
  • 刪除操作
  語(yǔ)法:
    $ rm -rfi   // -r追層刪除  -f強(qiáng)制刪除  -i用戶(hù)交互刪除,詢(xún)問(wèn)是否刪除
  • 權(quán)限添加
u(user): 當(dāng)前用戶(hù)
a(all): 所有用戶(hù)
g(group):同組用戶(hù)
o(other): 其他用戶(hù)

例如: 
   $ chmod g+w hello.c    // 給文件中同組用戶(hù)添加一個(gè)可讀權(quán)限  
   $ chmod go+w file2.txt 
   $ chmod ugo+w file2.txt
  • ssh通道
    SSH 為 Secure Shel的縮寫(xiě),SSH 是目前較可靠,專(zhuān)為遠(yuǎn)程登錄會(huì)話和其他網(wǎng)絡(luò)服務(wù)提供安全性的協(xié)議。
語(yǔ)法:
  ssh 用戶(hù)名@IP地址
例如:
  $ ssh zhangsan@192.168.1.133
備注:
  連接服務(wù)器可以借助xShell、putty等工具,也可以通過(guò)ssh方式。
  • date查看系統(tǒng)時(shí)間
  $ date  // 查看系統(tǒng)時(shí)間
  $ date -s "2018-01-01 00:00:00"  // 修改系統(tǒng)時(shí)間
  • 查看系統(tǒng)信息
  $ cat /etc/issue    // 查看系統(tǒng)版本
  $ file /sbin/init      // 查看系統(tǒng)位數(shù)
  • 查看歷史命令
  $ history  // 終端輸入的歷史命令
  • 查看進(jìn)程
  語(yǔ)法:
    ps -ef 
  例如:
    $ ps -ef
    $ ps -ef | grep mysql  // 查看MySQL進(jìn)程是否起來(lái)
備注:
    UID    // 用戶(hù)名 
    PID    // 進(jìn)程的ID 
    PPID   // 父進(jìn)程ID 
    C      // 進(jìn)程占用CPU的百分比 
    STIME  // 進(jìn)程啟動(dòng)到現(xiàn)在的時(shí)間 
    TTY    // 該進(jìn)程在那個(gè)終端上運(yùn)行,若與終端無(wú)關(guān),則顯示?
    CMD    //命令的名稱(chēng)和參數(shù)

  • 進(jìn)程管理
語(yǔ)法:
  pkill 服務(wù)名
  kill 進(jìn)程號(hào)
  kill -9 進(jìn)程號(hào) // 強(qiáng)制殺死進(jìn)程
例如:
  $ pkill 服務(wù)名  // 殺死對(duì)應(yīng)服務(wù)名的所有進(jìn)程
  • 磁盤(pán)空間
  $ df   // 磁盤(pán)空間大小
  $ df   -hl  // 磁盤(pán)空間大小
  • 內(nèi)存占用
  $ free
  • 用戶(hù)登錄信息
  $ who
  • 查看網(wǎng)絡(luò)狀態(tài)信息
  $ netstat -anp  
  $ netstat -anp | grep 3333  // 查看端口被哪個(gè)服務(wù)占用
  • 重啟網(wǎng)絡(luò)
  $ service network restart
  • 系統(tǒng)相關(guān)
  $ reboot  // 重啟系統(tǒng)
  $ shutdown   // 關(guān)閉系統(tǒng)
  • zip打包解包
打包語(yǔ)法:
    zip -r xxx.zip  文件1 文件2...
例如:
    $ zip -r source.zip a.txt b.txt  // 將多個(gè)文件打包
    $ zip -r source.zip .   // 將當(dāng)前路徑下文件打包
    $ zip -r source.zip Test/  // 將Test目錄打包

解包語(yǔ)法:
  unzip xxx.zip
  unzip 包名 -d 目錄  // 解壓zip包到指定目錄
例如: 
   unzip source.zip
   unzip source.zip -d aaa/
  • gzip壓縮解壓
壓縮語(yǔ)法:
  gzip  需要打包的文件  // 把文件進(jìn)行壓縮,原來(lái)的文件則沒(méi)有了,解壓縮也一樣 
例如:
  $ gzip test.txt     //  test.txt.gz
  $ gzip test.zip    // test.zip.gz
  $ gzip 

解壓語(yǔ)法:
  gunzip xxx.gz
例如:  
  $ gunzip 01-test.c.gz

備注: 
  只能壓縮文件,不能壓縮目錄
  • tar壓縮解壓
打包語(yǔ)法:
  tar -cvf xxx.tar 文件1 文件2...
例如:
  $ tar -cvf source.tar a.txt b.txt

解包語(yǔ)法:
  tar -xvf 包名
  tar -xvf 包名 -C 目錄   // 指定目錄
例如:
  $ tar -xvf source.tar

打包并壓縮語(yǔ)法:
  tar -zcvf xxx.tar.gz 文件1 文件2...    // 打包并壓縮
例如:
  $ tar -zcvf source.tar.gz a.txt b.txt

解壓語(yǔ)法:
   tar -zxvf xxx.tar.gz
   tar -zxvf 包名 -C 目錄   // 指定目錄
例如:
  tar -zxvf source.tar.gz

備注打包:
  -c 產(chǎn)生.tar打包文件,在使用tar打包目錄的時(shí)候,-c是必要的選項(xiàng),表示create創(chuàng)建一個(gè)打包文件
  -v 顯示詳細(xì)信息,可選項(xiàng),是在命令執(zhí)行的時(shí)候,顯示命令執(zhí)行的過(guò)程
  -f 指定壓縮后的文件名,必選項(xiàng),該選項(xiàng)必須放在所有選項(xiàng)的后面,后面跟住新的文件名
  -z 打包同時(shí)壓縮
備注解包: 
  -x 解包.tar文件
  -v 顯示詳細(xì)信息
  -f 指定解壓文件
  -z 解壓縮
  • 創(chuàng)建用戶(hù)
語(yǔ)法:
  useradd 用戶(hù)名
例如:
  $ useradd zhangsan
  • 刪除用戶(hù)
語(yǔ)法:
  userdel 用戶(hù)名
例如:
  $ userdel zhangsan
備注:
  如果提示`userdel: user zhangsan is currently logged in`,就強(qiáng)制刪除`userdel -r -f  zhangsan`
  • 修改用戶(hù)密碼
語(yǔ)法:
  passwd 用戶(hù)名
例如:
  $ passwd zhangsan    // 輸入兩次密碼
  • 查看所屬
語(yǔ)法:  
  groups 用戶(hù)名
例如:
  $groups zhangsan
  • 創(chuàng)建用戶(hù)組
語(yǔ)法:
  groupadd 組名
例如:
  $ groupadd cxy
  • 刪除用戶(hù)組
語(yǔ)法:
  groupdel 組名
例如:
  $ groupdel cxy
  • 添加到組
語(yǔ)法:
  gpasswd -a 用戶(hù)名 組名
例如:
  $ gpasswd -a zhangsan cxy
  • 從組中刪除
語(yǔ)法:
  gpasswd -d 用戶(hù)名 組名
例如:
  $ gpasswd -d zhangsan cxy
  • 修改文件所屬者所屬組
語(yǔ)法:
  chown -R 用戶(hù)名:組名 文件名
例如:
  chown -R atom:atom lisi/

cat /etc/group文件包含所有組
cat /etc/shadow和cat /etc/passwd系統(tǒng)存在的所有用戶(hù)名

  • 文件傳輸
語(yǔ)法:
  scp 用戶(hù)名@遠(yuǎn)程服務(wù)器的IP:/文件路徑  想要存放的路徑

Windows與Linux中,文件傳輸可以使用xftp。

二、Linux其他

  • 磁盤(pán)分區(qū)
    在Windows操作系統(tǒng)中,是先將物理地址分開(kāi),再在分區(qū)上建立目錄.在Windows操作系統(tǒng)中,所有路徑都是從盤(pán)符開(kāi)始,如C://program file。
    Linux正好相反,是先有目錄,再將物理地址映射到目錄中。在Linux操作系統(tǒng)中,所有路徑都是從根目錄開(kāi)始。Linux默認(rèn)可分為3個(gè)分區(qū),分別是boot分區(qū)、swap分區(qū)和根分區(qū)。
    無(wú)論是Windows操作系統(tǒng),還是Linux操作系統(tǒng),每個(gè)分區(qū)均可以有不同的文件系統(tǒng),如FAT32、NTFS、Yaffs2等。

boot分區(qū): 該分區(qū)對(duì)應(yīng)于/boot目錄,存放Linux的bootloader和內(nèi)核源碼,用戶(hù)對(duì)/boot目錄的操作就是操作該分區(qū);
swap分區(qū): Linux下的虛擬內(nèi)存.虛擬內(nèi)存用于當(dāng)系統(tǒng)內(nèi)存空間不足時(shí),先將臨時(shí)數(shù)據(jù)存放在swap分區(qū),等待一段時(shí)間后,然后再將數(shù)據(jù)調(diào)入到內(nèi)存中執(zhí)行.所以說(shuō),虛擬內(nèi)存只是暫時(shí)存放數(shù)據(jù),在該空間內(nèi)并沒(méi)有執(zhí)行(大小為物理內(nèi)存的2倍);
根分區(qū): 在Linux操作系統(tǒng)中,除/boot目錄外的其它所有目錄都對(duì)應(yīng)于該分區(qū).因此,用戶(hù)可通過(guò)訪問(wèn)除/boot目錄外的其它所有目錄來(lái)訪問(wèn)該分區(qū);
備注: 在創(chuàng)建Linux分區(qū)時(shí),一定要?jiǎng)?chuàng)建SWAP/根分區(qū)!

  • 文件系統(tǒng)
    文件系統(tǒng),即在存儲(chǔ)設(shè)備上組織文件的方法;
    Windows: FAT16、FAT32、NTFS
    Linux: EXT2、EXT3、VFAT

三、Linux測(cè)試環(huán)境搭建

yum( Yellow dog Updater, Modified)是一個(gè)在Fedora和RedHat以及SUSE中的Shell前端軟件包管理器。
基於RPM包管理,能夠從指定的服務(wù)器自動(dòng)下載RPM包并且安裝,可以自動(dòng)處理依賴(lài)性關(guān)系,并且一次安裝所有依賴(lài)的軟體包,無(wú)須繁瑣地一次次下載、安裝。
yum提供了查找、安裝、刪除某一個(gè)、一組甚至全部軟件包的命令,而且命令簡(jiǎn)潔而又好記。

在centos上安裝為yum install XXX,相對(duì)卸載即為yum remove XXX。

  • LAMP環(huán)境
  L: Linux
  A: Apache
  M: MySql
  P: PHP
  • Apache
安裝:
  $ yum install httpd  // 安裝時(shí)會(huì)詢(xún)問(wèn)是否下載或安裝,輸入y,回車(chē):Is this ok [y/N]:y

配置,讓 Apache 隨系統(tǒng)啟動(dòng):
  $ chkconfig --level 235 httpd on

啟動(dòng):
  $ /etc/init.d/httpd start    或動(dòng)    $ service httpd start

測(cè)試: 
  瀏覽器,輸入對(duì)應(yīng)IP地址
Apache安裝完成

在 CentOS 中 Apache 的默認(rèn)根目錄是 /var/www/html即可以將網(wǎng)站放置位置,而配置文件 /etc/httpd/conf/httpd.conf;
其他配置存儲(chǔ)在 /etc/httpd/conf.d/ 目錄;

關(guān)閉防火墻(訪問(wèn)不了時(shí)):
$ service iptables stop // 停止
$ chkconfig iptables off // 禁用

chkconfig命令用來(lái)更新、查詢(xún)、修改不同運(yùn)行級(jí)上的系統(tǒng)服務(wù),這個(gè)命令就相當(dāng)于一個(gè)開(kāi)關(guān),不過(guò)這個(gè)開(kāi)關(guān)有[0-6]共7個(gè)檔
【需要開(kāi)機(jī)自動(dòng)啟動(dòng)時(shí)涉及到】
0 - 停機(jī)
1 - 單用戶(hù)模式 
2 - 多用戶(hù),沒(méi)有NFS 
3 - 完全多用戶(hù)模式(標(biāo)準(zhǔn)的運(yùn)行級(jí)) 
4 - 沒(méi)有用到 
5 - X11(xwindow) 
6 - 重新啟動(dòng) 

表示在不同級(jí)別下的運(yùn)行狀態(tài)是on還是off。所以千萬(wàn)不用講運(yùn)行級(jí)別設(shè)置為0,6;最常用的就是2,3,5;
語(yǔ)法: chkconfig --level 服務(wù)名 <on|off|reset>    // 級(jí)別設(shè)置
例如: chkconfig --level 235 httpd on

語(yǔ)法: chkconfig --list   // 服務(wù)列表
例如: chkconfig --list | grep httpd    // 結(jié)合grep命令快速查看對(duì)應(yīng)服務(wù)
  • MySql
安裝:
  $ yum install mysql mysql-server  // 安裝時(shí)會(huì)詢(xún)問(wèn)是否下載或安裝,輸入y,回車(chē):Is this ok [y/N]:y

配置,隨系統(tǒng)自動(dòng)啟動(dòng):
  $ chkconfig --list | grep mysqld    // 檢查是否為開(kāi)機(jī)啟動(dòng)
  $ chkconfig --level 235 mysqld on   // 開(kāi)啟,開(kāi)機(jī)啟動(dòng)

啟動(dòng)數(shù)據(jù)庫(kù):
  $ service mysqld start    或    $ /etc/init.d/mysqld start

設(shè)置數(shù)據(jù)庫(kù)密碼:
  $ mysql_secure_installation   
     Enter current password for root (enter for none):    // 按回車(chē)
     Set root password? [Y/n]  // 回車(chē)(默認(rèn)Y)
     New password:   // 輸入密碼(后續(xù)再次輸入密碼確認(rèn))
     Remove anonymous users? [Y/n]  // 回車(chē)
     Disallow root login remotely? [Y/n]  // 回車(chē)
     Remove test database and access to it? [Y/n]  // 回車(chē)
     Reload privilege tables now? [Y/n]  // 回車(chē)

建立遠(yuǎn)程連接用戶(hù):
  $  mysql –uroot –p123456  // 連接數(shù)據(jù)庫(kù),-u用戶(hù)名 -p密碼
  mysql> use mysql;
  mysql> select * from user;
  // 第一個(gè)admin表示用戶(hù)名,%表示所有的電腦都可以連接,也可以設(shè)置某個(gè)ip地址運(yùn)行連接,第二個(gè)admin123表示密碼
  mysql> GRANT ALL PRIVILEGES ON *.* TO 'admin'@'%' IDENTIFIED BY 'admin123' WITH GRANT OPTION;    
  mysql> select * from user;  // 查看遠(yuǎn)程連接用戶(hù)admin是否新增成功,若存在則成功
  mysql> exit;    // 退出  

通過(guò)Navicat連接數(shù)據(jù)庫(kù),測(cè)試遠(yuǎn)程用戶(hù)是否創(chuàng)建成功(遠(yuǎn)程連接用戶(hù)和密碼);

查看啟動(dòng)狀態(tài):
$ service mysqld status
啟動(dòng)、關(guān)閉、重啟
$ service mysqld stop/start/restart

  • PHP
安裝:
  $ yum install php   // 安裝時(shí)會(huì)詢(xún)問(wèn)是否下載或安裝,輸入y,回車(chē):Is this ok [y/N]:y

重啟Apache服務(wù):
  $ /etc/init.d/httpd restart

安裝PHP擴(kuò)展:
  $ yum install php-mbstring   // 安裝時(shí)會(huì)詢(xún)問(wèn)是否下載或安裝,輸入y,回車(chē):Is this ok [y/N]:y

測(cè)試是否安裝成功:
在/var/www/html中添加info.php文件,文件內(nèi)容如下:
<?php
phpinfo();
?>
瀏覽器中輸入: IP/info.php

  • PHP模塊和MySql模塊關(guān)聯(lián)起來(lái)
搜索模塊:
  $ yum search php 

安裝相關(guān)模塊:
  $ yum install php-mysql php-gd php-imap php-ldap php-odbc php-pear php-xml php-xmlrpc

重啟Apache:
  $ /etc/init.d/httpd restart

瀏覽器中輸入(找到相關(guān) MySQL 模塊,看是否檢測(cè)到相關(guān)信息):
  IP/info.php

四、LNMP(LAMP)一鍵安裝

$ wget -c http://soft.vpser.net/lnmp/lnmp1.4.tar.gz && tar zxf lnmp1.4.tar.gz && cd lnmp1.4 && ./install.sh lnmp

// 默認(rèn)安裝lnmp可不寫(xiě),如需要安裝LNMPA或LAMP,將./install.sh 后面的參數(shù)替換為lnmpa或lamp即可

備注: 如提示wget: command not found ,使用yum install wget 或 apt-get install wget 命令安裝

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容