1選擇
創(chuàng)新互聯(lián)-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價(jià)比臺(tái)江網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式臺(tái)江網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋臺(tái)江地區(qū)。費(fèi)用合理售后完善,十余年實(shí)體公司更值得信賴。
1.1一個(gè)文件的名字為rr.Z,可以用來解壓縮的命令時(shí)()
tar
gzip
compress
uncompress
1.2可以結(jié)束進(jìn)程命令()
kill
ctrl+c
shutdown
halt
1.3 Linux下對文件進(jìn)行歸檔的命令為:(多選)
dd
tar
zip
unzip
1.4 Linux查當(dāng)前目錄下30天以前的文件并移動(dòng)到/dev/null下的命令:(多選)
find.-mtime 30-type f xargs mv{}/dev/null;
find.-mtime+30-type xargs mv{}/dev/null;
find.-mtime+30-type f-exec mv{}/dev/null;
find.-mtime+30-type f-exec rm–rf{};
1.5 dstat與下面哪個(gè)命令類似
vmstat
sar
iotop
abc
1.6 rpm安裝軟件的參數(shù)
rpm-ivh
rpm-Ivh
rpm-Uvh
rpm-Iuvh
1.7 yum升級(jí)軟件包選項(xiàng)
rpm-uvh
rpm-Uvh
1.8查看網(wǎng)絡(luò)流量命令是?
iftop
nsload
ifstatd
以上命令全可以
1.9停止進(jìn)程的命令,除了kill還有誰?
pkill
killa
allkill
以上命令都不正確
1.10服務(wù)器之間傳文件的命令有?
wget
scp
ftp
以上命令都可以
1.11對文件進(jìn)行歸檔的命令為
dd
cpio
gzip
tar
1.12在rpm命令中,安裝新的rpm包軟件使用的參數(shù)是()
-i
-v
-h
-e
1.13du命令中,使用友好的方式顯示信息的參數(shù)是()
-h
-f
-a
-t
1.14將/home/stud1/wang目錄做歸檔壓縮,壓縮后生成wang.tar.gz文件,并將此文件保存到/home目錄下,實(shí)現(xiàn)如此任務(wù)的tar命令格式___
tar zxvf/home/stud1/wang.tar.gz/home/wang
tar xcvf/home/stud1/wang/home/wang
tar zcv/home/stud1/wang/home/wang
tar zcvf/home/stud1/wang/home/wang.tar.gz
1.15終止一個(gè)前臺(tái)進(jìn)程可能用到的命令和操作()A:kill
B:CTRL+C
C:shutdown
D:halt
1.16關(guān)閉Linux系統(tǒng)(不重新啟動(dòng))可使用命令()
A:Ctrl+Alt+Del
B:halt
C:shutdown-r now
D:reboot
1.17下列提法中,不屬于ifconfig命令作用范圍的是__
A:配置本地環(huán)回地址
B:配置網(wǎng)卡的IP地址
C:激活網(wǎng)絡(luò)適配器
D:加載網(wǎng)卡到內(nèi)核中
1.18有關(guān)歸檔和壓縮命令,下面描述正確的是()
A:用uncompress命令解壓縮由compress命令生成地后綴為.zip的壓縮文件
B:upzip命令和gzip命令可以解壓相同類型文件
C:tar歸檔其壓縮的文件可以有g(shù)zip命令解壓縮
D:tar命令歸檔后的文件也是一種壓縮文件
1.19終止一共前臺(tái)進(jìn)程可能用到的命令和操作
kill
ctrl+c
shut down
halt
1.22為了將當(dāng)前目錄下的歸檔文檔myftp,tar解壓縮到/tmp目錄下,用戶可以使用命令
tar xvzf my
tar xvzf my
tar vzf my
tar xvzf my
1.23下面有關(guān)linux查看系統(tǒng)負(fù)載的命令,說法錯(cuò)誤的是?
uptime命令主要用于獲取主機(jī)運(yùn)行時(shí)間和查詢linux系統(tǒng)負(fù)載等信息
vmstat命令可以查看cpu負(fù)載
sar命令可以查看網(wǎng)絡(luò)接口信息
free命令可以查看磁盤負(fù)載情況
1.24以下哪些方式/命令不可以查看某ip是否可達(dá)?
telnet
ping
tracert
top
1.25 tar命令用于解壓的參數(shù)是?-v-x-c-f
1.26下面哪個(gè)命令不是用來查看網(wǎng)絡(luò)故障?
telnet
ping
init
netstat
1.28為了知道誰在正注冊到你的機(jī)器上,可以用命令:___
Who users finger ping
1.29查看本網(wǎng)段其他計(jì)算機(jī)的MAC地址,可先ping對方主機(jī),然后;
arp-g
arp-n
arp-a
arp-d
1.3014日下午2點(diǎn)date+%y%m%d%H%M輸出的時(shí)間是什么
201711141212
1711141212
2017111412
201711021212
1.31以下哪個(gè)命令可以得出1487進(jìn)程的線程運(yùn)行情況()
top-Hp 1487
top-Pp 1487
ps-mp 1487
sat-p 1487
1.32從/home/oracle下搜索一個(gè)日志文件alert.log,以下哪種方式可達(dá)到目的()
find/home./oracle-name alert.log
locate alert.log
find./-mtime 7 alert.log
find/home/oracle-exec alert.log
1.34以下哪些命令可以用來測試網(wǎng)絡(luò)中特定主機(jī)的80端口是否可以訪問()
Ping telnet netstat lsof
2填空
2.1測試網(wǎng)絡(luò)中主機(jī)的連通性用什么命令
2.2如何查看numa是否關(guān)閉_**_
2.3將/home/stud1/wang目錄做歸檔壓縮,壓縮后生成wang.tar.gz文件,并將此文件保存到/home目錄下,實(shí)現(xiàn)如此任務(wù)的tar命令格式_**
2.4某個(gè)進(jìn)程使用端口7001,如何快速找到該進(jìn)程的PID
2.5結(jié)束后臺(tái)進(jìn)程的命令是**_**
2.6將/home/studl/wang目錄做歸檔壓縮,壓縮后生成wang.tar.gz文件,并將此存到/home目錄下,實(shí)現(xiàn)此任務(wù)的tar命令格式******__******
2.7 ping100個(gè)包的命令——
2.8 linux下,解壓縮bz2格式文件的命令是**_**
2.9 linux下,查看網(wǎng)絡(luò)連接狀態(tài)的命令是**___**
2.10Linux查看文件系統(tǒng)的命令為__,顯示目錄或文件占用磁盤的命令為___
2.11通常我們測試網(wǎng)絡(luò)連通性使用的ping命令,它是通過____協(xié)議進(jìn)行工作的
2.12簡述下列命令的各自作用
nslookup
dig
top
traceroute
2.13將/home/stud1/wang目錄做歸檔壓縮,壓縮后生成wang.tar.gz文件,并將此問價(jià)保存到/home目錄下,實(shí)現(xiàn)此任務(wù)的tar命令格****_****
2.14Linux系統(tǒng)查看進(jìn)程數(shù)的命令___
2.15Linux系統(tǒng)查看系統(tǒng)內(nèi)存的命令:____,**__**
2.16Linux系統(tǒng)查看cpu使用率的命令:____,**__**
2.17Linux系統(tǒng)查看硬盤空間使用率的命令:___
2.18Linux系統(tǒng)將某一文件下的所有.log文件進(jìn)行打包壓縮,命令為___
2.19Linux常用的性能監(jiān)控命令是:_、_、_、_、_、_等
2.20假設(shè)output程序可能輸出標(biāo)準(zhǔn)輸出和標(biāo)準(zhǔn)錯(cuò)誤,請寫出一條命令把這兩者都忽略__
2.21 rpm軟件包安裝命令**_**
3簡答
3.1查看硬盤結(jié)構(gòu)顯示的命令?查看文檔命令?編輯文檔命令?
3.2配置網(wǎng)絡(luò)環(huán)境的命令,手工修改IP,主機(jī)名,DNS和網(wǎng)關(guān)
3.3有壓縮包a.tar.gz,如何解壓該包?如何不解壓該包,如何查看該包的內(nèi)容?
3.4某進(jìn)程abcd在系統(tǒng)中起了很多,數(shù)量難以統(tǒng)計(jì),造成系統(tǒng)負(fù)荷較高,如何一條命令確保將此進(jìn)程全部殺掉
3.5某日志路徑是/data/logs/a.txt,如何跟蹤該日志,以查看當(dāng)時(shí)的運(yùn)行狀態(tài)?
3.6 dmesg命令顯示的是哪方面信息
3.7尋找名稱為mytest.log的文件
3.8寫出du-sh與df-h的區(qū)別
3.9查看當(dāng)前l(fā)inux服務(wù)器是否監(jiān)聽80端口,如果監(jiān)聽,請找出其進(jìn)程ID,并結(jié)束該進(jìn)程。
3.10使用curl或者wget獲取http服務(wù)的header信息。
3.11寫出查看linux系統(tǒng)性能的命令,如cpu、內(nèi)存、流量、io等
3.12解釋下列命令的意思
dd if=/dev/random of=/dev/sda
3.13如何查看占用端口8080的進(jìn)程
3.14查著占用內(nèi)存最多的進(jìn)程
3.15壓縮和解壓縮目錄/opt/gjsy/所有文件命令
3.16Linxu系統(tǒng)下如何查看8080端口上運(yùn)行的程序狀態(tài)
3.17ps aux中的VSZ代表什么意思,RSS代表什么意思?
3.18PING是使用TCP/IP協(xié)議中的**_**協(xié)議
3.19寫出網(wǎng)絡(luò)故障排查常用的命令**__**
3.20寫出你常用的網(wǎng)絡(luò)抓包工具,軟件名稱**__**
3.21將/home/stud1/wang目錄做歸檔壓縮,壓縮后生成wang.tar.gz文件,并將此文件保存到/home目錄下,實(shí)現(xiàn)此任務(wù)的tar命令格式___
3.22解釋該命令的含義:nohup zcat test.gz|grep"x6game"~/log.txt
2/dev/null
3.23查看系統(tǒng)硬件負(fù)載工具或命令有哪些
3.24使用lsof命令查看占用80端口的進(jìn)程
3.25如何使用CURL測試POST接口
3.26怎樣在目錄/home/user/training/下找到擴(kuò)展名為txt的文件
3.27最常用的網(wǎng)絡(luò)測試命令有什么?
3.28ping的測試結(jié)果中都包含哪些部分?
3.29如何找出占用22端口的進(jìn)程及進(jìn)程號(hào)?
3.30如何刪除當(dāng)前目錄(包含字目錄)下所有30天以前創(chuàng)建的文件名后綴為.log的文件
3.31以下一些Linux命令的作用分別是什么?
init 0
chkconfig--level 3 sendmail on
tar-czvf test.tar.gz./
chown-R
ln-s/data/log//var/log/sina_log
umount-f/data0
rpm-ivh baihui.rpm
rpm-qf/bin/ls
3.32LINUX常用命令pwd、top、df、ifconfig、cat分別代表什么含義?
3.33linux常用命令:關(guān)機(jī)、重啟、編輯某文檔文件、刪除某文件、更改操作系統(tǒng)密碼命令分別是什么?
3.34請使用命令:刪除/backup目錄下10天前的普通文件
3.35如何查看服務(wù)器當(dāng)前連接ip的列表
3.36寫出liunx系統(tǒng)中diff、chmod、grep、kill、tar五個(gè)常用命令的功能
3.37簡述tar-cjvf/tmp/test.tar.gz/root命令中錯(cuò)誤及錯(cuò)誤原因
3.38Linux系統(tǒng)從A服務(wù)器測試B服務(wù)器一個(gè)tcp端口是否聯(lián)通使用___
3.39寫一個(gè)腳本查找最后創(chuàng)建時(shí)間使3天前,后綴是*.log的文件并刪除
3.40linux如何根據(jù)進(jìn)程ID查找啟動(dòng)程序的路徑
3.41查看占用swap的進(jìn)程id
3.42列出linux常見打包工具并寫相應(yīng)解壓縮參數(shù)(至少三種)
3.43Linux中鎖定一個(gè)文件用什么命令?他和md5sum有什么區(qū)別?
3.44如何在系統(tǒng)中查找所有所屬用戶為user1的文件
3.45查看某個(gè)文件或者文件夾占用磁盤空間大小的命令
3.46如何查看遠(yuǎn)程linux系統(tǒng)運(yùn)行了多少時(shí)間?我的服務(wù)器內(nèi)存,cpu,硬盤都是多少,系統(tǒng)版本,linux會(huì)優(yōu)先將數(shù)據(jù)緩存到內(nèi)存中,我的機(jī)器真實(shí)內(nèi)存消耗實(shí)際上是多少
3.47查看服務(wù)器當(dāng)前開啟了哪些端口?如何查看某服務(wù)器是否存在IO壓力
3.48如何查看某個(gè)文件system.log被哪些進(jìn)程占用
擴(kuò)展
1.21在退出unix系統(tǒng)賬戶之后還需要繼續(xù)運(yùn)行某個(gè)進(jìn)程,那么可用()
awk sed crontab nohup screen
1.20使用trace命令的目的是()
可用的,十分成功的測試手段
非?;镜臏y試手段
把IP地址和DNS加入路由表中
在源到目標(biāo)傳輸?shù)倪^程中查找失散點(diǎn)
1.27哪個(gè)變量用來指定一個(gè)遠(yuǎn)程x應(yīng)用程序?qū)⑤敵龇诺侥膫€(gè)x server上
TERM
DISPLAY
ECHO
OUTPUT
1.33P系列服務(wù)器被用做文件服務(wù)器,所有的用戶文件存都放在一非rootvg的文件系統(tǒng)上,用什么方法可以快速備份和恢復(fù)這些數(shù)據(jù)和文件系統(tǒng)的定義()
tar
cpio
savefs
savevg
Linux安裝基本命令大全
Linux常用命令,你還能記得多少呢?下文是我為大家準(zhǔn)備的Linux常用命令,一起來看看吧!
安裝升級(jí)
查看軟件xxx安裝內(nèi)容
dpkg -L xxx
查找軟件庫中的軟件
apt-cache search 正則表達(dá)式
或
aptitude search 軟件包
顯示系統(tǒng)安裝包的統(tǒng)計(jì)信息
apt-cache stats
顯示系統(tǒng)全部可用包的名稱
apt-cache pkgnames
顯示包的信息
apt-cache show k3b
查找文件屬于哪個(gè)包
dpkg -S filename
apt-file search filename
查看已經(jīng)安裝了哪些包
dpkg -l
也可用
dpkg -l | less
翻頁查看
查詢軟件xxx依賴哪些包
apt-cache depends xxx
查詢軟件xxx被哪些包依賴
apt-cache rdepends xxx
增加一個(gè)光盤源
sudo apt-cdrom add
系統(tǒng)更新
sudo apt-get update (這一步更新包列表)
sudo apt-get dist-upgrade (這一步安裝所有可用更新)
或者
sudo apt-get upgrade (這一步安裝應(yīng)用程序更新,不安裝新內(nèi)核等)
清除所有已刪除包的殘馀配置文件
dpkg -l |grep ^rc|awk '{print $2}' |sudo xargs dpkg -P
如果報(bào)如下錯(cuò)誤,證明你的系統(tǒng)中沒有殘留配置文件了,無須擔(dān)心。
----------------------------------------------------------
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 *.deb 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' !
----------------------------------------------------------
編譯時(shí)缺少h文件的自動(dòng)處理
sudo auto-apt run ./configure
查看安裝軟件時(shí)下載包的臨時(shí)存放目錄
ls /var/cache/apt/archives
備份當(dāng)前系統(tǒng)安裝的所有包的列表
dpkg --get-selections | grep -v deinstall ~/somefile
從上面?zhèn)浞莸陌惭b包的列表文件恢復(fù)所有包
dpkg --set-selections ~/somefile
sudo dselect
清理舊版本的軟件緩存
sudo apt-get autoclean
清理所有軟件緩存
sudo apt-get clean
刪除系統(tǒng)不再使用的孤立軟件
sudo apt-get autoremove
如果使用
sudo apt-get autoremove --purge
的話會(huì)把這些孤立軟件的殘留配置文件也一并移除
查看包在服務(wù)器上面的地址
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 服務(wù)
sudo tasksel install lamp-server
刪除舊內(nèi)核
sudo aptitude purge ~ilinux-image-.*\(\!\(`uname -r`\|generic-.*\)\)
導(dǎo)入ppa源的'key值
#W: GPG簽名驗(yàn)證錯(cuò)誤: jaunty Release: 由于沒有公鑰,下列簽名無法進(jìn)行驗(yàn)證: NO_PUBKEY 5126890CDCC7AFE0
sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 5126890CDCC7AFE0 #5126890CDCC7AFE0替換為你需要導(dǎo)入的Key值
增加 add-apt-repository 命令
sudo apt-get install software-properties-common
增加一個(gè)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"
系統(tǒng)升級(jí)
1 這里指的是版本間的升級(jí),例如 9.04=10.04。
2 使用該升級(jí)方式通常需要使用 backports 源。
sudo apt-get update
sudo apt-get install update-manager-core
sudo do-release-upgrade
系統(tǒng)
查看內(nèi)核
uname -a
查看系統(tǒng)是32位還是64位
#查看long的位數(shù),返回32或64
getconf LONG_BIT
#查看文件信息,包含32-bit就是32位,包含64-bit就是64位
file /sbin/init
或者使用
uname -m
查看Ubuntu版本
lsb_release -a
或 cat /etc/lsb-release
查看內(nèi)核加載的模塊
lsmod
查看PCI設(shè)備
lspci
查看USB設(shè)備
lsusb
#加參數(shù) -v 可以顯示USB設(shè)備的描述表(descriptors)
lsusb -v
查看網(wǎng)卡狀態(tài)
sudo apt-get install ethtool
sudo ethtool eth0
激活網(wǎng)卡的 Wake-on-LAN
sudo apt-get install wakeonlan
或 sudo ethtool -s eth0 wol g
查看CPU信息
cat /proc/cpuinfo
顯示當(dāng)前硬件信息
sudo lshw
查看內(nèi)存型號(hào)
sudo dmidecode -t memory
獲取CPU序列號(hào)或者主板序列號(hào)
#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
顯示當(dāng)前內(nèi)存大小
free -m |grep "Mem" | awk '{print $2}'
查看硬盤溫度
sudo apt-get install hddtemp
sudo hddtemp /dev/sda
顯示系統(tǒng)運(yùn)行時(shí)間
uptime
查看系統(tǒng)限制
ulimit -a
查看內(nèi)核限制
ipcs -l
查看當(dāng)前屏幕分辨率
xrandr
硬盤
查看塊設(shè)備
lsblk
查看硬盤的分區(qū)
sudo fdisk -l
硬盤分區(qū)
#危險(xiǎn)!小心操作。
sudo fdisk /dev/sda
硬盤格式化
#危險(xiǎn)!將第一個(gè)分區(qū)格式化為 ext3 分區(qū), mkfs.reiserfs mkfs.xfs mkfs.vfat
sudo mkfs.ext3 /dev/sda1
硬盤檢查
#危險(xiǎn)!檢查第一個(gè)分區(qū),請不要檢查已經(jīng)掛載的分區(qū),否則容易丟失和損壞數(shù)據(jù)
sudo fsck /dev/sda1
硬盤壞道檢測
sudo badblocks -s -v -c 32 /dev/sdb
#得到壞的塊后,使用分區(qū)工具隔離壞道。
分區(qū)掛載
sudo mount -t 文件系統(tǒng)類型 設(shè)備路經(jīng) 訪問路經(jīng)
#常用文件類型如下: iso9660 光驅(qū)文件系統(tǒng), vfat fat/fat32分區(qū), ntfs ntfs分區(qū), smbfs windows網(wǎng)絡(luò)共享目錄, reiserfs、ext3、xfs Linux分區(qū)
#如果中文名無法顯示嘗試在最後增加 -o nls=utf8 或 -o iocharset=utf8
#如果需要掛載後,普通用戶也可以使用,在 -o 的參數(shù)後面增加 ,umask=022 如:-o nls=utf8,umask=022
分區(qū)卸載
sudo umount 目錄名或設(shè)備名
只讀掛載ntfs分區(qū)
sudo mount -t ntfs -o nls=utf8,umask=0 /dev/sdb1 /mnt/c
可寫掛載ntfs分區(qū)
sudo mount -t ntfs-3g -o locale=zh_CN.utf8,umask=0 /dev/sdb1 /mnt/c
掛載fat32分區(qū)
sudo mount -t vfat -o iocharset=utf8,umask=0 /dev/sda1 /mnt/c
掛載共享文件
sudo mount -t smbfs -o username=xxx,password=xxx,iocharset=utf8 //192.168.1.1/share /mnt/share
掛載ISO文件
sudo mount -t iso9660 -o loop,utf8 xxx.iso /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/閃盤卷標(biāo)
使用文件來增加交換空間
#創(chuàng)建一個(gè)512M的交換文件 /swapfile
sudo dd if=/dev/zero of=/swapfile bs=1M count=512
sudo mkswap /swapfile
sudo swapon /swapfile
#sudo vim /etc/fstab #加到fstab文件中讓系統(tǒng)引導(dǎo)時(shí)自動(dòng)啟動(dòng)
/swapfile swap swap defaults 0 0
查看硬盤當(dāng)前讀寫情況
# 首先安裝 sysstat 包
sudo apt-get install sysstat
#每2秒刷新一次
sudo iostat -x 2
測試硬盤的實(shí)際寫入速度
dd if=/dev/zero of=test bs=64k count=512 oflag=dsync
進(jìn)程
查看當(dāng)前的內(nèi)存使用情況
free
連續(xù)監(jiān)視內(nèi)存使用情況
watch -d free
# 使用 Ctrl + c 退出
動(dòng)態(tài)顯示進(jìn)程執(zhí)行情況
top
top指令運(yùn)行時(shí)輸入H或?打開幫助窗口,輸入Q退出指令。
查看當(dāng)前有哪些進(jìn)程
ps -AFL
查看進(jìn)程的啟動(dòng)時(shí)間
ps -A -opid,stime,etime,args
查看目前登入用戶運(yùn)行的程序
w
查看當(dāng)前用戶程序?qū)嶋H內(nèi)存占用,并排序
ps -u $USER -o pid,rss,cmd --sort -rss
統(tǒng)計(jì)程序的內(nèi)存耗用
ps -eo fname,rss|awk '{arr[$1]+=$2} END {for (i in arr) {print i,arr[i]}}'|sort -k2 -nr
按內(nèi)存從大到小排列進(jìn)程
ps -eo "%C : %p : %z : %a"|sort -k5 -nr
列出前十個(gè)最耗內(nèi)存的進(jìn)程
ps aux | sort -nk +4 | tail
按cpu利用率從大到小排列進(jìn)程
ps -eo "%C : %p : %z : %a"|sort -nr
ps aux --sort -pcpu |head -n 20
查看當(dāng)前進(jìn)程樹
pstree
中止一個(gè)進(jìn)程
kill 進(jìn)程號(hào)(就是ps -A中的第一列的數(shù)字)
或者 killall 進(jìn)程名
強(qiáng)制中止一個(gè)進(jìn)程(在上面進(jìn)程中止不成功的時(shí)候使用)
kill -9 進(jìn)程號(hào)
或者 killall -9 進(jìn)程名
圖形方式中止一個(gè)程序
xkill 出現(xiàn)骷髏標(biāo)志的鼠標(biāo),點(diǎn)擊需要中止的程序即可
查看進(jìn)程打開的文件
lsof -p 進(jìn)程的pid
顯示開啟文件abc.txt的進(jìn)程
lsof abc.txt
顯示22端口現(xiàn)在運(yùn)行什么程序
lsof -i :22
顯示nsd進(jìn)程現(xiàn)在打開的文件
lsof -c nsd
在後臺(tái)運(yùn)行程序,退出登錄後,并不結(jié)束程序
nohup 程序
#查看中間運(yùn)行情況 tail nohup
在后臺(tái)運(yùn)行交互式程序,退出登錄后,并不結(jié)束程序
sudo apt-get install screen
screen vim a.txt
#直接退出后使用
screen -ls # 2208pxs-0.ubuntu (Detached)
screen -r 1656 #恢復(fù)
#熱鍵,同時(shí)按下Ctrl和a鍵結(jié)束后,再按下功能鍵
C-a ? #顯示所有鍵綁定信息
C-a w #顯示所有窗口列表
C-a C-a #切換到之前顯示的窗口
C-a c #創(chuàng)建一個(gè)新的運(yùn)行shell的窗口并切換到該窗口
C-a n #切換到下一個(gè)窗口
C-a p #切換到前一個(gè)窗口(與C-a n相對)
C-a 0..9 #切換到窗口0..9
C-a a #發(fā)送 C-a到當(dāng)前窗口
C-a d #暫時(shí)斷開screen會(huì)話
C-a k #殺掉當(dāng)前窗口
在后臺(tái)運(yùn)行交互式程序,退出登錄后,并不結(jié)束程序
tmux 進(jìn)入后再運(yùn)行其它命令
tmux attach #恢復(fù)
#熱鍵,同時(shí)按下Ctrl和b鍵結(jié)束后,再按下功能鍵
C-b c #創(chuàng)建一個(gè)新的運(yùn)行shell的窗口并切換到該窗口
C-b n #切換到下一個(gè)窗口
C-b p #切換到前一個(gè)窗口(與C-a n相對)
C-b 0..9 #切換到窗口0..9
C-b d #暫時(shí)斷開會(huì)話
C-b #殺掉當(dāng)前窗口
詳細(xì)顯示程序的運(yùn)行信息
strace -f -F -o outfile
增加系統(tǒng)最大打開文件個(gè)數(shù)
#ulimit -SHn
sudo vim /etc/security/limits.conf
文件尾追加
* hard nofile 4096
* soft nofile 4096
sudo vim /etc/pam.d/su
將 pam_limits.so 這一行注釋去掉
重起系統(tǒng)
清除僵尸進(jìn)程
ps -eal | awk '{ if ($2 == "Z") {print $4}}' | xargs sudo kill -9
將大于120M內(nèi)存的php-cgi都?xì)⒌?/p>
ps -eo pid,fname,rss|grep php-cgi|grep -v grep|awk '{if($3=120000) print $1}' | xargs sudo kill -9
Linux系統(tǒng)中如何限制用戶進(jìn)程CPU占用率
renice +10 `ps aux | awk '{ if ($3 0.8 id -u $1 500) print $2}'`
#或直接編輯/etc/security/limits.conf文件。 ;
linux命令格式:
說明:command: 命令名,相應(yīng)功能的英文單詞或單詞的縮寫 [-options]:選項(xiàng),可用來對命令進(jìn)行控制,也可以省略,[]代表可選 parameter1 …:傳給命令的參數(shù):可以是零個(gè)一個(gè)或多個(gè)
一般是linux命令自帶的幫助信息
如:
man是linux提供的一個(gè)手冊,包含了絕大部分的命令、函數(shù)使用說明
該手冊分成很多章節(jié)(section),使用man時(shí)可以指定不同的章節(jié)來瀏覽。
例:man ls ; man 2 printf
man中各個(gè)section意義如下:
man是按照手冊的章節(jié)號(hào)的順序進(jìn)行搜索的。
man設(shè)置了如下的功能鍵:
在敲出命令的前幾個(gè)字母的同時(shí),按下tab鍵,系統(tǒng)會(huì)自動(dòng)幫我們補(bǔ)全命令
當(dāng)系統(tǒng)執(zhí)行過一些命令后,可按上下鍵翻看以前的命令,history將執(zhí)行過的命令列舉出來
ls是英文單詞list的簡寫,其功能為列出目錄的內(nèi)容,是用戶最常用的命令之一,它類似于DOS下的dir命令。
Linux文件或者目錄名稱最長可以有265個(gè)字符,“.”代表當(dāng)前目錄,“..”代表上一級(jí)目錄,以“.”開頭的文件為隱藏文件,需要用 -a 參數(shù)才能顯示。
ls常用參數(shù):
Linux允許將命令執(zhí)行結(jié)果重定向到一個(gè)文件,本應(yīng)顯示在終端上的內(nèi)容保存到指定文件中。
如:ls test.txt ( test.txt 如果不存在,則創(chuàng)建,存在則覆蓋其內(nèi)容 )
注意: 輸出重定向會(huì)覆蓋原來的內(nèi)容,輸出重定向則會(huì)追加到文件的尾部。
查看內(nèi)容時(shí),在信息過長無法在一屏上顯示時(shí),會(huì)出現(xiàn)快速滾屏,使得用戶無法看清文件的內(nèi)容,此時(shí)可以使用more命令,每次只顯示一頁,按下空格鍵可以顯示下一頁,按下q鍵退出顯示,按下h鍵可以獲取幫助。
管道:一個(gè)命令的輸出可以通過管道做為另一個(gè)命令的輸入。
管道我們可以理解現(xiàn)實(shí)生活中的管子,管子的一頭塞東西進(jìn)去,另一頭取出來,這里“ | ”的左右分為兩端,左端塞東西(寫),右端取東西(讀)。
clear作用為清除終端上的顯示(類似于DOS的cls清屏功能),也可使用快捷鍵:Ctrl + l ( “l(fā)” 為字母 )。
在使用Unix/Linux的時(shí)候,經(jīng)常需要更換工作目錄。cd命令可以幫助用戶切換工作目錄。Linux所有的目錄和文件名大小寫敏感
cd后面可跟絕對路徑,也可以跟相對路徑。如果省略目錄,則默認(rèn)切換到當(dāng)前用戶的主目錄。
使用pwd命令可以顯示當(dāng)前的工作目錄,該命令很簡單,直接輸入pwd即可,后面不帶參數(shù)。
通過mkdir命令可以創(chuàng)建一個(gè)新的目錄。參數(shù)-p可遞歸創(chuàng)建目錄。
需要注意的是新建目錄的名稱不能與當(dāng)前目錄中已有的目錄或文件同名,并且目錄創(chuàng)建者必須對當(dāng)前目錄具有寫權(quán)限。
可使用rmdir命令刪除一個(gè)目錄。必須離開目錄,并且目錄必須為空目錄,不然提示刪除失敗。
可通過rm刪除文件或目錄。使用rm命令要小心,因?yàn)槲募h除后不能恢復(fù)。為了防止文件誤刪,可以在rm后使用-i參數(shù)以逐個(gè)確認(rèn)要?jiǎng)h除的文件。
常用參數(shù)及含義如下表所示:
Linux鏈接文件類似于Windows下的快捷方式。
鏈接文件分為軟鏈接和硬鏈接。
軟鏈接:軟鏈接不占用磁盤空間,源文件刪除則軟鏈接失效。
硬鏈接:硬鏈接只能鏈接普通文件,不能鏈接目錄。
使用格式:
如果沒有-s選項(xiàng)代表建立一個(gè)硬鏈接文件,兩個(gè)文件占用相同大小的硬盤空間,即使刪除了源文件,鏈接文件還是存在,所以-s選項(xiàng)是更常見的形式。
注意:如果軟鏈接文件和源文件不在同一個(gè)目錄,源文件要使用絕對路徑,不能使用相對路徑。
Linux系統(tǒng)中g(shù)rep命令是一種強(qiáng)大的文本搜索工具,grep允許對文本文件進(jìn)行模式查找。如果找到匹配模式, grep打印包含模式的所有行。
grep一般格式為:
在grep命令中輸入字符串參數(shù)時(shí),最好引號(hào)或雙引號(hào)括起來。例如:grep‘a(chǎn) ’1.txt。
常用選項(xiàng)說明:
find命令功能非常強(qiáng)大,通常用來在特定的目錄下搜索符合條件的文件,也可以用來搜索特定用戶屬主的文件。
常用用法:
cp命令的功能是將給出的文件或目錄復(fù)制到另一個(gè)文件或目錄中,相當(dāng)于DOS下的copy命令。
常用選項(xiàng)說明:
用戶可以使用mv命令來移動(dòng)文件或目錄,也可以給文件或目錄重命名。
常用選項(xiàng)說明:
計(jì)算機(jī)中的數(shù)據(jù)經(jīng)常需要備份,tar是Unix/Linux中最常用的備份工具,此命令可以把一系列文件歸檔到一個(gè)大文件中,也可以把檔案文件解開以恢復(fù)數(shù)據(jù)。
tar使用格式 tar [參數(shù)] 打包文件名 文件
tar命令很特殊,其參數(shù)前面可以使用“-”,也可以不使用。
常用參數(shù):
tar與gzip命令結(jié)合使用實(shí)現(xiàn)文件打包、壓縮。 tar只負(fù)責(zé)打包文件,但不壓縮,用gzip壓縮tar打包后的文件,其擴(kuò)展名一般用xxxx.tar.gz。
gzip使用格式如下:
gzip [選項(xiàng)] 被壓縮文件
常用選項(xiàng):
tar與bzip2命令結(jié)合使用實(shí)現(xiàn)文件打包、壓縮(用法和gzip一樣)。
tar只負(fù)責(zé)打包文件,但不壓縮,用bzip2壓縮tar打包后的文件,其擴(kuò)展名一般用xxxx.tar.gz2。
在tar命令中增加一個(gè)選項(xiàng)(-j)可以調(diào)用bzip2實(shí)現(xiàn)了一個(gè)壓縮的功能,實(shí)行一個(gè)先打包后壓縮的過程。
壓縮用法:tar -jcvf 壓縮包包名 文件...(tar jcvf bk.tar.bz2 *.c)
解壓用法:tar -jxvf 壓縮包包名 (tar jxvf bk.tar.bz2)
通過zip壓縮文件的目標(biāo)文件不需要指定擴(kuò)展名,默認(rèn)擴(kuò)展名為zip。
壓縮文件:zip [-r] 目標(biāo)文件(沒有擴(kuò)展名) 源文件
解壓文件:unzip -d 解壓后目錄文件 壓縮文件
whoami該命令用戶查看當(dāng)前系統(tǒng)當(dāng)前賬號(hào)的用戶名??赏ㄟ^cat /etc/passwd查看系統(tǒng)用戶信息。
由于系統(tǒng)管理員通常需要使用多種身份登錄系統(tǒng),例如通常使用普通用戶登錄系統(tǒng),然后再以su命令切換到root身份對傳統(tǒng)進(jìn)行管理。這時(shí)候就可以使用whoami來查看當(dāng)前用戶的身份。
who命令用于查看當(dāng)前所有登錄系統(tǒng)的用戶信息。
常用選項(xiàng):
如果是圖形界面,退出當(dāng)前終端;
如果是使用ssh遠(yuǎn)程登錄,退出登陸賬戶;
如果是切換后的登陸用戶,退出則返回上一個(gè)登陸賬號(hào)。
在Unix/Linux中添加用戶賬號(hào)可以使用adduser或useradd命令,因?yàn)閍dduser命令是指向useradd命令的一個(gè)鏈接,因此,這兩個(gè)命令的使用格式完全一樣。
useradd命令的使用格式如下:
useradd [參數(shù)] 新建用戶賬號(hào)
在Unix/Linux中,超級(jí)用戶可以使用passwd命令為普通用戶設(shè)置或修改用戶口令。用戶也可以直接使用該命令來修改自己的口令,而無需在命令后面使用用戶名。
可以通過su命令切換用戶,su后面可以加“-”。su和su –命令不同之處在于,su -切換到對應(yīng)的用戶時(shí)會(huì)將當(dāng)前的工作目錄自動(dòng)轉(zhuǎn)換到切換后的用戶主目錄:
注意:如果是ubuntu平臺(tái),需要在命令前加“sudo”,如果在某些操作需要管理員才能操作,ubuntu無需切換到root用戶即可操作,只需加“sudo”即可。sudo是ubuntu平臺(tái)下允許系統(tǒng)管理員讓普通用戶執(zhí)行一些或者全部的root命令的一個(gè)工具,減少了root 用戶的登陸和管理時(shí)間,提高了安全性。
方法一:
方法二:
groupadd 新建組賬號(hào) groupdel 組賬號(hào) cat /etc/group 查看用戶組
使用方法:usermod -g 用戶組 用戶名
新創(chuàng)建的用戶,默認(rèn)不能sudo,需要進(jìn)行一下操作
-g用來制定這個(gè)用戶默認(rèn)的用戶組
-G一般配合'-a'來完成向其它組添加
chmod 修改文件權(quán)限有兩種使用格式:字母法與數(shù)字法。
字母法:chmod u/g/o/a +/-/= rwx 文件
cal命令用于查看當(dāng)前日歷,-y顯示整年日歷
設(shè)置時(shí)間格式(需要管理員權(quán)限):
date [MMDDhhmm[[CC]YY][.ss]] +format
CC為年前兩位yy為年的后兩位,前兩位的mm為月,后兩位的mm為分鐘,dd為天,hh為小時(shí),ss為秒。如: date 010203042016.55。
顯示時(shí)間格式(date '+%y,%m,%d,%H,%M,%S'):
進(jìn)程是一個(gè)具有一定獨(dú)立功能的程序,它是操作系統(tǒng)動(dòng)態(tài)執(zhí)行的基本單元。
ps命令可以查看進(jìn)程的詳細(xì)狀況,常用選項(xiàng)(選項(xiàng)可以不加“-”)如下:
top命令用來動(dòng)態(tài)顯示運(yùn)行中的進(jìn)程。top命令能夠在運(yùn)行后,在指定的時(shí)間間隔更新顯示信息??梢栽谑褂胻op命令時(shí)加上-d 來指定顯示信息更新的時(shí)間間隔。
在top命令執(zhí)行后,可以按下按鍵得到對顯示的結(jié)果進(jìn)行排序:
kill命令指定進(jìn)程號(hào)的進(jìn)程,需要配合 ps 使用。有些進(jìn)程不能直接殺死,這時(shí)候我們需要加一個(gè)參數(shù)“ -9 ”,“ -9 ” 代表強(qiáng)制結(jié)束.
使用格式:
kill [-signal] pid
df命令用于檢測文件系統(tǒng)的磁盤空間占用和空余情況,可以顯示所有文件系統(tǒng)對節(jié)點(diǎn)和磁盤塊的使用情況。
du命令用于統(tǒng)計(jì)目錄或文件所占磁盤空間的大小,該命令的執(zhí)行結(jié)果與df類似,du更側(cè)重于磁盤的使用狀況。
du命令的使用格式如下: du [選項(xiàng)] 目錄或文件名
1、linux分區(qū)
--在linux里面所有的設(shè)備、任何東西,在linux看來都是文件。
--文件在它看來,有兩種形式:
第一種是字符型(鍵盤輸入、打印機(jī));
第二種是二進(jìn)制型(硬盤、光驅(qū)、U盤)
--linux中所有硬件
--手動(dòng)分區(qū)
--A、至少有兩個(gè)分區(qū)
/ 根分區(qū)
SWAP 交換分區(qū)(物理內(nèi)存大小的兩倍)
--B、個(gè)人桌面分區(qū)
/
/boot 128MB is enough
/usr
SWAP
/tmp(用于光盤刻錄)
2、linux目錄說明
--/dev/xxyN
--xx (分區(qū)所在設(shè)備類型:hd--IDE硬盤 sd--SCSI硬盤)
--y (標(biāo)明分區(qū)所在設(shè)備
例如:/dev/hda 第一個(gè)IDE硬盤 或 /dev/hdb 第二個(gè)IDE硬盤 或 /dev/sdb 第二個(gè)SCSI硬盤)
--N (數(shù)字代表分區(qū):1-4--主分區(qū)或擴(kuò)展分區(qū);邏輯分區(qū)從5開始!
例如:/dev/hda3 第一個(gè)IDE硬盤上的第三個(gè)主分區(qū)或擴(kuò)展分區(qū)
/dev/sdb6 第二個(gè)SCSI硬盤上的第二個(gè)邏輯分區(qū))
3、linux目錄結(jié)構(gòu)
/ 根目錄,最高級(jí)別
/bin 系統(tǒng)基本命令存放目錄(/usr/bin)
/boot linux的內(nèi)核及引導(dǎo)系統(tǒng)程序文件存放目錄(如:vmlinuz、initrd.img)
一般情況下,GRUB或LILO系統(tǒng)引導(dǎo)管理也位于這個(gè)目錄
/dev 設(shè)備文件存儲(chǔ)目錄,如聲卡、光驅(qū)...
/ect 存放系統(tǒng)設(shè)置文件(如用戶賬號(hào)密碼、服務(wù)器配置文件等)
/home 普通用戶家目錄,默認(rèn)存放目錄
/lib 庫文件存放目錄
/lost+found 在ext2或ext3文件系統(tǒng)中,當(dāng)系統(tǒng)以外崩潰或機(jī)器意外關(guān)機(jī),而產(chǎn)生一些文件碎片放在這里。
當(dāng)系統(tǒng)啟動(dòng)的過程中,fsck工具會(huì)檢查這里,并修復(fù)已經(jīng)損壞的文件系統(tǒng)。
有事喜用發(fā)生問題,有很多的文件被移到這個(gè)目錄中,可能會(huì)用手工的方式來修復(fù),或者移文件到原來的位置上。
/media 即插即用型存儲(chǔ)設(shè)備的掛載點(diǎn)自動(dòng)在這個(gè)目錄下創(chuàng)建。
如USB盤系統(tǒng)自動(dòng)掛在后,會(huì)在這個(gè)目錄下產(chǎn)生一個(gè)目錄;
類似cdrom的目錄
/mnt 存放掛載存儲(chǔ)設(shè)備的掛載目錄,如cdrom等目錄
/opt 表示可選的意思,有些軟件包也會(huì)被安裝在此,也就是自定義軟件包,
比如OpenOffice,或者一些我們自己編譯的軟件包,也可安裝此處。
/proc 操作系統(tǒng)運(yùn)行時(shí),進(jìn)程(正在運(yùn)行的程序)信息及內(nèi)核信息(比如CPU、硬盤分區(qū)、內(nèi)存信息等)存放在此。
/proc目錄是偽裝的文件系統(tǒng)proc的掛載目錄,proc并不是真正的文件系統(tǒng)
/root linux超級(jí)權(quán)限用戶root的家目錄
/sbin 大多是涉及系統(tǒng)管理的命令的存放,只有超級(jí)權(quán)限用戶root才可執(zhí)行命令存放,普通用戶無權(quán)限執(zhí)行此目錄下的命令
與 /usr/sbin; /usr/X11R6/sbin; usr/local/sbin 目錄相似
(sbin,只有root權(quán)限才能執(zhí)行)
/tmp 臨時(shí)文件目錄,有時(shí)用戶運(yùn)行程序的時(shí)候,會(huì)產(chǎn)生臨時(shí)文件。
/var/tmp目錄和此目錄相似
/usr 系統(tǒng)存放程序的目錄,如命令、幫助文件等。這個(gè)目錄下有很多的文件和目錄。
大部分Linux發(fā)行版提供的軟件包都安裝在此,涉及服務(wù)器的配置文件就安裝在/ect中。
/usr/share/fonts 字體目錄
/usr/share/man 或 /usr/share/doc 幫助目錄
/usr/bin 或 /usr/local/bin 或 /usr/X11R6/bin 普通用戶可執(zhí)行文件目錄
/usr/sbin 或 /usr/local/sbin 或 /usr/X11R6/sbin 超級(jí)權(quán)限用戶root可執(zhí)行命令存放目錄
/usr/include 程序頭文件存放目錄
/var (vary)此目錄經(jīng)常變動(dòng)
/var/log 用來存放系統(tǒng)日志
/var/www 用來定義Apache服務(wù)器站點(diǎn)存放
/var/lib 用來存放一些庫文件,如MySQL的,以及MySQL數(shù)據(jù)庫的存放地。
4、基本命令
--查看幫助 *** --help *** --?
--查看詳細(xì)幫助 man ***
--登錄 login
--退出窗口 exit
--關(guān)機(jī) shutdown
--重啟 reboot
--初始化 init (run level -/etc/inittab),0-6看第六部分的g
--進(jìn)入根目錄 cd /
--回上層目錄 cd ..
--相對路徑 cd dev
--絕對路徑 cd /dev
--查用戶名 whoami
--查當(dāng)前目錄 pwd
--列出當(dāng)前目錄內(nèi)容 ls
-l(樹詳細(xì)顯示目錄內(nèi)容)
-m(橫列顯示目錄內(nèi)容,是屏幕長度顯示)
-a(列出全部文件,包括隱藏文件)
-S(以文檔大小排序)
--創(chuàng)建目錄 mkdir dname
--刪除目錄 rmdir dname
rm -r *** -(遞歸刪除該目錄下所有內(nèi)容,詢問每個(gè)準(zhǔn)備刪除的文件)
rm -rf ***-(強(qiáng)制刪除該目錄下所有內(nèi)容,不詢問)
--創(chuàng)建空白文件 touch ***
(ps:從技術(shù)的角度來講,linux的文件后綴名沒有任何意義)
--復(fù)制 cp
cp -r **1 **2 (復(fù)制1到2中)
--移動(dòng) mv
mv -t **1 **2 (把2移動(dòng)到1中)
--編輯文本 vi [文件名]
--查看文本 cat 由第一行開始顯示文本內(nèi)容
tac 從最后一行顯示,可以看出 tac 是 cat 的倒著寫
more 一頁一頁的顯示文檔內(nèi)容
less 與 more 類似,可以往前翻頁
head 只看頭幾行
-N(數(shù)字,可根據(jù)行數(shù)顯示)
tail 只看后幾行
-N(數(shù)字,可根據(jù)行數(shù)顯示)
nl 顯示的時(shí)候,順序輸出行號(hào)
od 以二進(jìn)制位的方式讀取檔案內(nèi)容
--查找文本 find [路徑][查找類型][搜索文件名]
如查找rc.local find /etc -name *.local
--查找命令信息及其位置 whereis 命令
如 whereis ls
--查看環(huán)境變量 echo $SHELL
如 echo $PATH (分大小寫:分隔符是:,windows是echo %path%;)
--鏈接 ln
如 ln joe.txt a (硬鏈接,如同復(fù)制一個(gè)新文件,joe.txt刪除后,a還存在)
a是鏈接的名稱,a和joe.txt同步,然后a的內(nèi)容和joe.txt一樣
joe.txt改變,a也跟著變
如 ln -s joe.txt b (軟鏈接,如同創(chuàng)建一個(gè)快捷方式,joe.txt刪除后,b不存在)
--wc 統(tǒng)計(jì)指定文本文件的行數(shù)、字?jǐn)?shù)、字符數(shù)
--grep(很常用) 在指定的文本文件中查找指定的字符串
grep 字符串 文件名
--col 見管道..
--------------------
----信息顯示命令----
--------------------
--date 顯示和設(shè)置日期
--stat 顯示指定文件的相關(guān)信息
--who、w 顯示在線登錄用戶
--whoami 顯示用戶自己的身份
--id 顯示當(dāng)前用戶的id信息
--hostname 顯示主機(jī)名稱
--uname 顯示操作系統(tǒng)信息
--dmesg 顯示系統(tǒng)啟動(dòng)信息
--du 顯示指定的文件(目錄)已使用的磁盤空間
--df 顯示文件系統(tǒng)磁盤空間的使用情況
--free 顯示當(dāng)前內(nèi)存和交換空間的使用情況
--fdisk -l 顯示磁盤信息
--locale 顯示當(dāng)前語言環(huán)境
5、掛載點(diǎn)(mount 設(shè)備目錄 掛載目錄)
--訪問設(shè)備 (那設(shè)備當(dāng)成一個(gè)文件,和另外一個(gè)文件夾進(jìn)行綁定)
--例如掛載光驅(qū):步驟 [cd /mnt]---[mkdir cdr]---[mount /dev/cdrom /mnt/cdr]---[cd cdr]--OK!直接訪問光驅(qū)內(nèi)容
--卸載掛載設(shè)備(umount /dev/cdrom)--注意必須先退出掛載目錄,否則出現(xiàn)"device is busy"錯(cuò)誤.
6、startup-shutdown(linux啟動(dòng)流程)
--A、boot sequence(important) linux啟動(dòng)過程
a. load bios(hardware information)
b. read MBR's config to find out the OS
(MBR--Master Boot Record,硬盤第一個(gè)物理扇區(qū),柱面0、磁頭0、扇區(qū)1,包含主引導(dǎo)程序和硬盤分區(qū)表)
c. load the kernel of the OS
(加載為kernel核心的OS)
d. init process starts...
(啟動(dòng)linux第一個(gè)進(jìn)程init)
e. execute /etc/rc.d/sysinit
(執(zhí)行系統(tǒng)最重要的配置文件,后臺(tái)啟用進(jìn)程)
(rc.d--run command)
f. start other modules(stc/modules.conf)
(開啟各種模塊,如內(nèi)存管理模塊、硬盤管理模塊)
g. execute the run level scripts
(系統(tǒng)啟動(dòng)是分層次的,根據(jù)情況執(zhí)行,每個(gè)層次之間沒關(guān)系)
0 - 系統(tǒng)停機(jī)狀態(tài)
1 - 單用戶工作狀態(tài) root
2 - 多用戶狀態(tài)(沒有NFS)
3 - 多用戶狀態(tài)(有NFS)
NFS - Network File System 網(wǎng)絡(luò)文件系統(tǒng),聯(lián)網(wǎng)系統(tǒng)
4 - 系統(tǒng)未使用,留給用戶
5 - 圖形界面
6 - 系統(tǒng)正常關(guān)閉并重新啟動(dòng)
如:cd /etc -- 有rc0.d、rc1.d、rc2.d、rc3.d、rc4.d、rc5.d等多個(gè)文件夾,保存著各個(gè)層次執(zhí)行的進(jìn)程文件
h. execute /etc/rc.d/rc.local (重要)
(保存其它進(jìn)程腳本,如tomcat自動(dòng)啟動(dòng),要修改此配置文件)
i. execute /bin/login
(登錄界面)
j. shell started...
7、vi 文本編輯器
--兩種模式:命令模式 編輯模式
--vi [文件名]
(切換到編輯模式)
a append-光標(biāo)后添加
i insert-光標(biāo)前插入
o open-另起一行編輯
esc (切換回命令模式)
:w 存盤
:wq 存盤退出
:q 退出
:q! 不存盤退出
dd 刪除其中一行
dw 刪除一個(gè)單詞
(sudo gedit 文本 常用linux下的文本編輯器,比vi好用)
8、用戶設(shè)置
--切換用戶(switch user) su username
小技巧:直接exit切換
--添加用戶 useradd username [-g] [組名](分配到某個(gè)用戶組)
(創(chuàng)建后會(huì)自動(dòng)在/home目錄下創(chuàng)建該新用戶的文件夾,如/home/username)
--設(shè)置密碼 passwd username
--cd /etc
--查看用戶信息 more password
如新增的用戶信息:username:x:500:500::/home/username:/bin/bash
第一個(gè)數(shù)字,代表用戶組,當(dāng)添加用戶沒有指定用戶組時(shí),系統(tǒng)會(huì)創(chuàng)建一個(gè)和用戶ID一樣的組ID;
第二個(gè)數(shù)字:用戶ID號(hào);
用戶的目錄是/home/username;
用戶的SHELL是/bin/bash
(命令---SHELL[解釋命令]---kenrel內(nèi)核)
SHELL有多種類型,如csh、bash(常用)、bsh、ksh、sh(最原始)
--添加用戶組 groupadd groupname
--查看用戶組信息 more group
--刪除用戶組 groupdel groupname
--修改用戶 usermod [-g] [組名] [用戶名]
--刪除用戶 userdel username
然后把/home的文件夾刪除了 rm -rf 文件夾
9、權(quán)限file privilege
--linux把文件的權(quán)限分成四種:r:read w:write x:execute -:none
如:-rw-r--r--
lrwxrwxrwx
drwxr-xr-x
drwxr-xr-x
第一個(gè)數(shù)字'-'代表文件,其余是文件夾,后9位分為3組,每組有四種權(quán)限設(shè)置rwx-
第一位表示文件所有者
第二位表示和所有者在同一用戶組的用戶
第三位表示不在同一用戶組的用戶權(quán)限
--設(shè)置權(quán)限 (隨意應(yīng)用,靈活組合!)
1、普通用法
--添加權(quán)限 [chmod +x 文件]
如:-rw-r--r-- --- -rwxr-xr-x
--刪除權(quán)限 [chmod -x 文件]
如:-rwxr-xr-x --- -rw-r--r--
--給自己添加權(quán)限 [chmod ?+x 文件]
如此類推,組--g,其他人--o
如:chmod u+x -rw-r--r-- --- -rwxr--r--
chmod g+x -rw-r--r-- --- -rw-r-xr--
chmod o+x -rw-r--r-- --- -rw-r--r-x
2、專業(yè)用法 chmod 755/777
--原理,八進(jìn)制轉(zhuǎn)二進(jìn)制
如755,111 101 101, rwx r-x r-x
777,111 111 111, rwx rwx rwx
--修改所有者權(quán)限 chown (change owner)
如:chown 原來文件 file1 的所有者是 root,改成joe的
chown joe file1
10、管道(把上一個(gè)命令執(zhí)行的結(jié)果交給下一個(gè)命令)
--使用方法:
命令1|命令2|命令3......|命令n
--使用舉例
--$ls -Rl /etc | more
(如 ls -Rl /etc (在控制臺(tái)模式下,無法返回前面過去的信息),因此需要管道執(zhí)行該查詢,實(shí)現(xiàn)分頁的工作, ls -Rl /etc | more)
--$cat /etc/passwd | wc
(顯示文件結(jié)果,再數(shù)數(shù)有多少行)
--$cat /etc/passwd | grep lrj
(顯示文件結(jié)果,再查找包含lrj的行)
--#dmesg | grep eth0
(顯示系統(tǒng)啟動(dòng)的信息,再查找包含eth0的行--真正含義,檢查網(wǎng)卡執(zhí)行信息是否正常)
--$man bash | col -b bash.txt
語法:col [-bfx][-l緩沖區(qū)列數(shù)]
補(bǔ)充說明:在許多UNIX說明文件里,都有RLF控制字符。當(dāng)我們運(yùn)用shell特殊字符""和"",把說明文件的內(nèi)容輸出成純文本文件時(shí),控制字符會(huì)變成亂碼,col指令則能有效濾除這些控制字符。
參數(shù):
-b 過濾掉所有的控制字符,包括RLF和HRLF。
-f 濾除RLF字符,但允許將HRLF字符呈現(xiàn)出來。
-x 以多個(gè)空格字符來表示跳格字符。
-l緩沖區(qū)列數(shù) 預(yù)設(shè)的內(nèi)存緩沖區(qū)有128列,您可以自行指定緩沖區(qū)的大小。
--$ls -l | grep "^d"
(用正則表達(dá)式篩選出目錄列表中 頭字母為'd' 的內(nèi)容--目錄)(^是正則表達(dá)式開頭部分)
--$ls -l * | grep "^-" | wc -l
(列出目錄列表中 頭字符為'-'的內(nèi)容--文件,并統(tǒng)計(jì)顯示的行數(shù)wc -l)
11、其他命令
--wall(warning all) 通知所有人
a.命令替換
如 wall `date`、 cd 'pwd'、mkbootdisk $(uname -r)
b.重定向
重定向輸出:
如 ls cmd.txt ,把文件寫到cmd.txt,不輸出在控制臺(tái)
ls cmd.txt ,把文件追加寫到cmd.txt
重定向輸入:
如 wall cmd.txt,把文本內(nèi)容發(fā)給所有人
12、修改系統(tǒng)的默認(rèn)系統(tǒng)級(jí)別
常用3和5
3 - 多用戶狀態(tài)(有NFS)
NFS - Network File System 網(wǎng)絡(luò)文件系統(tǒng),聯(lián)網(wǎng)系統(tǒng)
5 - 圖形界面
PS.設(shè)置用戶權(quán)限: sudo chmod 777 目錄
4表示讀,2表示寫,1表示執(zhí)行.
第一位表示文件所有者,第二位表示和所有者在同一用戶組的用戶,第三位表示不在同一用戶組的用戶權(quán)限.
755表示文件所有者可讀寫,執(zhí)行.
第二位5表示與所有者在同一用戶組的可讀,可執(zhí)行,不可寫.
第三位5表示其它組可讀,可執(zhí)行,不可寫. 轉(zhuǎn)載于Joewalker在本人空間也有詳細(xì)說明
作為一個(gè)程序員或者測試開發(fā)人員,我們在進(jìn)行項(xiàng)目部署和運(yùn)維時(shí),經(jīng)常會(huì)用到一些linux命令,可是這些命令老是忘記,每次用到的時(shí)候都要去谷歌百度,很是麻煩!這不,為了自己使用方便,對常見的linux命令, SHELL, VIM, Linux性能調(diào)優(yōu)和linux kernel的總結(jié),以便在用到時(shí)能夠快速地找到相關(guān)命令,同時(shí)有需要的朋友也可以參考搜藏該篇文章!文章對講到的每個(gè)命令都有詳細(xì)的參數(shù)解釋,并且給出一些常用例子,因此也非常適合用來學(xué)習(xí)!
shell(命令解釋器)自帶的命令稱為內(nèi)部命令,其它的是外部命令
內(nèi)部命令使用help幫助:help cd
外部命令使用help幫助:ls --help
type命令:用于區(qū)分是內(nèi)部命令還是外部命令:
ls is aliased to `ls --color=auto' #外部命令
cd is a shell builtin #內(nèi)部命令
pwd命令:顯示當(dāng)前目錄
ls命令:查看目錄和文件名稱
ls -l 查看目錄各個(gè)字段含義
第一字段:首字母代表的是文件類型 ,其中"-"為普通文件、"d"為目錄文件、"c"為字符設(shè)備文件、"b"為塊設(shè)備文件、"p"為管道文件、"l"為鏈接文件、"s"為socket文件?!皉wx”分別代表擁有讀、寫和執(zhí)行權(quán)限,"-代表無對應(yīng)權(quán)限。三個(gè)"rwx"依次代表文件所有者、文件所有者所在用戶組、其它用戶對文件擁有的權(quán)限。
第二字段:文件硬連接數(shù)量
第三字段:文件擁有者
第四字段:文件擁有者所在組
第五字段:文件大?。ㄒ宰止?jié)為單位)
第六字段:文件最后更改時(shí)間
第七字段:文件名(若為鏈接文件則追加顯示其鏈接的原文件的路徑)
ls命令其它參數(shù)含義:
-a顯示隱藏文件(.開頭的文件)
-r逆序排序
-t按照時(shí)間順序顯示
-R遞歸顯示
ls -lartR : 按照時(shí)間順序倒序顯示所有文件及其文件夾的文件
cd命令:更改當(dāng)前的工作目錄
cd /path/... 絕對路徑
cd ./path/... 相對路徑(./可以省略)
cd ../path/... 相對路徑
mkdir -p 遞歸目錄:遞歸創(chuàng)建目錄
rmdir命令:刪除目錄
rmdir a/b/c/d/e/ #刪除空目錄
rm -r a/b/c/d/ #遞歸刪除目錄,但是系統(tǒng)會(huì)做多次詢問
rm -rf a/b/c/d/ #刪除目錄,不做任何詢問
cp命令:復(fù)制文件和目錄
-r 復(fù)制目錄
-p 保留用戶、權(quán)限、時(shí)間等文件屬性
mv命令:移動(dòng)文件和重命名
mv *.log 目標(biāo)目錄
通配符:
*匹配任何字符串
?匹配一個(gè)字符串
[xyz]任何一個(gè)字符串
[a-z]匹配一個(gè)范圍
cat命令:文本內(nèi)容顯示到終端
head命令:查看文件開頭
head -3 文件名稱 #顯示文件開頭3行
tail命令:查看文件末尾
tail -3 文件名稱 #顯示文件末尾3行
tail常用參數(shù)-f,文件內(nèi)容更新后,同步顯示更新的文件信息
tail -f 文件名稱
wc命令:統(tǒng)計(jì)文件內(nèi)容信息
wc 文件名稱
useradd命令:新建用戶
useradd 用戶名
userdel命令:刪除用戶
userdel 用戶名 用戶所在的家目錄不會(huì)被刪除
userdel -r 用戶名 用戶相關(guān)的所有配置都會(huì)被刪除
passwd命令:修改用戶密碼
passwd 用戶名
usermod命令:修改用戶屬性
/etc/passwd文件:查看用戶文件
tail /etc/passwd
/etc/shadow文件:查看用戶密碼
tail /etc/shadow
groupadd命令:添加用戶組
groupadd 用戶組
groupdel命令:刪除用戶組
groupdel 用戶組
用戶切換
su 用戶名 切換用戶,但是用戶所在環(huán)境不變,即pwd路徑不會(huì)變化
su - 用戶名 切換用戶,同時(shí)會(huì)切換到用戶家目錄,即/home/用戶名
sudo命令:普通用戶需要執(zhí)行root用戶權(quán)限的解決方案。
以下是一些常用命令匯總;The following table provides a reminder of most of the commands that we have covered so far. If you include the three, as-yet-unmentioned, commands in the last column, then you will probably be able to achieve 95% of everything that you will ever want to do in Unix (remember, you can use the man command to find out more about top , ps , and kill ). The power comes from how you can use combinations of these commands.
-c 'cc-address' -b 'bcc-address'
'to-address' | Command to send email | | mail -s "Subject"
to-address Filename` | Command to send email with attachment |
File Permission commands
Hope this Linux reference guide helps you!
希望這些常用的命令和系統(tǒng)原理,以及l(fā)inux操作可以幫助大家提升linux命令和操作?。?!
本文并不會(huì)對所有命令進(jìn)行詳細(xì)講解,只給出常見用法和解釋。具體用法可以使用 --help 查看幫助或者直接通過google搜索學(xué)習(xí)。
find / -name filename.txt 根據(jù)名稱查找/目錄下的filename.txt文件。
find . -name "*.xml" 遞歸查找所有的xml文件
find . -name "*.xml" |xargs grep "hello world" 遞歸查找所有文件內(nèi)容中包含hello world的xml文件
grep -H 'spring' *.xml 查找所以有的包含spring的xml文件
find ./ -size 0 | xargs rm -f 刪除文件大小為零的文件
ls -l | grep '.jar' 查找當(dāng)前目錄中的所有jar文件
grep 'test' d* 顯示所有以d開頭的文件中包含test的行。
grep 'test' aa bb cc 顯示在aa,bb,cc文件中匹配test的行。
grep '[a-z]{5}' aa 顯示所有包含每個(gè)字符串至少有5個(gè)連續(xù)小寫字符的字符串的行。
ps -ef|grep tomcat 查看所有有關(guān)tomcat的進(jìn)程
kill -9 19979 終止線程號(hào)位19979的進(jìn)程
ls -al
pwd
cp source dest 復(fù)制文件
cp -r sourceFolder targetFolder 遞歸復(fù)制整個(gè)文件夾
scp sourecFile romoteUserName@remoteIp:remoteAddr 遠(yuǎn)程拷貝
mkdir newfolder
rmdir deleteEmptyFolder 刪除空目錄
rm -rf deleteFile 遞歸刪除目錄中所有內(nèi)容
mv /temp/movefile /targetFolder
mv oldNameFile newNameFile
su -username
chmod 777 file.java file.java 的權(quán)限 -rwxrwxrwx ,r表示讀、w表示寫、x表示可執(zhí)行
tar -czf test.tar.gz /test1 /test2
tar -tzf test.tar.gz
tar -xvzf test.tar.gz
head -n 10 example.txt
tail -n 10 example.txt
tail -f exmaple.log 這個(gè)命令會(huì)自動(dòng)顯示新增內(nèi)容,屏幕只顯示10行內(nèi)容的(可設(shè)置)。
sudo rm a.txt 使用管理員身份刪除文件
netstat -tln | grep 8080 查看端口8080的使用情況
lsof -i :8080
ps aux|grep java 查看java進(jìn)程
ps aux 查看所有進(jìn)程
tree a
wget
curl
ping
ssh userName@ip
echo $JAVA_HOME 打印java home環(huán)境變量的值
java javac jps ,jstat ,jmap, jstack
svn git maven
歡迎補(bǔ)充!~