分类 linux 下的文章
warp
warp
wrap简介:
支持 chatGPT,解锁奈飞流媒体
避免 Google 验证码或是使用 Google 学术搜索
可调用 IPv4 接口,使青龙和V2P等项目能正常运行
由于可以双向转输数据,能做对方VPS的跳板和探针,替代 HE tunnelbroker
能让 IPv6 only VPS 上做的节点支持 Telegram
IPv6 建的节点能在只支持 IPv4 的 PassWall、ShadowSocksR Plus+ 上使用
网上流行的warp的几个版本包括:
https://github.com/fscarmen/warp
https://github.com/P3TERX/warp.sh
https://gitlab.com/ProjectWARP/warp-go/-/tree/master/
https://github.com/yonggekkk/warp-yg
https://gitlab.com/Misaka-blog/warp-script
以 https://github.com/fscarmen/warp 为例进行演示。
1、首次运行
wget -N https://raw.githubusercontent.com/fscarmen/warp/main/menu.sh && bash menu.sh [option] [lisence]
2、再次运行
warp [option] [lisence]
3、参数参考github主页,我这里来一个极简演示:
wget -N https://raw.githubusercontent.com/fscarmen/warp/main/menu.sh && bash menu.sh 4
armbian系统,开机自启动
armbian系统,开机自启动
armbian系统,开机启动脚本rc.local 默认是不启动,不管在里面添加了什么脚本都是不管用的,
需要按如下方法开启 方法: 命令vi修改,也可以winscp修改
vi /lib/systemd/system/rc.local.service
在最后添加下面三行内容
[Install]
WantedBy=multi-user.target
Alias=rc-local.service
然后就可以在/etc/rc.local 中添加需要的开机启动脚本,脚本要写在exit 0的前面 。
以下是找的原理 armbian(我使用5.62 5.64版本) 使用的是systemd管理系统,不是使用initd管理系统,systemd 默认读取 /etc/systemd/system 下的配置文件,该目录下的文件会链接/lib/systemd/system/下的文件 执行 ls /lib/systemd/system 你可以看到有很多启动脚本,其中就有我们需要的 rc.local.service 打开脚本内容:
# This file is part of systemd.
#
# systemd is free software; you can redistribute #it and/or modify it
# under the terms of the GNU Lesser General Public #License as published by
# the Free Software Foundation; either version 2.1 #of the License, or
# (at your option) any later version.
# This unit gets pulled automatically into multi-#user.target by # systemd-rc-local-generator if #/etc/rc.local is executable.
[Unit]
Description=/etc/rc.local Compatibility ConditionFileIsExecutable=/etc/rc.local After=network.target
[Service]
Type=forking ExecStart=/etc/rc.local start TimeoutSec=0
RemainAfterExit=yes
一般正常的启动文件主要分成三部分
[Unit] 段: 启动顺序与依赖关系
[Service] 段: 启动行为,如何启动,启动类型
[Install] 段: 定义如何安装这个配置文件,即怎样做到开机启动 可以看出,/etc/rc.local 的启动顺序是在网络后面,但是显然它少了 Install 段,也就没有定义如何做到开机启动,所以显然这样配置是无效的。 因此我们就需要在后面帮他加上 [Install] 段:
[Install]
WantedBy=multi-user.target
Alias=rc-local.service
转自:开启armbian系统的开机启动脚本rc.local-斐讯无线路由器以及其它斐迅网络设备-恩山无线论坛 - Powered by Discuz! (right.com.cn)
重建服务器 复盘2023/3/5
重建服务器 复盘2023/3/5
重建了服务器,然后现在就是用的debian
然后没有手装lnmp
而是用lnmp.org的一键安装包,不得不说挺好用的。
本来是想用xray一键安装包来安装的,但是可以换端口的都不支持debian(还是说我没有找到?)
其他的都是要80端口,就和本来的冲突了,我还因此不得不重新装一遍lnmp好在只有30分钟还好。
其他的就是后来还是只用普通的v2ray一键安装包,不是很想去折腾然后手动安装。
lnmp 安装脚本:
wget http://soft.vpser.net/lnmp/lnmp1.8.tar.gz -cO lnmp1.8.tar.gz && tar zxf lnmp1.8.tar.gz && cd lnmp1.8 && ./install.sh lnmp
v2ray 安装脚本:
source <(curl -sL https://multi.netlify.app/v2ray.sh) --zh
安装 Curl 依赖包
yum update -y && yum install curl -y #CentOS/Fedora apt-get update -y && apt-get install curl -y #Debian/Ubuntu
此时,Xray服务并没有被安装,你需要输入管理命令“Xray”,这时候系统会提示你“检测到本机没安装xray, 正在自动安装..”,请稍等片刻,即可完成。
一键安装脚本升级命令(保留配置文件更新)
source <(curl -sL https://multi.netlify.app/v2ray.sh) -k
一键安装脚本卸载命令
source <(curl -sL https://multi.netlify.app/v2ray.sh) --remove
一键安装脚本的V2Ray管理命令行参数
v2ray [-h|--help] [options] -h, --help 查看帮助 -v, --version 查看版本号 start 启动 V2Ray stop 停止 V2Ray restart 重启 V2Ray status 查看 V2Ray 运行状态 new 重建新的v2ray json配置文件 update 更新 V2Ray 到最新Release版本 update.sh 更新 multi-v2ray 到最新版本 add 新增mkcp + 随机一种 (srtp|wechat-video|utp|dtls|wireguard) header伪装的端口(Group) add [wechat|utp|srtp|dtls|wireguard|socks|mtproto|ss] 新增一种协议的组,端口随机,如 v2ray add utp 为新增utp协议 del 删除端口组 info 查看配置 port 修改端口 tls 修改tls tfo 修改tcpFastOpen stream 修改传输协议 cdn 走cdn stats v2ray流量统计 iptables iptables流量统计 clean 清理日志 log 查看日志
xray管理程序使用方法与v2ray管理程序基本一致,请根据提示操作即可。
bbr加速脚本:
卸载内核
wget -N --no-check-certificate "https://github.000060000.xyz/tcp.sh" && chmod +x tcp.sh && ./tcp.sh
或
wget -N "https://github.000060000.xyz/tcp.sh" && chmod +x tcp.sh && ./tcp.sh
不卸载内核
wget -N --no-check-certificate "https://github.000060000.xyz/tcpx.sh" && chmod +x tcpx.sh && ./tcpx.sh
或
wget -N "https://github.000060000.xyz/tcpx.sh" && chmod +x tcpx.sh && ./tcpx.sh
安装中 提示Abort kernel removal? 选择No
一键安装LNMP环境后,默认会安装Nginx,MySQL和PHP,相应的软件安装目录如下:
Nginx 目录: /usr/local/nginx/
MySQL 目录 : /usr/local/mysql/
MySQL数据库所在目录:/usr/local/mysql/var/
PHP目录 : /usr/local/php/
默认网站目录 : /home/wwwroot/default/
Nginx日志目录:/home/wwwlogs/
同样,LNMP默认的配置文件目录如下:
Nginx主配置(默认虚拟主机)文件:/usr/local/nginx/conf/nginx.conf
添加的虚拟主机配置文件:/usr/local/nginx/conf/vhost/域名.conf
MySQL配置文件:/etc/my.cnf
PHP配置文件:/usr/local/php/etc/php.ini
php-fpm配置文件:/usr/local/php/etc/php-fpm.conf
一般维护站点需要用到的命令如下:
重启nginx/mysql/php:lnmp nginx/mysql/php restart
重启所有:lnmp restart
添加站点:lnmp vhost add
添加数据库:lnmp database add
查看帮助:lnmp
LNMP 1.2或更高版本下需要执行:chattr -i /网站目录/.user.ini 后才能完整删除网站目录。
3月18日更新
docker安装:
sudo apt install docker-ce
安装青龙云面板:
拉取镜像
docker pull whyour/qinglong:latest
创建容器:
docker run -dit \
-v $PWD/ql/config:/ql/config \
-v $PWD/ql/log:/ql/log \
-v $PWD/ql/db:/ql/db \
-v $PWD/ql/repo:/ql/repo \
-v $PWD/ql/raw:/ql/raw \
-v $PWD/ql/scripts:/ql/scripts \
-v $PWD/ql/jbot:/ql/jbot \
-p 5700:5700 \
--name qinglong \
--hostname qinglong \
--restart unless-stopped \
whyour/qinglong:latest
先复制第一行,再复制其他如果是finalshell 直接在输入框的上方输入
青龙云面板基础命令:
#重启青龙容器
docker restart 你的容器名
#更新青龙
docker exec -it qinglong ql update
#更新青龙并编译
docker exec -it qinglong ql restart
#拉取自定义仓库
docker exec -it qinglong ql repo https://ghproxy.com/https://github.com/whyour/hundun.git "quanx" "tokens|caiyun|didi|donate|fold|Env"
#拉取单个脚本
docker exec -it qinglong ql raw https://ghproxy.com/https://raw.githubusercontent.com/moposmall/Script/main/Me/jx_cfd.js
#删除7天前的所有日志
docker exec -it qinglong ql rmlog 7
#启动bot
docker exec -it qinglong ql bot
#导出互助码
docker exec -it qinglong ql code
#通知测试
docker exec -it qinglong notify test test
#立即执行脚本
docker exec -it qinglong task test.js now
#并行执行脚本
docker exec -it qinglong task test.js conc
时间规则:
*/5 * * * * ? #每隔 5 秒执行一次
0 */1 * * * ? #每隔 1 分钟执行一次
0 0 2 1 * ? * #每月 1 日的凌晨 2 点执行一次
0 15 10 ? * #MON-FRI 周一到周五每天上午 10:15 执行
0 15 10 ? 6L #2002-2006 2002 年至 2006 年的每个月的最后一个星期五上午 10:15 执行
0 0 23 * * ? #每天 23 点执行一次
0 0 1 * * ? #每天凌晨 1 点执行一次
0 0 1 1 * ? #每月 1 日凌晨 1 点执行一次
0 0 23 L * ? #每月最后一天 23 点执行一次
0 0 1 ? * L #每周星期天凌晨 1 点执行一次
0 26,29,33 * * * ? #在 26 分、29 分、33 分执行一次
0 0 0,13,18,21 * * ? #每天的 0 点、13 点、18 点、21 点都执行一次
0 0 10,14,16 * * ? #每天上午 10 点,下午 2 点,4 点执行一次
0 0/30 9-17 * * ? #朝九晚五工作时间内每半小时执行一次
0 0 12 ? * WED #每个星期三中午 12 点执行一次
0 0 12 * * ? #每天中午 12 点触发
0 15 10 ? * * #每天上午 10:15 触发
0 15 10 * * ? #每天上午 10:15 触发
0 15 10 * * ? * #每天上午 10:15 触发
0 15 10 * * ? #2005 2005 年的每天上午 10:15 触发
0 * 14 * * ? #每天下午 2 点到 2:59 期间的每 1 分钟触发
0 0/5 14 * * ? #每天下午 2 点到 2:55 期间的每 5 分钟触发
0 0/5 14,18 * * ? #每天下午 2 点到 2:55 期间和下午 6 点到 6:55 期间的每 5 分钟触发
0 0-5 14 * * ? #每天下午 2 点到 2:05 期间的每 1 分钟触发
0 10,44 14 ? 3 WED #每年三月的星期三的下午 2:10 和 2:44 触发
0 15 10 ? * MON-FRI #周一至周五的上午 10:15 触发
0 15 10 15 * ? #每月 15 日上午 10:15 触发
0 15 10 L * ? #每月最后一日的上午 10:15 触发
0 15 10 ? * 6L #每月的最后一个星期五上午 10:15 触发
0 15 10 ? * 6L #2002-2005 2002 年至 2005 年的每月的最后一个星期五上午 10:15 触发
0 15 10 ? * 6#3 #每月的第三个星期五上午 10:15 触发
安装oneindex:
项目:https://github.com/Mintimate/OneindexM
这个项目其实不好只有一个主题可以用其他的主题都是有问题的,关键是能用的就是最基本的那个:
如果可以的话其实是可以用原来的项目。
Onedrive国际版本,到Microsoft Azure App registrations
世纪互联版本OneDrive,到Microsoft Azure.cn App registrations
- 受支持的帐户类型:如图:选择任何组织目录的账号和个人
- 重定向 URI:这里填入我建立的API:
https://tool.mintimate.cn/oneindexM/
设置权限
在获取应用机密前,我们需要设置权限,点击:
API权限
-Microsoft Graph
:依此勾选:
- offline_access
- Files.Read
- Files.Read.All
伪静态:
if (!-f $request_filename) {
set $rule_0 1$rule_0;
}
if (!-d $request_filename) {
set $rule_0 2$rule_0;
}
if ($rule_0 = "21") {
rewrite ^/(.*) /?/$1 last;
}
typecho插件商店:https://github.com/typecho-fans/plugins/releases/download/plugins-S_to_Z/TeStore.zip
需要设置文件可读写
海洋CMS自动采集脚本(sh脚本)2023版
海洋CMS自动采集脚本(sh脚本)2023版
第一步:获取脚本代码。
【1】下面是自动采集脚本代码,我们需要修改代码里面的3项后才可以使用。
#!/bin/bash
########################################################
# 程序名称: 海洋CMS自动采集脚本
# 版本信息:seacmsbot-2023
# 发布链接: https://blog.heky.tk/index.php/archives/301/
# 使用方法:直接复制代码到宝塔计划任务shell脚本内容里添加每小时任务使用
# 更新时间:2023/1/16
##########################################################
#请修改下面的网站域名及管理目录
web_site="http://网站域名/管理目录/admin_reslib2.php"
#请修改下面项内容为"admin_reslib2.php"里设置的访问密码(默认为系统设置的cookie密码)
web_pwd="8888e82e85bd4540f0defa3fb7a8e888"
#下面项内容为资源站每日采集链接地址列表,请自行修改,每行一条,可添加多个,前后需添加引号。
#每日采集链接获取方法:选择"后台-采集-资源库列表",复制资源站右边的"采集每天"的链接地址,去掉?前面的内容。
web_api=(
'?ac=day&rid=1&url=https://api.iokzy.com/inc/ldg_seackm3u8s.php'
'?ac=day&rid=2&url=http://www.zdziyuan.com/inc/s_ldgm3u8_sea.php'
)
#模拟用户浏览器ua,如果脚本运行错误,请自行百度浏览器ua并自行修改
web_ua="Mozilla/5.0 (Linux; Android 4.4.4; HM NOTE 1LTEW Build/KTU84P) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/33.0.0.0 Mobile Safari/537.36 MicroMessenger/6. 0.0.54_r849063.501 NetType/WIFI"
#采集单页
function get_content() {
echo "正在采集第$page页..."
#echo " get_content: --->url:--->$1"
cResult=$(curl --connect-timeout 10 -m 20 -k -s -L -A "$web_ua" "$1" )
echo $cResult | grep -q "采集"
#echo -e "$1\n$cResult"
if [ "$?" = "0" ]; then
next_content "$cResult"
else
echo -e "采集失败,请检查设置!\n失败链接-->$1\n返回信息-->$cResult\n采集结束,共0页"
fi
}
#采集下页
function next_content() {
#统计数据
Result=$(echo "$1" | tr "<br>" "\n")
a=$(echo "$Result" | grep -c "采集成功")
b=$(echo "$Result" | grep -c "更新数据")
c=$(echo "$Result" | grep -c "无需更新")
d=$(echo "$Result" | grep -c "跳过")
echo "采集成功-->已更$c部,新增$a部,更新$b部,跳过$d部"
let add+=$a
let update+=$b
let none+=$c
let jmp+=$d
#检测并采集下页
next_url=${1##*location.href=\'}
next_url=${next_url%%\'*}
#echo $next_url
if [ "${next_url:0:1}" = "?" ]
then
let page++
get_content "$web_site$next_url"
else
echo "采集结束,共$page页"
fi
}
#脚本入口
echo "海洋CMS自动采集脚本开始执行 版本:v1.2"
starttime=$(date +%s)
update=0 #更新
add=0 #新增
none=0 #无变化
jmp=0 # 跳过
for url in ${web_api[@]};
do
if [[ ! -z $url ]]
then
web_param="$web_site$url&password=$web_pwd"
page=1
echo "开始采集:$url"
get_content $web_param
fi
done
endtime=$(date +%s)
echo "============================"
echo "入库-->$add部"
echo "更新-->$update部"
echo "跳过-->$jmp部(未绑定分类或链接错误)"
echo "今日-->$[none+add+update]部"
echo "============================"
echo "全部采集结束,耗时$[endtime - starttime]秒"
第二步:修改脚本
【2】根据上面提供的代码内容复制到记事本或是其他html编辑器来对应修改
①请修改下面的网站域名及管理目录
web_site="http://网站域名/管理目录/admin_reslib2.php"
这个是需要修改成你的“网站域名”和“海洋cms后台的管理目录”。域名大家都能理解,后台的管理目录这个对于新手来说需要多讲两句,首先你要能登录你的后台才可以知道你的后台目录。举例说明:假如我的后台登录地址是 mytheme.cn/xxxx/那么这里的“xxxx”就是后台的管理目录,得到了管理目录我们直接填写到代码里即可。
②请修改下面项内容为"admin_reslib2.php"里设置的访问密码(默认为系统设置的cookie密码)
web_pwd="8888e82e85bd4540f0defa3fb7a8e888"
这个修改需要到海洋cms系统后台得到我们的cookie密码进行替换才可以,具体步骤:系统-网站设置-cookie密码。得到自己网站的cookie密码后替换即可。
③下面项内容为资源站每日采集链接地址列表,请自行修改,每行一条,可添加多个,前后需添加引号。
\#每日采集链接获取方法:选择"后台-采集-资源库列表",复制资源站右边的"采集每天"的链接地址,去掉?前面的内容。
web_api=(
'?ac=day&rid=1&url=https://api.iokzy.com/inc/ldg_seackm3u8s.php'
'?ac=day&rid=2&url=http://www.zdziyuan.com/inc/s_ldgm3u8_sea.php'
)
这个是代码里需要修改的最后一项,里面是代码里默认提供的2个采集链接地址,我们需要获取自己的采集链接地址添加到里面。
第三步:宝塔定时任务设置。
直接复制代码到宝塔计划任务shell脚本,内容里添加每小时任务使用。
如果没有使用宝塔面板可以 把修改好的代码,另存为"cms.sh"(你想叫其他名字也可以) ,上传到vps文件夹中例如"/opt",然后执行以下代码
chmod +x opt/cms.sh
echo "* */1 * * * opt/cms.sh">>/etc/crontab
service crond start
就可以了
mysql 忘记密码找回
mysql 忘记密码找回
利用mysql自带的用户debian-sys-maint进行重置密码,只有Debian或Ubuntu服务器才有,存在于/etc/mysql/debian.cnf文件中
- 打开/etc/mysql/目录下的debian.cnf文件,里面包括用户名和密码
sudo vim /etc/mysql/debian.cnf
- 使用文件中提供的用户名和密码进入mysql
mysql -u debian-sys-maint -p
- 选择mysql数据库
use mysql;
- 更新root用户的密码
ALTER USER 'root'@'localhost' IDENTIFIED BY '你要修改的密码';
ps:数据库密码更换以后,如何重新设置Typecho?
修改文件 config.inc.php