Linux關(guān)閉防火墻命令
1) 永久性生效,重啟后不會復(fù)原
開啟:chkconfig iptables on
關(guān)閉:chkconfig iptables off
2) 即時生效,重啟后復(fù)原
開啟:service iptables start
關(guān)閉:service iptables stop
停止操作
停止操作是通過向nginx進程發(fā)送信號(什么是信號請參閱linux文 章)來進行的
步驟1:查詢nginx主進程號
ps -ef | grep nginx
在進程列表里 面找master進程,它的編號就是主進程號了。
步驟2:發(fā)送信號
從容停止Nginx:
kill -QUIT 主進程號
快速停止Nginx:
kill -TERM 主進程號
強制停止Nginx:
pkill -9 nginx
另外, 若在nginx.conf配置了pid文件存放路徑則該文件存放的就是Nginx主進程號,如果沒指定則放在nginx的logs目錄下。有了pid文 件,我們就不用先查詢Nginx的主進程號,而直接向Nginx發(fā)送信號了,命令如下:
kill? -信號類型 '/usr/nginx/logs/nginx.pid'
平滑重啟
如果更改了配置就要重啟Nginx,要先關(guān)閉Nginx再打開?不是的,可以向Nginx 發(fā)送信號,平滑重啟。
平滑重啟命令:
kill -HUP 住進稱號或進程號文件路徑
或者使用
/usr/nginx/sbin/nginx -s reload
注意,修改了配置文件后最好先檢查一下修改過的配置文件是否正 確,以免重啟后Nginx出現(xiàn)錯誤影響服務(wù)器穩(wěn)定運行。判斷Nginx配置是否正確命令如下:
nginx? -t -c /usr/nginx/conf/nginx.conf
或者
/usr/nginx/sbin/nginx -t
平滑升級
如果服務(wù)器正在運行的Nginx要進行升級、添加或刪除模塊時,我們需 要停掉服務(wù)器并做相應(yīng)修改,這樣服務(wù)器就要在一段時間內(nèi)停止服務(wù),Nginx可以在不停機的情況下進行各種升級動作而不影響服務(wù)器運行。
步驟1:
如 果升級Nginx程序,先用新程序替換舊程序文件,編譯安裝的話新程序直接編譯到Nginx安裝目錄中。
步 驟2:執(zhí)行命令
kill -USR2 舊版程序的主進程號或進程文件名
此時舊的Nginx主進程將會把自己的進程文件改名為.oldbin,然后執(zhí)行新版 Nginx。新舊Nginx會同市運行,共同處理請求。
這時要逐步停止舊版 Nginx,輸入命令:
kill -WINCH 舊版主進程號
慢慢舊的工作進程就都會隨著任務(wù)執(zhí)行完畢而退出,新版的Nginx的工作進程會逐漸取代舊版 工作進程。
此 時,我們可以決定使用新版還是恢復(fù)到舊版。
不重載配置啟動新/舊工作進程
kill -HUP 舊/新版主進程號
從容關(guān)閉舊/新進程
kill -QUIT 舊/新主進程號
如果此時報錯,提示還有進程沒有結(jié)束就用下面命令先關(guān)閉舊/新工作進程,再關(guān)閉主進程號:
kill -TERM 舊/新工作進程號
這樣下來,如果要恢復(fù)到舊版本,只需要上面的幾個步 驟都是操作新版主進程號,如果要用新版本就上面的幾個步驟都操作舊版主進程號就行了。
上面就是Nginx的一些基本的操作,希望以后Nginx能有更好的方法來處理這些操作, 最好是Nginx的命令而不是向Nginx進程發(fā)送系統(tǒng)信號。
基本的操作方法:
本文假設(shè)你的apahce安裝目錄為/usr/local/apache2,這些方法適合任何情況
apahce啟動命令:
推薦/usr/local/apache2/bin/apachectl start apaceh啟動
apache停止命令
/usr/local/apache2/bin/apachectl stop? 停止
apache重新啟動命令:
/usr/local/apache2/bin/apachectl restart 重啟
要在重啟 Apache 服務(wù)器時不中斷當(dāng)前的連接,則應(yīng)運行:
/usr/local/sbin/apachectl graceful
如果apache安裝成為linux的服務(wù)的話,可以用以下命令操作:
service httpd start 啟動
service httpd restart 重新啟動
service httpd stop 停止服務(wù)
Linux系統(tǒng)為Ubuntu
一、Start Apache 2 Server /啟動apache服務(wù)
# /etc/init.d/apache2 start
or
$ sudo /etc/init.d/apache2 start
二、 Restart Apache 2 Server /重啟apache服務(wù)
# /etc/init.d/apache2 restart
or
$ sudo /etc/init.d/apache2 restart
三、Stop Apache 2 Server /停止apache服務(wù)
# /etc/init.d/apache2 stop
or
$ sudo /etc/init.d/apache2 stop
1、使用 service 啟動:service mysqld start
2、使用 mysqld 腳本啟動:/etc/inint.d/mysqld start
3、使用 safe_mysqld 啟動:safe_mysqld&
二、停止
1、使用 service 啟動:service mysqld stop
2、使用 mysqld 腳本啟動:/etc/inint.d/mysqld stop
三、重啟
1、 使用 service 啟動:service mysqld restart
2、使用 mysqld 腳本啟動:/etc/inint.d/mysqld restart
提問 編輯摘要
如何啟動/停止/重啟MySQL
一、 啟動方式
1、使用 service 啟動:service mysqld start
2、使用 mysqld 腳本啟動:/etc/inint.d/mysqld start
3、使用 safe_mysqld 啟動:safe_mysqld&
二、停止
1、使用 service 啟動:service mysqld stop
2、使用 mysqld 腳本啟動:/etc/inint.d/mysqld stop
3、 mysqladmin shutdown
三、重啟
1、使用 service 啟動:service mysqld restart
2、使用 mysqld 腳本啟動:/etc/inint.d/mysqld restart
剛開始學(xué) mysql時都是用redhat自帶的。啟動是什么 /rc.d/init.d/ start
這很簡單,但是后來越學(xué)越多,系統(tǒng)自帶的 mysql,有的是版本太低,有的是與
自己想要裝的web服務(wù)需要的低版本的mysql
后來自己學(xué)著以tar的方式安裝 mysql,我的mysql裝在/usr/local/mysql目錄下啟
動碰到過很多問題。最常見的是:
ERROR 2002: Can't connect to local MySQL server through socket
'/tmp/mysql.sock' (111)
解決辦法:
[root@test mysql]# /usr/local/mysql/bin/mysqladmin -u root /
> -S /var/lib/mysql/mysql.sock password 'your.passwd'
或者做個連接
ln -s /var/lib/mysql/mysql.sock /tmp
其實提示找不到 /tmp/mysql.sock有時也并不是/tmp目錄下沒這個文件,是啟動
命令不對,我碰到過
常見的幾種啟動方式,自己也不是記得很 清楚,如果你確定tmp下有mysql.sock這
個文件不妨試試另外的幾個命令
/usr/local/mysql/bin/mysql -u root -p
/usr/local/mysql/bin/mysqld --user=mysql&
/usr/local/mysql/bin/mysqld --user=root&
/usr/local/mysql/bin/mysqld_safe --user=root&
/usr/local/mysql/bin/mysqld_safe --user=mysql&
/usr/local/mysql/bin/safe_mysqld--uer=root&(注意 safe_mysqld與mysqld_safe是不同的,&表示mysql在后臺運行)我的就會報錯了
STOPPING server from pid file
/usr/local/mysql/data/localhost.localdomain.pid
060304 11:46:21 mysqld ended
這是權(quán)限問題,我的mysql目錄屬于root用戶,也屬于root群組,改用 mysqld_safe啟動就沒問題了,
大家只要注意這幾個 mysql,safe_mysqld,mysqld_safe,mysqld,mysqladmin.多試
幾次
其實有時mysql已經(jīng)正 常啟動了,查看mysql是否啟動命令
ps -aux | grep mysqld
會看到如下類似內(nèi)容
mysql 6394 0.0 1.5 10528 992 pts/3 S 16:16 0:00
/usr/local/mysql/
mysql 6395 0.0 1.5 10528 992 pts/3 S 16:16 0:00
/usr/local/mysql/
mysql 6396 0.0 1.5 10528 992 pts/3 S 16:16 0:00
/usr/local/mysql/
root 6422 0.0 1.1 2408 732 pts/3 S 16:20 0:00 grep
mysql
查看mysql是否在監(jiān) 聽端口命令
netstat -tl | grep mysql
會看到如下類似內(nèi)容
tcp 0 0 *:mysql *:* LISTEN
service nginx restart
service php-fpm restart
查看php運行目錄命令:
which php
/usr/bin/php
查看php-fpm進程數(shù):
ps aux | grep -c php-fpm
查看運行內(nèi)存
/usr/bin/php? -i|grep mem
重啟php-fpm
/etc/init.d/php-fpm restart
在phpinfo()輸出內(nèi)容可以看到php相關(guān)配置。
Loaded Configuration File?/etc/php.ini
==============================
首先要找到php-fpm.conf配置文件,查看pid的配置路徑(不是安裝路徑),然后把下面對應(yīng)的地方改掉才能正常執(zhí)行。
[root@DO-SG-H1 ~]# ps aux | grep php-fpm
root???? 11799? 0.0? 0.0 103248?? 880 pts/0??? S+?? 13:51?? 0:00 grep --color php-fpm
root???? 11973? 0.0? 0.0 417748?? 964 ???????? Ss?? Jun01?? 0:20 php-fpm: master process (/etc/php-fpm.conf)
cat /etc/php-fpm.conf
看到
pid = /var/run/php-fpm/php-fpm.pid
php-fpm 啟動:
/usr/local/php/sbin/php-fpm
php-fpm 關(guān)閉:
kill -INT `cat /var/run/php-fpm/php-fpm.pid`
php-fpm 重啟:
kill -USR2 `cat /var/run/php-fpm/php-fpm.pid`
查看php-fpm進程數(shù):
ps aux | grep -c php-fpm
=============================
[root@DO-SG-H1 ~]# find / -name 'php-fpm' -type d
/var/log/php-fpm
/var/run/php-fpm
用這個find命令查找出來的路徑是不對的
which php
/usr/bin/php
一、Linux 的五個重啟命令
1、shutdown
2、poweroff
3、init
4、reboot
5、halt
二、五個重啟命令的具體說明
shutdown
reboot
在linux下一些常用的關(guān)機/重啟命令有shutdown、halt、reboot、及init,它們都可以達到重啟系統(tǒng)的目的,但每個命令的內(nèi)部工作過程是不同的,通過本文的介紹,希望你可以更加靈活的運用各種關(guān)機命令。
1.shutdown
shutdown命令安全地將系統(tǒng)關(guān)機。
有些用戶會使用直接斷掉電源的方式來關(guān)閉linux,這是十分危險的。因為linux與windows不同,其后臺運行著許多進程,所以強制關(guān)機可能會導(dǎo)致進程的數(shù)據(jù)丟失﹐使系統(tǒng)處于不穩(wěn)定的狀態(tài)﹐甚至在有的系統(tǒng)中會損壞硬件設(shè)備。而在系統(tǒng)關(guān)機前使用shutdown命令﹐系統(tǒng)管理員會通知所有登錄的用戶系統(tǒng)將要關(guān)閉。并且login指令會被凍結(jié)﹐即新的用戶不能再登錄。直接關(guān)機或者延遲一定的時間才關(guān)機都是可能的﹐還可能重啟。這是由所有進程〔process〕都會收到系統(tǒng)所送達的信號〔signal〕
決定的。這讓像vi之類的程序有時間儲存目前正在編輯的文檔﹐而像處理郵件〔mail〕和新聞〔news〕的程序則可以正常地離開等等。
shutdown執(zhí)行它的工作是送信號〔signal〕給init程序﹐要求它改變runlevel。
Runlevel 0被用來停機〔halt〕﹐runlevel 6是用來重新激活〔reboot〕系統(tǒng)﹐而runlevel
1則是被用來讓系統(tǒng)進入管理工作可以進行的狀態(tài)﹔這是預(yù)設(shè)的﹐假定沒有-h也沒有-r參數(shù)給shutdown。要想了解在停機〔halt〕或者重新開機〔reboot〕過程中做了哪些動作﹐你可以在這個文件/etc/inittab里看到這些runlevels相關(guān)的資料。
shutdown 參數(shù)說明:
[-t] 在改變到其它runlevel之前﹐告訴init多久以后關(guān)機。
[-r] 重啟計算器。
[-k] 并不真正關(guān)機﹐只是送警告信號給
每位登錄者〔login〕。
[-h] 關(guān)機后關(guān)閉電源〔halt〕。
[-n] 不用init﹐而是自己來關(guān)機。不鼓勵使用這個選項﹐而且該選項所產(chǎn)生的后果往往不總是你所預(yù)期得到的。
[-c] cancel current process取消目前正在執(zhí)行的關(guān)機程序。所以這個選項當(dāng)然沒有時間參數(shù)﹐但是可以輸入一個用來解釋的訊息﹐而這信息將會送到每位使用者。
[-f] 在重啟計算器〔reboot〕時忽略fsck。
[-F] 在重啟計算器〔reboot〕時強迫fsck。
[-time] 設(shè)定關(guān)機〔shutdown〕前的時間。
2.halt----最簡單的關(guān)機命令
其實halt就是調(diào)用shutdown -h。halt執(zhí)行時﹐殺死應(yīng)用進程﹐執(zhí)行sync系統(tǒng)調(diào)用﹐文件系統(tǒng)寫操作完成后就會停止內(nèi)核。
參數(shù)說明:
[-n] 防止sync系統(tǒng)調(diào)用﹐它用在用fsck修補根分區(qū)之后﹐以阻止內(nèi)核用老版本的超級塊〔superblock〕覆蓋修補過的超級塊。
[-w] 并不是真正的重啟或關(guān)機﹐只是寫
wtmp〔/var/log/wtmp〕紀(jì)錄。
[-d] 不寫wtmp紀(jì)錄〔已包含在選項[-n]中〕。
[-f] 沒有調(diào)用shutdown而強制關(guān)機或重啟。
[-i] 關(guān)機〔或重啟〕前﹐關(guān)掉所有的網(wǎng)絡(luò)接口。
[-p] 該選項為缺省選項。就是關(guān)機時調(diào)用poweroff。
3.reboot
reboot的工作過程差不多跟halt一樣﹐不過它是引發(fā)主機重啟﹐而halt是關(guān)機。它 的參數(shù)與halt相差不多。
4.init
init是所有進程的祖先﹐它的進程號始終為1﹐所以發(fā)送TERM信號給init會終止所有的 用戶進程﹑守護進程等。shutdown
就是使用這種機制。init定義了8個運行級別(runlevel), init 0為關(guān)機﹐init
1為重啟。關(guān)于init可以長篇大論﹐這里就不再敘述。另外還有telinit命令可以改變init的運行級別﹐比如﹐telinit
-iS可使系統(tǒng)進入單用戶模式﹐ 并且得不到使用shutdown時的信息和等待時間。
以上內(nèi)容部分網(wǎng)絡(luò)轉(zhuǎn)載、收集,未注明出處