首页
壁纸
留言板
友链
更多
统计归档
Search
1
主板开机跳线接线图【F_PANEL接线图】
18,641 阅读
2
移动光猫获取超级密码&开启公网ipv6
14,983 阅读
3
TensorBoard:训练日志及网络结构可视化工具
13,140 阅读
4
Linux使用V2Ray 原生客户端
9,865 阅读
5
PC电源上供电接口定义
5,835 阅读
好物分享
实用教程
学习笔记
放码过来
深度学习
杂七杂八
bug处理
登录
/
注册
Search
标签搜索
好物分享
学习笔记
linux
MySQL
nvidia
typero
内网穿透
webdav
vps
java
cudann
gcc
cuda
树莓派
CNN
图像去雾
ssh安全
nps
暗通道先验
阿里云
jupiter
累计撰写
372
篇文章
累计收到
189
条评论
首页
栏目
好物分享
实用教程
学习笔记
放码过来
深度学习
杂七杂八
bug处理
页面
壁纸
留言板
友链
统计归档
搜索到
82
篇与
的结果
2022-06-15
Prometheus+Grafana:Linux设备群监控系统
1.Prometheus1.1. Prometheus简介Prometheus 是一款基于时序数据库的开源监控告警系统,非常适合Kubernetes集群的监控。Prometheus的基本原理是通过HTTP协议周期性抓取被监控组件的状态,任意组件只要提供对应的HTTP接口就可以接入监控。不需要任何SDK或者其他的集成过程。这样做非常适合做虚拟化环境监控系统,比如VM、Docker、Kubernetes等。输出被监控组件信息的HTTP接口被叫做exporter 。目前互联网公司常用的组件大部分都有exporter可以直接使用,比如Varnish、Haproxy、Nginx、MySQL、Linux系统信息(包括磁盘、内存、CPU、网络等等)。Promethus有以下特点:支持多维数据模型:由度量名和键值对组成的时间序列数据内置时间序列数据库TSDB支持PromQL查询语言,可以完成非常复杂的查询和分析,对图表展示和告警非常有意义支持HTTP的Pull方式采集时间序列数据支持PushGateway采集瞬时任务的数据支持服务发现和静态配置两种方式发现目标支持接入Grafana1.2. Prometheus架构1.2.1. Prometheus Server主要负责数据采集和存储,提供PromQL查询语言的支持。包含了三个组件:Retrieval: 获取监控数据TSDB: 时间序列数据库(Time Series Database),我们可以简单的理解为一个优化后用来处理时间序列数据的软件,并且数据中的数组是由时间进行索引的。具备以下特点:大部分时间都是顺序写入操作,很少涉及修改数据删除操作都是删除一段时间的数据,而不涉及到删除无规律数据读操作一般都是升序或者降序HTTP Server: 为告警和出图提供查询接口1.2.2. 指标采集Exporters: Prometheus的一类数据采集组件的总称。它负责从目标处搜集数据,并将其转化为Prometheus支持的格式。与传统的数据采集组件不同的是,它并不向中央服务器发送数据,而是等待中央服务器主动前来抓取Pushgateway: 支持临时性Job主动推送指标的中间网关1.2.3. 服务发现Kubernetes_sd: 支持从Kubernetes中自动发现服务和采集信息。而Zabbix监控项原型就不适合Kubernets,因为随着Pod的重启或者升级,Pod的名称是会随机变化的。file_sd: 通过配置文件来实现服务的自动发现1.2.4. 告警管理通过相关的告警配置,对触发阈值的告警通过页面展示、短信和邮件通知的方式告知运维人员。1.2.5. 图形化展示通过PromQL语句查询指标信息,并在页面展示。虽然Prometheus自带UI界面,但是大部分都是使用Grafana出图。另外第三方也可以通过 API 接口来获取监控指标。2.Prometheus简单部署2.1 部署和配置prometheus(在监控中心布置)下载prometheus(网页下载地址:https://prometheus.io/download/)wget https://github.com/prometheus/prometheus/releases/download/v2.36.1/prometheus-2.36.1.linux-amd64.tar.gz tar -xvf prometheus-2.36.1.linux-amd64.tar.gz mv prometheus-2.36.1.linux-amd64 prometheus cd prometheus修改配置文件vim prometheus.yml# my global config global: scrape_interval: 15s # Set the scrape interval to every 15 seconds. Default is every 1 minute. evaluation_interval: 15s # Evaluate rules every 15 seconds. The default is every 1 minute. # scrape_timeout is set to the global default (10s). # Alertmanager configuration alerting: alertmanagers: - static_configs: - targets: # - alertmanager:9093 # Load rules once and periodically evaluate them according to the global 'evaluation_interval'. rule_files: # - "first_rules.yml" # - "second_rules.yml" # A scrape configuration containing exactly one endpoint to scrape: # Here it's Prometheus itself. scrape_configs: # The job name is added as a label `job=<job_name>` to any timeseries scraped from this config. - job_name: "prometheus" # metrics_path defaults to '/metrics' # scheme defaults to 'http'. static_configs: - targets: ["localhost:9090"] # node_exporter 监控数据采集 - job_name: 'node' static_configs: - targets: - "3090.inat.top:9100" - "v100.inat.top:9100" - "raspberry.inat.top:9100" - "agx.inat.top:9100" - "nx.inat.top:9100" - "nano.inat.top:9100"检查配置文件./promtool check config prometheus.yml启动测试./prometheus配置开机自启动sudo vim /etc/systemd/system/prometheus.service[Unit] Description=prometheus service After=network.target [Service] ExecStart=/software/prometheus/prometheus --config.file=/software/prometheus/prometheus.yml Restart=always RestartSec=20 TimeoutSec=300 User=root Group=root StandardOutput=journal StandardError=journal WorkingDirectory=/software/prometheus/ [Install] WantedBy=default.targetsudo systemctl daemon-reload sudo systemctl start prometheus.service sudo systemctl enable prometheus.servicesudo systemctl status prometheus.service2.2 部署Node-Exporter(在被监控的机器上布置)下载Node-Exporter(网页下载地址:https://prometheus.io/download/)wget https://github.com/prometheus/node_exporter/releases/download/v1.0.1/node_exporter-1.0.1.linux-amd64.tar.gz tar -xvf node_exporter-1.0.1.linux-amd64.tar.gz mv node_exporter-1.0.1.linux-amd64 node_exporter cd node_exporter创建monitor用户和组sudo groupadd -g 9100 monitor sudo useradd -g 9100 -u 9100 -s /sbin/nologin -M monitor修改对应文件夹的权限sudo chown -R monitor.monitor /software/node_exporter启动测试./node_exporter配置开机自启动sudo vim /etc/systemd/system/node_exporter.service[Unit] Description=node-exporter service After=network.target [Service] User=monitor Group=monitor KillMode=control-group Restart=on-failure RestartSec=60 ExecStart=/software/node_exporter/node_exporter [Install] WantedBy=multi-user.targetsudo systemctl daemon-reload sudo systemctl start node_exporter.service sudo systemctl enable node_exporter.servicesudo systemctl status node_exporter.service3.部署Grafana(在监控中心部署)下载Grafana(网页下载地址:https://grafana.com/grafana/download)sudo apt-get install -y adduser libfontconfig1 wget https://dl.grafana.com/enterprise/release/grafana-enterprise_8.5.5_amd64.deb sudo dpkg -i grafana-enterprise_8.5.5_amd64.deb设置开机自启动 sudo /bin/systemctl daemon-reload sudo /bin/systemctl start grafana-server sudo /bin/systemctl enable grafana-server sudo /bin/systemctl status grafana-server访问测试(默认用户名和密码均为admin)添加数据源添加dashbord查看dashbord参考资料Prometheus看完这些,入门就够了Prometheus 重启失败的教训Prometheus(普罗米修斯)监控Prometheus(普罗米修斯)监控系统(一)https://grafana.com/grafana/downloadhttps://prometheus.io/download/
2022年06月15日
1,136 阅读
0 评论
0 点赞
2022-06-13
ubuntu挂载新硬盘
1.定位新硬盘(base) 3090@3090:~$ lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sdb 8:16 0 1.8T 0 disk /data sr0 11:0 1 1024M 0 rom sdc 8:32 0 14.6T 0 disk └─sdc1 8:33 0 14.6T 0 part sda 8:0 0 477G 0 disk ├─sda2 8:2 0 7.6G 0 part [SWAP] ├─sda3 8:3 0 468.4G 0 part / └─sda1 8:1 0 976M 0 part /boot/efi发现待挂载的硬盘为sdc12.硬盘格式化mkfs -t ext4 /dev/sdc1mke2fs 1.42.13 (17-May-2015) /dev/sdc1 contains a xfs file system Proceed anyway? (y,n) y Creating filesystem with 3906469376 4k blocks and 488308736 inodes Filesystem UUID: ed6952c9-b147-4cfb-b68f-d79e4fcecbb5 Superblock backups stored on blocks: 32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 4096000, 7962624, 11239424, 20480000, 23887872, 71663616, 78675968, 102400000, 214990848, 512000000, 550731776, 644972544, 1934917632, 2560000000, 3855122432 Allocating group tables: done Writing inode tables: done Creating journal (32768 blocks): done Writing superblocks and filesystem accounting information: done3.挂载3.1 手动挂载挂载到挂载点/16tsudo mount /dev/sdc1 /16t查看挂载结果(base) 3090@3090:~$ df -h Filesystem Size Used Avail Use% Mounted on udev 63G 0 63G 0% /dev tmpfs 13G 19M 13G 1% /run /dev/sda3 461G 31G 407G 8% / tmpfs 63G 180K 63G 1% /dev/shm tmpfs 5.0M 4.0K 5.0M 1% /run/lock tmpfs 63G 0 63G 0% /sys/fs/cgroup /dev/sdb 1.8T 9.2G 1.7T 1% /data /dev/sda1 975M 4.3M 970M 1% /boot/efi tmpfs 13G 64K 13G 1% /run/user/1000 tmpfs 13G 0 13G 0% /run/user/1001 /dev/sdc1 15T 9.1M 14T 1% /16t3.2 配置开机自动挂载查看UUID(base) 3090@3090:~$ sudo blkid /dev/sdc1 /dev/sdc1: UUID="ed6952c9-b147-4cfb-b68f-d79e4fcecbb5" TYPE="ext4" PARTLABEL="primary" PARTUUID="bbcf63f5-3927-41e8-abc6-ca9062aec08c"修改/etc/fstabsudo vim /etc/fstab# 在末尾添加如下内容 UUID=ed6952c9-b147-4cfb-b68f-d79e4fcecbb5 /16t auto defaults 0 0 参考资料Ubuntu中查看硬盘分区UUID的方法(所有Linux目录的解释)ubuntu 挂载硬盘指令fstab挂载参数
2022年06月13日
540 阅读
0 评论
0 点赞
2022-06-13
ubunt设置静态IP
1.查看网卡名,确定需要配置的目标网卡ip a1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: enp0s25: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 link/ether d8:9e:f3:35:c3:66 brd ff:ff:ff:ff:ff:ff inet 10.1.9.50/24 brd 10.1.9.255 scope global enp0s25 valid_lft forever preferred_lft forever inet6 2001:da8:a012:2da:f3c5:dc14:1316:2268/64 scope global noprefixroute dynamic valid_lft 2591982sec preferred_lft 604782sec inet6 fe80::e49c:f19c:2e03:e014/64 scope link valid_lft forever preferred_lft forever 3: enp8s0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc mq state DOWN group default qlen 1000 link/ether d8:9e:f3:35:c3:74 brd ff:ff:ff:ff:ff:ff2.对指定网卡enp0s25设置固定IPsudo vim /etc/network/interfaces增加如下内容auto enp0s25 # 设置自动启动enp0s25接口 iface enp0s25 inet static # 配置静态IP address 10.1.9.67 # IP地址 netmask 255.255.255.0 # 子网掩码 gateway 10.1.9.1 # 网关3.重启网络sudo /etc/init.d/networking restart参考资料ubuntu 查看网卡的网关_Ubuntu系统怎么设置静态ip?同样适用于深度系统的教程Ubuntu系统设置静态IP
2022年06月13日
472 阅读
0 评论
0 点赞
2022-06-07
NVIDIA 显卡限制功率
1.应用背景给实验室的一台服务器Dell T7910加装了两块3090显卡,但是由于供电口不够,所有用了两个6pin转8pin的转接线进行转接,导致显卡的电源输入功率不够,跑实验的时候一跑到满载就会扛不住关机重启,暂时无法更换电源,因此考虑对显卡功率进行限制。2.配置实现2.1 临时设置nvidia-smi -pm 1 # enable persistance mode nvidia-smi -pl 250 # set power limit to 250W3090配置前的最大功率为350W,因供电原因配置限制后的最大功率为250W2.2 永久设置新建nvidia-setpower.service文件sudo vim /etc/systemd/system/nvidia-setpower.service[Unit] Description=Nvidia SetPower Service After=network.target Wants=network.target [Service] Type=simple PIDFile=/run/nvidia-setpower.pid ExecStart=sh /usr/bin/nvidia-setpower.sh Restart=on-failure # Don't restart in the case of configuration error RestartPreventExitStatus=23 [Install] WantedBy=multi-user.target新建nvidia-setpower.shsudo vim /usr/bin/nvidia-setpower.shsudo nvidia-smi -pm 1 sudo nvidia-smi -pl 250sudo nvidia-smi -i 1 -pl 250,-i可以指定第几个显卡。设置服务开机启动:systemctl daemon-reload systemctl start nvidia-setpower.service systemctl enable nvidia-setpower.service参考资料NVIDIA 显卡在 Ubuntu下限制其功率的方法ubuntu 永久 设置 降低N显卡功率 nvidia-smi
2022年06月07日
5,117 阅读
16 评论
0 点赞
2022-05-13
cifs:Ubuntu 挂载 Samba 共享文件夹
1.安装cifs-utifssudo apt-get install cifs-utils2.列举指定IP地址所提供的共享文件夹列表sudo apt install smbclient smbclient -L ${ip_addr} -U ${username}%${password}3.挂载共享文件夹sudo mount -t cifs //指定SambaIP/文件夹名 /mnt/ -o username=${username},password=${password},iocharset=utf8,vers=1.04.实现开机自动挂载在/etc/fstab的末尾加入如下内容vim /etc/fstab//指定SambaIP/文件夹名 /mnt/ cifs defaults,username=${username},password=${password},iocharset=utf8,vers=1.0参考资料Ubuntu 挂载 Samba 共享文件夹Ubuntu 下挂载samba 服务
2022年05月13日
1,324 阅读
0 评论
0 点赞
2022-03-17
Linux批量修改文件后缀名
1.find+awk+xargs# .jpg-->.xml find ./ -name "*.jpg" | awk -F "." '{print $2}' | xargs -i -t mv ./{}.jpg ./{}.xml2.shell脚本#!/bin/bash find ./ -name *.jpg | while read i do echo "$i"; mv $i.jpg $i.xml done参考资料详解Linux批量更改文件后缀名
2022年03月17日
1,032 阅读
0 评论
0 点赞
2022-03-11
Linux配置临时IP地址
偶然遇到了需要为某个网卡添加一个临时IP的问题1.添加临时IP ifconfig enp3s0:0 10.1.9.41 netmask 255.255.255.0 # 或者 ip addr add 10.1.9.41/24 dev enp3s0:02.删除临时IP ip addr delete 10.1.9.41 dev enp3s0:0参考资料ifconfig-网络管理命令ifconfig增加一个临时IP方法及删除方法
2022年03月11日
880 阅读
0 评论
0 点赞
2022-01-13
Linux的SWAP交换分区设置准则
1.SWAP分区的作用当Linux系统的物理内存不够用的时候,就需要将物理内存中的一部分空间释放出来,以供当前运行的程序使用。那些被释放的空间可能来自一些很长时间没有什么操作的程序,这些被释放的空间被临时保存到Swap空间中,等到那些程序要运行时,再从Swap中恢复保存的数据到内存中。2.SWAP分区设置准则Redhat官方的文档中关于swap分区大小设置的建议物理内存建议的交换空间大小如果开启休眠功能建议的交换空间大小⩽ 2GB内存的2倍内存的3倍> 2GB – 8GB等于内存大小内存的2倍> 8GB – 64GB至少4G内存的1.5倍> 64GB至少4G不建议使用休眠因此,一般来说可以按照如下规则设置swap大小:物理内存交换空大小⩽ 2GB内存的2倍> 2GB – 4GB4GB> 4GB – 8GB等于内存大小> 8GB – 64GB8GB> 64GB16GB3.swappiness参数3.1 系统在什么情况下才会使用SWAP实际上,并不是等所有的物理内存都消耗完毕之后,才去使用swap的空间,什么时候使用是由swappiness 参数值控制。v100@v100:~$ cat /proc/sys/vm/swappiness 60swappiness=0的时候表示最大限度使用物理内存,然后才是 swap空间,swappiness=100的时候表示积极的使用swap分区,并且把内存上的数据及时的搬运到swap空间里面。现在服务器的内存动不动就是上百G,所以我们可以把这个参数值设置的低一些,让操作系统尽可能的使用物理内存,降低系统对swap的使用,从而提高系统的性能。特别是对于性能要求较高的数据库服务器,要求全部使用内存。3.2 如何修改swappiness参数临时性修改:v100@v100:~$ sudo sysctl vm.swappiness=10 vm.swappiness = 10 v100@v100:~$ cat /proc/sys/vm/swappiness 10永久修改v100@v100:~$ sudo vim /etc/sysctl.conf # 在文件里添加如下参数 vm.swappiness=10 # 激活设置 sysctl -p参考资料https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/6/html/installation_guide/s2-diskpartrecommend-ppc#id4394007https://www.nowcoder.com/test/question/done?tid=49008240&qid=23231#summary
2022年01月13日
603 阅读
0 评论
0 点赞
2021-12-30
Linux下出现bash: /bin/xx: 参数列表过长
1.现象描述当目录下文件过多时,执行类似如下命令会出现bash: /bin/xx: 参数列表过长的错误# 列出当前目的下的文件到txt ls * >>../all.txt # 删除符合某种条件的文件 rm *.txt # 对于remove、cp、move等同样适用。2.解决方案使用xargs+find配合进行解决。举例如下:# ls find . -name "*"|xargs ls >>../all.txt find . -type f -name "*"|xargs ls >>../all.txt # rm find . -name "*.log"|xargs rm -rf "*.log" # 对于remove、cp、move等同样适用。参考资料Linux那点事-xargs命令详解bash: /bin/ls: 参数列表过长bash: /bin/rm: 参数列表过长
2021年12月30日
1,211 阅读
1 评论
0 点赞
2021-12-21
nfs:Linux下挂载远程硬盘工具
本问以ubuntu为例,其他类似1.介绍NFS是Network File System的缩写,即网络文件系统。一种使用于分散式文件协定,功能是通过网络让不同的机器、不同的操作系统能够分享个人数据,让应用程序通过网络可以访问位于服务器磁盘中的数据。NFS在文件传送或信息传送的过过程中,依赖于RPC协议。RPC,远程过程调用(Remote Procedure Call),是使客户端能够执行其他系统中程序的一种机制。NFS本身是没有提供信息传输的协议和功能的,但NFS却能让我们通过网络进行资料的分享,就是因为NFS使用了RPC提供的传输协议,可以说NFS就是使用PRC的一个程序。NFS 存储 服务器主要用于用户上传的数据 ,图片 音频 、等信息 NFS服务端、RPC协议、客户端三者可以理解为房源、中介、租客之间的关系:2.应用场景现有两台Linux Server,需要把Linux01 下的硬盘/文件夹挂在到 Linux02 下;3.配置步骤-服务器端3.1 安装nfs-serversudo apt install nfs-server3.2 修改/etc/exports发布可供硬盘/文件夹sudo vim /etc/exports 然后输入: /datadrive02 *(insecure,rw,sync,no_root_squash,no_subtree_check) # /datadrive02 为需要挂载出去的硬盘 /datadrive02 :共享的目录 * :指定哪些用户可以访问 * 所有可以ping同该主机的用户 192.168.1.* 指定网段,在该网段中的用户可以挂载 192.168.1.12 只有该用户能挂载 (ro,sync,no_root_squash): 权限 ro : 只读 rw : 读写 sync : 同步 no_root_squash: 不降低root用户的权限3.3 重启 nfs-serversudo service nfs-server restart3.4 验证发布showmount -e + 主机IP(base) jupiter@dell:~$ showmount -e 127.0.0.1 Export list for 127.0.0.1: /data/project/音频剪辑/audio *4.挂载步骤-客户端4.1 安装 nfs-commonsudo apt install nfs-common4.2 挂载# sudo mount -t nfs 远程硬盘 挂载到本地后的名字(路径) sudo mount -t nfs 10.1.9.24:/data/project/音频剪辑/audio /audio4.3 验证(base) v100@v100:~$ df -h 文件系统 容量 已用 可用 已用% 挂载点 udev 16G 0 16G 0% /dev tmpfs 3.2G 124M 3.1G 4% /run /dev/sdb3 909G 166G 698G 20% / tmpfs 16G 59M 16G 1% /dev/shm tmpfs 5.0M 4.0K 5.0M 1% /run/lock tmpfs 16G 0 16G 0% /sys/fs/cgroup /dev/sdb1 975M 3.7M 971M 1% /boot/efi tmpfs 3.2G 28K 3.2G 1% /run/user/108 tmpfs 3.2G 96K 3.2G 1% /run/user/1000 /dev/sda1 3.7T 568G 3.1T 16% /data /dev/sdd2 3.7T 3.1T 630G 84% /4t /dev/sds1 466G 365G 102G 79% /drive /dev/sdu4 115G 39G 76G 34% /drive2 10.1.9.24:/data/project/音频剪辑/audio 458G 263G 172G 61% /audio参考资料Linux(Ubuntu)通过nfs挂载远程硬盘Ubuntu配置NFS的方法Linux下部署NFS服务 (* ̄︶ ̄)
2021年12月21日
1,201 阅读
0 评论
0 点赞
2021-12-07
Linux防爆破ssh脚本-通过修改/etc/hosts.deny实现
注意:需要使用root用户身份操作1.ubuntu方式脚本编写mkdir /script vim /script/checkBlackIp.sh#!/bin/sh lastb |awk '/ssh/{print $3}' |sort |uniq -c |awk '{print $2"="$1}' >/script/black.list for i in `cat /script/black.list` do IP=`echo $i |awk -F= '{print $1}'` NUM=`echo $i |awk -F= '{print $2}'` echo $IP:$NUM if [ $NUM -gt 2 ]; then grep $IP /etc/hosts.deny >/dev/null if [ $? -gt 0 ];then echo "sshd:$IP:deny" echo "sshd:$IP:deny" >>/etc/hosts.deny fi fi done手工运行测试sudo bash /script/checkBlackIp.sh定时2分钟执行1次crontab -e# 加入如下内容 */2 * * * * root sh /script/checkBlackIp.sh2.centerOS方式脚本编写mkdir /script vim /script/checkBlackIp.sh#!/bin/bash cat /var/log/secure|awk '/Failed/{print $(NF-3)}'|sort|uniq -c|awk '{print $2"="$1;}' > /script/black.txt for i in `cat /script/black.list` do IP=`echo $i |awk -F= '{print $1}'` NUM=`echo $i |awk -F= '{print $2}'` echo $IP:$NUM if [ $NUM -gt 2 ]; then grep $IP /etc/hosts.deny >/dev/null if [ $? -gt 0 ];then echo "sshd:$IP:deny" echo "sshd:$IP:deny" >>/etc/hosts.deny fi fi done手工运行测试sudo bash checkBlackIp.sh定时2分钟执行1次crontab -e# 加入如下内容 */2 * * * * root sh /script/checkBlackIp.sh参考资料Linux Contos Ubuntu防爆破ssh脚本
2021年12月07日
1,028 阅读
0 评论
0 点赞
2021-11-30
Linux挂载WebDAV
1.webdav介绍基于Web的分布式编写和版本控制(WebDAV)是超文本传输协议(HTTP)的扩展,有利于用户间协同编辑和管理存储在万维网服务器文档。WebDAV由互联网工程任务组的工作组在RFC 4918中定义。WebDAV协议为用户在服务器上创建、更改和移动文档提供了一个框架。WebDAV协议最重要的功能包括维护作者或修改日期的属性、名字空间管理、集合和覆盖保护。维护属性包括创建、删除和查询文件信息等。名字空间管理处理在服务器名称空间内复制和移动网页的能力。集合(Collections)处理各种资源的创建、删除和列举。覆盖保护处理与锁定文件相关的方面。2.软件安装与挂载davfs2安装# Centos & Fedora & RedHat yum -y install davfs2 # 其他的比如Ubuntu之类的 apt-get -y install davfs2安装完davfs2之后执行sed -i 's/# use_locks 1/use_locks 0/g' /etc/davfs2/davfs2.conf echo "你的WebDAV地址 用户名 密码" >> /etc/davfs2/secrets #保存用户名密码,以后可以直接免密码挂载 mount.davfs 你的WebDAV地址 你想要挂载到的目录 #即可成功挂载注意1:挂载目录必须提前创建好!注意2:如果你不执行第二句保存用户名密码,那么你以后挂载的时候都会要求输入用户名密码!示例sed -i 's/# use_locks 1/use_locks 0/g' /etc/davfs2/davfs2.conf echo "https://seto.teracloud.jp/dav/ jupiteradam hrxjKbiszNm9Bi" >> /etc/davfs2/secrets #保存用户名密码,以后可以直接免密码挂载 mount.davfs https://seto.teracloud.jp/dav/ /drive 3. 开机自动挂载如果想要开机自动挂载,则再执行echo "mount.davfs 你的WebDAV地址 你想要挂载到的目录" >> /etc/rc.local执行完此句之后检查一下/etc/rc.local文件,看看是否有exit 0这句。如果有的话,要手动把上面命令添加进去的语句放到exit 0之前。参考资料https://zh.wikipedia.org/wiki/WebDAV如何在各个平台下挂载WebDAV
2021年11月30日
1,033 阅读
0 评论
0 点赞
2021-11-30
Linux测试CPU 整型算力和浮点数算力
Linux测试CPU 整型算力和浮点数算力1.sysbench:用于测试 CPU 整型算力1.0 介绍SysBench是一个模块化的、跨平台、多线程基准测试工具,主要用于评估测试各种不同系统参数下的数据库负载情况。它主要包括以下几种方式的测试:cpu性能磁盘io性能调度程序性能内存分配及传输速度POSIX线程性能数据库性能(OLTP基准测试)目前sysbench主要支持 MySQL,pgsql,Oracle 这3种数据库。1.1 安装依赖# 安装依赖-centerOS sudo yum install automake libtool gcc -y # 安装依赖-ubuntu sudo apt install automake libtool gcc -y1.2 下载并编译安装# 下载sysbench源码包 wget https://github.com/akopytov/sysbench/archive/1.0.20.tar.gz -O sysbench-1.0.20.tar.gz # 解压 tar -xvf sysbench-1.0.20.tar.gz # 执行autogen.sh cd sysbench-1.0.20 sh autogen.sh # 生成Makefile ./configure --without-mysql # 编译并安装 sudo make && sudo make install # 查看安装结果(版本信息) sysbench --version1.3 调用测试测试 4 线程,20000 内的质数计算能力(base) jupiter@dell:/software/sysbench-1.0.20$ sysbench cpu --cpu-max-prime=20000 --threads=4 --time=60 run # 参数解释 --cpu-max-prime=20000 测试计算素数直到某个最大值(20000)所需要的时间 --threads=4 使用线程数为4 --time=60 重复次数为60次测试结果/Score : 1497.06sysbench 1.0.20 (using bundled LuaJIT 2.1.0-beta2) Running the test with following options: Number of threads: 4 Initializing random number generator from current time Prime numbers limit: 20000 Initializing worker threads... Threads started! CPU speed: events per second: 1497.06 General statistics: total time: 60.0026s total number of events: 89830 Latency (ms): min: 2.52 avg: 2.67 max: 22.63 95th percentile: 2.76 sum: 239972.33 Threads fairness: events (avg/stddev): 22457.5000/42.39 execution time (avg/stddev): 59.9931/0.002.sysbench:用于测试 CPU 浮点型算力2.1 安装依赖# 安装依赖-centerOS sudo yum install automake libtool gcc -y # 安装依赖-ubuntu sudo apt install automake libtool gcc -y2.2 下载并编译安装# 下载 wget http://soft.vpser.net/test/unixbench/unixbench-5.1.2.tar.gz # 解压 tar zxvf unixbench-5.1.2.tar.gz # 配置如果不需要进行图形测试或者不在图形化界面下测试,则将Makefile文件中GRAPHIC_TEST = defined注释掉 cd unixbench-5.1.2 make # 安装依赖 sudo apt install -y perl # 执行测试 ./Run2.3 测试结果说明测试项目项目说明Dhrystone 2 using register variables测试 string handlingDouble-Precision Whetstone测试浮点数操作的速度和效率Execl Throughput此测试考察每秒钟可以执行的execI系统调用的次数File Copy 1024 bufsize 2000 maxblocks测试从一个文件向另外一个文件传输数据的速率。File Copy 256 bufsize 500 maxblocks测试从一个文件向另外一个文件传输数据的速率。File Read 4096 bufsize 8000 maxblocks测试从一个文件向另外一个文件传输数据的速率。Pipe-based Context Switching测试两个进程(每秒钟)通过一个管道交换一个不断增 长的整数的次数。Pipe Throughput一秒钟内一个进程可以向一个管道写512字节数据然后 再读回的次数Process Creation测试每秒钟一个进程可以创建子进程然后收回子进程的 次数(子进程一定立即退出)。Shell Scripts (8 concurrent)测试一秒钟内一个进程可以并发地开始一个shell脚本 的n个拷贝的次数,n一般取值1,2,4,8.System Call Overhead测试进入和离开操作系统内核的代价,即一次系统调用 的代价。2.4 测试结果简略摘要# 单核双精度浮点算力 Double-Precision Whetstone 5476.7 MWIPS # 4核双精度浮点算力 Double-Precision Whetstone 21621.7 MWIPS详细信息======================================================================== BYTE UNIX Benchmarks (Version 5.1.2) System: dell: GNU/Linux OS: GNU/Linux -- 5.11.0-40-generic -- #44~20.04.2-Ubuntu SMP Tue Oct 26 18:07:44 UTC 2021 Machine: x86_64 (x86_64) Language: en_US.utf8 (charmap="UTF-8", collate="UTF-8") CPU 0: Intel(R) Core(TM) i5-6300HQ CPU @ 2.30GHz (4599.9 bogomips) Hyper-Threading, x86-64, MMX, Physical Address Ext, SYSENTER/SYSEXIT, SYSCALL/SYSRET, Intel virtualization CPU 1: Intel(R) Core(TM) i5-6300HQ CPU @ 2.30GHz (4599.9 bogomips) Hyper-Threading, x86-64, MMX, Physical Address Ext, SYSENTER/SYSEXIT, SYSCALL/SYSRET, Intel virtualization CPU 2: Intel(R) Core(TM) i5-6300HQ CPU @ 2.30GHz (4599.9 bogomips) Hyper-Threading, x86-64, MMX, Physical Address Ext, SYSENTER/SYSEXIT, SYSCALL/SYSRET, Intel virtualization CPU 3: Intel(R) Core(TM) i5-6300HQ CPU @ 2.30GHz (4599.9 bogomips) Hyper-Threading, x86-64, MMX, Physical Address Ext, SYSENTER/SYSEXIT, SYSCALL/SYSRET, Intel virtualization 19:40:36 up 11 days, 9:27, 3 users, load average: 0.18, 0.34, 0.47; runlevel 5 ------------------------------------------------------------------------ Benchmark Run: 一 11月 29 2021 19:40:36 - 20:08:45 4 CPUs in system; running 1 parallel copy of tests Dhrystone 2 using register variables 35459584.6 lps (10.0 s, 7 samples) Double-Precision Whetstone 5476.7 MWIPS (9.9 s, 7 samples) Execl Throughput 3206.9 lps (29.9 s, 2 samples) File Copy 1024 bufsize 2000 maxblocks 527819.0 KBps (30.0 s, 2 samples) File Copy 256 bufsize 500 maxblocks 137340.3 KBps (30.0 s, 2 samples) File Copy 4096 bufsize 8000 maxblocks 1512668.7 KBps (30.0 s, 2 samples) Pipe Throughput 710906.8 lps (10.0 s, 7 samples) Pipe-based Context Switching 151493.2 lps (10.0 s, 7 samples) Process Creation 6097.0 lps (30.0 s, 2 samples) Shell Scripts (1 concurrent) 6869.6 lpm (60.0 s, 2 samples) Shell Scripts (8 concurrent) 2230.7 lpm (60.0 s, 2 samples) System Call Overhead 400377.9 lps (10.0 s, 7 samples) System Benchmarks Index Values BASELINE RESULT INDEX Dhrystone 2 using register variables 116700.0 35459584.6 3038.5 Double-Precision Whetstone 55.0 5476.7 995.8 Execl Throughput 43.0 3206.9 745.8 File Copy 1024 bufsize 2000 maxblocks 3960.0 527819.0 1332.9 File Copy 256 bufsize 500 maxblocks 1655.0 137340.3 829.9 File Copy 4096 bufsize 8000 maxblocks 5800.0 1512668.7 2608.0 Pipe Throughput 12440.0 710906.8 571.5 Pipe-based Context Switching 4000.0 151493.2 378.7 Process Creation 126.0 6097.0 483.9 Shell Scripts (1 concurrent) 42.4 6869.6 1620.2 Shell Scripts (8 concurrent) 6.0 2230.7 3717.8 System Call Overhead 15000.0 400377.9 266.9 ======== System Benchmarks Index Score 1007.7 ------------------------------------------------------------------------ Benchmark Run: 一 11月 29 2021 20:08:45 - 20:36:59 4 CPUs in system; running 4 parallel copies of tests Dhrystone 2 using register variables 136159740.8 lps (10.0 s, 7 samples) Double-Precision Whetstone 21621.7 MWIPS (9.9 s, 7 samples) Execl Throughput 10934.3 lps (29.9 s, 2 samples) File Copy 1024 bufsize 2000 maxblocks 1144908.0 KBps (30.0 s, 2 samples) File Copy 256 bufsize 500 maxblocks 300291.5 KBps (30.0 s, 2 samples) File Copy 4096 bufsize 8000 maxblocks 3433079.5 KBps (30.0 s, 2 samples) Pipe Throughput 2704214.4 lps (10.0 s, 7 samples) Pipe-based Context Switching 565815.4 lps (10.0 s, 7 samples) Process Creation 31990.1 lps (30.0 s, 2 samples) Shell Scripts (1 concurrent) 17826.7 lpm (60.0 s, 2 samples) Shell Scripts (8 concurrent) 2525.2 lpm (60.1 s, 2 samples) System Call Overhead 1474932.5 lps (10.0 s, 7 samples) System Benchmarks Index Values BASELINE RESULT INDEX Dhrystone 2 using register variables 116700.0 136159740.8 11667.5 Double-Precision Whetstone 55.0 21621.7 3931.2 Execl Throughput 43.0 10934.3 2542.9 File Copy 1024 bufsize 2000 maxblocks 3960.0 1144908.0 2891.2 File Copy 256 bufsize 500 maxblocks 1655.0 300291.5 1814.5 File Copy 4096 bufsize 8000 maxblocks 5800.0 3433079.5 5919.1 Pipe Throughput 12440.0 2704214.4 2173.8 Pipe-based Context Switching 4000.0 565815.4 1414.5 Process Creation 126.0 31990.1 2538.9 Shell Scripts (1 concurrent) 42.4 17826.7 4204.4 Shell Scripts (8 concurrent) 6.0 2525.2 4208.6 System Call Overhead 15000.0 1474932.5 983.3 ======== System Benchmarks Index Score 2980.8参考资料sysbench压力测试工具安装和参数介绍UnixBench 测试工具简单使用ARM和X86云服务器的算力对比
2021年11月30日
2,672 阅读
0 评论
0 点赞
2021-11-10
Linux关闭ssh首次登录提示
问题描述免密登录遇到如下提示,无法实现真正的无操作免密登录,很烦人,如何去掉?Are you sure you want to continue connecting (yes/no)?解决方案方案1-仅针对当前用户生效echo "StrictHostKeyChecking no" > ~/.ssh/config方案2-针对所有用户生效sudo vim /etc/ssh/sshd_config # 在文件的末尾加上如下内容 StrictHostKeyChecking no参考资料关闭ssh首次登录提示ssh免密登录及去掉提示
2021年11月10日
634 阅读
0 评论
0 点赞
2021-11-10
linux下快速安装cmake步骤详解
安装步骤1.获cmake快速安装脚本下载地址https://cmake.org/download/下载对应系统.sh后缀的文件# 创建并进入软件安装目录 mkdir software && cd $_ # 下载快速安装脚本 wget https://github.com/Kitware/CMake/releases/download/v3.21.4/cmake-3.21.4-linux-x86_64.sh2.运行快速安装脚本安装bash cmake-3.21.4-linux-x86_64.sh3.配置环境变量vim ~/.bashrc # 在文件末尾加上这个--根据自己的实际安装路径填写 export PATH="$PATH:/home/admin/software/cmake-3.21.4-linux-x86_64/bin" # 激活环境变量 source ~/.bashrc4.验证是否安装成功$ cmake --version cmake version 3.21.4 CMake suite maintained and supported by Kitware (kitware.com/cmake).
2021年11月10日
1,536 阅读
0 评论
0 点赞
1
2
3
4
...
6