一些不同版本下的Linux系統(tǒng)中重啟服務(wù)的共性方法:/etc/init.d/network restart (/etc/init.d是一個(gè)存放快捷方式的目錄)
Linux ip的配置文件路徑: /etc/sysconfig/network-scripts/ifcfg-ens33? ? 主機(jī)名的配置文件 /etc/sysconfig/network
開(kāi)啟\關(guān)閉單個(gè)網(wǎng)卡:ifup 網(wǎng)卡名\ifdown 網(wǎng)卡名
GATEWAY=192.168.80.255
source filename 與 sh filename 及./filename執(zhí)行腳本的區(qū)別在那里呢?
1.當(dāng)shell腳本具有可執(zhí)行權(quán)限時(shí),用sh filename與./filename執(zhí)行腳本是沒(méi)有區(qū)別得。./filename是因?yàn)楫?dāng)前目錄沒(méi)有在PATH中,所有"."是用來(lái)表示當(dāng)前目錄的。
2.sh filename 重新建立一個(gè)子shell,在子shell中執(zhí)行腳本里面的語(yǔ)句,該子shell繼承父shell的環(huán)境變量,但子shell新建的、改變的變量不會(huì)被帶回父shell,除非使用export。
3.source filename:這個(gè)命令其實(shí)只是簡(jiǎn)單地讀取腳本里面的語(yǔ)句依次在當(dāng)前shell里面執(zhí)行,沒(méi)有建立新的子shell。那么腳本里面所有新建、改變變量的語(yǔ)句都會(huì)保存在當(dāng)前shell里面。
查看CentOS版本信息:cat /etc/redhat-release
Apache無(wú)法自動(dòng)啟動(dòng),
1、將apachectl文件拷貝到/etc/rc.d/init.d 中,然后在/etc/rc.d/rc5.d/下加入鏈接即可。
命令如下:
cp /usr/local/apache/bin/apachectl /etc/rc.d/init.d/httpd? //如果有其他的版本的Apache存在,也可以直接覆蓋掉
ln -s /etc/rc.d/init.d/httpd /etc/rc.d/rc5.d/S85httpd? ? ? //建立鏈接(85的意義后面介紹)
此時(shí)Apache就可以自動(dòng)啟動(dòng)了。
2、 運(yùn)行chkconfig --list,發(fā)現(xiàn)沒(méi)有l(wèi)inux服務(wù)列表中httpd,通過(guò)chkconfig --add httpd來(lái)添加,但是提示:httpd服務(wù)不支持chkconfig。需要編輯/etc/rc.d/init.d/httpd,添加以下注釋信息:
# chkconfig: 345 85 15
#? description: Activates/Deactivates Apache Web Server
第一行3個(gè)數(shù)字參數(shù)意義分別為:哪些Linux級(jí)別需要啟動(dòng)httpd(3,4,5);啟動(dòng)序號(hào)(85);關(guān)閉序號(hào)(15)。
保存后執(zhí)行:chkconfig --add httpd,成功添加。
在rc3.d、rc4.d、rc5.d路徑中會(huì)出現(xiàn)S85httpd的鏈接文件,其他運(yùn)行級(jí)別路徑中會(huì)出現(xiàn)K61httpd的鏈接文件。
3、運(yùn)行chkconfig --list httpd
設(shè)置httpd服務(wù)在3、5級(jí)別下開(kāi)機(jī)自啟:chkconfig --level 35 httpd on
查看防火墻規(guī)則:service iptables status(Centos6.5)或者iptables -L -n? (-n加不加其實(shí)無(wú)所謂,只是顯示的形式有所不同)
修改防火墻規(guī)則:? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? iptables -A INPUT -p tcp --dport 80 -j ACCEPT? ? #添加一個(gè)進(jìn)站的、協(xié)議為tcp的、端口為80的、允許的結(jié)果? (注意測(cè)試的時(shí)候?qū)?A時(shí)規(guī)則是寫(xiě)入進(jìn)去了 ,但是沒(méi)有生效,后來(lái)執(zhí)行的是-I)
(iptables配置文件:/etc/sysconfig/iptables)? ? ? firewall-cmd --permanent --zone=public --add-port=80/tcp (針對(duì)CentOS 7的修改方式)? ? 參考博客:https://www.cnblogs.com/phpshen/p/5842118.html
修改完之后將改變保存到防火墻的配置文件中:? ? ? ? ? /etc/init.d/iptables save
利用管道符統(tǒng)計(jì)查詢結(jié)果有多少行:rpm -qa|wc -l
計(jì)劃任務(wù)命令:crontab
vim快速查看下一個(gè)查詢結(jié)果:n(上一個(gè)結(jié)果是N)
fsck命令被用于檢查并且試圖修復(fù)文件系統(tǒng)中的錯(cuò)誤。當(dāng)文件系統(tǒng)發(fā)生錯(cuò)誤四化,可用fsck指令嘗試加以修復(fù)。
lsblk命令用于列出所有可用塊設(shè)備的信息,而且還能顯示他們之間的依賴關(guān)系,但是它不會(huì)列出RAM盤(pán)的信息(查看磁盤(pán)掛載情況)
抓包工具:charles
用變量dir接收用戶輸入信息:read -p "輸入要?jiǎng)?chuàng)建的文件名稱:" dir(這是變量)
判斷用戶是否存在,存在則提示存在,不存在則創(chuàng)建用戶
read -p "請(qǐng)輸入用戶名:" username
if id $username &>/dev/null
then
? ? ? ? echo "用戶存在"
else
? ? ? ? useradd $username
? ? ? ? echo "用戶已經(jīng)創(chuàng)建"
fi
命令行瀏覽器:lynx 使用方法 lynx --dump www.baidu.com
修改MySQL遠(yuǎn)程登陸權(quán)限:update user set host = '%' where host = 'yunwei'; 修改完之后刷新下權(quán)限 flush privileges;
1、需要配置過(guò)/etc/resolv.conf 文件才能識(shí)別域名,但是每次重啟服務(wù)器之后該文件會(huì)被刷新,添加:nameserver 8.8.8.8
是因?yàn)殚_(kāi)啟了NetworkManager服務(wù)的原因,所以我們先把NetworkManager關(guān)閉,然后把他的開(kāi)機(jī)自啟給關(guān)閉了
標(biāo)準(zhǔn)輸入輸出:? stdin? ? 0? 表示標(biāo)準(zhǔn)輸入
? ? ? ? ? ? ? ? stdout? ? 1? 表示標(biāo)準(zhǔn)輸出
stderr? ? 2? 表示標(biāo)準(zhǔn)錯(cuò)誤
? ? ? ? ? &? 表示所有的信息
sh 1.sh 1>1.log 2>2.log? ? ? ? ? ? #意思是將執(zhí)行1.sh的標(biāo)準(zhǔn)輸出信息寫(xiě)入到1.log文件里面;將1.sh的標(biāo)準(zhǔn)錯(cuò)誤信息輸出到2.log文件里面。
echo 123|passwd --stdin code3? ? ? #意思是將echo 123的執(zhí)行結(jié)果輸入到passwd命令中,所以整個(gè)語(yǔ)句的實(shí)現(xiàn)結(jié)果是:給用戶code3設(shè)置一個(gè)密碼 密碼為123
特殊權(quán)限位:? ①:冒險(xiǎn)位? 針對(duì)命令的操作;比如當(dāng)我對(duì)vim命令進(jìn)行冒險(xiǎn)位操作之后,那么這個(gè)vim就是一把尚方寶劍,可以使任何用戶拿著它對(duì)任何文件進(jìn)行操作,
? ? ? ? ? ? ? ? ? ? ? ? 如我一個(gè)普通code1,可以用此時(shí)的vim對(duì)/etc/passwd文件修改。? 用法:先找到這個(gè)命令的文件位置,然后對(duì)該文件添加冒險(xiǎn)位權(quán)限:
? ? ? ? ? ? ? ? ? ? ? ? chmod 4755 /usr/bin/vim? 或者 chmod u+s /usr/bin/vim #對(duì)vim賦予冒險(xiǎn)位權(quán)限
? ②:強(qiáng)制位? 一般對(duì)公共目錄進(jìn)行操作,對(duì)該目錄的屬組賦予強(qiáng)制位操作之后,無(wú)論那個(gè)用戶在該目錄下新建文件會(huì)自動(dòng)把該文件的屬組賦予給有強(qiáng)制位權(quán)限的組
? ? ? ? ? ? ? ? ? ? ? ? 如我對(duì)/code 目錄的屬組(code1)賦予強(qiáng)制位權(quán)限之后,無(wú)論我是用root賬號(hào)還是test賬號(hào)在/code文件夾下新建文件其屬組都會(huì)是code1
? ? ? ? ? ? ? ? ? ? ? ? chmod? 2755 /code? ? ? ? 或者 chmod g+s /code ? ? ? ? ? ? #對(duì)/code目錄賦予強(qiáng)制位權(quán)限
? ? ? ? ? ? ? ③:粘滯位 一般對(duì)公共目錄進(jìn)行操作,對(duì)該目錄賦予了粘滯位權(quán)限之后,用戶在該目錄下創(chuàng)建的文件只能由該用戶刪除,其他用戶無(wú)法刪除該文件
? ? ? ? ? ? ? ? ? ? ? ? 如我對(duì)/code 目錄進(jìn)行粘滯位操作之后,用戶code1在/code目錄中新建一個(gè)test1.txt文件,那么這個(gè)文件就只能由code1刪除,其他用戶刪除不了
? ? ? ? ? ? ? ? ? ? ? ? chmod? 1755 /code? ? ? ? ? 或者 chmod o+t /code? ? ? ? ? ? #對(duì)/code目錄賦予粘滯位權(quán)限
Linux查看當(dāng)前字符集命令:locale? 修改字符集:LANG=en_US.UTF-8
配置域名服務(wù)器的文件:cat /etc/resolv.conf? ? 參考博客https://www.cnblogs.com/Alight/p/4351155.html
掛載命令 : mount -o ro /dev/sr0 /mnt/? #每次掛載之后有重啟的話那就把他寫(xiě)到etc/rc.local文件里面,讓他每次開(kāi)機(jī)自動(dòng)掛載
Linux配置yum源的文件路徑:/etc/yum.repos.d? 配置完之后清掉原先的緩存(yum clean all)和創(chuàng)建新的緩存(yum makecache)
()
ssh遠(yuǎn)程連接到服務(wù)器之后exit退出不來(lái)后可以使用logout退出登陸
Linux查看所有服務(wù)的運(yùn)行情況: service --status-all (CentOS6) systemctl -a (CentOS7)
將一個(gè)程序放到后臺(tái)去執(zhí)行加一個(gè): &? ? ? 例如:sh inotifywait.sh &? #這樣這個(gè)腳本就會(huì)一直在后臺(tái)運(yùn)行,
查看后臺(tái)有哪些在運(yùn)行的腳本:jobs;殺掉程序的話用jobs -l可以查看程序的端口,然后kill掉端口
grep 可以加-i參數(shù)來(lái)不區(qū)分大小寫(xiě):grep -i utf
查看某個(gè)服務(wù)使用的端口,如vsftpd服務(wù):netstat -nltp|grep vsftpd?
新的虛擬機(jī)某些服務(wù)無(wú)法遠(yuǎn)程訪問(wèn)時(shí),先看防火墻(iptables) 然后再看安全增強(qiáng)型Linux(selinux)查看命令:getenforce
關(guān)閉安全增強(qiáng)型Linux(selinux)方法: vim /etc/sysconfig/selinux 將里面的? ? ? SELINUX=enforcing
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 改為? SELINUX=disabled
用rpm命令卸載軟件包的時(shí)候如果有依賴關(guān)系可以加這個(gè)參數(shù)忽略掉依賴關(guān)系:--nodeps
有的項(xiàng)目顯示亂碼的話可能會(huì)與字體有關(guān)系,查看字體的命令:fc-list(顯示所有字體),fc-list:lang=zh(只顯示中文字體)
安裝方式:將字體文件放到/usr/share/fonts/zh_CN目錄下,然后添加執(zhí)行權(quán)限,然后建立字體緩存:mkfontscale && mkfontdir && fc-cache -fv。最后重啟計(jì)算機(jī)。
安裝zabbix報(bào)錯(cuò):configure: error: Unable to use libpcre (libpcre check failed)。:yum -y install pcre*
結(jié)束所有帶 zabbix_server 的進(jìn)程: ps -ef | grep zabbix_server | grep -v grep | cut -c 9-15 | xargs kill -9
刷新分區(qū)表:? partx -a /dev/sdb #/dev/sdb是你所要刷新的分區(qū)
創(chuàng)建物理卷:? pvcreate /dev/sdb5(pvs) #將邏輯分區(qū)/dev/sdb5創(chuàng)建成一個(gè)物理卷
查看物理卷:? pvdisplay /dev/sdb5
創(chuàng)建卷組:? ? vgcreate vg01 /dev/sdb5 #創(chuàng)建一個(gè)名稱為vg01的卷組,同時(shí)把/dev/sdb5加入到該卷組中
查看卷組: ? vgdisplay vg01(vgs)
創(chuàng)建邏輯卷:? lvcreate -n lv01 -L 1.5G vg01 #創(chuàng)建一個(gè)名稱為lv01的邏輯卷,同時(shí)指定他的大小為1.5G,卷組為vg01
查看邏輯卷:? lvdisplay /dev/vg01/lv01(lvs)
格式化邏輯卷: mkfs.ext4 /dev/vg01/lv01
查看格式: ? blkid /dev/vg01/lv01
擴(kuò)容卷組: ? vgextend vg01 /dev/sdb6 #將物理卷/dev/sdb6加入到vg01這個(gè)卷組中
擴(kuò)容邏輯卷:? lvextend -L +1.5G /dev/vg01/lv01 #將邏輯卷lv01加1.5G空間(-L 后面直接寫(xiě)3G的話就是將邏輯卷lv01加到3G空間)
同步文件系統(tǒng)? fs /dev/vg01/lv01 #如果我們添加了一個(gè)沒(méi)有指定文件系統(tǒng)的物理卷到卷組中時(shí),當(dāng)邏輯卷要使用卷組中的這個(gè)物理卷的時(shí)候,我們就要同步一下文件系統(tǒng)才能正真使用這個(gè)物理卷的空間
查看指定目錄的大小? du -sh
以指定字符集的方式創(chuàng)建數(shù)據(jù)庫(kù):create sxyj default character set utf8 collate utf8_general_ci;
mysql日志時(shí)間問(wèn)題。編輯my.conf,在mysqld里面添加log_timestamps = SYSTEM
mysql插入:insert into name values(2,'杜甫');
時(shí)間格式備份:cp /etc/drbd.d/global_common.conf{,-$(date +%s)}
redis 顯示中文在登陸redis的時(shí)候添加一個(gè)--raw參數(shù)
sed匹配固定行只需要在s前面加上行號(hào)就行了,例如:sed '2s/#/#chkconfig: 35 85 15/g' /etc/init.d/httpd
清除系統(tǒng)緩存命令: echo 3> /proc/sys/vm/drop_caches
html頁(yè)面支持中文的方式,在html文件上頭添加一個(gè)字符集設(shè)置:
<meta charset="UTF-8">
將輸出結(jié)果賦值給變量: i=$(hostname) #記得要加括號(hào)()
指定格式查看文件大小: ls -l --block-size=M /etc/passwd
export JAVA_HOME=/usr/local/jdk/jdk1.8.0_181
export CLASSPATH=$:CLASSPATH:$JAVA_HOME/lib/
export PATH=$PATH:$JAVA_HOME/bin
將Windows中的換行符替換成Linux的:sed -i 's/\r$//g' build.sh
查找指定文件并復(fù)制到指定位置:find /usr/share -iname "*.jpg" -exec cp {} /var/www/html \;
centos7 開(kāi)通指定IP的的指定端口:firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="192.168.0.101" port protocol="tcp" port="80" accept" 要重啟firewalld才會(huì)生效 , 刪除規(guī)則吧--add改為--remove即可,同樣需要重啟. 查看規(guī)則:firewall-cmd --list-all
環(huán)境變量三個(gè):JAVA_HOME(jdk的安裝目錄) CLASS_PATH(在原先的變量后面加上jdk的lib路徑) PATH(在原先的變量后面加上jdk的bin文件目錄)