分类: linux

  • pve 安装

    镜像下载地址:Index of /proxmox/iso / | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror

    1.删除local-lvm

    lvremove pve/data
    
    lvextend -l +100%FREE -r pve/root

  • Linux查看进程是否存在及启动或重启

    Linux下的shell 没有系统的学习过,不过经常会用到,如果一直知其然而不知其所以然,过后还是会忘。

    ps -ef | grep java

    此处主要用到一个命令PS

    关于ps的参数非常多,这里主要说三个, -a -e -f

    -a : 显示所有进程

    -e : 此参数的效果和指定“A”的参数相同

    -f: 显示UID,PPID,C与STIME 栏位

     然后要用到 grep命令

    grep是查找,是一种强大的文本搜索工具,他能使用正则表达式搜索文本,并把匹配的行打印出来

    中间的 | 是管道命令,是批 ps 与 grep 同时执行

    #!/bin/bash
    #判断进程是否存在,如果不存在就启动它
    PIDS=`ps -ef |grep myprocess |grep -v grep | awk '{print $2}'`if [ "$PIDS" != "" ]; then
    echo"myprocess is runing!"
    else
    cd /root/./myprocess
    
    #运行进程
    fi
  • PVE7 PveTools工具的安装和使用(PVE必备工具)

    安装:
    1.先删除企业源:
    rm /etc/apt/sources.list.d/pve-enterprise.list

    2.安装

    export LC_ALL=en_US.UTF-8
    apt update && apt -y install git && git clone https://gitee.com/houlijiang/pvetools.git
    
    

    3.启动工具(cd到目录,启动工具)
    cd /etc/apt/pvetools
    ./pvetools.sh

    卸载
    删除下载的pvetools目录即可

    说明:
    启动后的第一个界面,就是图1
    这里的选择语言只是选择PveTools的语言,不会影响系统语言设置

    然后就是方便的设置各种功能

  • PVE 无法关机或删除

    在日常使用PVE搭建虚拟机的使用过程中,偶尔会出现虚拟机假死无法关闭的情况并提示TASK ERROR: VM quit/powerdown failed – got timeout显示关闭推出无反应超时,通过查找学习可以使用以下办法强制关闭假死的虚拟机。

          1、选中右侧pve,点击左上方shell,打开ssh控制台,通过ps命令查到对应虚拟机的VM进程号。

    ps -ef|grep "/usr/bin/kvm -id 100" |grep -v grep
    

      2、这里可以看到100的虚拟机的进程号是3995679,此时使用kill 3995679命令强制结束进程,稍等片刻就会发现该虚拟机已经停止运行了

  • 虚拟化平台PVE(ProxmoxVirtual Environment)安装部署

    Get the free Proxmox VE ISO installer

    PVE是一个完整的企业虚拟化开源平台。通过内置的web界面,可以轻松地管理虚拟机和容器、软件定义的存储和网络、高可用性集群和多个开箱即用的工具。

    官方:Proxmox – Powerful open-source server solutions

    部署前准备

    1.下载镜像,并刻录到U盘,然后安装到物理硬件设备上面 

    打开下载页面 Get the free Proxmox VE ISO installer

     目前最新是7.2版本,直接下载镜像,或者下载种子,然后通过迅雷解析下载,毕竟在国内,迅雷下载速度还是很快的

    2.下载刻录工具,本次使用的是开源软件 rufus工具,下载地址如下 https://github.com/pbatard/rufus/releases/tag/v3.20

    刻录U盘

     部署

    在物理设备上,插入U盘,开机选择从U盘启动即可 

     错误信息提示,服务器未开启虚拟化,需要先开启虚拟化,才可以继续下面步骤

     正常执行步骤

     安装完成,进行web访问

     在浏览器输入服务器的ip:8006 进行访问

     接下来,就可以配置存,上传镜像,进行虚机创建操作了

    文章知识点与官方知识档案匹配,可进一步学习相关知识

  • chkconfig iptables off

    一、下面是red hat/CentOs7关闭防火墙的命令!

    1:查看防火状态

    systemctl status firewalld

    service  iptables status

    2:暂时关闭防火墙

    systemctl stop firewalld

    service  iptables stop

    3:永久关闭防火墙

    systemctl disable firewalld

    chkconfig iptables off

    4:重启防火墙

    systemctl enable firewalld

    service iptables restart  

    5:永久关闭后重启

    //暂时还没有试过

    chkconfig iptables on

  • Linux命令窗口切换,linux命令之screen切换终端

    当运行vim编写文件时,突然,网络断开了,再重新用同一用户登录上去发现已经不是以前的终端了,此时除了强关闭所有终端,然后通过vim.swap.tmp文件恢复刚刚写的文件,貌似没有其它办法

    现在发现了screen工具,可以帮助用户在此种情况下顺利地切换至相应的终端上,让终端用户可以连续工作。

    screen是窗口管理器的命令行界面版本。它可以同时管理多个终端会话。

    screen参数说明

    -A  将所有的视窗都调整为目前终端机的大小。

    -d  将指定的screen作业离线。

    -h  指定视窗的缓冲区行数。

    -m  即使目前已在作业中的screen作业,仍强制建立新的screen作业。

    -r  恢复离线的screen作业。

    -R  先试图恢复离线的作业。若找不到离线的作业,即建立新的screen作业。

    -s  指定建立新视窗时,所要执行的shell。

    -S  指定screen作业的名称。

    -v  显示版本信息。

    -x  恢复之前离线的screen作业。

    -ls或–list  显示目前所有的screen作业。

    -wipe  检查目前所有的screen作业,并删除已经无法使用的screen作业。

    四、常用screen参数

    screen -S name-> 新建一个叫name的终端会话
    
    screen -ls -> 列出当前所有的终端会话
    
    screen -r name -> 回到name这个终端会话
    
    screen -d name-> 远程detach某个终端会话
    
    screen -d -r name-> 结束当前终端会话并回到name这个终端会话
    screen -S 1928057 -X quit 强制关闭会话

    ————————————————————————–

    1 安装screen方法

    1.1 可以去screen官网下载并安装http://www.gnu.org/software/screen/

    1.2 可以通过[root@localhost ~]#yum install screen

    安装成功,验证方法

    [root@localhost ~]# man screen

    2f9db14d7296f1f42173e0ea4929543e.png

    2 screen用法

    2.1 创建一个会话

    [root@localhost ~]#screen -S maomao //注意此处S必须大写 创建完成后 屏幕会闪一下

    当我们按 ctrl+c 就可以退出当前会话

    2.2 暂停会话

    [root@localhost ~]# screen -d //输入此命令可以暂停此会话

    2.3 恢复会话

    [root@localhost ~]#screen -ls //查处当前暂停会话的ID

    [root@localhost ~]#screen -r 2307 //恢复指定的会员Id

    a05f2c0521a9650f66ef69f3b3a214bc.png

    2.4 强制关闭会话

    [root@localhost ~]#kill 2307 //强制关闭当前会话

  • Aria2 Pro-功能强大Aria2 Docker 容器镜像:安装简单,下载速度快

    Aria2是一款自由、跨平台命令行界面的下载管理器,该软件根据GPLv2许可证进行分发。支持的下载协议有:HTTP、HTTPS、FTP、Bittorrent和Metalink。我们经常用Aria2替代迅雷等下载工具,Aria2多线程下载,完全可以跑满带宽。

    Aria2 Pro是作者P3TERX经过长时间使用和研究官方文档后总结出来的Aria2优化版,特点是BT 下载率高、速度快,重启后不丢失任务进度、不重复下载,BT 下载完成自动清除垃圾文件、自动清除小文件(文件大小过滤功能),支持与 RCLONE 联动,自动上传 OneDrive 、Google Drive 等网盘 ,百度网盘转存到其它网盘 ,多网盘自由选择。

    Aria2-Pro-Docker_00-680x366-1

    本篇文章就来分享一下Aria2 Pro Docker的安装与使用方法,更多的离线下载和

    1. Aria2离线下载和在线播放-整合KodExplorer FileManager Nextcloud和 Plex系统
    2. Cloudreve网盘系统离线下载配置-Aria2 一键安装管理脚本增强版使用方法
    3. 目录列表程序整理汇总-OneDrive,阿里云盘,GoogleDrive等各大网盘目录列表程序

    PS:更新记录。

    1、建站少不了要用到文件上传工具,这里有免费好用的FTP软件:免费FTP和SFTP软件整理汇总-免费的简单好用的FTP和SFTP客户端。2022.10.28

    一、Aria2 Pro Docker介绍

    网站:

    1. 作者:https://p3terx.com/archives/docker-aria2-pro.html
    2. GitHub: https://github.com/P3TERX/docker-aria2-pro
    3. Docker Hub: https://hub.docker.com/r/p3terx/aria2-pro

    镜像特点:

    使用 Aria2 完美配置方案

    BT 下载率高、速度快

    重启后不丢失任务进度、不重复下载

    删除正在下载的任务自动删除未完成的文件

    下载错误自动删除未完成的文件

    下载完成自动删除控制文件(.aria2后缀名文件)

    下载完成自动删除种子文件(.torrent后缀名文件)

    下载完成自动删除空目录

    BT 下载完成自动清除垃圾文件(文件类型过滤功能)

    BT 下载完成自动清除小文件(文件大小过滤功能)

    有一定的防版权投诉、防迅雷吸血效果

    更好的 PT 下载支持

    使用 Aria2 Pro Core 项目最新静态编译二进制文件

    多平台:amd64i386arm64armhf(VPS、群辉、树莓派等常见平台完美支持)

    全功能:Async DNSBitTorrentFirefox3 CookieGZipHTTPSMessage DigestMetalinkXML-RPCSFTP

    单服务器线程数最大值无上限(已破##解线程数限制)

    防掉线程优化

    内存消耗优化

    读写性能优化

    最新依赖库,下载更安全、稳定、快速

    持续更新最新版本

    支持与 RCLONE 联动

    自动上传 OneDrive 、Google Drive 等网盘

    百度网盘转存到其它网盘

    多网盘自由选择

    支持新一代互联网协议 IPv6

    下载完成自动移动文件到指定目录(文件自动归档/分类)

    定时自动更新 BT tracker 列表(无感知、无重启),保持 BT 下载高速率

    用户文件权限自动配置功能

    配置文件持久化,支持使用 watchtower 更新容器。

    极简设计,专注下载,简单易用,少即是多。

    二、Aria2 Pro Docker安装

    2.1 准备VPS主机

    Docker需要VPS运行,Aria2要下载电影、音乐等影视资源,占用空间很大,建议使用大硬盘的VPS主机,例如:ServaRICA大硬盘存储VPS主机性能和速度评测,更多的VPS主机查看:VPS主机排行榜单

    2.2 Docker环境

    有了VPS主机,现在你就可以需要在VPS主机上配置好Docker环境,这里有一个一键安装Docker环境的命令,配置起来非常地简单:Docker 和 Docker Compose 一键安装脚本 可手动选择安装版本和下载源

    bash <(curl -sSL https://cdn.jsdelivr.net/gh/SuperManito/LinuxMirrors@main/DockerInstallation.sh)

    Aria2-Pro-Docker_01-680x366-1

    2.3 Aria2 Pro安装

    最基本的启动命令如下,你只需要完整替换<TOKEN>字段(RPC密钥)即可启动。

    docker run -d \

    --name aria2-pro \
    
    --restart unless-stopped \
    
    --log-opt max-size=1m \
    
    --network host \
    
    -e PUID=$UID \
    
    -e PGID=$GID \
    
    -e RPC_SECRET=<TOKEN> \
    
    -e RPC_PORT=6800 \
    
    -e LISTEN_PORT=6888 \
    
    -v $PWD/aria2-config:/config \
    
    -v $PWD/aria2-downloads:/downloads \
    
    p3terx/aria2-pro

    配置本机防火墙开放必要的入站端口,内网机器在路由器设置端口转发到相同端口。

    2.4 安装AriaNg

    1. docker地址:https://hub.docker.com/r/p3terx/ariang

    使用你喜欢的 WebUI 或 App 进行连接,强烈推荐 AriaNg。你可以直接使用:http://ariang.mayswind.net/latest,或者直接用Docker在VPS上安装AriaNg:

    docker run -d \
    
    --name ariang \
    
    --log-opt max-size=1m \
    
    --restart unless-stopped \
    
    -p 6880:6880 \
    
    p3terx/ariang

    2.5 Docker Compose安装

    使用Docker Compose部署Aria2 Pro有一个好处你可以将所有的配置写在一个文件里,可以直接省略上面的“2.3”和“2.4”的安装了。Compose file模板:https://github.com/P3TERX/Aria2-Pro-Docker/blob/master/docker-compose.yml

    模板内容如下:

    version: "3.8"
    
    services:
    
    Aria2-Pro:
    
    container_name: aria2-pro
    
    image: p3terx/aria2-pro
    
    environment:
    
    - PUID=65534
    
    - PGID=65534
    
    - UMASK_SET=022
    
    - RPC_SECRET=P3TERX
    
    - RPC_PORT=6800
    
    - LISTEN_PORT=6888
    
    - DISK_CACHE=64M
    
    - IPV6_MODE=false
    
    - UPDATE_TRACKERS=true
    
    - CUSTOM_TRACKER_URL=
    
    - TZ=Asia/Shanghai
    
    volumes:
    
    - ${PWD}/aria2-config:/config
    
    - ${PWD}/aria2-downloads:/downloads
    
    # If you use host network mode, then no port mapping is required.
    
    # This is the easiest way to use IPv6 networks.
    
    network_mode: host
    
    # network_mode: bridge
    
    # ports:
    
    # - 6800:6800
    
    # - 6888:6888
    
    # - 6888:6888/udp
    
    restart: unless-stopped
    
    # Since Aria2 will continue to generate logs, limit the log size to 1M to prevent your hard disk from running out of space.
    
    logging:
    
    driver: json-file
    
    options:
    
    max-size: 1m
    
    # AriaNg is just a static web page, usually you only need to deploy on a single host.
    
    AriaNg:
    
    container_name: ariang
    
    image: p3terx/ariang
    
    command: --port 6880 --ipv6
    
    network_mode: host
    
    # network_mode: bridge
    
    # ports:
    
    # - 6880:6880
    
    restart: unless-stopped
    
    logging:
    
    driver: json-file
    
    options:
    
    max-size: 1m

    命令:

    mkdir aria2pro && cd aria2pro

    wget git.io/aria2-pro.yml

    执行命令编辑Compose file。

    vim aria2-pro.yml

    你需要修改一下密钥,其它的参数保持默认即可。

    Aria2-Pro-Docker_02-680x366-1

    最后,开始启动Docker。

    docker-compose -f aria2-pro.yml up -d

    Aria2-Pro-Docker_03-680x366-1

    三、Aria2 Pro Docker使用

    3.1 AriaNg配置

    安装完成后,现在打开http://ip:6880访问AriaNg的web管理界面,在AriaNg设置中RPC填入你的密钥。

    Aria2-Pro-Docker_04-680x366-1

    确保你的Aria2的连接状态为正常。

    Aria2-Pro-Docker_05-680x366-1

    3.2 Aria2离线下载

    现在你可以在AriaNg新建离线下载了。

    Aria2-Pro-Docker_06-680x366-1

    受益于VPS主机的带宽的优势,Aria2离线下载速度还是非常快的。

    Aria2-Pro-Docker_07

    3.3 修改下载路径

    默认的Aria2 Pro Docker下载路径是在以下路径:

    Aria2-Pro-Docker_08-680x366-1

    当然,你可以自己修改参数如下:

    -v $PWD/aria2-config:/config – 配置目录映射,配置文件持久化。左边为宿主机路径供自定义,不要有中文、不要混用配置文件,首次使用请确保目录为空。

    -v $PWD/aria2-downloads:/downloads – 下载目录映射。左边为宿主机路径供自定义,不要有中文

    -e SPECIAL_MODE=move – 开启文件自动归档/分类功能,即在文件下载完成后把文件移动到指定目录。默认移动到下载目录下的completed子目录。

    TIPS: 注意确认目录是否存在、权限是否正确。

    3.4 开启 RCLONE

    文件下载到本地后自动调用 RCLONE 上传到指定网盘,本地不保留文件,实现 OneDrive 和 Google Drive 等网盘的伪离线下载。添加以下参数可以开启Rclone功能:

    -e SPECIAL_MODE=rclone – 开启 RCLONE 联动功能。首次启动容器会在容器内自动安装 RCLONE,且每次重启会自动更新。

    启动命令加入-e SPECIAL_MODE=rclone参数设定特殊模式环境变量后开启 RCLONE 自动上传功能,容器初次启动会安装 RCLONE ,且每次重启会自动更新 RCLONE。启动命令示例:

    docker run -d \

    –name aria2-pro \

    –restart unless-stopped \

    –log-opt max-size=1m \

    –network host \

    -e PUID=$UID \

    -e PGID=$GID \

    -e RPC_SECRET=P3TERX \

    -e RPC_PORT=6800 \

    -e LISTEN_PORT=6888 \

    -v ~/aria2-config:/config \

    -v ~/rclone-downloads:/downloads \

    -e SPECIAL_MODE=rclone \

    p3terx/aria2-pro

    之前若使用过 RCLONE 直接把配置文件(rclone.conf)复制到 Aria2 Pro 配置目录下即可。 RCLONE 配置文件可以在宿主机的默认位置找到:~/.config/rclone/rclone.conf

    初次使用或者想要配置 RCLONE 可使用docker exec -it aria2-pro rclone config命令进入容器内的 RCLONE 交互菜单选项,参考:Rclone命令安装配置

    最后根据实际情况修改 Aria2 Pro 配置文件目录下script.conf文件中的网盘名称(drive-name)和网盘路径(drive-dir)这两个选项的值。

    3.5 BT与PT设置

    BT和PT下载相关参数设置如下:

    -e UPDATE_TRACKERS=false – 禁用自动更新 BT tracker 。PT 下载和想手动填写设置 BT tracker 需求必须禁用

    -e CUSTOM_TRACKER_URL=<URL>:自定义 BT tracker 列表获取链接,多个链接可以用半角逗号(,)进行分隔。如果没有指定则默认从https://trackerslist.com/all_aria2.txt进行获取。

    -e UMASK_SET=022 – umask 设置,默认值022。决定你下载下来的文件的权限,对权限不敏感或不理解直接填写000

    -e TZ=<TIME_ZONE> – 时区设置,默认时区为Asia/Shanghai,若无特殊需求无需自定义。

    同时使用 BT 与 PT。使用 Aria2 Pro 镜像创建名为aria2-bt的容器 RPC 端口设置为6801,BT 端口设置为6999,配置目录设置为~/aria2-bt-config,下载目录设置为~/bt-downloads。启动命令示例:

    docker run -d \

    –name aria2-bt \

    –restart unless-stopped \

    –log-opt max-size=1m \

    –network host \

    -e PUID=$UID \

    -e PGID=$GID \

    -e RPC_SECRET=P3TERX \

    -e RPC_PORT=6801 \

    -e LISTEN_PORT=6999 \

    -v ~/aria2-bt-config:/config \

    -v ~/bt-downloads:/downloads \

    p3terx/aria2-pro

    如果你的Aria2 无法下载磁力链接、BT种子和速度慢,建议打开自动更新 BT-Tracker 功能即可,Aria2 Pro 则是默认开启的。然后再看一下端口有没有开放:

    # BT监听端口(TCP)

    listen-port=51413

    # DHT网络监听端口(UDP)

    dht-listen-port=51413

    四、Aria2 Pro重装与更新

    4.1 重装

    上面我们修改了配置,想要让修改的配置生效就必须让Aria2 Pro Docker重装:

    docker rm -f aria2-pro

    docker rmi p3terx/aria2-pro

    rm -rf ~/aria2-config

    docker pull p3terx/aria2-pro

    docker run <…>

    4.2 更新

    使用 Watchtower 一键更新 Aria2 Pro 镜像与容器的命令:

    docker run –rm \

    -v /var/run/docker.sock:/var/run/docker.sock \

    containrrr/watchtower -cR \

    aria2-pro

    4.3 重启

    Aria2 Pro 具有自我修复机制,遇到问题首先重启。如果你修改过配置文件和附加功能脚本,先删除后重启。

    docker restart aria2-pro

    五、总结

    Aria2 Pro是作者基于Aria2的使用优化出来的进阶版本,Aria2 Pro Docker安装简单,使用起来也很方便,下载之后你可以结合NextCloudCloudreve网盘实现离线下载和以线观看视频、音频等文件。

    VPS主机上运行多个Docker推荐使用可视化的容器管理工具:Docker可视化容器管理工具Portainer – 让Docker安装与管理更简单

    文章出自:挖站否 https://wzfou.com/aria2-pro-docker/,版权所有。本站文章除注明出处外,皆为作者原创文章,可自由引用,但请注明来源。

  • NFS在Linux下的安装、部署与应用

    基于CentOS的NFS服务安装配置

    本节以CentOS 7为例介绍一下NFS服务的安装,这里的NFS服务是指Linux内核中的nfsd服务及配套的用户态程序。它是NFS分布式文件系统的服务端。当然,除了nfsd外,还有很多其它的NFS分布式文件系统服务端,比如用户态的Ganesha。但是,这些不在本文的范围内,今天我们主要介绍一下nfsd的安装和使用。

    为了简化安装,我们将操作系统的防火墙和SELinux都关闭。关闭这些特性并不会影响NFS的功能,只是用来避免使用过程中出现一些问题。如果在生产环境,为了数据的安全,这些特性通常是需要开启的。下面我们就介绍一下如何安装及配置NFS服务。

    步骤 1: 服务端安装

    sudo yum install nfs-utils

    步骤 2: 服务端配置

    我们期望在操作系统启动的时候可以自动启动NFS服务,因此我们这里需要设置一下 NFS 服务开机启动,具体命令如下:

    sudo systemctl enable rpcbind
    sudo systemctl enable nfs

    软件安装后服务可能没有启动,这时需要手动启动一下 NFS 服务。如果已经启动了就不需要执行该步操作了。

    $ sudo systemctl start rpcbind
    
    $ sudo systemctl start nfs

    步骤 3: 配置共享目录

    完成上述操作后,NFS服务已经正常工作了,但是我们在客户端仍然没有办法访问该服务。这是因为此时NFS服务还没有配置导出的资源。接下来我们在服务端配置一个共享目录,也就是要导出的资源。首先要创建一个目录,并且修改该目录的权限:

    $ sudo mkdir /data
    
    $ sudo chmod 755 /data

    有了基本的资源后,我们就可以配置导出的目录了。NFS的配置非常简单,打开配置文件:

    sudo vi /etc/exports

    在打开的文件中添加如下内容。

    /data/ 192.168.0.0/24(rw,sync,no_root_squash,no_all_squash)

    对于上述配置项的含义,我们解释如下:/data: 共享目录位置。192.168.0.0/24: 客户端 IP 范围,本文是限制某个子网,如果是* 代表没有限制。rw: 权限设置,可读可写。sync: 同步共享目录。no_root_squash: 可以使用 root 授权。no_all_squash: 可以使用普通用户授权。

    至此,我们已经完成nfsd服务的安装,重启一下nfs服务就可以使用了。为了确认是否安装成功,可以通过如下命令进行确认。

    showmount -e localhost

    NFS客户端挂载

    1、检查 S1,是否具有NFS服务

    rpm -qa |grep nfs
    yum install nfs-utils

    2、在S2创建 /tmp/S1文件夹

    mkdir /tmp/S1

    3、挂载(S2上执行)

    mount -t nfs 192.168.1.1:/tmp/share  /tmp/S1

    4、取消挂载

    umount /tmp/S1

    通过/etc/fstab实现开机自动挂载NFS

    1 10.10.33.38:/data       /mnt/data/              nfs     defaults        0 0
  • CentOS7 更新yum源

    备份原来的yum源

    cp /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak 

    设置aliyun的yum源

    wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo 

    添加EPEL源

    wget -P /etc/yum.repos.d/ http://mirrors.aliyun.com/repo/epel-7.repo

    清理缓存,生成新缓存,执行yum更新

    # 清除缓存
    yum clean all
    # 生成新的缓存
    yum makecache

    再次运行yum clean all 清除缓存,运行 yum makecache 生成新的缓存

    查看启用的yum源和所有的yum源

    yum repolist enabled
    yum repolist all

    更新yum

    yum -y update