今日小技巧:
查看系統(tǒng)發(fā)行版本
cat?/etc/issue
或者cat?/etc/redhat-release
或者cat?/etc/centos-release
今日小技巧:
提高make編譯速度
make?-j?4
make?使用更多的cpu?內(nèi)核
服務(wù)器可以ping通IP,ping不通域名
檢查DNS是否有配置
樣例:
cat?/etc/resolv.conf
nameserver
114.114.114.114
nameserver
8.8.8.8
今日小技巧:
查看cpu信息
cat?/proc/cpuinfo
今日小技巧:
top命令技巧之一
shift?+m?按內(nèi)存排序
c?按內(nèi)存排序
今日小技巧:
查看內(nèi)存信息
cat?/proc/meminfo
今日小技巧:
熟悉linux目錄
/bin??存放二進(jìn)制可執(zhí)行文件(ls,cat,mkdir等)胖腾,常用命令一般都在這里
/etc??配置文件
/home?用戶家目錄
/root?超級用戶(系統(tǒng)管理員)的主目錄
/sbin?存放二進(jìn)制可執(zhí)行文件,超級權(quán)限用戶才能訪問
/dev??設(shè)備文件
/mnt??臨時(shí)文件系統(tǒng)的安裝點(diǎn)
/tmp??存放各種臨時(shí)文件
/boot?存放用于系統(tǒng)引導(dǎo)時(shí)使用的各種文件
/lib??存放跟文件系統(tǒng)中的程序運(yùn)行所需要的共享庫及內(nèi)核模塊
/var??用于存放運(yùn)行時(shí)需要改變數(shù)據(jù)的文件
更多小技巧,免費(fèi)視頻,內(nèi)推崗位請?jiān)L問
今日小技巧:
cp?命令龙屉,主要用來復(fù)制文件和目錄嗡善,同時(shí)借助某些選項(xiàng),還可以實(shí)現(xiàn)復(fù)制整個(gè)目錄褐荷,以及比對兩文件的新舊而予以升級等功能。
cp?命令的基本格式如下:
[root@localhost?~]#?cp?[選項(xiàng)]?源文件?目標(biāo)文件
選項(xiàng):
-a:相當(dāng)于?-d哀蘑、-p诚卸、-r?選項(xiàng)的集合,這幾個(gè)選項(xiàng)我們一一介紹绘迁;
-d:如果源文件為軟鏈接(對硬鏈接無效)合溺,則復(fù)制出的目標(biāo)文件也為軟鏈接;
-i:詢問缀台,如果目標(biāo)文件已經(jīng)存在棠赛,則會詢問是否覆蓋;
-l:把目標(biāo)文件建立為源文件的硬鏈接文件膛腐,而不是復(fù)制源文件睛约;
-s:把目標(biāo)文件建立為源文件的軟鏈接文件,而不是復(fù)制源文件哲身;
-p:復(fù)制后目標(biāo)文件保留源文件的屬性(包括所有者辩涝、所屬組、權(quán)限和時(shí)間)勘天;
-r:遞歸復(fù)制怔揩,用于復(fù)制目錄捉邢;
-u:若目標(biāo)文件比源文件有差異,則使用該選項(xiàng)可以更新目標(biāo)文件商膊,此選項(xiàng)可用于對文件的升級和備用伏伐。
更多小技巧,免費(fèi)視頻晕拆,內(nèi)推崗位請?jiān)L問
今日小技巧:
tr命令進(jìn)行大小寫轉(zhuǎn)換
echo?"HELLO?WORLD"?|?tr?'A-Z'?'a-z'
hello?world
更多小技巧藐翎,免費(fèi)視頻,內(nèi)推崗位請?jiān)L問
今日小技巧:
sudo?需要注意事項(xiàng)
sudo?-s?使用當(dāng)前用戶環(huán)境變量
sudo?-i?使用root環(huán)境變量
今日小技巧:
ps?aux?|grep?-v?USER?|?sort?-nk?+4?|?tail???????#?顯示消耗內(nèi)存最多的10個(gè)運(yùn)行中的進(jìn)程实幕,以內(nèi)存使用量排序.cpu?+3
#?USER???????PID?%CPU?%MEM????VSZ???RSS?TTY??????STAT?START???TIME?COMMAND
%CPU?????#?進(jìn)程的cpu占用率
%MEM?????#?進(jìn)程的內(nèi)存占用率
VSZ??????#?進(jìn)程虛擬大小,單位K(即總占用內(nèi)存大小,包括真實(shí)內(nèi)存和虛擬內(nèi)存)
RSS??????#?進(jìn)程使用的駐留集大小即實(shí)際物理內(nèi)存大小
START????#?進(jìn)程啟動時(shí)間和日期
占用的虛擬內(nèi)存大小?=?VSZ?-?RSS
ps?-eo?pid,lstart,etime,args?????????#?查看進(jìn)程啟動時(shí)間
今日小技巧:
shell變量截取和拼接
1.?使用#?號截取吝镣,刪除左邊字符,保留右邊字符茬缩。
echo?${var#*//}
其中?var?是變量名赤惊,#?號是運(yùn)算符,*//?表示從左邊開始刪除第一個(gè)?//?號及左邊的所有字符
2.?使用?##?號截取凰锡,刪除左邊字符未舟,保留右邊字符。
echo?${var##*/}
##*/?表示從左邊開始刪除最后(最右邊)一個(gè)?/?號及左邊的所有字符
3.?字符串拼接
var1="aaa"
var2="bbb"
var3=${var1}${var2}
echo?$var3
aaabbb
今日小技巧:
linux環(huán)境變量介紹
/etc/profile
這是全局的配置掂为,不管哪個(gè)用戶登錄裕膀,都會讀取
~/.bash_profile?或~/.bash_login?或~/.profile
針對特定用戶通過修改用戶目錄下的~/.bashrc來新增或者修改環(huán)境變量
針對所有用戶配置環(huán)境變量的時(shí)候,修改/etc/profile文件
更多小技巧勇哗,免費(fèi)視頻昼扛,內(nèi)推崗位請?jiān)L問
今日小技巧:
sort一些使用技巧
sort?-n???????????????#?按數(shù)字排序
sort?-nr??????????????#?按數(shù)字倒敘
sort?-u???????????????#?過濾重復(fù)行
sort?-m?a.txt?c.txt???#?將兩個(gè)文件內(nèi)容整合到一起
sort?-n?-t'?'?-k?2?-k?3?a.txt?????#?第二域相同,將從第三域進(jìn)行升降處理
sort?-n?-t':'?-k?3r?a.txt?????????#?以:為分割域的第三域進(jìn)行倒敘排列
sort?-k?1.3?a.txt?????????????????#?從第三個(gè)字母起進(jìn)行排序
sort?-t"?"?-k?2n?-u??a.txt????????#?以第二域進(jìn)行排序欲诺,如果遇到重復(fù)的抄谐,就刪除
今日小技巧:
locate(locate)?命令用來查找文件或目錄,速度比find快
安裝:yum?install?mlocate
查找my.cnf文件位置
locate?my.cnf
/usr/bin/updatedb???主要用來更新數(shù)據(jù)庫扰法,通過crontab自動完成的
/usr/bin/locate?????????查詢文件位置
/etc/updatedb.conf???updatedb的配置文件
/var/lib/mlocate/mlocate.db??存放文件信息的文件
今日小技巧:
使用?parted?建立大小超過2T的分區(qū)
1蛹含,parted?/dev/sdb
可以輸入p打印磁盤信息,查看分區(qū)的情況塞颁,找到起始和結(jié)束位置浦箱。
2,mklabel?gpt
設(shè)置分區(qū)類型為gpt
3祠锣,mkpart?primary?0%?100%
primary指分區(qū)類型為主分區(qū)酷窥,0是分區(qū)開始位置,100%是分區(qū)結(jié)束位置伴网。相同的命令為:mkpart?primary?0-1?或者是:mkpart?primary?0?XXXXXX結(jié)束的空間
4蓬推,print
打印當(dāng)前分區(qū),查看分區(qū)設(shè)置是否正確
5,quit
完成后用quit命令退出澡腾。
6拳氢,mkfs.ext4?/dev/sdb1
====================================================================
今日小技巧:
du和df的小技巧
1.?du?和df的結(jié)果為什么不一樣募逞?
du,du能看到的文件只是一些當(dāng)前存在的馋评,沒有被刪除的。他計(jì)算的大小就是當(dāng)前他認(rèn)為存在的所有文件大小的累加和刺啦。
df,?記錄的是通過文件系統(tǒng)獲取到的文件的大小留特,他比du強(qiáng)的地方就是能夠看到已經(jīng)刪除
的文件,而且統(tǒng)計(jì)在內(nèi)玛瘸。
2.?du?顯示單位技巧
-h?表示使用K蜕青,M,G的人性化形式顯示
3.?df詳細(xì)案例
a:顯示全部的檔案系統(tǒng)和各分割區(qū)的磁盤使用情形
i:顯示i?-nodes的使用量
k:大小用k來表示?(默認(rèn)值)
t:顯示某一個(gè)檔案系統(tǒng)的所有分割區(qū)磁盤使用量
x:顯示不是某一個(gè)檔案系統(tǒng)的所有分割區(qū)磁盤使用量
T:顯示每個(gè)分割區(qū)所屬的檔案系統(tǒng)名稱
今日小技巧:
dd?命令的一些技巧
1.?向磁盤上寫一個(gè)大文件,?來看寫性能
[root@roclinux?~]#?dd?if=/dev/zero?bs=1024?count=1000000?of=/root/1Gb.file
2.?從磁盤上讀取一個(gè)大文件,?來看讀性能
[root@roclinux?~]#?dd?if=/root/1Gb.file?bs=64k?|?dd?of=/dev/null
3.?測試內(nèi)存的操作速度
[root@localhost?/]#?dd?if=/dev/zero?of=./a.log?bs=10M?count=10
記錄了10+0?的讀入
記錄了10+0?的寫出
100457600字節(jié)(105?MB)已復(fù)制糊渊,0.524121?秒右核,222?MB/秒
4.利用?/dev/urandom?進(jìn)行格式化(清除機(jī)密數(shù)據(jù),防止被恢復(fù))
[root@roclinux?~]#?dd?if=/dev/urandom?of=/dev/sda
今日小技巧:
crontab 使用須知
1. 每五分鐘執(zhí)行一次
*/5 * * * * shell.sh
2. 每一分鐘執(zhí)行一次
* * * * * shell.sh
3. 每個(gè)周日 0 點(diǎn)執(zhí)行
0 0 * * 0 shell.sh
4. 凌晨2至4點(diǎn)渺绒,每小時(shí)執(zhí)行一次
0 2-4 * * * shell.sh
5. 凌晨2至4點(diǎn)贺喝,18和20點(diǎn),每小時(shí)執(zhí)行一次
0 2-4,18,20 * * * shell.sh
6. 每周末的凌晨一點(diǎn)鐘執(zhí)行一次
0 1 * * Sun /usr/sbin/raid-check
今日小技巧:
rpm必會技能
[root@localhost ~]# rpm -ivh your-package # 直接安裝
[root@localhost ~]# rpm --force -ivh your-package.rpm # 忽略報(bào)錯(cuò)宗兼,強(qiáng)制安裝
[root@localhost ~]# rpm -ql tree # 查詢tree 的所有文件
[root@localhost ~]# rpm -qa|grep tree # 查詢tree 安裝包信息
[root@localhost ~]# rpm -e tree # 卸載
[root@localhost ~]# rpm -qf /usr/bin/tree# 反向查詢躏鱼,根據(jù)文件查詢所屬安裝包
===============================================================================
今日小技巧:
臨時(shí)和永久關(guān)閉Selinux
臨時(shí)關(guān)閉:
[root@localhost?~]#?getenforce
Enforcing
[root@localhost?~]#?setenforce?0
[root@localhost?~]#?getenforce
Permissive
永久關(guān)閉:
[root@localhost?~]#?vim?/etc/sysconfig/selinux
SELINUX=enforcing?改為?SELINUX=disabled
重啟服務(wù)reboot
==============================================================
今日小技巧:
systemctl?常用命令
#?systemctl?#輸出已激活單元
#?systemctl?list-units?#輸出已激活單元
#?systemctl?--failed?#輸出運(yùn)行失敗的單元
#?systemctl?list-unit-files?#查看所有已安裝服務(wù)
#?systemctl?start?nginx?#啟動nginx
#?systemctl?stop?nginx?#停止nginx
#?systemctl?restart?nginx?#重啟nginx
#?systemctl?reload?nginx?#重新加載nginx配置
#?systemctl?status?nginx?#輸出nginx運(yùn)行狀態(tài)
#?systemctl?is-enabled?nginx?#檢查nginx是否配置為自動啟動
#?systemctl?enable?nginx?#開機(jī)自動啟動nginx
#?systemctl?disable?nginx?#取消開機(jī)自動啟動nginx
#?systemctl?help?nginx?#顯示nginx的手冊頁
#?systemctl?daemon-reload?#重新載入?systemd,掃描新的或有變動的單元
#?systemctl?reboot?#重啟
#?systemctl?poweroff?#退出系統(tǒng)并停止電源
#?systemctl?suspend?#待機(jī)
=========================================================================
今日小技巧:
systemctl和service命令對照表
任務(wù)
使某服務(wù)自動啟動?chkconfig?--level?3?httpd?on
systemctl?enable?httpd.service
使某服務(wù)不自動啟動?chkconfig?--level?3?httpd?off
systemctl?disable?httpd.service
檢查服務(wù)狀態(tài)?service?httpd?status
systemctl?status?httpd.service
顯示所有已啟動的服務(wù)?chkconfig?--list
systemctl?list-units?--type=service
啟動某服務(wù)?service?httpd?start
systemctl?start?httpd.service
停止某服務(wù)?service?httpd?stop
systemctl?stop?httpd.service
重啟某服務(wù)?service?httpd?restart
systemctl?restart?httpd.service
某服務(wù)重新加載配置文件?service?httpd?reload
systemctl?reload?httpd.service
================================================================
今日小技巧:
開啟ip轉(zhuǎn)發(fā)
方法一:(重啟會失效)
echo?1?>?/proc/sys/net/ipv4/ip_forward
方法二:(永久生效)
vim?/etc/sysctl.conf
net.ipv4.ip_forward?=?0?//該行的0改為1即可
sysctl?-p
============================================================
今日小技巧:
for?循環(huán)字符串
樣例一:
#!/bin/bash
for?i?in?`ls?/root`;
do
echo?$i?is?file?name\!?;
done
樣例二:
#!/bin/bash
for?file?in?/proc/*;
do
echo?$file?is?file?path?\!?;
done
for?循環(huán)數(shù)組
#!/bin/bash
a=("aaa"?"bbb"?"ccc")
for?str?in?${a[@]};do
echo?$str
done
======================================================================
今日小技巧:
for?循環(huán)1-100
樣例一:
#!/bin/bash
for((i=1;i<=100;i++));
do
echo?$i
done
樣例二:
#!/bin/bash
for?i?in?$(seq?1?100)
do
echo?$i
done
樣例三:
#!/bin/bash
awk?'BEGIN{for(i=1;?i<=100;?i++)?print?i}'
樣例四:
#!/bin/bash
for?i?in?{1..100}
do
echo?$i
done
======================================================
今日小技巧:
uname?必會參數(shù)
[root@localhost?~]#?uname?-a?#顯示系統(tǒng)信息
Linux?localhost.localdomain?2.6.18-238.12.1.el5?#1?SMP?Tue?May?31?13:23:01?EDT?2011?i686?i686?i386?GNU/Linux
[root@localhost?~]#?uname?-m?#顯示系統(tǒng)類型殷绍,一般情況下染苛,i386,i686是32位系統(tǒng),X86主到,X86_64是64位系統(tǒng)
i686
[root@localhost?~]#?uname?-n?#查看主機(jī)名
localhost.localdomain
[root@localhost?~]#?uname
Linux
=====================================================
比top更強(qiáng)大的實(shí)時(shí)監(jiān)控工具-htop
安裝:yum?install?ncurses-devel?htop?-y
1.?搜索進(jìn)程
鼠標(biāo)點(diǎn)擊Search?或者按下F3?或者輸入"/"茶行,?輸入進(jìn)程名進(jìn)行搜索,例如搜索ssh
2.?按下F4登钥,進(jìn)入過濾器畔师,相當(dāng)于關(guān)鍵字搜索,不區(qū)分大小寫怔鳖,例如過濾dev
3.?顯示樹形結(jié)構(gòu)?輸入"t"或按下F5茉唉,顯示樹形結(jié)構(gòu)
4.?按下F6?就可以選擇依照什么來排序,最常排序的內(nèi)容就是cpu?和memory
5.?操作進(jìn)程?F7结执、F8分別對應(yīng)nice-和nice+度陆,F(xiàn)9對應(yīng)kill給進(jìn)程發(fā)信號
6.?顯示某個(gè)用戶的進(jìn)程,在左側(cè)選擇用戶?輸入"u"献幔,在左側(cè)選擇用戶
===============================================================
linux?踢人命令
首先使用who命令查看在線用戶懂傀,然后踢人。
強(qiáng)制踢人命令格式:pkill?-kill?-t?tty
解釋:
pkill?-kill?-t? 踢人命令
tty 所踢用戶的TTY或者pts/x(x代表數(shù)字)
如上踢出liu用戶的命令為:?pkill?-kill?-t?pts/1
只有root用戶才能踢人蜡感。
如果同時(shí)有二個(gè)人用root用戶登錄蹬蚁,任何其中一個(gè)可以踢掉另一個(gè)恃泪。
任何用戶都可以踢掉自己
===============================================
今日小技巧:
for?循環(huán)字符串
樣例一:
#!/bin/bash
for?i?in?`ls?/root`;
do
echo?$i?is?file?name\!?;
done
樣例二:
#!/bin/bash
for?file?in?/proc/*;
do
echo?$file?is?file?path?\!?;
done
for?循環(huán)數(shù)組
#!/bin/bash
a=("aaa"?"bbb"?"ccc")
for?str?in?${a[@]};do
echo?$str
done
今日小技巧:
for?循環(huán)1-100
樣例一:
#!/bin/bash
for((i=1;i<=100;i++));
do
echo?$i
done
樣例二:
#!/bin/bash
for?i?in?$(seq?1?100)
do
echo?$i
done
樣例三:
#!/bin/bash
awk?'BEGIN{for(i=1;?i<=100;?i++)?print?i}'