zoukankan      html  css  js  c++  java
  • Centos8 初探

    # C8源的处理

    # C8 Base源  阿里源

    curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-8.repo

    # EPEL

    dnf install -y https://mirrors.aliyun.com/epel/epel-release-latest-8.noarch.rpm

    dnf repolist all

    # 系统更新 

    dnf update

    :: 设置自动更新

    dnf install dnf-automatic

    vim /etc/dnf/automatic.conf

    ---------------------------------------

    如果想只下载不安装并邮件提醒

    download_updates = yes

    apply_updates = no

    systemctl enable --now dnf-automatic.timer

    systemctl list-timers *dnf-* --all

    # 常用工具安装

    dnf install net-tools  (ifconfig,netstat...)

    sudo dnf install -y bash-completion  # 自动补全功能

    # 其他工具安装

    工具一: Cockpit Web Console  基于web图形化管理Centos的功能

    官方站:https://cockpit-project.org/

    yum install cockpit  # 安装

    systemctl start cockpit.socket  # 启动

    https://IP:9090  # 访问

     Note:  /etc/cockpit/ws-certs.d目录中调用证书,并使用.cert扩展文件。 为避免提示安全警告,请安装由证书颁发机构(CA)签名的证书。

    工具二:

    官方站:https://podman.io/   替代Docker 的管理工具

    工具简介:

    Podman 是一个开源的容器运行时项目,可在大多数 Linux 平台上使用。Podman 提供与 Docker 非常相似的功能。正如前面提到的那样,它不需要在你的系统上运行任何守护进程,并且它也可以在没有 root 权限的情况下运行。Podman 可以管理和运行任何符合 OCI(Open Container Initiative)规范的容器和容器镜像。Podman 提供了一个与 Docker 兼容的命令行前端来管理 Docker 镜像。Podman不需要运行一个守护进程(docker daemon)。

    dnf install -y podman  # 安装

    # 设置镜像加速(不设置国内拉取镜像比较慢)

    方法1:Podman 默认注册表配置文件在 /etc/containers/registries.conf
    方法2: 在~/.config/containers 目录下新建一个文件registries.conf

    方法1,方法2写入如下内容:
    unqualified-search-registries = ["docker.io"] [[registry]] prefix = "docker.io" location = "1vs5nfat.mirror.aliyuncs.com" # 这个为你自己的镜像加速地址,注意:不要跟https


     # 容器存放路径修改:

    sudo vim ~/.config/containers/storage.conf   修改标红部分路径即可

    # podman的容器如何设置自启动

    方法1: ~/.config/systemd/user/<自定义容器的服务名>.service   # 比较方便集中管理,目录需要自己创建,推荐!
    方法2: /usr/lib/systemd/system/<自定义容器的服务名>.service
    方法3: /etc/systemd/system/<自定义容器的服务名>.service

    方法1 启动方法:

    systemctl --user daemon-reload
    systemctl --user enable <自定义容器的服务名>
    systemctl --user start <自定义容器的服务名>
    systemctl --user status <自定义容器的服务器名> # 查看状态

    方法2,方法3 启动方法:

    sudo systemctl daemon-reload
    sudo systemctl enable <自定义容器的服务名>
    sudo systemctl start <自定义容器的服务名>
    sudo systemctl status <自定义容器的服务器名> # 查看状态

     

     由于 Podman 不再使用守护进程管理服务,所以不能通过守护进程去实现自动重启容器的功能

    vim /etc/systemd/system/nginx_podman.service  # 创建并写入下面的信息

    [Unit]
    Description=Podman Nginx Service
    After=network.target  # 在网络启动以后
    After=network-online.target  # 在网络启动以后(如果有多个容器,可以设置在某个容器以后)
    
    [Service]
    Type=simple
    ExecStart=/usr/bin/podman start -a nginx
    ExecStop=/usr/bin/podman stop -t 10 nginx
    Restart=always
    
    [Install]
    WantedBy=multi-user.target

      

    # 创建测试容器

    podman run -dt -p 1180:80 --name nginx -v /home/loki/Test/data:/data -e NGINX_VERSION=1.16 nginx:1.16.0

    -p <物理机端口>:<容器端口>

    -v <物理机路径>:<容器路径>

     # 迁移容器

    # 迁移podman  导出到其他容器
    $ sudo podman container checkpoint <容器名或ID> -e /tmp/<容器名>.tar.gz $ scp /tmp/<容器名>.tar.gz <目的地ServerIP>:/tmp

    # 导入其他容器到podman
     sudo podman container restore -i /tmp/<容器名>.tar.gz

     

    # 防火墙相关  nftables 

    增:

    增加表:nft add table fillter  
    增加链:nft add chain filter input 
    增加规则:nft add rule filter input tcp dport 1211 accept      插入规则: nft insert rule filter INPUT tcp dport 22 accept

    注:使用 index 来指定规则的索引。add 表示新规则添加在索引位置的规则后面,insert 表示新规则添加在索引位置的规则前面。index 的值从 0 开始增加。

    删:

    删除表:nft delete table fillter
    删除链:nft delete chain filter input 
    删除规则:nft delete rule filter input tcp dport 1211 accept

    查:

    nft list ruleset # 列出所有规则   -a(结尾处) --handle(nft 之后) 使用 handle 来指定规则的句柄。add 表示新规则添加在索引位置的规则后面,insert 表示新规则添加在索引位置的规则前面。handle 的值可以通过参数 -a 获取
    nft list tables # 列出所有表
    nft list table filter # 列出filter表
    nft chain filter input # 列出filter表input链
    以上命令后面也可以加 -nn 用于不解析ip地址和端口
    加 -a 用于显示 handles
    sudo nft --echo --handle add rule filter INPUT tcp dport 9090 accept

    备份与恢复: 所有示例中的规则都是临时的,要想永久生效,我们可以将规则备份,重启后自动加载恢复,其实 nftables 的 systemd 服务就是这么工作的。

    备份规则:nft list ruleset > /root/nftables.conf
    加载规则:nft -f /root/nftables.conf

    # 安装Python环境支持

     dnf install gcc zlib-devel bzip2 bzip2-devel readline-devel sqlite sqlite-devel openssl-devel make patch gdbm-devel git

    # 可能需要FQ,如果不能FQ就去download这个脚本,放到本地执行

    $ curl -L https://github.com/pyenv/pyenv-installer/raw/master/bin/pyenv-installer | bash

    vim  ~/.bashrc 写入下面内容,source ~/.bashrc

    export PATH="/home/loki/.pyenv/bin:$PATH"
    eval "$(pyenv init -)"
    eval "$(pyenv virtualenv-init -)"

    # 安装python虚拟环境

    pyenv install 3.8.x

  • 相关阅读:
    Linux重定向命令
    ls命令
    Linux常用命令_(进程管理)
    Linux常用命令_(文件操作)
    Linux常用命令_(文件查看)
    Linux常用命令_(文件搜索)
    Oracle表空间管理
    如何测试数据库表空间不足场景
    find命令
    各种比例尺标准分幅图经差、纬差表
  • 原文地址:https://www.cnblogs.com/Cong0ks/p/13066187.html
Copyright © 2011-2022 走看看