剛開始學(xué)linux一直搞不懂用yum安裝rpm包裝在哪個位置,但是源碼安裝可以指定安裝目錄寺渗,產(chǎn)生一個問題這兩者有什么區(qū)別呢匿情?
??????????? 兩者最大的區(qū)別是安裝位置的不同
? ? ? ? ? ? rpm包會安裝在默認位置/etc/rc.d/init.d/? (軟鏈接? /etc/init.d)
? ? ? ? ? ?源碼安裝我們有時一般指定安裝在:/usr/local/
????????????因為安裝位置的區(qū)別導(dǎo)致兩者啟動方式也不一樣? ?啟動方式是/etc/rc.d/init.d/httpd start(腳本路徑 + 命令)
????????????rpm包安裝的服務(wù)可以systemctl start foo.service? 其實就是找到/etc/rc.d/init.d/? 這個路徑啟動服務(wù)
? ? ? ? ? ? 源碼包安裝的服務(wù)需要找到路徑啟動,這樣每次開啟源碼包服務(wù)都需要找到路徑啟動豈不是很麻煩!!!
? ? 想到偷懶的方式源碼包也可以采取systemctl命令方式啟動嗎信殊?
? ? 可以使用以下的方式:? ?(建立軟鏈接將源碼安裝路徑 鏈接到 rpm啟動路徑下)
ln -s /usr/local/apache2/bin/apachectl? ? /etc/init.d/apache 或者(改名字apache)
ln -s /usr/local/apache2/bin/apachectl? ?/etc/rc.d/init.d/
可以和rpm一樣采用service httpd start? (centos6版本)? systemctl start httpd.service(centos7版本)啟動
還要一個問題炬称,開機自啟動兩者可以做到一樣嗎?
3rpm包安裝后開機自啟動的方法
a:系統(tǒng)每次開機會讀一個文件,所以可以編輯這個配置文件vi /etc/rc.d/rc.local? (軟鏈接 /etc/rc.local)? ? 加入/etc/init.d/httpd start?
b:chkconfig httpd on
分享一些其他命令:
2.查看服務(wù)
centos 7 :systemctl? list-unit-files? |? grep enable
centos 6 :chkconfig --list 查看服務(wù)自啟動狀態(tài)? (系統(tǒng)有7個運行級別涡拘,查看到服務(wù)在此級別下的自啟動)
上面命令是查看系統(tǒng)自啟動的服務(wù),并不能查看到當(dāng)前系統(tǒng)啟動的服務(wù)玲躯,那怎么看呢?
netstat -tlun? 會列出系統(tǒng)中當(dāng)前的已經(jīng)啟動的的服務(wù)
-t 列出tcp數(shù)據(jù)
-u列出udp數(shù)據(jù)
-l列出正在監(jiān)聽的網(wǎng)絡(luò)服務(wù)
-n用端口號來顯示服務(wù)鳄乏,而不是用服務(wù)名
-p列出該服務(wù)的進程ID(PID)