快照功能:記錄當前的硬盤的狀態。剛建快照時快照占用內存為0,標記了當前硬盤的存儲狀態。當虛擬機對快照標記的內容改寫時,會將改寫的內容存儲進快照,與未改寫的部分整合得到完整的快照。當快照標記的部分被完全改寫,那么快照存儲空間完整記錄了當時拍攝時的內存狀態。
讓客戶滿意是我們工作的目標,不斷超越客戶的期望值來自于我們對這個行業的熱愛。我們立志把好的技術通過有效、簡單的方式提供給客戶,將通過不懈努力成為客戶在信息化領域值得信任、有價值的長期合作伙伴,公司提供的服務項目有:國際域名空間、雅安服務器托管、營銷軟件、網站建設、贛榆網站維護、網站推廣。
參數形式
第一種:參數用一橫的說明后面的參數是字符形式。
第二種:參數用兩橫的說明后面的參數是單詞形式。
第三種:參數前有橫的是 System V風格。
第四種:參數前沒有橫的是 BSD風格。
cat、more、less、head、tail命令的比較:
cat命令可以一次顯示整個文件,如果文件比較大,使用不是很方便;
more命令可以讓屏幕在顯示滿一屏幕時暫停,按空格往前翻頁,按b往后翻頁。
less命令也可以分頁顯示文件,和more命令的區別就在于: 支持上下鍵卷動屏幕、查找;不需要在一開始就讀取整個文件,打開大文件時比more、vim更快。
head命令用于查看文件的前n行。
tail命令用于查看文件的后n行,加上-f命令,查看在線日志非常方便,可以打印最新增加的日志。
一般模式:
編輯模式:
命令模式:
編碼
多行操作(列編輯模式)
插入:ctrl+v進入列編輯模式,上下移動光標選擇需要插入的位置,然后輸入大寫I,輸入需要文本,最后按esc鍵退出,就會發現文本會在選擇的多行中插入。
刪除:ctrl+v進入列編輯模式,上下移動光標選中需要刪除的部分,然后按d,就會刪除選中的內容。
①head:顯示文件頭部內容
②tail:輸出文件尾部內容
注意:用vim和vi修改內容會刪除源文件并生成新文件,所以tail -f會失效。需要用到
追加和覆蓋語句(或),才能被tail -f監視到。
一般用于查看小文件
查看壓縮文件中的文本內容
例:
①more:文件內容分屏查看器
②less:分屏顯示文件內容,效率比more高
1、簡單讀取
運行腳本如下
測試結果為:
2、-p 參數,允許在 read 命令行中直接指定一個提示。
運行腳本如下
測試結果為:
echo [選項] [輸出內容] (輸出內容到控制臺)
輸出給定文本的sha256加密后的內容
①顯示當前時間信息
②顯示當前時間年月日
③顯示當前時間年月日時分秒
④顯示昨天
⑤顯示明天時間
⑥顯示上個月時間
需要注意的是取下個月的命令存在bug,執行如下命令會得到21-10,但是正常應該得到21-09,需要注意
date -d "2021-08-31 +1 month" +%y-%m
⑦修改系統時間
⑧獲取當前時間戳
獲取秒時間戳: date +%s
獲取毫秒時間戳:$[ (date +%s%N) /1000000]
查看日歷
(1)查看當前月的日歷
(2)查看2017年的日歷
例:
對比gzip/gunzip,zip/unzip可以壓縮文件和目錄且保留源文件。
①zip:壓縮
②unzip:解壓縮
只能壓縮文件不能壓縮目錄,不保留原來的文件。
gzip 文件 (只能將文件壓縮為*.gz文件)
gunzip 文件.gz (解壓縮文件命令)
例: crontab -e
(1)進入crontab編輯界面。會打開vim編輯你的工作。
(2)每隔1分鐘,向/root/bailongma.txt文件中添加一個11的數字
*/1 * * * * /bin/echo ”11” /root/bailongma.txt
(3)可以用tail -f 目標文件來實施監控追加的內容
查看日志
可以用tail -f /var/log/cron.log觀察
Cron表達式見文章:
ls [選項] [目錄或是文件]
cd [參數]
例: cd -P $(dirname $p1) ; pwd 先跳轉到文件的所在目錄,再打印$p1文件的實際路徑
概述
①cp(copy):只能在本機中復制
②scp(secure copy):可以復制文件給遠程主機
scp -r test.sh hxr@hadoop102:/root
③rsync(remote sync):功能與scp相同,但是不會改文件屬性
rsync -av test.sh test.sh hxr@hadoop102:/root
④nc(netcat):監聽端口,可以實現機器之間傳輸文件。
nc -lk 7777 (-l表示listen,-k表示keep)
強制覆蓋不提示的方法:\cp
例:scp -r test.sh hxr@bigdata1:/root
例:rsync -av test.sh hxr@bigdata1:/root
例:
nc -lp 10000 nc_test.txt
nc -w 1 hadoop102 nc_test.txt
遠程登錄時默認使用的私鑰為~/.ssh/id_rsa
生成密鑰對
將公鑰發送到本機
將密鑰發送到需要登錄到本機的服務器上
修改密鑰的權限
遠程登陸
如果有多個節點需要遠程登陸,可以在.ssh下創建config并輸入
再次登陸
①正向代理:
②反向代理:
所謂“反向代理”就是讓遠端啟動端口,把遠端端口數據轉發到本地。
HostA 將自己可以訪問的 HostB:PortB 暴露給外網服務器 HostC:PortC,在 HostA 上運行:
那么鏈接 HostC:PortC 就相當于鏈接 HostB:PortB。
使用時需修改 HostC 的 /etc/ssh/sshd_config 的一條配置如下,不然啟動的進程監聽的ip地址為127.0.0.1,即只有本機可以訪問該端口。
相當于內網穿透,比如 HostA 和 HostB 是同一個內網下的兩臺可以互相訪問的機器,HostC是外網跳板機,HostC不能訪問 HostA,但是 HostA 可以訪問 HostC。
那么通過在內網 HostA 上運行 ssh -R 告訴 HostC,創建 PortC 端口監聽,把該端口所有數據轉發給我(HostA),我會再轉發給同一個內網下的 HostB:PortB。
同內網下的 HostA/HostB 也可以是同一臺機器,換句話說就是 內網 HostA 把自己可以訪問的端口暴露給了外網 HostC。
例: 比如在我的內網機192.168.32.244上有一個RabbitMQ的客戶端,端口號為15672。現在我希望在外網上訪問固定ip的云服務器chenjie.asia的6009端口,通過跳板機192.168.32.243來轉發請求到192.168.32.244:15672,從而實現在外網訪問內網服務的功能,即內網穿透。
①在192.168.32.244上啟動RabbitMQ服務
②將chenjie.asia云服務器的私鑰復制到跳板機192.168.32.243的~/.ssh下,并重命名為id_rsa。通過如下命令看是否可以遠程登陸到云服務,可以登陸則進行下一步。
③修改chenjie.asia服務器的ssh配置文件 /etc/ssh/sshd_config ,允許其他節點訪問
然后重啟sshd服務
④在跳板機192.168.32.243啟動ssh反向代理
這個進程在關閉session時會停止,可以添加啟動參數 -CPfN
例:
以 root 身份執行的程序有了所有特權,這會帶來安全風險。Kernel 從 2.2 版本開始,提供了 Capabilities 功能,它把特權劃分成不同單元,可以只授權程序所需的權限,而非所有特權。
例如:linux不允許非root賬號只用1024以下的端口,使用root啟動命令nginx,會導致nginx權限過高太危險。所以用setcap命令
sudo setcap cap_net_bind_service=+eip /bigdata/nginx/sbin/nginx
正確的關機流程為 :sync shutdown reboot halt
(1)sync (功能描述:將數據由內存同步到硬盤中)
(2)halt (功能描述:關閉系統,等同于shutdown -h now 和 poweroff)
(3)reboot (功能描述:就是重啟,等同于 shutdown -r now)
(4)shutdown [選項] [時間]
安裝
yum install -y telnet-server telnet
ls -i 顯示文件的節點號
find -inum 節點號 -delete 刪除指定的節點即可刪除對應的文件
啟動一個服務: systemctl start postfix.service
關閉一個服務: systemctl stop postfix.service
重啟一個服務: systemctl restart postfix.service
顯示一個服務的狀態: systemctl status postfix.service
在開機時啟用一個服務: systemctl enable postfix.service
在開機時禁用一個服務: systemctl disable postfix.service
注:在enable的時候會打印出來該啟動文件的位置
列出所有已經安裝的服務及狀態:
systemctl list-units
systemctl list-unit-files
查看服務列表狀態:
systemctl list-units --type=service
查看服務是否開機啟動: systemctl is-enabled postfix.service
查看已啟動的服務列表: systemctl list-unit-files | grep enabled
查看啟動失敗的服務列表: systemctl --failed
查看服務日志: journalctl -u postfix -n 10 -f
命令類似systemctl,用于操作native service。
添加腳本為服務(需要指定啟動級別和優先級): chkconfig --add [腳本]
刪除服務: chkconfig --del [腳本]
單獨查看某一服務是否開機啟動的命令 : chkconfig --list [服務名]
單獨開啟某一服務的命令 : chkconfig [服務名] on
單獨關閉某一服務的命令: chkconfig [服務名] off
查看某一服務的狀態: /etc/intd.d/[服務名] status
啟用服務就是在當前"runlevel"的配置文件目錄 /etc/systemd/system/multi-user.target.wants 里,建立 /usr/lib/systemd/system 里面對應服務配置文件的軟鏈接;禁用服務就是刪除此軟鏈接,添加服務就是添加軟連接。
su 用戶名稱 (切換用戶,只能獲得用戶的執行權限,不能獲得環境變量)
su - 用戶名稱 (切換到用戶并獲得該用戶的環境變量及執行權限)
echo $PATH 打印環境變量
設置普通用戶具有root權限
修改 /etc/sudoers 文件,找到下面一行(91行),在root下面添加一行,如下 所示:
或者配置成采用sudo命令時,不需要輸入密碼
修改完畢,現在可以用hxr 帳號登錄,然后用命令 sudo ,即可獲得root權限進行操作。
以azkaban用戶執行引號中的命令
gpasswd -d [username] [groupname] 將用戶從組中刪除
gpasswd -a [username] [groupname] 將用戶加入到組中
用戶組的管理涉及用戶組的添加、刪除和修改。組的增加、刪除和修改實際上就是對 /etc/group文件的更新。
0首位表示類型 - 代表文件 d 代表目錄 l 鏈接文檔(link file)
三種特殊權限suid、sgid、sticky
例子:
變更文件權限方式一
例:chmod u-x,o+x houge.txt
變更文件權限方式二
例:chmod -R 777 /mnt/ 修改整個文件夾的文件權限
在linux中創建文件或者目錄會有一個默認權限的,這個默認權限是由umask決定的(默認為0022)。umask設置的是權限的“補碼”,而我們常用chmod設置的是文件權限碼。一般在/etc/profile 、~/.bashprofile 或者 ~/.profile中設置umask值。
umask計算
如root用戶的默認umask為0022(第一個0 代表特殊權限位,這里先不考慮),創建的文件默認權限是644(即默認666掩上umask的022),創建的目錄是755(即默認777掩上umask的022)。
對于root用戶的umask=022這個來說,777權限二進制碼就是(111)(111)(111),022權限二進制碼為(000)(010)(010)。
上面就是一個umask的正常計算過程,但是這樣實在是太麻煩了。我們使用如下的簡單的方法快速計算。
上面的這個方法計算是非常方便的, 為何得到奇數要+1呢?
文件的最大權限是666,都是偶數,你得到奇數,說明你的umask有奇數啊,讀為4,寫為2,都是偶數,說明你有執行權限的。
就按照上面的umask=023為例,在計算其他用戶權限的時候6-3=3 ,6是讀寫,3是寫和執行,其實應該是讀寫權限減去讀權限的得到寫權限的,相當于我們多減去了一個執行權限。所以結果加1。
umask修改
如果想單獨修改某個文件夾的新建文件的權限,可以使用setfacl命令。
例:遞歸改變文件所有者和所有組 chown -R hxr:hxr /mnt
例:
開篇之前奉上幾條黃金鏈接:
MQ參考文檔
MQ下載地址:
安裝的MQ軟件包為WMQv600Trial-x86_linux_2.tar.gz. 將WMQv600Trial-x86_linux_2.tar.gz解壓至某一目錄。
(1)執行接受許可腳本: ./mqlicense.sh –accept 這個腳本是要安裝WebSphere MQ 軟件包的MQ許可程序. 至關重要,這個腳本沒有正確配置的話將導致MQ安裝失敗.–accept是不啟動圖形直接接受許可。
(2) 安裝 WebSphere MQ for Linux 服務器:
[root@localhost mq]# rpm-ivh MQSeriesRuntime-6.0.0-0.i386.rpm
[root@localhost mq]# rpm-ivh MQSeriesSDK-6.0.0-0.i386.rpm
[root@localhost mq]# rpm-ivh MQSeriesServer-6.0.0-0.i386.rpm
注:安裝完成后,相關文件會被自動安裝在/opt/mqm下,在安裝
MQSeriesRuntime-6.0.0-0.i386.rpm時候,安裝程序為系統自動創建了一個mqm用戶和mqm組,安裝完畢后,需要使用該用戶來進行MQ的配置。
(3) 安裝 WebSphere MQ for Linux 客戶端:
[root@localhost mq]# rpm-ivh MQSeriesClient-6.0.0-0.i386.rpm
(4) 安裝 WebSphere MQ 樣本程序(其中包括amqsput、amqsget、amqsgbr和amqsbcg等)
[root@localhost mq]# rpm-ivh MQSeriesSamples-6.0.0-0.i386.rpm 樣本程序安裝在/opt/mqm/samp/bin 中。
(5)安裝MQ其他軟件包
[root@localhost mq]# rpm-ivh MQSeriesMan-6.0.0-0.i386.rpm
[root@localhost mq]# rpm-ivh MQSeriesJava-6.0.0-0.i386.rpm
[root@localhost mq]# rpm-ivh IBMJava2-SDK-1.4.2-0.0.i386.rpm
上面最后一步安裝的是JDK運行環境,如果已經有相同或更高版本的JDK,不需要再安裝。 (6) 安裝過程創建了一個名為mqm 的用戶和一個同樣名為mqm 的組,此時,新用戶是被鎖定的,必須設置一個密碼來解鎖,這樣才能正常使用該用戶。用passwd 命令:
[root@localhost mq]# passwd mqm 以上操作均在root用戶下操作,至此MQ6.0安裝結束。MQ的配置相關命令操作均在mqm用戶下。
注意:
如果執行crtmqm命令時提示
-bash-3.2$ crtmqm
-bash: crtmqm: command not found
則需要配置mqm用戶的環境變量,編輯如下文件,并添加下面的內容,如下:
第一種方法: 相對第二種較安全 僅對 mqm用戶有效
1)-bash-3.2$ vi /var/mqm/.bash_profile
PATH=$PATH:/opt/mqm/samp/bin:/opt/mqm/bin:bin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/X11R6/bin
2)執行“.”命令,使這個文件生效
-bash-3.2$ . .bash_profile
3)再次嘗試實行crtmqm或是dspmqm命令,即可發現已經生效。
第二種方法:
1、su root
2、vim /etc/profile
3、在最后面加上:PATH=$PATH:/opt/mqm/samp/bin:/opt/mqm/bin:bin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/X11R6/bin
4、關閉遠程終端重新打開,無需重啟服務器
5、ok了!!
了解更多開源相關,去LUPA社區看看吧。
遠程隊列——qr
可以查看遠端隊列管理器 和隊列名字
查看本地傳輸隊列XMITQ(SIMUtoIPSP)
傳輸隊列——ql
可以查看傳輸通道TRIGDATA(BANK.IPSP)
傳輸通道——chs
查看本地ip LOCLADDR(168.33.51.242)
查看通道類型 CHLTYPE(SDR) CHLTYPE(RCVR)
遠端服務器地址 端口conname
通道另一端的隊列管理器 RQMNAME
查看傳輸隊列XMITQ(SIMUtoIPSP)
--查看隊列狀態--dspmq
--查看通道--
dis chs(*)
--查看隊列深度--
display ql(Q_SVC2ADP_4_HTTP) curdepth
--清除隊列消息--
clear ql(Q_SVC2ADP_4_HTTP)
--查看CCSID--
display qmgr all
--修改CCSID--
ALTER QMGR [FORCE] CCSID(5488)
#查看是否已經建立此通道
dis chl(*)
一、創建linux維護用戶
登錄root用戶
創建新用戶
useradd 新用戶名
設置用戶密碼
passwd 新用戶密碼
二、安裝jdk和配置環境變量
建議在root用戶下直接安裝jdk,并直接配置環境變量,同時給非root用戶設置讀和執行權限
解壓包
tar xvf jdk包名.tar
配置全局變量
編輯/etc/profile文件
vi /etc/profile
按I鍵,切換成編輯模式。
在文件未加入一下配置
export JAVA_HOME=jdk的解壓文件目錄
export JRE_HOME=jdk的解壓文件目錄/jre
export?CLASSPATH=.:${JAVA_HOME}/lib:${?JRE_HOME}/lib:$CLASSPATH
export JAVA_PATH=${JAVA_HOME}/bin:${?JRE_HOME}/bin
export PATH=$PATH:${JAVA_PATH}
保存并退出
Esc ??
:wq
重載配置文件使其生效
source /etc/profile
檢查是否安裝成功
Javac
Java version
權限修改
讀4寫2執行1,順序所有者、組成員、其他用戶
Chomd ?755 ?jdk的解壓文件目錄
三、安裝tomcat
安裝tomcat和放入war包使用非root的維護用戶
如果使用root安裝的話記得設置權限。( chomd -r 外層文件目錄 )
su - 用戶名
1、解壓包
tar ?xvf ?tomcat包名.tar
2、將war包放入tomcat/webapps目錄下
3、Tomcat啟動服務和停止服務
查看進程
ps -ef | grep java
啟動應用
Tomcat bin目錄下.startup.sh
停止應用
建議使用
Kill -9 進程號
注:解壓出應用文件后,注意配置信息的修改
四、IBM MQ部署 (7.5之后的版本)
(以下是使用9.0版本的正確部署命令)
一、 卸載舊版本IBM MQ (可選)
因為部署環境沒有安裝過mq,卸載這部分命令我沒有親自測試過
設置環境
以用戶身份登錄到組mqm,找到mq的安裝位置 /opt/mqm
source ./setmqenv -s
查看隊列管理器的狀態
dspmq -o installation
停止與要卸載的安裝關聯的所有正在運行的隊列管理器
endmqm SXRECV
停止與隊列管理器關聯的所有偵聽器。
endmqlsr -m SXRECV
查看系統上當前安裝的軟件包(組件)
sudo rpm -qa | grep MQSeries
列出軟件包并一次性卸載
sudo rpm -qa | grep MQSeries | xargs rpm -ev
再將對應的用戶及安裝目錄給刪除
rm -rf /opt/mqm
userdel -r mqm
檢查MQ license
license文件在安裝目錄中 /opt/mqm/lib 可以找到
amqtcert.lic - is a trial license
amqbcert.lic - is a beta license
amqpcert.lic - is the production license
——————————————————————————————————————
二、安裝新版本ibm mq
解壓,解壓文件都在MQServer中
tar –xzvf IBM_MQ_9.1.5_LINUX_X86-64.tar.gz
進入MQServer文件夾中:
cd MQServer/
運行MQ許可證程序
./mqlicense.sh
安裝WebSphere MQ for Linux服務器(Runtime、SDK 和 Server 軟件包):
rpm -U MQSeriesRuntime-9.1.5-0.x86_64.rpm
rpm -U MQSeriesSDK-9.1.5-0.x86_64.rpm
rpm -U MQSeriesServer-9.1.5-0.x86_64.rpm
安裝WebSphere MQ for Linux客戶機:
rpm -U MQSeriesClient-9.0.0-0.x86_64.rpm
安裝WebSphere MQ樣本程序:
rpm -U MQSeriesSamples-9.0.0-0.x86_64.rpm
創建組和用戶
安裝過程創建了一個名為mqm的用戶和一個同樣名為 mqm 的組。設置一個密碼來解鎖。
passwd mqm
——————————————————————————————————————
三、 配置
(這部分隊列管理器、通道、隊列等根據實際情況自行配置)
切換用戶:
su mqm
創建隊列管理器
使用crtmqm命令來創建一個名為 SXRECV
的隊列管理器。我們把它作為缺省隊列,并且將不在創建時指定死信隊列。然后使用strmqm命令啟動隊列管理器。
crtmqm -q ?SXRECV
strmqm ?SXRECV
——————
如果執行crtmqm命令時提示
-bash-3.2$ crtmqm
-bash: crtmqm: command not found
find / -name crtmqm
則需要配置mqm用戶的環境變量,編輯如下文件,并添加下面的內容,如下:
第一種方法:相對第二種較安全僅對mqm用戶有效
方法一:
(1) -bash-3.2$ vi /var/mqm/.bash_profile --有可能會在文件夾下看不到這個文件,通過編輯即可看到
PATH=$PATH:/opt/mqm/samp/bin:/opt/mqm/bin:bin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/X11R6/bin
(2)執行“.”命令,使這個文件生效
-bash-3.2$ source ?.bash_profile
(3)再次嘗試實行crtmqm或是dspmqm命令,即可發現已經生效。
方法二:
( 1)
su ?root
[if !supportLists](2)[endif]
vim /etc/profile
[if !supportLists](3)[endif] 在最后面加上:
PATH=$PATH:/opt/mqm/samp/bin:/opt/mqm/bin:bin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/bin
( 4)關閉遠程終端重新打開,無需重啟服務器
——————
運行隊列管理器
runmqsc SXRECV
創建通道和隊列
DEFINE QLOCAL (XYDATA) REPLACE USAGE (NORMAL) DEFPSIST (YES) MAXDEPTH (300000) DESCR('興業銀行')
DEFINE QLOCAL (XYTRANS) REPLACE USAGE (XMITQ) DEFPSIST (YES) MAXDEPTH (300000) DESCR('興業銀行')
DEFINE QREMOTE (XYACK) REPLACE DEFPSIST (YES) RQMNAME (SXSEND) ?RNAME (XYACK) XMITQ (XYTRANS) DESCR('XXXX')
DEFINE CHANNEL (XYDATA) CHLTYPE (RCVR) TRPTYPE (TCP) REPLACE DESCR('XXXX')
DEFINE CHANNEL (XYACK) CHLTYPE (SDR) CONNAME ('166.1.1.8(2214)') XMITQ (XYTRANS) TRPTYPE (TCP) DISCINT (0) CONVERT (NO) SHORTRTY (30) SHORTTMR (10) LONGRTY (999999999) LONGTMR (20) REPLACE DESCR('XXXX')
DEFINE CHANNEL (SVRCONN) CHLTYPE (SVRCONN) MCAUSER('mqm')
創建監聽
DEFINE LISTENER (RECLISTENER) TRPTYPE (TCP) CONTROL(QMGR) PORT (2214)
啟動監聽
start LISTENER(RECLISTENER)
啟動通道
start channel(SVRCONN)
start channel(XYDATA)
start channel(XYACK)
———————————————————————————————————————————————————
四、2035錯誤碼 說明
如果程序連接mq報錯2035,則需要對權限認證做設置,則進行以此操作
1、
ALTER QMGR CHLAUTH(DISABLED)
2、
ALTER CHL(通道名) CHLTYPE(SVRCONN) MCAUSER('mqm')
3、
ALTER AUTHINFO(SYSTEM.DEFAULT.AUTHINFO.IDPWOS) AUTHTYPE(IDPWOS) CHCKCLNT(OPTIONAL)
或者直接將連接認證選項置為空,將其完全關閉,指令如下:
ALTER QMGR CONNAUTH('')
在執行完上述兩條命令中的任一條后,都需要刷新連接認證的緩存,指令如下:
REFRESH SECURITY TYPE(CONNAUTH)
五、mq操作命令
一、MQ的啟動與停止
1、MQ的啟動
strmqm QMgrName
如果啟動默認隊列管理器,strmqm后可以忽略隊列管理器名稱。
2、MQ的關閉
endmqm?-i?QMgrName
停止mq
二、MQ運行狀態查看與常用操作
1、 查看隊列管理器運行狀態
su mqm
執行如下命令檢查隊列管理器運行狀態:dspmq顯示結果中QMNAME表示MQ隊列管理器的名稱,STATUS表示當前運行狀態。運行狀態有如下幾種:Starting正在啟動Running正在運行Ending正在停止Ended normally已經正常終止Ended immediately已經立即終止Ended preemtively已經強制終止Ended unexpectively異常終止
注意:停止MQ后必須使用dspmq命令進行狀態檢查
2、查看通道運行狀態與啟停通道
runmqsc
dis chl(*);查看所有通道定義
dis chs(*);查看所有通道狀態,如果沒有查詢到通道狀態,或報錯AMQ8420: Channel Status not found,請啟動通道
dis chs(ChannelName); 查看通道ChannelName的狀態
通道狀態有如下幾種:
STARTING正在啟動BINDING正在綁定INITIALIZING正在初始化RUNNING正常STOPPING?正在停止RETRYING重試PAUSED等待STOPPED已停止REQUESTING請求
start?chl(ChannelName);啟動通道
stop?chl(ChannelName);停止通道
* 重置通道
reset channel(ChannelName);?重置通道序號。當本地與其他MQ隊列管理器的通道無法正常啟動的情況,檢查日志發現是通道序號不一致,此時就需要先停止發送方通道,清空隊列深度并在發送方和接收方進行通道計數的重置,重置后啟動通道即可恢復通訊。
注意:重置成功mq序列號一般相同或相差1
3、查看通道監聽狀態與啟停監聽
runmqsc
dis listner(*);查看通道監聽定義
dis lsstatu(listnerName);查看監聽狀態
start?lstr(listnerName); 啟動監聽
stop?lstr(listnerName); 停止監聽?
4、查看隊列深度
runmqsc
dis q(*);查看所有各類隊列的屬性
dis?qlocal(QName);查看所有本地隊列的屬性
隊列深度屬性為:CURDEPTH
查看隊列深度display ql('隊列名') ?curdepth
*清空隊列深度
清空隊列深度
clear ql(‘隊列名’)
三、MQ發送和接收消息
su mqm
發送消息
amqsput ?隊列名 ?隊列管理器
獲取消息
amqsget ?隊列名 ?隊列管理器
可通過配合查看隊列深度命令,完成mq的聯調
六、其他維護中常用linux命令
1、測試端口連接
telnet ip port
2、查看已啟動的端口
netstat -an | grep 端口號
3、查看應用進程
ps -ef |grep java
4、修改權限
chomd ?XXX(對應的權限) ?文件目錄
5、修改文件或目錄下所有文件所有者和組
Chomd -R 用戶名:組名 ?文件目錄
6、查看目錄內容
ls 或者ls -l (簡寫ll)
7、查看文件輸出
cat 目錄/文件名
或者
Vi 目錄/文件名 按i可進入編輯
按 G 到文檔末尾
按 gg 到文件首行
不保存退出
Esc ??:q!
保存退出
Esc ??:wq
vi 進入文檔文檔后查找關鍵字
Esc 進入命令行
/關鍵字
按n向下繼續查找
按N向上繼續查找
8、殺進程
Kill -9 進程號
9、復制
cp -r 源目錄 ?目標目錄
10、移動
mv ?-i 源文件或目錄 目標文件或目錄
11、刪除
rm -R 文件目錄
12、 切換工作目錄
cd ?相對路徑或絕對路徑
~也表示為 home 目錄 的意思, . 則是表示目前所在的目錄, .. 則表示目前目錄位置的上一層目錄。
網站欄目:包含linuxmq常用命令的詞條
文章出自:http://vcdvsql.cn/article32/ddsehsc.html
成都網站建設公司_創新互聯,為您提供企業建站、App開發、小程序開發、網站策劃、企業網站制作、外貿建站
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯