首页
关于
Search
1
LXC中Alpine模板安装Docker
16 阅读
2
Debian 12 / Ubuntu 22.04 安装 Docker 以及 Docker Compose 教程
15 阅读
3
netclient docker compose
12 阅读
4
Netmaker安装
11 阅读
5
Portainer安装
11 阅读
默认分类
PVE虚拟机
数据库
容器技术
Linux
登录
Search
标签搜索
SQLSERVER
学习笔记
累计撰写
32
篇文章
累计收到
1
条评论
首页
栏目
默认分类
PVE虚拟机
数据库
容器技术
Linux
页面
关于
搜索到
32
篇与
的结果
2024-02-28
OpenWRT中配置路由表
http://t.csdnimg.cn/ew157https://blog.csdn.net/weixin_38387929/article/details/111562711OpenWRT中配置路由表有三种方法:第一种 uci set 方式配置路由表,配置内容写入到 /etc/config/network 文件中;第二种 web页面方式配置路由,配置内容同样写入到 network 文件中;第三种 方式采用 route 、 ip route命令行方式配置;route 配置内容开机重启后即丢失,IProute 配置内容保存方式文章中有描述。iproute是Linux下一个网络管理工具包合集,用于取代先前的如ifconfig,route,ifup,ifdown,netstat等历史网络管理工具。该工具包功能强大,它通过网络链路套接字接口与内核进行联系。在 neutron、docker容器、DPDK、VPP中都在使用,使用iproute可以一致的语法来管理不同的应用,本文重点介绍 iproute的应用,OpenWRT的uci 命令配置路由请参考笔者openWRT系列的其他文章。阅读本篇文章的读者需要具有一定的路由方面的知识,先回顾一下 linux 路由相关规则和路由基本概念。Linux 内核路由策略数据库配置三条缺省的规则:0 匹配任何条件 查询路由表local(ID 255) 路由表local是一个特殊的路由表,包含对于本地和广播地址的高优先级控制路由。rule 0非常特殊,不能被删除或者覆盖。32766 匹配任何条件 查询路由表main(ID 254) 路由表main(ID 254)是一个通常的表,包含所有的无策略路由。系统管理员可以删除或者使用另外的规则覆盖这条规则。32767 匹配任何条件 查询路由表default(ID 253) 路由表default(ID 253)是一个空表,它是为一些后续处理保留的。对于前面的缺省策略没有匹配到的数据包,系统使用这个策略进行处理。这个规则也可以删除。不要混淆路由表和策略:规则指向路由表,多个规则可以引用一个路由表,而且某些路由表可以没有策略指向它。如果系统管理员删除了指向某个路由表的所有规则,这个表就没有用了,但是仍然存在,直到里面的所有路由都被删除,它才会消失。路由参数说明root@OpenWrt:~# route -nKernel IP routing tableDestination Gateway Genmask Flags Metric Ref Use Iface0.0.0.0 192.168.0.1 0.0.0.0 UG 0 0 0 eth1192.168.0.0 0.0.0.0 255.255.255.0 U 0 0 0 eth1192.168.56.0 0.0.0.0 255.255.255.0 U 0 0 0 br-lan12345各字段说明:destination:目的网段,0.0.0.0 表示缺省路由表,优先级最高;mask:与网络目标地址相关联的网掩码(又称之为子网掩码)。主机路由 255.255.255.255 ,默认路由是 0.0.0.0。Iface:到达该目的地的本机 interfacegateway:网关,下一跳路由器入口的 ip,路由器通过 interface 和 gateway 定义到下一个路由器的链路。metric 跳数(路由质量):一般情况下,如果有多条到达相同目的地的路由记录,优先采用metric值小的那条路由。根据子网掩码,路由分为三种类型:主机路由:主机路由是路由选择表中指向单个IP地址或主机名的路由记录。主机路由的Flags字段为H。Destination Gateway Genmask Flags Metric Ref Use Iface10.0.0.10 192.168.1.1 255.255.255.255 UH 0 0 0 eth0123网络路由:网络路由是代表主机可以到达的网络。网络路由的Flags字段为N。例如,在下面的示例中,本地主机将发送到网络192.19.12的数据包转发到IP地址为192.168.1.1的路由器。Destination Gateway Genmask Flags Metric Ref Use Iface192.19.12 192.168.1.1 255.255.255.0 UN 0 0 0 eth0123默认路由:当主机不能在路由表中查找到目标主机的IP地址或网络路由时,数据包就被发送到默认路由(默认网关)上。默认路由的Flags字段为G。Destination Gateway Genmask Flags Metric Ref Use Ifacedefault 192.168.1.1 0.0.0.0 UG 0 0 0 eth0123静态与动态路由静态路由:管理员手工配置路由,OpenWRT通过 uci set route 或 web 方式配置的路由表,属于静态路由。动态路由:不需要手工配置路由,路由器之间能够自己互相学习(基于某种路由协议实现),OpenWRT 中的动态路由集有 Qugga、或 FRR,动态路由知识点太丰富,此处只做概念性描述。动态路由1.局域网内——IGP(内部网关路由协议)距离矢量路由协议——RIPV1、RIPV2、EIGRP(思科)链路状态路由协议——OSPF、ISIS(LS)2.互联网 ——EGP(外部网关路由协议)BGPV3(版本3) BGPV4(版本4)iproute 各子模块功能简介ip addr用于管理某个网络设备与协议(ip或ipv6)有关的地址。与ip link类似,不过增加了协议有关的管理(ip地址管理)ip route管理路由,如添加,删除ip rule管理路由策略数据库。这里边有一个算法,用来控制路由的选择策略ip neigh用于neighbor/ARP表的管理,如显示,插入,删除等ip link网络设备配置命令,如可以启用/禁用某个网络设备,改变mtu及mac地址等ip tunel隧道配置隧道的作用是将数据(可以是不同协议)封装成ip包然后再互联网传输ip maddr多播地址管理ip mroute多播路由管理ip monitor状态监控。如可以持续监控ip地址和路由的状态ip xfrm设置xfrm,xfrm是一个ip框架,可以转换数据包的格式,如用某个算法对数据包加密 ,常用于IPSec 配置ip addrlabelipv6的地址标签,主要用于RFC3484中描述的ipv6地址的选择。RFC3484主要介绍了2个算法,用于ipv6地址(源地址和目标地址)的选择策略ip addr 的应用ip address add–添加一个新的协议地址. 缩写:add、a示例1:为每个地址设置一个字符串作为标签。为了和Linux-2.0的网络别名兼容,这个字符串必须以设备名开头,接着一个冒号,ip addr add local 192.168.4.1/28 brd + label eth0:1 dev eth0示例2: 在以太网接口eth0上增加一个地址192.168.20.0,掩码长度为24位(155.155.155.0),标准广播地址,标签为eth0:Alias:ip addr add 192.168.4.2/24 brd + dev eth1 label eth1:1这个命令等于传统的: ifconfig eth1:1 192.168.4.2ip address delete–删除一个协议地址. 缩写:delete、del、dip addr del 192.168.4.1/24 brd + dev eth0 label eth0:Alias1ip address show–显示协议地址. 缩写:show、list、lst、sh、ls、lip addr ls eth0ip address flush–清除协议地址. 缩写:flush、f示例1 : 删除属于私网10.0.0.0/8的所有地址:ip -s -s a f to 10/8示例2 : 取消所有以太网卡的IP地址ip -4 addr flush label “eth0”ip route的应用1)显示路由示例一:显示指定路由表的路由ip route show table 10示例二:显示指定网段的路由ip route list 192.168.7.0/24示例三:显示所有路由表的路由ip route show table all2)添加路由表示例一:通过添加路由方式添加路由表ip route add 192.168.11.0/24 dev ens33 table 100注:table 100为不存在的路由表ID示例二:通过配置文件方式添加路由表echo “252 TEST” >> /etc/iproute2/rt_tables注:252 为路由表ID,TEST为路由表名3)添加路由命令格式:ip route add TARGET [via GW] [dev IFACE] [src SOURCE_IP] [table TABLEID]【注】TARGET可以是:主机路由:具体IP地址网络路由:NETWORK/MASK示例一:添加默认路由ip route add default via 192.168.7.1 table 10示例二:添加到指定网络的路由ip route add 192.168.11.0/24 via 192.168.7.1 metric 10 table 10示例三:添加到指定主机的路由ip route add 192.168.11.1 dev ens334)追加路由ip route append 192.168.5.0/24 via 192.168.7.15)修改路由方法一:ip route change 192.168.2.0/24 via 192.168.7.2方法二:ip route replace 192.168.3.0/24 via 192.168.7.26)删除路由命令格式:ip route del TARGET [via GW] [dev IFACE] [src SOURCE_IP] [table TABLEID]示例一:删除指定表中默认路由ip route del default table 100示例二:删除特定网络路由ip route del 192.168.5.0/24 via 192.168.7.1示例三:删除指定表中特定网络路由ip route del 192.168.1.0/24 table 1007)清空路由表示例一:清空所有路由表ip route flush示例二:清空指定网络的路由ip route flush 192.168.2.0/24ip rule 的应用策略路由规则管理工具。Linux系统在启动时,内核会为路由策略数据库配置三条缺省的规则:1)优先级:0,匹配任何数据包,查询路由表local(ID 255)。local表是一个特殊的路由表,包含本地和广播地址的高优先级控制路由,使用者不应删除或重写它2)优先级:32766,匹配任何数据包,查询路由表main(ID 254)。main表是包含所有非策略路由的常规路由表。管理员可以删除或用其他规则重写此规则3)优先级:32767,匹配任何数据包,查询路由表default(ID 253)。default表是一个空表,它是为一些后续处理保留的。对于前面的缺省策略没有匹配到的数据包,系统使用这个策略进行处理,可以删除此规则命令格式:ip rule {show|list|lst}root@OpenWrt:~# ip rule show优先级 匹配条件 表名、表ID0: from all lookup local 1001: from all iif eth1 lookup 1 2001: from all fwmark 0x100/0x3f00 lookup 1 2061: from all fwmark 0x3d00/0x3f00 blackhole2062: from all fwmark 0x3e00/0x3f00 unreachable32766: from all lookup main 32767: from all lookup default 12345678命令格式ip rule [ add | del | flush] SELECTOR ACTION1)添加规则命令格式:ip rule add 匹配条件 [优先级] [表id]【注】表缺省为main;优先级缺省从main或自定义最低优先级序号开始,然后依次递减,即优先级越来越高示例一:添加源IP段和目的IP策略路由ip rule add from 192.168.7.0/24 to 8.8.8.8 prio 10 table 200示例二:添加接收设备策略路由ip rule add dev ens33 table 1示例三:添加fwmark值策略路由ip rule add fwmark 12)删除规则命令格式:ip rule del [匹配条件] [优先级] [表id]【注】匹配条件、表id、优先级可以同时指定其中一个或多个,如果缺省会按照优先级顺序,从最高优先级依次删除示例一:根据优先级删除ip rule del prio 10示例二:根据匹配条件删除ip rule del from 192.168.7.0/24 to 8.8.8.8示例三:根据路由表id删除ip rule del table 200示例四:根据匹配条件、表id和优先级删除ip rule del from 192.168.7.0/24 to 8.8.8.8 prio 10 table 200ip neigh 的应用用于neighbor/ARP表的管理,如显示,插入,删除等; 缩写 neighbour、neighbor、neigh、n命令 add、change、replace、delete、fulsh、show (或者list);ip neighbour add – 添加一个新的邻接条目ip neighbour change–修改一个现有的条目ip neighbour replace–替换一个已有的条目缩写:add、a;change、chg;replace、repl示例1: 在设备eth0上,为地址10.0.0.3添加一个permanent ARP条目:ip neigh add 10.0.0.3 lladdr 0:0:0:0:0:1 dev eth0 nud perm示例2:把状态改为reachableip neigh chg 10.0.0.3 dev eth0 nud reachableip neighbour delete–删除一个邻接条目示例1:删除设备eth0上的一个ARP条目10.0.0.3ip neigh del 10.0.0.3 dev eth0示例1:ip neighbour show–显示网络邻居的信息. 缩写:show、list、sh、lsip -s n ls 192.168.0.103示例1:ip neighbour flush–清除邻接条目. 缩写:flush、f (-s 可以显示详细信息)ip -s -s n f 193.233.7.254ip link 的应用网络设备配置命令,如可以启用/禁用某个网络设备,改变mtu及mac地址等;ip link set–改变设备的属性. 缩写:set、s示例1:up/down 起动/关闭设备。ip link set dev eth0 up这个等于传统的 # ifconfig eth0 up(down)示例2:改变设备传输队列的长度。参数:txqueuelen NUMBER或者txqlen NUMBERip link set dev eth0 txqueuelen 100示例3:改变网络设备MTU(最大传输单元)的值。ip link set dev eth0 mtu 1500示例4: 修改网络设备的MAC地址。参数: address LLADDRESSip link set dev eth0 address 00:01:4f:00:15:f1示例5: ip link show–显示设备属性. 缩写:show、list、lst、sh、ls、l -s选项出现两次或者更多次,ip会输出更为详细的错误信息统计。ip -s -s link ls eth0 eth0: mtu 1500 qdisc cbq qlen 100 link/ether 00:a0:cc:66:18:78 brd ff:ff:ff:ff:ff:ff RX: bytes packets errors dropped overrun mcast 2449949362 2786187 0 0 0 0 RX errors: length crc fifo missed 0 0 0 0 0 TX: bytes packets errors dropped carrier collsns 178558497 1783946 332 0 332 35172 TX errors: aborted fifo window heartbeat 0 0 0 332这个命令等于传统的 ifconfig eth0ip tunelip tunnel add – 添加新的通道ip tunnel change – 修改现有的通道ip tunnel delete – 删除一个通道缩写:add、a;change、chg;delete、del、d示例1:建立一个点对点通道,最大TTL是32ip tunnel add Cisco mode sit remote 192.31.7.104 local 192.203.80.1 ttl 32示例1: ip tunnel show – 列出现有的通道,缩写:show、list、sh、ls、lip -s tunl ls Cisco应用实例Step 1. 建立ip隧道ServerA配置iptunnel,并给tunnel接口配置上ipip tunnel add a2b mode ipip remote 2.2.2.2 local 1.1.1.1ifconfig a2b 192.168.2.1 netmask 255.255.255.0ServerB配置iptunnel,并给tunnel接口配置上ipip tunnel add a2b mode ipip remote 1.1.1.1 local 2.2.2.2ifconfig a2b 192.168.2.2 netmask 255.255.255.0隧道配置完成后,请在ServerA上192.168.2.2,看是否可以ping通,ping通则继续,ping不通需要再看一下上面的命令执行是否有报错Step 2. 添加路由和natServerA上,添加到192.168.1.0/24的路由/sbin/route add -net 192.168.1.0/24 gw 192.168.2.2ServerB上,添加iptables nat,将ServerA过了访问192.168.1.0/24段的包进行NAT,并开启ip foward功能iptables -t nat -A POSTROUTING -s 192.168.2.1 -d 192.168.1.0/24 -j MASQUERADEsysctl -w net.ipv4.ip_forward=1sed -i ‘/net.ipv4.ip_forward/ s/0/1/’ /etc/sysctl.confip maddr 的应用ip maddress – 多播地址管理 , 缩写:show、list、sh、ls、l; 这个命令只能管理链路层地址。示例1: ip maddress show – 列出多播地址ip maddr ls dummyip maddress add – 加入多播地址ip maddress delete – 删除多播地址缩写:add、a;delete、del、d ; 使用这两个命令,我们可以添加/删除在网络接口上监听的链路层多播地址。示例1: 增加ip maddr add 33:33:00:00:00:01 dev dummy示例2: 查看ip -O maddr ls dummy示例3: 删除ip maddr del 33:33:00:00:00:01 dev dummyip mroute 的应用多播的启用与关闭命令格式: ip link set dev multicast on|offip link set eno16777728 multicast offip link show eno16777728 //如下,没有出项MULTICAST2: eno16777728: <BROADCAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT qlen 1000link/ether 00:0c:29:57:26:9d brd ff:ff:ff:ff:ff:ffip link set eno16777728 multicast onip monitor 的应用ip monitor和rtmon – 状态监视ip命令可以用于连续地监视设备、地址和路由的状态。这个命令选项的格式有点不同,命令选项的名字叫做monitor,接着是操作对象;ip monitor [ file FILE ] [ all | OBJECT-LIST ]示例1: # rtmon file /var/log/rtmon.log示例2: # ip monitor file /var/log/rtmon.log rip xfrm 的应用设置xfrm,xfrm是一个ip框架,可以转换数据包的格式,如用某个算法对数据包加密 ,常用于IPSec 配置 .ip xfrm state flush - 刷新状态ip xfrm state add - 将新状态添加到xfrm中ip xfrm policy add - 将新策略添加到xfrm中ip xfrm policy flush - 刷新策略ip xfrm monitor - 监控状态应用实例在这里插入图片描述配置 LS 主机配置 SAip xfrm state add src 194.168.10.4 dst 194.168.10.5 proto esp spi 0x00004005 mode tunnel auth md5 0xa87ff679a2f3e71d9181a67b7542122c enc des 0xa2f3e71d9181a67bip xfrm state add src 194.168.10.5 dst 194.168.10.4 proto esp spi 0x00005004 mode tunnel auth md5 0xa87ff679a2f3e71d9181a67b7542122c enc des 0xa2f3e71d9181a67b配置 SPip xfrm policy add src 194.168.10.4 dst 194.168.10.5 dir out tmpl src 194.168.10.4 dst 194.168.10.5 proto esp mode tunnelip xfrm policy add src 194.168.10.5 dst 194.168.10.4 dir in tmpl src 194.168.10.5 dst 194.168.10.4 proto esp mode tunnel123456配置 RS 主机配置SAip xfrm state add src 194.168.10.4 dst 194.168.10.5 proto esp spi 0x00004005 mode tunnel auth md5 0xa87ff679a2f3e71d9181a67b7542122c enc des 0xa2f3e71 d9181a67bip xfrm state add src 194.168.10.5 dst 194.168.10.4 proto esp spi 0x00005004 mode tunnel auth md5 0xa87ff679a2f3e71d9181a67b7542122c enc des 0xa2f3e71 d9181a67b配置SPip xfrm policy add src 194.168.10.4 dst 194.168.10.5 dir in tmpl src 194.168.10.4 dst 194.168.10.5 proto esp mode tunnelip xfrm policy add src 194.168.10.5 dst 194.168.10.4 dir out tmpl src 194.168.10.5 dst 194.168.10.4 proto esp mode tunnel123456ip addrlabel 的应用ipv6的地址标签,主要用于RFC3484中描述的ipv6地址的选择。应用方法举例省略。。
2024年02月28日
5 阅读
0 评论
0 点赞
2024-02-27
PVE8.1下部署Intel集显虚拟化驱动
https://zoe.red/2023/38.html关于虚拟化Intel家的U原生提供/支持VT-D功能, bois开启支持后, 允许将物理PCIE设备分配给虚拟机, 让虚拟机直接控制硬件, 但是此时虚拟机会独占此PCIE设备, 在有成百上千个虚拟机的场景, 给每个虚拟机都直通一个PCIE设备, 比如网卡, 几乎是不可能的所以Intel研究出了SR-IOV虚拟化技术, 这是一种基于硬件的虚拟化解决方案,允许将一个物理PCIE设备虚拟成多个(PCIE物理设备), 之后再分配给虚拟机使用, 避免了一个PCIE设备只能给一个虚拟机使用的尴尬.关于DKMSDKMS 是 Dynamic Kernel Module Support的缩写, 是一个用于管理和维护Linux内核的工具. 它能够帮我们在内核升级时自动重新编译和安装第三方内核模块, 从而保持这些模块与新内核保持兼容.接下来我们会演示在PVE8.1系统的Debian12系统上, 使用DKMS工具给其自带的6.5.11-7内核编译安装对应集显的SR-IOV虚拟化驱动注意: 此种直通方式(集显的SR-IOV虚拟化驱动虚拟的PCIE集显)只能给远程桌面访问虚拟机时, 内部加速计算使用, 而无法通过主机上的HDMI接口输出虚拟机的桌面到外接显示器上部署代码系统信息查看# 系统 cat /etc/os-release # 内核 uname -ar # APT软件源索引更新与必要工具软件安装 apt update apt install -y git build-* dkms # 必要编译工具安装 apt install pve-headers-$(uname -r) #apt install -y vim #(可选) # 设置环境变量 KERNEL=$(uname -r); KERNEL=${KERNEL%-pve} echo ${KERNEL}核显虚拟化驱动项目的源码下载与配置修改cd ~ git clone https://github.com/strongtz/i915-sriov-dkms.git cd ~/i915-sriov-dkms cp -a ~/i915-sriov-dkms/dkms.conf{,.bak} sed -i 's/"@_PKGBASE@"/"i915-sriov-dkms"/g' ~/i915-sriov-dkms/dkms.conf sed -i 's/"@PKGVER@"/"'"$KERNEL"'"/g' ~/i915-sriov-dkms/dkms.conf # sed -i 's/ -j$(nproc)//g' ~/i915-sriov-dkms/dkms.conf cat ~/i915-sriov-dkms/dkms.confDKMS添加驱动源码管理并安装部署# 链接内核源代码,并检查状态。确认内核显示已添加。 cp -r ~/i915-sriov-dkms /usr/src/i915-sriov-dkms-$KERNEL ls /usr/src # 查看 cd /usr/src/i915-sriov-dkms-$KERNEL dkms add . dkms status # 构建新内核并检查状态。验证是否显示已安装。 dkms install -m i915-sriov-dkms -v $KERNEL -k $(uname -r) --force -j 4 dkms status对于PVE8.1版本,安全启动可能已启用。如果启动, 则以下是MOK 相关设置是必须的.(默认安装方式没有启用, 可以跳过)如果后续设置完毕, 重启机器后查看集显对应的设备条目数没有变化, 即没有出现虚拟核显设备, 请分别检查bois设置是否开启虚拟化对应的相关选项, 以及如下是否系统内核启用了安全引导而未在第一次重启系统时,在开机设置选项正确配置MOK相关引导配置项,导致内核未加载DKMS安装的扩展, 此时需要进入系统后, 重置MOK设置,再次重启进行相关配置# 为以防万一,我们需要加载 DKMS 密钥,以便内核加载模块。运行以下命令,然后输入密码。 # 该密码仅用于 MOK 设置,重启主机时会用到, 再之后就不需要密码。 # 该密码不必与 root 账户使用的密码相同。 mokutil --import /var/lib/dkms/mok.pub # 重启机器, 在开机页面, 开机引导页面依次选择: # `* Enroll MOK, Continue, Yes, <password>, Reboot` # 如果错过, 需要进入终端, 重新运行 mokutil ... 命令并再次重启。 # 在完成此设置之前,DKMS 模块不会加载。 # Ubuntu重置MOK # 参见: https://wiki.ubuntu.com/UEFI/SecureBoot update-secureboot-policy --enroll-keyGRUB 配置# 解释: i915.max_vfs=7 表示最多虚拟成7个设备 cp -a /etc/default/grub{,.bak} sed -i '/^GRUB_CMDLINE_LINUX_DEFAULT/c\GRUB_CMDLINE_LINUX_DEFAULT="quiet intel_iommu=on iommu=pt i915.enable_guc=3 i915.max_vfs=7"' /etc/default/grub update-grub update-initramfs -u -k all工具软件安装apt install sysfsutils -y运行以下命令,查看/确认显卡所在的PCIe 总线。通常是 00:02.0lspci | grep VGA运行以下命令, 如果PCIe 总线编号不一致, 可能需要修改。# 在本例中,我使用的是 00:02.0。要验证文件是否已修改,请 cat 文件并确保已修改。 # 此处根据需要修改具体的虚拟设备数(一定小于上面设置的i915.max_vfs值) # 示例设置2 (后续计划为2台虚拟机直通) echo "devices/pci0000:00/0000:00:02.0/sriov_numvfs = 2" >> /etc/sysfs.conf cat /etc/sysfs.conf确认驱动与配置情况(重启系统后)lspci | grep VGA此处结果应该从1条变成3条(新增2个虚拟集显/显卡)dmesg | grep i915会显示次要 PCIe ID 1-2修改WIN10虚拟机配置, 增加PCI设备注意:不要直通.0设备,即0000:00:02.0设备,不要勾选全部功能添加任意一个SR-IOV虚拟出来的集显设备, 额外属性勾选 "主GPU,PCIE", 如图所示2023-12-29T04:00:11.png其它(补充)Mac上访问WIN10远程桌面, 不使用虚拟机安装Windows的情况下, 可以使用微软家Remote Desktop client官方链接: https://learn.microsoft.com/en-us/windows-server/remote/remote-desktop-services/clients/remote-desktop-mac推荐下载Mac最新测试版本, 安装后, 新建目标主机连接进行相关配置后即可使用.2023-12-29T22:10:24.png参考:https://gist.github.com/scyto/e4e3de35ee23fdb4ae5d5a3b85c16ed3
2024年02月27日
8 阅读
0 评论
0 点赞
2024-02-27
pce延长线
SFF-8611/8612接口有x8带宽的版本,不需要二合一8654 双口装pce4*16
2024年02月27日
0 阅读
0 评论
0 点赞
2024-02-27
Victoria简明教程(新硬盘扫描)
如果使用汉化版先将语言修改为英文在上方菜单栏选中语言,将语言修改为English。修改为英文是为了保证稳定性,跟着步骤走不担心不认识英文(已加入中文翻译)修改设置上方菜单栏选中 Settings切换到 Tests options (即测试选项)[ ] Enable breaking internal loops (即启用断开的内部循环)[ ] Dark-gray (即深灰色)[ ] Green (即绿色)将以上三项选中,其他选项保持默认,然后点右上角红叉即保存。使用 5.23 版本可以选择将 Grid 打勾,会显示为网格模式,测试结果是曲线一样的,只是形式上和5.3X版本统一了。选择需要检测的硬盘点击 Drive Info (即驱动器信息) 回到主界面右侧点击选中需要检测的硬盘,确认硬盘容量和型号检测主界面点击 Test & Repair (即测试/维修;绿色医疗箱图标)点击 Scan 即可开始扫描 (左边的 Grid 勾选项可以切换网格和曲线)检测标准参考块的颜色三种灰色一般认为良好,绿块及以下需要重点关注,右侧会显示速度、检测进程百分比、预计剩余时间如何查看深灰色/绿块/橙色块/坏块?具体可见 log 日志中(即 Victoria 软件下方日志处,会以红色字体显示)【Block start at xxxxx = xxx ms】(翻译过来就是【xxxxx块的延迟为 xxx ms】)延迟值对应块的不同色块色块左边的绿色数字,表示本色块的最大延迟值,上图中 109ms 110ms 都属于深灰块扫描日志保存在 Victoria 所在目录下 LOGS - 硬盘名称 - eventlog白灰色 25ms 以下,表示优秀浅灰色 25ms-100ms 之间,表示良好深灰块 100ms-250ms 之间,110ms,125ms基本上都不用理(延时高的话复扫)绿块 250ms-1000ms之间,建议复扫橙色表示可能有坏道,复扫如果还存在最好退货红色表示有坏道,复扫如果还存在必须退货Err表示错误块,复扫如果还存在表示硬盘已坏深灰色和绿色会提示但没有 Warning橙色及以上都会提示并有【Warning】,根据【xxx ms】查询具体是哪些块的延迟较高如何对块进行复扫查看日志中【Block start at xxxxx = xxx ms】找到对应块比如对图中的【Block start at 1507328 (772 MB) = 109 ms】进行复扫鼠标右键 Set xxxxx as Start LBA 和 Set xxxxx as End LBA 会将 1507328 填入上面的 Start LBA (即起始块) 和 End LBA (即结束块) 输入框建议前后至少加减10万个块左右:Start LBA:1407328End LBA:1607328点击 Scan 重新扫描硬盘修复教程,先做好备份Ignore(忽略):扫描时发现坏道和超时的磁道时不处理,只检测不修复。Erase(擦除):扫描时发现坏道和读取超时的扇区坏道进行擦除处理,对逻辑坏道(CRC错误)修复效果较好Remap(重新映射):重新定义坏块的 LBA 地址,将坏道写入到坏道列表 G-list 中硬盘生产时都会有保留容量,用保留容量内的好地址替换坏块,适合少量坏扇区的修复。Refresh(刷新):没啥用如果有大量坏块,先用 Erase(擦除)进行全盘擦写,将timeout,ms(超时)改为 100-250ms,看是否减少坏道然后再使用Remap(重新映射),将 timeout,ms(超时)填写合适的超时值,建议先修改为 250ms,扫描多次后再修改为 150ms 扫描,应该可以将多数色块扫描进G表。三、其他补充参考:https://post.smzdm.com/p/a5o5pdpl/https://tieba.baidu.com/p/8019180969https://tieba.baidu.com/p/7276899015原文地址:https://www.cnblogs.com/kjcy8/p/17037779.html
2024年02月27日
2 阅读
0 评论
0 点赞
2024-02-27
PVE 虚拟机磁盘具体位置
新手可能会很好奇,且琢磨不透,虚拟机磁盘具体位置在哪里。本文就详细说明一下。1.区分虚拟机存储后端存储后端是指 虚拟机磁盘所在的存储类型是什么。存储类型主要分为块存储和文件存储。块存储虚拟机磁盘是类似于磁盘分区的形式,他不能被拷贝,移动之类的。代表后端lvm/lvm-thin,ceph,zfs文件存储文件存储是虚拟机作为一种文件存在,如qcow2文件,可以像普通文件一样操作。2.利用命令查找虚拟磁盘位置现在你已经知道了存储后端,那么我们就可以开始了。我们可以通过命令qm config <vmid>查看虚拟所拥有的磁盘root@pve:~# qm config 103 agent: 1 boot: order=scsi0;ide2;net0 cores: 4 description: visit ide2: none,media=cdrom machine: pc-i440fx-4.0 memory: 4096 meta: creation-qemu=6.1.0,ctime=1641016450 name: RDPVM net0: virtio=AC:BD:EF:9C:68:F0,bridge=vmbr0,firewall=1 numa: 0 ostype: win7 scsi0: P4510:103/vm-103-disk-0.qcow2,discard=on,size=80G,ssd=1 scsi1: NVME1:vm-103-disk-0,size=32G scsihw: virtio-scsi-single smbios1: uuid=897a0e01-85c7-47ae-89cb-ca723e464903 sockets: 1 vmgenid: 52600380-045f-4d1c-9b10-1a73e4f95956如上面的结果,有2个磁盘scsi0: P4510:103/vm-103-disk-0.qcow2,discard=on,size=80G,ssd=1 scsi1: NVME1:vm-103-disk-0,size=32G这个格式是<vmdisk>: <storageid>:<vmid>/<diskid>,<disk option>我们如果要查找scsi0的位置,则我们只要记住后端id和磁盘id,如P4510:103/vm-103-disk-0.qcow2使用命令pvesm path 来定位如上例子。root@pve:~# pvesm path P4510:103/vm-103-disk-0.qcow2 /mnt/pve/P4510/images/103/vm-103-disk-0.qcow2可以看到文件是/mnt/pve/P4510/images/103/vm-103-disk-0.qcow2这是一个文件存储如果是一个块呢?如上面的scsi1: NVME1:vm-103-disk-0root@pve:~# pvesm path NVME1:vm-103-disk-0 /dev/NVME1/vm-103-disk-0就只会显示块的位置。
2024年02月27日
1 阅读
0 评论
0 点赞
1
...
4
5
6
7