- 一、查找命令
- 二、打開相應文件
- 三、查看系統資源占用
- 四、Ubantu解壓文件
- 五、虛擬機ubuntu server 14.0 根目錄擴容
- 七、ubuntu 關機,重啟,注銷命令
- 八、 總結:監聽進程的端口號過程
- 九、使用ubuntu分析磁盤使用情況
- 十、遠程拷貝命令scp
- 十一、如何啟動、關閉和設置ubuntu防火牆
- 十二、linux下使用convert命令修改圖片分辨率
- 十三、ubuntu下安裝Google瀏覽器
- 十四、linux指令add-apt-repository ppa:xxx/ppa
- 十五、將ubuntu下的.deb包轉變為centos下的.rpm包(centos操作系統下處理)
- 十六、掛載硬盤
- 十七、內存同步命令sync
- 十八、檢測系統命令vrim
- 十九、設置屏幕顯示(主屏、副屏、擴展屏)
- 二十、ubuntu增加swap交換空間
- 二十一、pdf操作軟件pdftk
- 二十二、進程查找ps
- 二十三、查看系統版本
- 二十四、查看Linux硬盤是ssd還是hdd
- 二十五、Linux下查看nvidia的GPU使用情況和內存使用情況
- 二十六、Linux查看物理CPU個數、核數、邏輯CPU個數
一、查找命令
1、whereis
whereis命令用來查找命令的位置,包括執行文件、源代碼和手冊頁文件。記住:此處為查找位置,相對用的更多。
2、locate
可以跟-c 統計查找到的文件數量
3、find命令
find pathname -options [-print -exec -ok]
例如:find ./ notepadqq
為查找當前目錄下文件名為notepadqq的文件。
二、打開相應文件
1、打開pdf文件
(1)無需安裝,ubuntu系統自帶evince,命令為:
$ evince [name_pdf]
(2)安裝FoxitReader軟件
在官網下載FoxitReader,然后到下載目錄使用下列命令:
$ cd ~/Downloads
$ gzip -d FoxitReader_version_Setup.run.tar.gz
$ tar -xvf FoxitReader_version_Setup.run.tar
$ ./FoxitReader_version_Setup.run
然后可以安裝在制定目錄了,打開pdf軟件命令為:
(暫時使用時需要右鍵點擊,用FoxitReader打開即可。)
三、查看系統資源占用
1、free
用來顯示內存的使用情況,使用權限是所有用戶。
參數:
-b -k -m:分別以字節(KB、MB)為單位顯示內存使用情況。
-s delay:顯示每隔多少秒數來顯示一次內存使用情況。
-t:顯示內存總和列。
-o:不顯示緩沖區調節列。
2、uptime
用來顯示任務隊列信息。
| 現在的時間 | 系統開機運轉到現在經過的時間 | 連線的使用者數量 | 最近一分鍾,五分鍾和十五分鍾的系統負載 |
11:00:16 up 1 day, 2:24, 4 users, load average: 0.21, 0.25, 0.36
3、top
實時地對系統處理器的狀態進行監視。
參數說明:
d: 指定每兩次屏幕信息刷新之間的時間間隔。當然用戶可以使用s交互命令來改變之。
p: 通過指定監控進程ID來僅僅監控某個進程的狀態。
4、vmstat
procs -----------memory---------- ---swap-- -----io---- -system-- ----cpu----
r b swpd free buff cache si so bi bo in cs us sy id wa
1 0 948544 93988 22672 443688 8 11 51 25 64 87 6 1 91 1
四、Ubantu解壓文件
(1)zip
我們可以使用下列的命令壓縮一個目錄:
# zip -r archive_name.zip directory_to_compress
解壓一個zip文檔:
# unzip archive_name.zip
參考:https://my.oschina.net/farces/blog/727564
(2)TAR
打包文件/目錄:
# tar -cvf archive_name.tar directory_to_compress
解包:
# tar -xvf archive_name.tar.gz
# tar -xvf archive_name.tar -C /tmp/extract_here/
參數詳解:
-c 建立壓縮檔案;
-x 解壓;
-v 顯示所有過程;
-f 使用檔案名字,切記,這個參數是最后一個參數,后面只能接檔案名;
(3)TAR.GZ
壓縮:
# tar -zcvf archive_name.tar.gz directory_to_compress
解壓縮:
# tar -zxvf archive_name.tar.gz
(4)TAR.BZ2
使用tar.bz2進行壓縮:
# tar -jcvf archive_name.tar.bz2 directory_to_compress
解壓縮:
# tar -jxvf archive_name.tar.bz2 -C /tmp/extract_here/
(5)rar
需要先安裝rar解壓工具,如下
sudo apt-get install rar
sudo apt-get install unrar
壓縮:
rar x FileName.rar
解壓:
rar a FileName.rar DirName
(6)gzip
使用以下命令直接解壓縮成.tar格式,例如:
gzip -d code-stable-code.tar.gz
生成code-stable-code.tar,其中-d
和--decompress
是一樣的;
五、虛擬機ubuntu server 14.0 根目錄擴容
1、修改虛擬機設置,把硬盤改為200G
2、linux終端執行命令
把新增加的150G(200G - 50G)合並到根目錄
(1)查看當前磁盤列表
$ fdisk -l
列表中有以下部分信息:
Disk /dev/sda: 214.7GB, 21447483644800 bytes
Device Boot Start End Blocks Id System
/dev/sda1 2048 499711 248832 83 Linux
/dev/sda2 501758 419430399 209464321 5 Extended
/dev/sda5 501760 419428351 209463296 8e Linux LVM
可以看出磁盤/dev/sda已經變成200G多了,但是根目錄ubuntu14–vg-root才47.9 GB。大致有150G是未分配的。
(2)增加新分區
$ fdisk /dev/sda
根據提示輸入相應的信息(此時輸入m可查看help)
-
1、根據提示先輸入 n 並回車,表示增加分區
-
2、再根據提示輸入 p 並回車,表示主分區
-
3、根據提示輸入磁盤分區號,我不輸入直接回車,默認3
-
4、輸入磁盤分區的起始物理地址,上面sda1、sda2、sda5的最大物理地址是419428351,所以這里我輸入419428352,表示新的分區的地址時接在后面的
-
5、輸入磁盤分區的結束物理地址,這里直接回車就好,默認是最末的物理地址,這樣能把后面的所有空間全部包含進來
-
6、輸入 w 並回車,開始寫分區並退出
(3)再次查看磁盤列表
$ fdisk -l
發現多了一個磁盤/dev/sda3,但是ubuntu14–vg-root還是47.9 GB;
(4)重新讀取分區表
partprode /dev/sda
(5)格式化分區
mkfs -t ext3 /dev/sda3
(6)新建物理卷
先執行 pvdisplay 發現物理卷還沒有剛才新建的sda3,執行以下命令創建:
pvcreate /dev/sda3
再執行 pvdisplay 就發現已經有sda3了
(7)把sda3添加到卷組
先執行 vgdisplay 查看卷組,有以下信息
VG Name ubuntu14-vg
卷組名稱是ubuntu14-vg,執行以下命令
vgextend ubuntu14-vg /dev/sda3
再執行 vgdisplay 查看,有以下信息
Free PE / Size 39218 / 153.20 GiB
(8)開始擴容根目錄
lvs
信息列表中,VG 有 ubuntu14-vg ,LV 有 root ,這就是要擴容的根目錄。執行以下命令:
vextend -L +150G /dev/ubuntu14-vg/root /dev/sda3
resize2fs /dev/ubuntu14-vg/root
支持根目錄擴容完畢。可以驗證一下。
輸入 fdisk -l 結果為:
Disk /dev/mapper/ubuntu14--vg-root: 208.9 GB, 208914087936 bytes
輸入 df -h 結果為:
/dev/mapper/ubuntu14--vg-root 192G 34G 150G 19% /
驗證完畢!
七、ubuntu 關機,重啟,注銷命令
1 關機命令 shutdown
好像ubuntu的終端中默認的是當前用戶的命令,只是普通用戶,因此在終端器中可以使用sudo -sh 轉換到管理員root用戶下執行命令。
- shutdown –help
可以查看shutdown命令如何使用,當然也可以使用man shutdown命令。 - shutdown -h now 現在立即關機
- shutdown -r now 現在立即重啟
- shutdown -r +3 三分鍾后重啟
- shutdown -h +3 “The System will shutdown after 3 minutes” 提示使用者將在三分鍾后關機
- shutdown -r 20:23 在20:23時將重啟計算機
- shutdown -r 20:23 & 可以將在20:23時重啟的任務放到后台去,用戶可以繼續操作終端
2 中斷命令
-
執行完命令后(若沒有轉到后台),可以使用CTRL+C來中止命令
-
kill 程序編碼
當命令在后台執行時系統會返回一個程序編碼,例如:在使用 shutdown -r 20:23 & 系統返回系統編碼:4905
我們可以使用kill 4905來中止重啟命令 -
ps aux | grep 程序編號
我們如果知道程序的編號,我們可以使用ps aux |grep 程序編號來查詢該程序編號對應的命令是什么。
例如上面的程序編號為4905 ,我們可以使用ps aux | grep 4905 就可以查到 shutdown -r 20:23 & 的命令 -
halt—-最簡單的關機命令
其實halt就是調用shutdown -h。halt執行時﹐殺死應用進程﹐執行sync系統調用﹐文件系統寫操作完成后就會停止內核。
參數說明:
[-n] 防止sync系統調用﹐它用在用fsck修補根分區之后﹐以阻止內核用老版本的超級塊〔superblock〕覆蓋修補過的超級塊。
[-w] 並不是真正的重啟或關機﹐只是寫wtmp〔/var/log/wtmp〕紀錄。
[-d] 不寫wtmp紀錄〔已包含在選項[-n]中〕。
[-f] 沒有調用shutdown而強制關機或重啟。
[-i] 關機〔或重啟〕前﹐關掉所有的網絡接口。
[-p] 該選項為缺省選項。就是關機時調用poweroff。
-
init----init是所有進程的祖先﹐它的進程號始終為1﹐所以發送TERM信號給init會終止所有的用戶進程﹑守護進程等。
shutdown 就是使用這種機制。init定義了8個運行級別(runlevel),init 0為關機﹐init 1為重啟。關於init可以長篇大論﹐這里就不再敘述。另外還有telinit命令可以改變init的運行級別﹐比如﹐telinit -iS可使系統進入單用戶模式﹐並且得不到使用shutdown時的信息和等待時間。 -
Logout 注銷是登陸的相對操作,登陸系統后,若要離開系統,用戶只要直接下達logout命令即可:
[root@localhost root]#logout
Red Hat Linuxrelease 9(Shike)
Kernel 2.4.20.8 on an i686
Login: ← 回到登陸的畫面
八、 總結:監聽進程的端口號過程
查看端口使用情況,使用netstat命令。
(1)查看已經連接的服務端口(ESTABLISHED)
`netstat -a`
(2)查看所有的服務端口(LISTEN,ESTABLISHED)
`netstat -ap`
(3)查看8080端口,則可以結合grep命令:
`netstat -ap | grep 8080`
(3)如查看8888端口,則在終端中輸入:
`lsof -i:8888`
[root@localhost ~]# lsof -i :80
COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME
httpd 13450 apache 4u IPv6 13312087 TCP *:http (LISTEN)
httpd 13451 apache 4u IPv6 13312087 TCP *:http (LISTEN)
若要停止使用這個端口的程序,使用kill +對應的pid即可
九、使用ubuntu分析磁盤使用情況
安裝圖形工具Baobab,命令如下:
sudo apt-get install baobab
安裝完畢后,會分類至應用程序, 系統工具, 磁盤分析器,或者,直接使用下列命令,在終端中運行baobab。
baobab
十、遠程拷貝命令scp
scp是secure copy的簡寫,用於在Linux下進行遠程拷貝文件的命令,和它類似的命令有cp,不過cp只是在本機進行拷貝不能跨服務器,而且scp傳輸是加密的。可能會稍微影響一下速度。當你服務器硬盤變為只讀 read only system時,用scp可以幫你把文件移出來。另外,scp還非常不占資源,不會提高多少系統負荷,在這一點上,rsync就遠遠不及它了。雖然 rsync比scp會快一點,但當小文件眾多的情況下,rsync會導致硬盤I/O非常高,而scp基本不影響系統正常使用。
(1)命令格式:
$ scp [參數] [原路徑] [目標路徑]
(2)命令功能:
scp是 secure copy的縮寫, scp是linux系統下基於ssh登陸進行安全的遠程文件拷貝命令。linux的scp命令可以在linux服務器之間復制文件和目錄。
(3)使用實例:
a、從本地服務器復制到遠程服務器
$scp local_file remote_username@remote_ip:remote_folder
$scp local_file remote_username@remote_ip:remote_file
$scp local_file remote_ip:remote_folder
$scp local_file remote_ip:remote_file
第1,2個指定了用戶名,命令執行后需要輸入用戶密碼,第1個僅指定了遠程的目錄,文件名字不變,第2個指定了文件名
第3,4個沒有指定用戶名,命令執行后需要輸入用戶名和密碼,第3個僅指定了遠程的目錄,文件名字不變,第4個指定了文件名
b、從遠程服務器復制到本地服務器
從遠程復制到本地的scp命令與上面的命令雷同,只要將從本地復制到遠程的命令后面2個參數互換順序就行了。例如:
$scp remote_username@remote_ip:remote_folder local_file
$scp root@192.168.120.204: /opt/soft/nginx-0.5.38.tar.gz /opt/soft
十一、如何啟動、關閉和設置ubuntu防火牆
由於LInux原始的防火牆工具iptables過於繁瑣,所以ubuntu默認提供了一個基於iptable之上的防火牆工具ufw。
ubuntu 9.10默認的便是UFW防火牆,它已經支持界面操作了。在命令行運行ufw命令就可以看到提示的一系列可進行的操作。
(1)安裝
sudo apt-get install ufw
(2)啟用:在系統啟動時自動開啟,關閉外部對本機的訪問,但本機王文外部正常。
sudo ufw enable
sudo ufw default deny
(3)開啟/禁用
語法:sudo ufw allow | deny [servixe]
打開或者關閉某個端口:
sudo ufw allow smtp
允許所有外部IP訪問本機的25/tcp(smtp)端口
sudo ufw allow 22/tcp
允許所有外部IP訪問本機的25/tcp(ssh)端口
sudo ufw allow 53
允許外部訪問53端口
sudo ufw allow from 192.168.0.1
允許此IP訪問所有的本機端口
(4)查看防火牆狀態
sudo ufw status
十二、linux下使用convert命令修改圖片分辨率
Convert的resize子命令應該是在ImageMagick中使用較多的命令,它實現了圖片任意大小的縮放,唯一需要掌握的就是如何使用它的一些參數測試設定值:
命令格式:convert -resize widthxheight src.jpg dst.jpg
例如:convert -resize 240x240 34100.jpg 10000.jpg
默認都是使用像素作為單位,也可以使用百分比,參考:linux下使用convert命令修改圖片分辨率
十三、ubuntu下安裝Google瀏覽器
(1)下載deb包
針對64位x86架構:
wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
(2)安裝deb包
sudo dpkg -i google-chrome-stable_current_amd64.deb
(3)要是軟件依賴出現問題,則修復依賴
sudo apt-get -f install
----接下來出現什么問題就查詢對應答案,一般直接就會安裝成功----
十四、linux指令add-apt-repository ppa:xxx/ppa
這句話的意思是獲取最新的個人軟件包檔案源,將其添加至當前apt庫中,並自動導入公鑰;
例如,安裝notepadqq,命令為
sudo add-apt-repository ppa:notepadqq-team/notepadqq
十五、將ubuntu下的.deb包轉變為centos下的.rpm包(centos操作系統下處理)
(1)需要安裝alien工具:(記住默認為同一個目錄,除了cd進入另一個目錄)
$ wget http://ftp.de.debian.org/debian/pool/main/a/alien/alien_8.92.tar.gz
$ tar zxvf alien_8.92.tar.gz
$ cd alien
$ sudo yum install perl
$ sudo yum install per-ExtUtils-CBuilder per-ExtUtils-MakeMaker
$ perl Makefile.PL
$ make
$ sudo make install
(2)進行轉換deb->rpm
cd到deb包所在目錄;
$ sudo yum install rpm-build
可能會出現問題,此時更新以下yum,sudo yum update
$ alien -r ***.deb
rpm -ivh ***.rpm
(3)如果出現缺少動態庫.so文件,則進行以下操作:
wget http://dl.fedoraproject.org/pub/epel/7/x86_64/Packages/e/epel-release-7-11.noarch.rpm
rpm -Uvh epel-release*.rpm
yum install qt5-qtwebkit
安裝此QtWebKit,提供Web瀏覽器引擎;
參考文獻:https://www.cnblogs.com/jackluo/p/3416648.html
參考文獻:https://blog.csdn.net/kenny_lz/article/details/78884603
(4)如果安裝時出現依賴錯誤
建議使用sudo yum install ***.rpm
代替rpm -ivh ***.rpm
,這樣能夠自動解決依賴問題,而不用專門安裝特定的軟件包;
參考:https://www.cnblogs.com/huidaoli/articles/3733523.html
十六、掛載硬盤
如果硬盤已經分區,操作以下命令:
vim /etc/fstab
永久性掛載配置
# / was on /dev/sda8 during installation
UUID=1ec76666-3c49-4ded-a8f9-19c98c0c655d / ext4 errors=remount-ro 0 1
# /boot/efi was on /dev/sda3 during installation
UUID=C2B8-E262 /boot/efi vfat umask=0077 0 1
# /home was on /dev/sda9 during installation
UUID=dbc3a9e8-6227-46c8-9c8c-4be40623c761 /home ext4 defaults 0 2
# swap was on /dev/sda7 during installation
UUID=31b3801a-a1db-406b-8811-13cb9082a83a none swap sw 0 0
# /storage programer
UUID=286fb0dd-4c95-4942-898d-d1fd10cc8f56 /usr ext4 defaults 0 0
其中
參考:Linux 添加硬盤和掛載
參考:企業寶
十七、內存同步命令sync
在Linux/Unix系統中,在文件或數據處理過程中一般先存放到內存緩沖區中,以提高系統的運行效率。
sync命令可以用來強制將內存緩沖區中的數據立即寫入磁盤中。
系統一般會自動執行update或bdflush操作,將緩沖區的數據寫入磁盤。只有在這兩種命令無法執行時,才需手動執行sync命令。
十八、檢測系統命令vrim
vrim能夠檢測出系統安裝了多少非自由軟件,能夠以百分比的形式顯示。
十九、設置屏幕顯示(主屏、副屏、擴展屏)
(1)查看屏幕顯示器:xrandr
Screen 0: minimum 320 x 200, current 2806 x 900, maximum 8192 x 8192
eDP-1 connected 1366x768+1440+0 (normal left inverted right x axis y axis) 344mm x 194mm
1366x768 60.00*+
1360x768 59.80 59.96
VGA-1 connected primary 1440x900+0+0 (normal left inverted right x axis y axis) 410mm x 257mm
1440x900 59.61*+
1280x1024 75.02 60.02
HDMI-1 disconnected (normal left inverted right x axis y axis)
如圖,有三種屏幕接口,名稱為:eDP-1, VGA-1, HDMI-1(本機主屏為ieDP-1,副屏為VGA-1)
(2)設置主屏
xrandr --output eDP-1 --auto --primary
其中auto表示自動分辨率,primary是主屏,eDP-1是筆記本顯示屏的名字
(3)設置副屏為右擴展屏
xrandr --output eDP-1 --right-of VGA-1 --auto
(4)克隆顯示雙屏
xrandr --output VGA-1 --same-as eDP-1 --auto
(5)關閉顯示屏
xrandr --output VGA-1 --off
二十、ubuntu增加swap交換空間
參考:https://www.linuxidc.com/Linux/2010-09/28915.htm(linux公社)
(1)查看系統swap分區
free -m
(2)創建swap文件
mkdir /swap
cd /swap
sudo dd if=/dev/zero of=swap bs=1024 count=20000000
(3)把生成的文件轉換成Swap文件
sudo mkswap -f swap
(4)激活Swap文件
sudo swapon swap
free -m
(5)卸載swap 文件
sudo swapoff /swap/swap
(6)永久保持swap
可以把這個文件寫入/etc/fstab
,格式為:
/swap/swap none swap defaults 0 0
二十一、pdf操作軟件pdftk
pdftk是一個命令行程序,使用計算機終端進行操作.
(1)將223頁的pdf拆分
pdftk 123.pdf cat 1-45 output out1_45.pdf
pdftk 123.pdf cat 46-90 output out46_90.pdf
等等
pdftk A=in.pdf cat A2-20 output out.pdf
(2)將多個pdf合並
pdftk A=in1.pdf B=in2.pdf cat A1 B2-20even output out.pdf
(3)移除pdf中的某一頁
pdftk in.pdf cat A1-12 A14-end output out1.pdf
二十二、進程查找ps
ps -ef | grep libreoffice
查找libreoffice的所有進程,包括父進程和子進程。
二十三、查看系統版本
(1)cat /proc/version
(2)uname -a
(3)cat /etc/issue
(4)lsb_release -a
二十四、查看Linux硬盤是ssd還是hdd
(1)cat /sys/block/*/queue/rotational
判斷cat /sys/block//queue/rotational的返回值(其中為你的硬盤設備名稱,例如sda等等),如果返回1則表示磁盤可旋轉,那么就是HDD了;反之,如果返回0,則表示磁盤不可以旋轉,那么就有可能是SSD了。
(2)lsblk
使用lsblk命令進行判斷,參數-d表示顯示設備名稱,參數-o表示僅顯示特定的列。
二十五、Linux下查看nvidia的GPU使用情況和內存使用情況
(1)顯示GPU使用情況
nvidia-smi
(2)周期性輸出GPU使用情況
watch -n 10 nvidia-smi
每隔10秒顯示一次顯存情況
(3)顯示cpu使用情況
top
參考:https://blog.csdn.net/jasonzzj/article/details/52649174
https://blog.csdn.net/daiyudong2020/article/details/52760993
二十六、Linux查看物理CPU個數、核數、邏輯CPU個數
*總核數 = 物理CPU個數 X 每顆物理CPU的核數 *
總邏輯CPU數 = 物理CPU個數 X 每顆物理CPU的核數 X 超線程數
(1)查看物理CPU個數
cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l
(2)查看每個物理CPU中core的個數(即核數)
cat /proc/cpuinfo| grep "cpu cores"| uniq
(3)查看邏輯CPU的個數
cat /proc/cpuinfo| grep "processor"| wc -l