科技改變生活 · 科技引領(lǐng)未來
作為程序員,我們僅僅會(huì)編碼肯定是不夠的.隨著工作經(jīng)驗(yàn)的增多,我們掌握的技術(shù)必須多樣化.而系統(tǒng)的發(fā)布部署,環(huán)境問題排查也是必不可少的.這里將自己平時(shí)總結(jié)出來的一些Linux操作技巧分享給大家.需要完整文檔的同學(xué)們可以文末留言或者私信我.更多學(xué)
作為程序員,我們僅僅會(huì)編碼肯定是不夠的.隨著工作經(jīng)驗(yàn)的增多,我們掌握的技術(shù)必須多樣化.而系統(tǒng)的發(fā)布部署,環(huán)境問題排查也是必不可少的.這里將自己平時(shí)總結(jié)出來的一些Linux操作技巧分享給大家.
需要完整文檔的同學(xué)們可以文末留言或者私信我.更多學(xué)習(xí)資料分享給大家.
1 ll (查看子項(xiàng)目錄)
2 cd /usr/local/(進(jìn)入文件)
3 ll
4 mkdir software(創(chuàng)建文件)
5 ll
6 cd software/
7 ll
8 cp jdk-8u111-linux-x64.tar.gz /usr/local/(復(fù)制文件到--)
9 cd ../
10 ll
11 tar -zxvf jdk-8u111-linux-x64.tar.gz (解壓文件)
12 ll
13 cd software/
14 ll
15 cp apache-tomcat-8.5.20.tar.gz /usr/local/
16 cd ../
17 ll
18 tar -zxvf apache-tomcat-8.5.20.tar.gz
19 ll
20 rm -rf apache-tomcat-8.5.20.tar.gz (刪除文件)
21 rm -rf jdk-8u111-linux-x64.tar.gz
22 ll
23 mv apache-tomcat-8.5.20 tomcat8-appserver-8080(重命名)
24 ll
25 cd software/
26 ll
27 cp apache-tomcat-8.5.20.tar.gz /usr/local/
28 cd../
29 cd ../
30 ll
31 tar apache-tomcat-8.5.20.tar.gz
32 tar -zxvf apache-tomcat-8.5.20.tar.gz
33 ll
34 mv apache-tomcat-8.5.20 tomcat8-lmdmserver-8081
35 ll
36 tar -zxvf apache-tomcat-8.5.20.tar.gz
37 ll
38 mv apache-tomcat-8.5.20 tomcat8-wmsserver-8082
39 tar -zxvf apache-tomcat-8.5.20.tar.gz
40 mv apache-tomcat-8.5.20 tomcat8-dubbo-admin-8084
41 ll
42 rm -rf apache-tomcat-8.5.20.tar.gz
43 ll
44 java -version
45 rpm -qa|grep java
46 rpm -e --nodeps java-1.6.0-openjdk-1.6.0.0-11.1.13.4.el6.x86_64(卸載)
47 rpm -e --nodeps java-1.7.0-openjdk-1.7.0.65-2.5.1.2.el6_5.x86_64
48 rpm -e --nodeps tzdata-java-2014g-1.el6.noarch
49 ll
50 java -version
51 vim /etc/profile(修改)
52 export JAVA_HOME=/usr/local/jdk1.8.0_111
53 export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
54 export JAVA_HOME=/usr/local/jdk1.8.0_111
55 export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
56 export JAVA_HOME=/usr/local/jdk1.8.0_111
57 export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
58 export PATH=$PATH:$JAVA_HOME/bin
59 java -version
60 cd tomcat8-appserver-8080/conf/
61 ll
62 vim server.xml
63 cat server.xml
64 vim /etc/profile
65 java -version
66 vi /etc/profile
67 source /etc/profile
68 java -version
69 cd /usr/local/
70 cd tomcat8-lmdmserver-8081/conf/
71 ll
72 vim server.xml
73 cd../
74 cd ../
75 cd ..
76 ll
77 cd tomcat8-wmsserver-8082/conf/
78 ll
79 vim server.xml
80 cd ..
81 ll
82 cd tomcat8-dubbo-admin-8084/conf/
83 ll
84 vim server.xml
85 ll
86 cd ../
87 ll
###############################################################################
發(fā)布環(huán)境:
ps -ef | grep java (查詢進(jìn)程)
Kill -9 30551 (殺死進(jìn)程)
rm -rf * (刪除當(dāng)前目錄下的所有文件)
cd logs (進(jìn)入日志文件)
./startup.sh (啟動(dòng))
tail -f catalina.out (查看日志)
##############################################################################
ls -l 查看權(quán)限
ls /home 查看所有文件夾
ls /home/nms 查看子文件夾
su - gjmp 切換角色 - 后面有一個(gè)空格 不加-當(dāng)前用戶環(huán)境,加-切換用戶環(huán)境
clear 清屏
rm 刪除
cd 進(jìn)入目錄
tail -f install.log 查看日志
mv web.xml web.xml.20111211 備份重命名
unzip aa.zip 解壓文件
mkdir 創(chuàng)建文件夾
touch 123.txt 創(chuàng)建文件
rm -rf 目錄名字 刪除目錄
man 對(duì)命令的方法提供在線幫助
find 查找
find / -name 123.txt --跟目錄查找
find . -naem 123.txt
find [路徑] -name [要找的文件名,可用*表示] -print這個(gè)命令速度慢但是個(gè)人覺得是好用的,
sz file1 file2 發(fā)文件到windows上(保存的目錄是可以配置) 上傳
rz -be 并且去掉彈出的對(duì)話框中“Upload files as ASCII”前的勾選 下載
在SecureCRT設(shè)置一下上傳和下載的默認(rèn)目錄
options–>session options–>file transfer 下可以設(shè)置上傳和下載的目錄
#########################################
# #
# mysql操作 #
# #
#########################################
su - mysql 進(jìn)入mysql
mysql -unms -pnms1234 nms 進(jìn)入mysql monitor
create database if not exists vpdn default character set gbk; 創(chuàng)建數(shù)據(jù)庫
create user vpdn; 創(chuàng)建用戶
grant all privileges on *.* to 'vpdn'@'localhost' identified by 'vpdn1234'; 授權(quán);
grant all privileges on *.* to 'vpdn'@'%' identified by 'vpdn1234'; 授權(quán);
root 用戶進(jìn)去
mysql -pvpdn1234 -u vpdn vpdn; 測(cè)試本機(jī)是否可以連接
mysql -pvpdn1234 -u vpdn vpdn -h 210.51.37.167 測(cè)試外網(wǎng)是否可以連接
show processlist; //查看數(shù)據(jù)庫鎖(Lock)
mysqldump -uvpdn -pvpdn1234 vpdn >/usr/tmp/vpdn.sql; -- mysql 數(shù)據(jù)庫備份
mysql -uvpdn -pvpdn1234
#數(shù)據(jù)庫操作
mysql> show databases; 查看數(shù)據(jù)庫
mysql> use vpdn; 切換數(shù)據(jù)庫
mysql> show tables 查看所有表
mysql> describe 表名 查看表結(jié)構(gòu)
mysql> create database 庫名
mysql> create table 表名(字段設(shè)定列表);
mysql> drop database 庫名; 刪庫
mysql> drop table 表名; 刪表
mysql> delete from 表名; 將表記錄清空
mysql> --default-character-set=gbk 修改編碼
mysql> alter database db_name default character set gbk;
#數(shù)據(jù)的導(dǎo)入導(dǎo)出
mysql>
mysql>
mysql>
SELECt to_days('2009-08-06') ;
h 幫助
g 退出
#my sql 啟動(dòng)/停止
啟動(dòng)
# /usr/bin/mysqld_safe --user=mysql &
停止
# /usr/bin/mysqladmin shutdown
一服務(wù)的方式 root下直接
service mysqld start
$ mysql -unms -pnms1234 nms
-- 導(dǎo)出數(shù)據(jù)
mysqldump -unms -pnms1234 -h210.51.37.176 --default-character-set=gbk nms rm_equipment > rm_equipment.dump
mysqldump -R 導(dǎo)出存儲(chǔ)過程,缺省的話不導(dǎo)出
-- 導(dǎo)入數(shù)
據(jù)
mysql -unms -pnms1234 -hlocalhost --default-character-set=gbk nms < rm_equipment.dump
mysql -pnms1234 -unms nms --default-character-set=gbk < init.sql
SELECT partition_ordinal_position as 定義順序,table_schema as 所屬數(shù)據(jù)庫,table_name as 所屬表,
partition_name as 分區(qū)表名稱,partition_method as 分區(qū)類型,partition_expression as 分區(qū)列名稱,
partition_description as 數(shù)據(jù)范圍,table_rows as 數(shù)據(jù)總數(shù),create_time as 創(chuàng)建時(shí)間,
update_time as 修時(shí)間 FROM INFORMATION_SCHEMA.partitions WHERe TABLE_SCHEMA= schema() AND TABLE_NAME='user';
mysql > SET @p_inout=1;
mysql > CALL demo_inout_parameter(@p_inout) ;
#########################################
# #
# oracle操作 #
# #
#########################################
su - oracle
登陸 sqlplus userID/pass
執(zhí)行腳本 sqlplus admin/123@file.sql
查看所有表:select table_name from user_tables;
注:每次更新數(shù)據(jù)后,要執(zhí)行 commit 命令;
#########################################
# #
# 應(yīng)用項(xiàng)目操作 #
# #
#########################################
chmod +x vpdn.sh 加可執(zhí)行權(quán)限
sh vpdn.sh 執(zhí)行
tail 常用操作
tail -f ../logs/catalina.out 查看日志
tail 100 catalina.out 查看100行內(nèi)容
tail -200 catalina.out 查看倒數(shù)200行日志
vi debug.log
:num //要跳到的行數(shù)
enter后跳轉(zhuǎn)
grep "t process message type" debug.log | grep '13:25' 多條件查詢
出現(xiàn)如下錯(cuò)誤:Binary file (standard input) matches 要加 -a
more debug.log |grep -a '15927132467'| more
more 常用操作
空格 -- 下一頁
b -- 上一頁
/ -- 在每個(gè)檔案顯示前搜尋該字串(pattern),然后從該字串之后開始顯示
more +20 testfile --從第 20 行開始顯示 testfile 之檔案內(nèi)容
more .....debug.log |grep 13472896652|more
more /home/card/bp/cardservice/logs/debug.log |grep '2012-03-02 09:2'|more 模糊查找
more /home/card/bp/cardservice/logs/debug.log |grep 057425589999|more
grep -E "Thread-9|NioProcessor-18" debug.log | grep "responseCode = 0"
grep -E "Thread-10|NioProcessor-35" debug.log | grep "responseCode = 0" | wc -l 多條件查詢統(tǒng)計(jì)
vi 操作
i -- 剛進(jìn)入時(shí)是命令行模式,輸入i,進(jìn)入插入模式
esc -- 退出插入模式
:wq -- 保存退出
:q! -- 不保存退出
/ -- 更具輸入內(nèi)容查找
chown oms:oms -R sms_test/
root身份下進(jìn)去
chown -R nms:vpdn /home/nms root權(quán)限傳得東西,nms用戶不能操作,必需授權(quán)
chmod +x vpdn.sh --加可執(zhí)行權(quán)限
col -bx < vpdn.sh > a.sh 轉(zhuǎn)碼
mv a.sh vpdn.sh
chmod +x vpdn.sh
cat scmsmain.log | grep 'groupId=1722311947,' > 1722311947.txt 提取日志到txt文檔中
vi debug.log 查看debug.log日志
o 以只讀方式打開
/2012-03-04 /查找,后面是匹配符
top cM -u nms 查看實(shí)際內(nèi)存占用
########################
#################
# #
# 系統(tǒng)服務(wù)器操作 #
# #
#########################################
一: 查看進(jìn)程命令
netstat -an | grep 8000 查看端口信息有沒有溢出
ps -ef | grep abc --查看進(jìn)程的名字
netstat -n | grep 80 -- 顯示進(jìn)程的信息端口,查找80端口占用的進(jìn)程
ssh 192.168.1.1
2012-4-16 移動(dòng)掛機(jī)名片后臺(tái)死掉(java內(nèi)存溢出)
exit -- 退出oms,切換到root
ps -ef |grep java -- 查找java線程
kill 9668 -- 殺掉oms用戶的java進(jìn)程
/sbin/ifconfig --查看ip信息
tcpdump -X -s lo -w rh7769.cap host 192.168.23.15 and tcp port 7769 網(wǎng)絡(luò)抓包
湖北電信掛機(jī)
tcpdump -s 2000 -i eth0 port 9001 -w /home/zc001.cap 網(wǎng)絡(luò)抓包
bond0 網(wǎng)口 這里可以是eth0或者eth1或者lo
port 8855 這里是抓包的端口
nohup <程序名> & 讓程序后臺(tái)執(zhí)行,即實(shí)現(xiàn)守護(hù)進(jìn)程
java -cp 指定classpath
grep -v grep 反檢索,找出不匹配的行
top -M 按內(nèi)存大小排序
JVM 出現(xiàn)異常時(shí),stop有時(shí)候不起作用,這時(shí),嘗試一下方式
kill -9 pid;
ps -ef |grep java
cd /proc/pid/fd 可以查詢連接數(shù)
ls -l |wc -l
文件上傳
scp2 -P 58822 F:projectinsightrunrundistlib*.jar nms@210.51.37.181:/home/nms/run/run/dist/lib/.
scp2 -P 58822 F:projectinsightrunrundistlibweb.applet-common.jar nms@210.51.37.185:/home/nms/apache-tomcat-6.0.26/webapps/insight/applet/.
scp -P 58822 nms@210.51.37.180:/home/nms/jdk1.6.0_13.tar.gz .
查看run下所有日志
find run -name "*.log" -exec tail -20 {} ; | grep -i ERROR
tail -20 $(find run -name "*.log") |grep -i ERROR
查看網(wǎng)絡(luò)設(shè)配通不通
snmpwalk -v 2c -c raisecom 210.51.46.44 .1.3.6.1.2.1.1.1
比如 gpsd的進(jìn)程號(hào)是1018,其打開到文件包括 ls -l /proc/1018/fd/ 得到如下到結(jié)果:
#########################################
# #
# 程序安裝操作 #
# #
#########################################
建工作組
groupadd test //新建test工作組
建用戶
useradd rockey
修改密碼
passwd rockey //1234
#########################################
# #
# 配置環(huán)境變量 #
# #
#########################################
ls -a
more .bash_profile
vi .bash_profile :qw 保存退出
或者臨時(shí)添加
export PATH=.:$PATH
常用壓縮文件拓展名
=======================
*.Z compress程序壓縮的文件
*.gz gzip程序壓縮的文件
*.bz2 bzip2程序壓縮的文件
*.tar tar程序打包的數(shù)據(jù),并沒有壓縮
*.tar.gz tar程序打包的文件,其中經(jīng)過gzip的壓縮
*.tar.bz2 tar程序打包的文件,其中經(jīng)過bzip2的壓縮
解壓
tar –xvf file.tar //解壓 tar包
tar -xzvf file.tar.gz //解壓tar.gz
tar -xjvf file.tar.bz2 //解壓 tar.bz2
tar –xZvf file.tar.Z //解壓tar.Z
unrar e file.rar //解壓rar
unzip file.zip //解壓zip
壓縮
tar -cvf /tmp/etc.tar /etc <==僅打包,不壓縮!
tar -zcvf filename.tar.gz dirName
tar -zcvf /tmp/etc.tar.gz /etc <==打包后,以 gzip 壓縮
tar -jcvf /tmp/etc.tar.bz2 /etc <==打包后,以 bzip2 壓縮
tar -zcvf poller1_run.tar.gz run/
scp root@poller1:/home/nms/poller1_run.tar.gz .
tar -xzvf poller1_run.tar.gz
tar -zcvf poller1_apache.tar.gz apa
scp root@poller1:/home/nms/poller1_apache.tar.gz .
tar -xzvf poller1_apache.tar.gz
-- 啟動(dòng)redis
cd /usr/local/bin
./redis-server /meatwms/redis-2.8.19/redis.conf
./redis-sentinel /meatwms/redis-2.8.19/sentinel.conf
ps -ef | grep redis
./redis-cli -h 10.6.137.8 -c -p 6379
./redis-cli -h 10.6.137.9 -c -p 6379
auth "sino_chainwork"
keys sso*
-- zk
/meatwms/zookeeper-3.4.8/bin
./zkServer.sh stop
./zkServer.sh start
jps
source /etc/profile
scp -r app-web sysadm@10.6.137.9:/meatwms/tomcat8-appweb-8080/webapps
需要完整文檔的同學(xué)們可以文末留言或者私信我.更多學(xué)習(xí)資料分享給大家.
金陽東
版權(quán)所有 未經(jīng)許可不得轉(zhuǎn)載
增值電信業(yè)務(wù)經(jīng)營許可證備案號(hào):遼ICP備14006349號(hào)
網(wǎng)站介紹 商務(wù)合作 免責(zé)聲明 - html - txt - xml