Linux安裝基本命令大全

來源:文萃谷 1.81W

Linux常用命令,你還能記得多少呢?下文是yjbys小編為大家準備的Linux常用命令,一起來看看吧!

Linux安裝基本命令大全

安裝升級

查看軟件xxx安裝內容

dpkg -L xxx

查找軟件庫中的軟件

apt-cache search 正則表達式

aptitude search 軟件包

顯示系統安裝包的統計信息

apt-cache stats

顯示系統全部可用包的名稱

apt-cache pkgnames

顯示包的信息

apt-cache show k3b

查找文件屬於哪個包

dpkg -S filename

apt-file search filename

查看已經安裝了哪些包

dpkg -l

也可用

dpkg -l | less

翻頁查看

查詢軟件xxx依賴哪些包

apt-cache depends xxx

查詢軟件xxx被哪些包依賴

apt-cache rdepends xxx

增加一個光盤源

sudo apt-cdrom add

系統更新

sudo apt-get update (這一步更新包列表)

sudo apt-get dist-upgrade (這一步安裝所有可用更新)

或者

sudo apt-get upgrade (這一步安裝應用程序更新,不安裝新內核等)

清除所有已刪除包的殘餘配置文件

dpkg -l |grep ^rc|awk '{print $2}' |sudo xargs dpkg -P

如果報如下錯誤,證明你的系統中沒有殘留配置文件了,無須擔心。

----------------------------------------------------------

dpkg: --purge needs at least one package name argument

Type dpkg --help for help about installing and deinstalling packages [*];

Use `dselect' or `aptitude' for user-friendly package management;

Type dpkg -Dhelp for a list of dpkg debug flag values;

Type dpkg --force-help for a list of forcing options;

Type dpkg-deb --help for help about manipulating * files;

Type dpkg --license for copyright license and lack of warranty (GNU GPL) [*].

Options marked [*] produce a lot of output - pipe it through `less' or `more' !

----------------------------------------------------------

編譯時缺少h文件的自動處理

sudo auto-apt run ./configure

查看安裝軟件時下載包的臨時存放目錄

ls /var/cache/apt/archives

備份當前系統安裝的所有包的列表

dpkg --get-selections | grep -v deinstall > ~/somefile

從上面備份的安裝包的列表文件恢復所有包

dpkg --set-selections < ~/somefile

sudo dselect

清理舊版本的軟件緩存

sudo apt-get autoclean

清理所有軟件緩存

sudo apt-get clean

刪除系統不再使用的孤立軟件

sudo apt-get autoremove

如果使用

sudo apt-get autoremove --purge

的話會把這些孤立軟件的殘留配置文件也一併移除

查看包在服務器上面的地址

apt-get -qq --print-uris download 軟件包名稱 | cut -d' -f2

徹底刪除Gnome

sudo apt-get --purge remove liborbit2

徹底刪除KDE

sudo apt-get --purge remove libqt3-mt libqtcore4

一鍵安裝 LAMP 服務

sudo tasksel install lamp-server

刪除舊內核

sudo aptitude purge ~ilinux-image-.*(!(`uname -r`|generic-.*))

導入ppa源的key值

#W: GPG簽名驗證錯誤: http://p jaunty Release: 由於沒有公鑰,下列簽名無法進行驗證: NO_PUBKEY 5126890CDCC7AFE0

sudo apt-key adv --recv-keys --keyserver 5126890CDCC7AFE0 #5126890CDCC7AFE0替換為你需要導入的Key值

增加 add-apt-repository 命令

sudo apt-get install software-properties-common

增加一個ppa源

sudo add-apt-repository ppa:user/ppa-name

#使用 ppa 的地址替換 ppa:user/ppa-name

添加163鏡像源

sudo add-apt-repository "deb `lsb_release -cs` main restricted universe multiverse"

sudo add-apt-repository "deb `lsb_release -cs`-updates main restricted universe multiverse"

sudo add-apt-repository "deb `lsb_release -cs`-security main restricted universe multiverse"

系統升級

1 這裏指的是版本間的升級,例如 9.04=>10.04。

2 使用該升級方式通常需要使用 backports 源。

sudo apt-get update

sudo apt-get install update-manager-core

sudo do-release-upgrade

系統

查看內核

uname -a

查看系統是32位還是64位

#查看long的位數,返回32或64

getconf LONG_BIT

#查看文件信息,包含32-bit就是32位,包含64-bit就是64位

file /sbin/init

或者使用

uname -m

查看Ubuntu版本

lsb_release -a

或 cat /etc/lsb-release

查看內核加載的模塊

lsmod

查看PCI設備

lspci

查看USB設備

lsusb

#加參數 -v 可以顯示USB設備的描述表(descriptors)

lsusb -v

查看網卡狀態

sudo apt-get install ethtool

sudo ethtool eth0

激活網卡的 Wake-on-LAN

sudo apt-get install wakeonlan

或 sudo ethtool -s eth0 wol g

查看CPU信息

cat /proc/cpuinfo

顯示當前硬件信息

sudo lshw

查看內存型號

sudo dmidecode -t memory

獲取CPU序列號或者主板序列號

#CPU ID

sudo dmidecode -t 4 | grep ID

#Serial Number

sudo dmidecode | grep Serial

#CPU

sudo dmidecode -t 4

#BIOS

sudo dmidecode -t 0

#主板:

sudo dmidecode -t 2

#OEM:

sudo dmidecode -t 11

顯示當前內存大小

free -m |grep "Mem" | awk '{print $2}'

查看硬盤温度

sudo apt-get install hddtemp

sudo hddtemp /dev/sda

顯示系統運行時間

uptime

查看系統限制

ulimit -a

查看內核限制

ipcs -l

查看當前屏幕分辨率

xrandr

硬盤

查看塊設備

lsblk

查看硬盤的分區

sudo fdisk -l

硬盤分區

#危險!小心操作。

sudo fdisk /dev/sda

硬盤格式化

#危險!將第一個分區格式化為 ext3 分區, erfs

sudo 3 /dev/sda1

硬盤檢查

#危險!檢查第一個分區,請不要檢查已經掛載的分區,否則容易丟失和損壞數據

sudo fsck /dev/sda1

硬盤壞道檢測

sudo badblocks -s -v -c 32 /dev/sdb

#得到壞的塊後,使用分區工具隔離壞道。

分區掛載

sudo mount -t 文件系統類型 設備路經 訪問路經

#常用文件類型如下: iso9660 光驅文件系統, vfat fat/fat32分區, ntfs ntfs分區, smbfs windows網絡共享目錄, reiserfs、ext3、xfs Linux分區

#如果中文名無法顯示嘗試在最後增加 -o nls=utf8 或 -o iocharset=utf8

#如果需要掛載後,普通用户也可以使用,在 -o 的'參數後面增加 ,umask=022 如:-o nls=utf8,umask=022

分區卸載

sudo umount 目錄名或設備名

只讀掛載ntfs分區

sudo mount -t ntfs -o nls=utf8,umask=0 /dev/sdb1 /mnt/c

可寫掛載ntfs分區

sudo mount -t ntfs-3g -o locale=zh_8,umask=0 /dev/sdb1 /mnt/c

掛載fat32分區

sudo mount -t vfat -o iocharset=utf8,umask=0 /dev/sda1 /mnt/c

掛載共享文件

sudo mount -t smbfs -o username=xxx,password=xxx,iocharset=utf8 // /mnt/share

掛載ISO文件

sudo mount -t iso9660 -o loop,utf8 /mnt/iso

查看IDE硬盤信息

sudo hdparm -i /dev/sda

查看軟raid陣列信息

cat /proc/mdstat

參看硬raid陣列信息

dmesg |grep -i raid

cat /proc/scsi/scsi

查看SATA硬盤信息

sudo hdparm -I /dev/sda

sudo apt-get install blktool

sudo blktool /dev/sda id

查看硬盤剩餘空間

df

df --help 顯示幫助

查看目錄佔用空間

du -hs 目錄名

閃盤沒法卸載

sync

fuser -km /media/閃盤卷標

使用文件來增加交換空間

#創建一個512M的交換文件 /swapfile

sudo dd if=/dev/zero of=/swapfile bs=1M count=512

sudo mkswap /swapfile

sudo swapon /swapfile

#sudo vim /etc/fstab #加到fstab文件中讓系統引導時自動啟動

/swapfile swap swap defaults 0 0

查看硬盤當前讀寫情況

# 首先安裝 sysstat 包

sudo apt-get install sysstat

#每2秒刷新一次

sudo iostat -x 2

測試硬盤的實際寫入速度

dd if=/dev/zero of=test bs=64k count=512 oflag=dsync

進程

查看當前的內存使用情況

free

連續監視內存使用情況

watch -d free

# 使用 Ctrl + c 退出

動態顯示進程執行情況

top

top指令運行時輸入H或?打開幫助窗口,輸入Q退出指令。

查看當前有哪些進程

ps -AFL

查看進程的啟動時間

ps -A -opid,stime,etime,args

查看目前登入用户運行的程序

w

查看當前用户程序實際內存佔用,並排序

ps -u $USER -o pid,rss,cmd --sort -rss

統計程序的內存耗用

ps -eo fname,rss|awk '{arr[$1]+=$2} END {for (i in arr) {print i,arr[i]}}'|sort -k2 -nr

按內存從大到小排列進程

ps -eo "%C : %p : %z : %a"|sort -k5 -nr

列出前十個最耗內存的進程

ps aux | sort -nk +4 | tail

按cpu利用率從大到小排列進程

ps -eo "%C : %p : %z : %a"|sort -nr

ps aux --sort -pcpu |head -n 20

查看當前進程樹

pstree

中止一個進程

kill 進程號(就是ps -A中的第一列的數字)

或者 killall 進程名

強制中止一個進程(在上面進程中止不成功的時候使用)

kill -9 進程號

或者 killall -9 進程名

圖形方式中止一個程序

xkill 出現骷髏標誌的鼠標,點擊需要中止的程序即可

查看進程打開的文件

lsof -p 進程的pid

顯示開啟文件的進程

lsof

顯示22端口現在運行什麼程序

lsof -i :22

顯示nsd進程現在打開的文件

lsof -c nsd

在後台運行程序,退出登錄後,並不結束程序

nohup 程序 &

#查看中間運行情況 tail nohup

在後台運行交互式程序,退出登錄後,並不結束程序

sudo apt-get install screen

screen vim

#直接退出後使用

screen -ls # tu (Detached)

screen -r 1656 #恢復

#熱鍵,同時按下Ctrl和a鍵結束後,再按下功能鍵

C-a ? #顯示所有鍵綁定信息

C-a w #顯示所有窗口列表

C-a C-a #切換到之前顯示的窗口

C-a c #創建一個新的運行shell的窗口並切換到該窗口

C-a n #切換到下一個窗口

C-a p #切換到前一個窗口(與C-a n相對)

C-a 0..9 #切換到窗口0..9

C-a a #發送 C-a到當前窗口

C-a d #暫時斷開screen會話

C-a k #殺掉當前窗口

在後台運行交互式程序,退出登錄後,並不結束程序

tmux 進入後再運行其它命令

tmux attach #恢復

#熱鍵,同時按下Ctrl和b鍵結束後,再按下功能鍵

C-b c #創建一個新的運行shell的窗口並切換到該窗口

C-b n #切換到下一個窗口

C-b p #切換到前一個窗口(與C-a n相對)

C-b 0..9 #切換到窗口0..9

C-b d #暫時斷開會話

C-b & #殺掉當前窗口

詳細顯示程序的運行信息

strace -f -F -o outfile

增加系統最大打開文件個數

#ulimit -SHn

sudo vim /etc/security/

文件尾追加

* hard nofile 4096

* soft nofile 4096

sudo vim /etc/pam.d/su

將 pam_ 這一行註釋去掉

重起系統

清除殭屍進程

ps -eal | awk '{ if ($2 == "Z") {print $4}}' | xargs sudo kill -9

將大於120M內存的php-cgi都殺掉

ps -eo pid,fname,rss|grep php-cgi|grep -v grep|awk '{if($3>=120000) print $1}' | xargs sudo kill -9

Linux系統中如何限制用户進程CPU佔用率

renice +10 `ps aux | awk '{ if ($3 > 0.8 && id -u $1 > 500) print $2}'`

#或直接編輯/etc/security/文件。

熱門標籤