cpu占用和核數(shù)查詢教程
https://blog.csdn.net/wangxin6722513/article/details/43452075
Linux之在aws ec2上使用root用戶登錄
- sudo passwd root
- su root
安裝websocket命令
- npm config set registry http://registry.npm.taobao.org/
- npm install -g wscat --registry https://registry.npm.taobao.org
- wscat -c ws://echo.websocket.org
wscat -c wss://real.OKEx.com:8443/ws/v3
{"op": "subscribe", "args": ["swap/depth_l2_tbt:BTC-USD-SWAP"]}
centos7創(chuàng)建內(nèi)存交換空間
// 創(chuàng)建swap文件:count為要改了數(shù)字1024*2*實(shí)際內(nèi)存大小(M)其中2代表虛擬內(nèi)存是實(shí)際內(nèi)存的2倍
sudo dd if=/dev/zero of=/home/swap bs=1024 count=4098000
// 將文件格式轉(zhuǎn)換為swap格式的
sudo mkswap /home/swap
// 再用swapon命令把這個(gè)文件分區(qū)掛載swap分區(qū)
sudo swapon /home/swap
//
free -m
// 為防止重啟后swap分區(qū)變成0宽菜,要修改/etc/fstab文件
sudo vi /etc/fstab
/home/swap swap swap default 0 0
// 關(guān)閉(等待)
swapoff -a
// 啟動
swapon /文件路徑
https://blog.csdn.net/ygm_linux/article/details/24532809
- sudo chmod 777 /home/swap
https://jingyan.baidu.com/article/4dc408486bb3e7c8d946f125.html
linux目錄
// 用戶級的程序目錄
/opt
后臺啟動命令
- nohup command >/dev/null 2>&1 &
安裝docker
https://www.runoob.com/docker/centos-docker-install.html
ll按時(shí)間跑排序
- ll -t (降序)
- ll -t | tac (升序)
查看cpu配置信息
- cat /proc/cpuinfo
https://www.cnblogs.com/black-mamba/p/7102615.html
查看磁盤
- df -g
查看內(nèi)存
- free -m
aws linux主機(jī)root帳號登錄
- 創(chuàng)建root密碼:sudo passwd root
- 切換成root身份: su root
- 修改sshd 配置文件:vim /etc/ssh/sshd_config
PasswordAuthentication yes
PermitRootLogin yes
- 重新啟動下sshd谣膳,sudo /sbin/service sshd restart
以上都是在服務(wù)端執(zhí)行的操作,現(xiàn)在就可以ssh root@xxx.xxx.xxx 進(jìn)行登錄了
統(tǒng)計(jì)一個(gè)進(jìn)程的線程數(shù)
cat /proc/10830/status
image.png
linux mysql 定時(shí)任務(wù)備份
- 創(chuàng)建備份腳本
cd /etc/cron.d/
sudo touch mysql-backup.sql
sudo chmod +x mysql-backup.sql(sudo chmod 777 mysql-backup.sql)
sudo vi mysql-backup.sql
#!/bin/bash
mysqldump -h localhost -uroot -pBitCopt@MySQL#2019 bitcopt_db > /home/centos/mysql-backup/bitcopt_db-$(date +%Y%m%d%H%M%S).sql
- 創(chuàng)建備份目錄
sudo mkdir backup
sudo chmod +x backup(sudo chmod 777 backup)
- 設(shè)置定時(shí)任務(wù)
# mysql mht_web backup
30 * * * * /etc/cron.d/cleanUp-log.sh > /dev/null 2>&1
根據(jù)pid查詢服務(wù)名稱铅乡、路徑
ps -aux |grep -v grep|grep 28990
vi文本操作
// 批量替換字符串
:%s/vivian/sky/ // 替換每一行的第一個(gè) vivian 為 sky
:%s/vivian/sky/g // 替換每一行中所有 vivian 為 sky
// 定位vi文本
跳到文本的最后一行:按“G”,即“shift+g”
跳到第一行的第一個(gè)字符:先按兩次“g”
// 過濾vi文本信息继谚,注意以上/error/p 中的p 必須要帶著,后邊的logs.log 是一個(gè)文件隆判,輸入上邊的命令犬庇,則會打印出只含有error 的內(nèi)容。
sed -n "/error/p" logs.log
修改hosts文件(修改完就生效)
sudo vi /etc/hosts
centos7 rabbitmq安裝教程
- 安裝erlang(centos7下要使用這個(gè)安裝包侨嘀,不然又其他奇怪問題)
- sudo yum install epel-release
- sudo yum remove erlang-erts-R16B-03.18.el7.x86_64 (卸載之前版本)
- wget https://packages.erlang-solutions.com/erlang/rpm/centos/7/x86_64/esl-erlang_20.3.8.23-1centos7_amd64.rpm
- sudo rpm -ivh esl-erlang_20.3.8.23-1centos7_amd64.rpm
下載地址 https://github.com/rabbitmq/erlang-rpm/releases/tag/v20.1.7.1 - 安裝socat
sudo yum install socat
- rabbitmq密鑰導(dǎo)入
# import the new PackageCloud key that will be used starting December 1st, 2018 (GMT)
sudo rpm --import https://packagecloud.io/rabbitmq/rabbitmq-server/gpgkey
# import the old PackageCloud key that will be discontinued on December 1st, 2018 (GMT)
sudo rpm --import https://packagecloud.io/gpg.key
sudo rpm --import https://github.com/rabbitmq/signing-keys/releases/download/2.0/rabbitmq-release-signing-key.asc
- 下載rabbitmq最新版
https://www.rabbitmq.com/download.html - 安裝rabbitmq
sudo rpm -ivh rabbitmq-server-3.7.15-1.el7.noarch.rpm
- 啟動rabbitmq服務(wù)器
sudo chkconfig rabbitmq-server on
- rabbitmq命令
sudo /sbin/service rabbitmq-server start
sudo /sbin/service rabbitmq-server stop
sudo /sbin/service rabbitmq-server status
sudo service rabbitmq-server restart
- 啟動web管理網(wǎng)站
sudo find / -name rabbitmq-plugins
sudo /usr/lib/rabbitmq/lib/rabbitmq_server-3.7.5/sbin/rabbitmq-plugins enable rabbitmq_management
sudo /usr/lib/rabbitmq/lib/rabbitmq_server-3.7.15/sbin/rabbitmq-plugins enable rabbitmq_management
// 重啟
sudo service rabbitmq-server restart
- 登錄web管理網(wǎng)站
// 創(chuàng)建用戶
sudo rabbitmqctl add_user admin admin
// 給予用戶分配權(quán)限
sudo rabbitmqctl set_user_tags admin administrator
// 給予控制權(quán)限,解決程序不能創(chuàng)建exchange捂襟、隊(duì)列問題
sudo rabbitmqctl set_permissions -p / admin ".*" ".*" ".*"
// 重啟
sudo service rabbitmq-server restart
centos一鍵安裝腳本
- jdk腳本
1.將jdk安裝包放到sh腳本同一個(gè)目錄
2.sudo bash jdk.sh(自定義sh腳本
https://www.cnblogs.com/chenglee/p/10131564.html
centos7 防護(hù)墻 端口命令
- 查看防火墻狀態(tài)
sudo systemctl status firewalld
- 啟動防火墻
sudo systemctl start firewalld
- 停止防火墻
sudo systemctl stop firewalld
- 開放端口
sudo firewall-cmd --zone=public --add-port=8333/tcp --permanent
- 重啟防火墻
sudo firewall-cmd --reload
- 查看已經(jīng)開放的端口
sudo firewall-cmd --list-ports
https://blog.csdn.net/achang21/article/details/52538049
清空文件內(nèi)容
echo "" > filename
復(fù)制目錄到另一個(gè)目錄
- 如果dir2目錄不存在咬腕,則可以直接使用
cp -r dir1 dir2
- 如果dir2目錄已存在,則需要使用
cp -r dir1/. dir2
修改時(shí)區(qū)
timedatectl list-timezones |grep Shanghai #查找中國時(shí)區(qū)的完整名稱
Asia/Shanghai
timedatectl set-timezone Asia/Shanghai #其他時(shí)區(qū)以此類推
查看當(dāng)前時(shí)區(qū)
timedatectl status
創(chuàng)建多級目錄
mkdir -p /www/bitcopt/com
linux 開放端口
https://blog.csdn.net/TE28093163/article/details/78200665/
壓縮包
// tar結(jié)尾葬荷,目錄后面不加斜杠
sudo tar -cvf backstage.tar dirname
// gz結(jié)尾
gzip -d all.gz
解壓縮
···
// tar結(jié)尾
tar zxvf filename.tar
// gz結(jié)尾
gunzip all.gz
···
linux nginx安裝
- 安裝編譯工具及庫文件
sudo yum -y install make zlib zlib-devel gcc-c++ libtool openssl openssl-devel
- 安裝 PCRE, 作用是讓 Nginx 支持 Rewrite 功能
cd /usr/local/src/ # 一定要裝在這個(gè)目錄涨共,不然ngnix編譯出錯(cuò)
sudo wget http://downloads.sourceforge.net/project/pcre/pcre/8.35/pcre-8.35.tar.gz
解壓安裝包:
sduo tar zxvf pcre-8.35.tar.gz
進(jìn)入安裝包目錄:
cd pcre-8.35
編譯安裝:
sudo ./configure
sudo make && sudo make install
查看pcre版本
pcre-config --version
- 安裝 Nginx
sudo wget http://nginx.org/download/nginx-1.14.2.tar.gz #修改為自己要的版本 http://nginx.org
解壓安裝包:
tar zxvf nginx-1.6.2.tar.gz
進(jìn)入安裝包目錄:
cd nginx-1.6.2
編譯安裝:
sudo ./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --with-pcre=/usr/local/src/pcre-8.35
sudo make && sudo make install
查看nginx版本:
/usr/local/nginx/sbin/nginx -v
- 環(huán)境配置
sudo vi /etc/profile
source /etc/profile
- 啟動nginx,切換到管理員用戶
sudo /usr/local/webserver/nginx/sbin/nginx -c /usr/local/webserver/nginx/conf/nginx.conf
注:-c 指定一個(gè)文件宠漩,即指定配件文件举反。默認(rèn)的路徑是安裝目錄下的conf/nginx.conf
當(dāng)然你不指定就是這里,指定的話扒吁,可以自定義火鼻,只要有權(quán)限訪問即可。
linux redis安裝
- 下載redis
wget http://download.redis.io/redis-stable.tar.gz
tar xvzf redis-stable.tar.gz
cd redis-stable
make test
- centos7 g++: command not found雕崩,CentOS5.7默認(rèn)沒有安裝gcc魁索,這會導(dǎo)致我們無法make成功。使用yum安裝盼铁。
sudo yum -y install gcc
- zmalloc.h:50:31: fatal error: jemalloc/jemalloc.h: No such file or directory
sudo make MALLOC=libc
- 如果報(bào)錯(cuò):You need tcl 8.5 or newer in order to run the Redis test
sudo yum install tcl.x86_64
- 將redis安裝到/usr/local/bin/
sudo make install
- 后臺啟動
redis-server &
- 三種啟動方式
// 默認(rèn)配置
redis-server &
// 指定配置
redis-server /home/centos/redis-5.0.5/redis.conf &
// 使用redis啟動腳本設(shè)置開機(jī)自啟動
- 通過指定配置文件啟動
redis-server /你的路徑/redis.conf &
- 測試服務(wù)是否啟動(默認(rèn)端口)
redis-cli ping
- 客戶端建立連接
redis-cli -h ip地址 -p 6379 -a 密碼
redis-cli -h 3.114.94.64 -p 6379 -a marketHdege
- redis查看狀態(tài)
ps -ef |grep redis
- 關(guān)閉redis服務(wù)
redis-cli shutdown
- 使redis外網(wǎng)可以訪問
打開redis.conf文件粗蔚,注釋掉bind 127.0.0.1
protected-mode yes 改為 protected-mode no
- 查看redis版本
redis-server -v
- 修改配置文件,默認(rèn)后臺運(yùn)行
打開redis.conf文件饶火,修改daemonize yes
- 清空當(dāng)前數(shù)據(jù)庫中的所有 key
redis-cli flushdb
- 清空整個(gè) Redis 服務(wù)器的數(shù)據(jù)
redis-cli flushall
- 修改密碼
# 修改密碼(永久生效)
sudo find / -name "redis.conf"
sudo vi redis.conf
# 搜索關(guān)鍵字
/requirepass
# 把 # 去掉鹏控,foobared 替換成自己的密碼
requirepass myPassw0rd
# 查詢密碼
127.0.0.1:6379> config get requirepass
# 修改密碼(重啟服務(wù)器后失效)
CONFIG set requirepass "runoob"
# 輸入密碼
AUTH "runoob"
https://cloud.tencent.com/developer/article/1404215
官方教程:https://redis.io/topics/quickstart
centos mysql5.7 安裝
- 安裝前,我們可以檢測系統(tǒng)是否自帶安裝 MySQL:
rpm -qa | grep mysql
- 如果你系統(tǒng)有安裝肤寝,那可以選擇進(jìn)行卸載:
rpm -e mysql完整名字 // 普通刪除模式
rpm -e --nodeps mysql完整名字 // 強(qiáng)力刪除模式当辐,如果使用上面命令刪除時(shí),提示有依賴的其它文件醒陆,則用該命令可以對其進(jìn)行強(qiáng)力刪除
- 在http://repo.mysql.com/找到指定版本
sudo wget http://repo.mysql.com/mysql57-community-release-el7.rpm
sudo rpm -ivh mysql57-community-release-el7.rpm
sudo yum update
sudo yum install mysql-server
- 重啟MySQL:
sudo systemctl restart mysqld
- 啟動 MySQL:
sudo systemctl start mysqld
- 查看 MySQL 運(yùn)行狀態(tài):
sudo systemctl status mysqld
- mysql5.7 默認(rèn)情況下 MySQL 服務(wù)器的登錄密碼為空
輸入mysql登錄mysql
- 當(dāng)?shù)卿洉r(shí)瀑构,有可能有初始密碼,有可能遇到:Access denied for user 'root'@'localhost' (using password: NO)
cat /var/log/mysqld.log | grep password
- 默認(rèn)的root用戶密碼為空,你可以使用以下命令來創(chuàng)建root用戶的密碼:
mysqladmin -u root password "";
- 當(dāng)已有密碼時(shí)寺晌,修改密碼:
set password for root@localhost = password('BitCopt@MySQL#2019');
- 現(xiàn)在你可以通過以下命令來連接到Mysql服務(wù)器:
mysql -u root -p
參考教程:
https://www.runoob.com/mysql/mysql-install.html
redhat RPM安裝軟件包
#rpm -i example.rpm 安裝 example.rpm 包世吨;
#rpm -iv example.rpm 安裝 example.rpm 包并在安裝過程中顯示正在安裝的文件信息;
#rpm -ivh example.rpm 安裝 example.rpm 包并在安裝過程中顯示正在安裝的文件信息及安裝進(jìn)度
java jdk安裝
https://www.cnblogs.com/liugh/p/6623530.html
ssh遠(yuǎn)程登錄服務(wù)器方式
- 通過git申請公鑰呻征,在本地生成id_rsa.pub文件耘婚,里面存放公鑰,和密鑰文件
ssh-keygen -t rsa -C "100***115@qq.com"
- 將公鑰添加到服務(wù)器
- 打開git命令行終端陆赋,登錄服務(wù)器
ssh centos@52.194.34.178
xshell生成通過公鑰方式登錄
cd ~/.ssh/
ls
rz
ls
cp authorized_keys authorized_keys.bak
cat maozhengyi.pub >> authorized_keys
cat authorized_keys
https://www.cnblogs.com/dadonggg/p/8350423.html
winscp公鑰方式登錄
https://www.cnblogs.com/feipeng8848/p/8549697.html
linux java cpu占用過高分析方法
https://blog.csdn.net/u010862794/article/details/78020231
后臺運(yùn)行python
// 后臺啟動程序
nohup python2 app.py &
// 查看本終端的進(jìn)程
jobs -l
根據(jù)進(jìn)程號查詢路徑
···
ps -ef | grep java
ls -l /proc/進(jìn)程號
···
xshell下載文件到window
sz file
安裝:sudo yum install lrzsz
window上傳到linux
rz
linux上傳到window
sz
查看可用內(nèi)存
free -m
查看PATH
echo $PATH
修改PATH
通過修改profile文件:
vim /etc/profile
讓/etc/profile文件修改后立即生效 ,可以使用如下命令:
. /etc/profile
注意: . 和 /etc/profile 有空格
方法2:
讓/etc/profile文件修改后立即生效 ,可以使用如下命令:
source /etc/profile
解壓zip文件
unzip ***.zip
設(shè)置定時(shí)任務(wù)(優(yōu)先選擇方法二)
- 方法一(作用于全局):
1.創(chuàng)建sh文件
cd /etc/cron.d/
sudo touch timing.sh
2.設(shè)置權(quán)限
sudo chmod 644 timing.sh
3.編輯/etc/crontab文件
sudo vi /etc/crontab
*/30 * * * * bash /home/centos/script/mysql-backup.sh > /dev/null 2>&1
4.設(shè)置腳本路徑
- 方法二:
1.編輯定時(shí)任務(wù)
crontab -e
2.查看定時(shí)任務(wù)列表
···
crontab -l
···
查看日志:
sudo find / -name cron
- 注意:
1.不需要加用戶名
2.路徑都用全路徑沐祷,不然找不到
3.放在crontab腳本的位置:/etc/cron.d/
- 定時(shí)命令
// 每3小時(shí)執(zhí)行一次
1 */3 * * * bash /etc/cron.d/cleanUp-log.sh
監(jiān)控磁盤、cpu性能腳本
#/bin/sh
url=""
disk_max=90
disk_msg="chatId=id&message=磁盤容量超過$disk_max"
disk_partition=/dev/vda1
df_num=`df -h |grep $disk_partition |awk -F'[ %]+' '{print $5}'`
[ $df_num -ge $disk_max ] && curl -d "$disk_msg" "$url"
cpu_max=20.0
cpu_msg="chatId=id&message=cpu使用率超過$cpu_max"
cpu_num=`top -n 1 | grep %Cpu | gawk '{print $2}' | bc` #cpu
if [ `echo "$cpu_num >= $cpu_max" | bc` -eq 1 ]
then
curl -d "$cpu_msg" "$url"
fi
刪除文件
rm 文件名
rm -r 遞歸刪除目錄及其內(nèi)容
移動攒岛、復(fù)制文件
mv cp