导言
ipcc初赛的项目代码有些混乱,只是简单分类。想好好学习一下cmake和make。规范项目结构,优化编译运行流程,提高效率。
bcdedit /set hypervisorlaunchtype auto参考教程安装 WSL和旧版 WSL 的手动安装步骤
1 | # 查看当前版本 |
注意:用命令行运行来修改默认安装路径(重命名install.exe),参考教程
1 | .\Docker.exe install --installation-dir="E:\commonSoftware\Docker" |
安装完之后运行设置
1 | Error response from daemon: container df6ee73697883e8e09edd65404e1fcc19a2b4bfb49212c754a8b3ef9741d7bda: driver "overlay2" failed to remove root filesystem: unlinkat /var/lib/docker/overlay2/475c350b02589ce2cb5ef30f0619ed3aeaba409c56d87191b8cbbd00ef618fe3: read-only file system |
需要管理员运行docker
WSL还是超级占用C盘
暂无
暂无
https://blog.csdn.net/Antarctic_Bear/article/details/123489609
Linux下的任务调度分为两类:系统任务调度和用户任务调度。
Linux系统任务是由 cron (crond) 这个系统服务来控制的,这个系统服务是默认启动的。用户自己设置的计划任务则使用crontab 命令。
1 | crontab [-u user] file |
-u user:用于设定某个用户的crontab服务;file: file为命令文件名,表示将file作为crontab的任务列表文件并载入crontab;-e:编辑某个用户的crontab文件内容,如不指定用户则表示当前用户;-l:显示某个用户的crontab文件内容,如不指定用户则表示当前用户;-r:从/var/spool/cron目录中删除某个用户的crontab文件。-i:在删除用户的crontab文件时给确认提示。/etc/crontab文件,其中/etc/crontab里的计划任务是系统中的计划任务,crontab –e来编辑用户的计划任务;/var/spool/cron目录中。其文件名与用户名一致。%在crontab文件中表示“换行”,因此假如脚本或命令含有%,需要使用\%来进行转义。配置文件实例:
1 | SHELL=/bin/bash |
@reboot 表示重启开机的时候运行一次。还有很多类似参数如下:
1 | string meaning |
1 | # For details see man 4 crontabs |
在以上各个字段中,还可以使用以下特殊字符:
*代表所有的取值范围内的数字,如月份字段为*,则表示1到12个月;/代表每一定时间间隔的意思,如分钟字段为*/10,表示每10分钟执行1次。-代表从某个区间范围,是闭区间。如2-5表示2,3,4,5,0-23/2表示在0~23点范围内每2个小时执行一次。,分散的数字(不一定连续),如1,2,3,4,7,9。tail -f /var/log/cron观察查看cron运行日志(/var/log/cron.log),但是并未找到相关文件,原因是ubuntu默认没有开cron日志,执行命令:
1 | sudo vim /etc/rsyslog.d/50-default.conf |
找到cron.log相关行,将前面注释符#去掉,保存退出,重启rsyslog:
1 | sudo service rsyslog restart |
执行less -10 /var/log/cron.log再次查看cron运行日志,log出来了,提示如下信息:
1 | No MTA installed, discarding output |
原因是cron把屏幕输出都发送到email了,而当前环境并未安装email server,于是系统报错,解决方面就是不要直接向屏幕输出内容,而是重定向到一个文件。
1 | cd /var/spool/mail/ |
1 | service cron status # ubuntu |
https://zhuanlan.zhihu.com/p/35402730
https://blog.csdn.net/qq_35440678/article/details/80489102
Wi-Fi是一个创建于IEEE 802.11标准的无线局域网技术。基于两套系统的密切相关,也常有人把Wi-Fi当做IEEE 802.11标准的同义术语。
Wi-Fi这个术语被人们普遍误以为是指无线保真(Wireless Fidelity),并且即便是Wi-Fi联盟本身也经常在新闻稿和文件中使用“Wireless Fidelity”这个词,Wi-Fi还出现在ITAA的一个论文中。但事实上,Wi-Fi一词没有任何意义,也是没有全写的。
WIFI6 是802.11ax协议,支持2.4GHz和5GHz,支持更多的技术,更高的调制方式。比如

无线路由器发展到现在有IEEE802.11b、IEEE802.11g、IEEE802.11a、IEEE802.11n、IEEE802.11ac标准,对应的无线速率分别是11Mbps、54 Mbps、150 Mbps、300Mbps、1Gbps。这里的无线速率指的是无线传输通过的最高速率。
这里拿300Mbps的无线路由器速率来说一下路由器的传输速度,300Mbps无线路由器指的是传输和接收最大能通过的速率,一般看到的只是传输的速度,也就是只能看到一半的速度,也就是150Mbps,这个是理论速率,但是在实际使用过程中由于环境的干扰,会有衰减。所以在实际使用过程中都只剩下110 Mbps左右。
WLAN是Wireless Local Area Network的简称,指应用无线通信技术将计算机设备互联起来。
WLAN起步于1997年。当年的6月,第一个无线局域网标准IEEE802. 11正式颁布实施,为无线局域网技术提供了统一标准,但当时的传输速率只有1~2 Mbit/s。随后,IEEE委员会又开始制定新的WLAN标准,分别取名为IEEE802.11a和IEEE802. 11b。IEEE802. llb标准首先于1999年9月正式颁布,其速率为11 Mbit/s。经过改进的IEEE802. 11a标准,在2001年年底才正式颁布,它的传输速率可达到54 Mbit/s,几乎是IEEE802. llb标准的5倍。尽管如此,WLAN的应用并未真正开始,因为整个WLAN应用环境并不成熟。
目前使用最多的是802. 11n(第四代)和802. 11ac(第五代)标准,它们既可以工作在2.4 GHz频段也可以工作在5 GHz频段上,传输速率可达600 Mbit/s(理论值)。但严格来说只有支持802. 11ac的才是真正5G,现来在说支持2.4 G和5G双频的路由器其实很多都是只支持第四代无线标准,也就是802. 11n的双频,而真正支持ac 5G的路由最便宜的都要四五百元甚至上千元。
在有线介质上传播数据,想要高速很容易,实验室中,单条光纤最大速度已达到了26Tbps。
无线电磁波传播,才是瓶颈。



3G的四种标准和频段:CDMA2000、WCDMA、TD-SCDMA、WiMAX,1880MHz-1900MHz和2010MHz-2025MHz。
4G的频率和频段是:1880-1900MHz、2320-2370MHz、2575-2635MHz。
我国的5G初始中频频段,3.3-3.6GHz、4.8-5GHz两个频段。24.75-27.5GHz、37-42.5GHz高频频段正在征集意见。国际上主要使用28GHz进行试验
MAC地址20-6B-E7-DB-D7-33
WAN是英文Wide Area Network的首字母所写,即代表广域网;而LAN则是Local Area Network的所写,即本地网(或叫局域网)。WAN口主要用于连接外部网络,而LAN口用来连接家庭内部网络,两者主要会在标识上面有区别,此外大部分路由器的WAN口只有一个,LAN口则有四个或以上。

根据路由器背面的提示登陆,可以修改Wi-Fi名称密码、限制设备上下行速率以及黑名单设备。(注意关闭clash代理
Dynamic Host Configuration Protocol动态主机配置协议是一个局域网的网络协议。指的是由服务器控制一段IP地址范围,客户机登录服务器时就可以自动获得服务器分配的IP地址和子网掩码。担任DHCP服务器的计算机需要安装TCP/IP协议,并为其设置静态IP地址、子网掩码、默认网关等内容。
采用DHCP方式对上网的用户进行临时的地址分配。也就是你的电脑连上网,DHCP服务器才从地址池里临时分配一个IP地址给你,每次上网分配的IP地址可能会不一样,这跟当时IP地址资源有关。
Service Set Identifier是指服务集标识。SSID技术可以将一个无线局域网分为几个需要不同身份验证的子网络,每一个子网络都需要独立的身份验证,只有通过身份验证的用户才可以进入相应的子网络,防止未被授权的用户进入本网络。
信道,也称作通道或频段。无线信号是以某一频率传送数据的。2.4G频段的工作频率为2.4-2.4835GHz,这83.5MHz频带划分为13个信道,各信道中心频率相差5MHz,向上向下分别扩展11MHz,信道带宽22MHz。中国采用欧洲/ETSI标准,使用1-13信道。
20Mhz和40Mhz的区别,你可以想象成道路的宽度,宽度越宽当然同时能跑的数据越多,也就提高了速度。
20MHz对应的是65M带宽,穿透性相对较好,40MHz对应的是150M带宽,穿透性肯定不如20MHz 所以追求稳定的话就选择20MHz,近距离传输就可以选择40MHZ。
当然,无线网的“道路”是大家共享的,一共就这么宽(802.11 b/g/n的频带是 2.412Ghz ~ 2.472Ghz,一共60Mhz。像802.11a/n在中国可用的频带是5.745Ghz ~ 5.825Ghz,同样也是60Mhz),你占用的道路宽了,跑得数据多了,当然就更容易跟别人撞车,一旦撞车大家就都会慢下来,比你在窄路上走还要慢。

如图,原来挤一挤可以四个人同时用的,如果你用了40Mhz的话就只能两个人同时用了。所以哪个更好的问题和你多大的房子无关,最主要的是你附近有多少个人跟你一起上路的,用NetStumbler这种扫描软件可以很容易看清楚周围频带的占用情况,如果你附近没什么人用,那么恭喜你,用40Mhz来享受高速吧!如果周围“车辆”很多,那么你最好还是找一个车少点的“车道”,老老实实用20Mhz比较好。
04年停止更新的软件,不支持我笔记本的网卡
1 | Intel WIFI6 ax200 160MHz |
无线协议: 11b..=网络速度运行在11b网络标准,11g..=网络速度运行在11g网络标准,11n..=网络速度运行在11n网络标准。
如果你不知道你的无线设备是什么级别,802.11b/g/n是最好的选择。如果只使用.11n,旧设备可能存在兼容性问题。当然,速度是支持N的最快方式,但是它必须与特定的设备相结合。
实际的情况是,无线局域网的实际传输速度只能达到产品标称最大传输速度的一半以下;比如802.11b理论最大速度为11M,通过笔者的测试,在无线网络环境较好的情况下,传输100MB的文件需要3分钟左右;而相同的环境,换为支持802.11g的产品,传输100MB的文件就只需要30秒左右。
150M 全写是 150Mbps,注意这里是小b,是位数。所以与MB的兆字节是不一样的,需要除8,加上一点损耗。150Mbps网络有15MB/s就不错了。
如果是有线PC的话,看网卡信息,如果连接速度是1G的就是千兆网络,如果100M 就是百兆。
第二种方法: 测试下载速度,如果下载速度能够达到12.5MB/s以上就是千兆(1000/8),反之就是百兆。
第三种方法:
看交换机上的速度灯,如果千兆灯亮就是千兆,百兆灯亮就是百兆。如图(绿灯千兆,黄灯百兆)

家里明显是加强的百兆网络。
区别是:1、全双工允许数据在两个方向上同时传输;2、半双工允许数据在两个方向上传输,但是同一时间数据只能在一个方向上传输,实际上是切换的单工。
同样是100M的链路,一条是全双工,另一条是半双工,如果两条链路上都进行单向通信的话,理论上是都可以达到100M的(注意:这里全双工也只有100M),但是如果两条链路都进行双向通信就不一样了,双向通信时,全双工的链路的吞吐量是200M(两个方向每个方向上都是100M),而半双工最大也只有100M。但是虽然全双工的最大吞吐量能够达到200M,但是他使用的最大带宽永远都是100M,你不可能将双向的200M变成单向的200M。
因此全双工的带宽=半双工的带宽,全双工的吞吐量=2×半双工的吞吐量。
WPA/WPA2
WPA/WPA2是一种最安全的加密类型,不过由于此加密类型需要安装Radius服务器,因此,一般普通用户都用不到,只有企业用户为了无线加密更安全才会使用此种加密方式,在设备连接无线WIFI时需要Radius服务器认证,而且还需要输入Radius密码。
WPA-PSK/WPA2-PSK
WPA-PSK/WPA2-PSK是我们现在经常设置的加密类型,这种加密类型安全性能高,而且设置也相当简单,不过需要注意的是它有AES和TKIP两种加密算法。
使用AES加密算法不仅安全性能更高,而且由于其采用的是最新技术,因此,在无线网络传输速率上面也要比TKIP更快。
软件首次运行时,会提示你安装一个特别的无线网卡驱动,这个驱动可以使你的无线网卡处在混杂模式,接收周围的任何无线报文。
软件启动时,无线网卡模式被改变,无线网络是无法使用的。
我虽然看不懂,但是我大受震撼。但是只能5分钟试运行




比如,我在图书馆上网的时候,我的电脑并没有收到对面妹子的web请求包回复啊?无线数据包已经发送到你的无线网卡,但是你的网卡一看(主要受网卡驱动影响),不是我的请求数据包啊,于是丢弃了。
为什么comview里好多华为,是很多人开了手机热点吗?
Type – node type. Possible values are AP (for access points), STA (for stations in infrastructure mode) and AD HOC (for stations in ad hoc mode).
暂无
暑假回到家,把家里的WiFi弄一下
原理在路由器的两个flash(firmware和firmware1)的两个系统里,写入一个支持图形化OpenWRT的新系统
查看系统型号[^1]:路由器默认是魔改的openwrt的系统:
1 | root@XiaoQiang:~# cat /etc/os-release |
刷入OpenWRT后:
1 | root@ax6s:~# cat /etc/os-release |
dropbear 是一种轻量级sshd服务

1 | nvram set ssh_en=1 # 不是1也退出1 |
修改/etc/dropbear/authorized_keys 来添加ssh公钥
修改/etc/opkg/distfeeds.conf的配置,参考
下面为x86软路由的源(由于是snapshot的安装不了,内核不匹配),如果是arm的需要看对应架构代号。
1 | src/gz openwrt_core https://mirrors.ustc.edu.cn/openwrt/releases/22.03.3/targets/x86/64/packages |
比如ax6s
1 | [root@ax6s ~]$ cat /etc/opkg/distfeeds.conf |
可以通过cat /etc/os-release查看, 上面的如下
1 | root@OpenWrt:~# cat /etc/os-release |
OpenWrt安装WireGuard命令(eSir精品小包已集成WireGuard,无需安装)
1 | opkg update |
客户端模板文件test.conf
1 | [Interface] |
"[Interface] Address" is the address that gets assigned to the (virtual) network interface (e.g. wg0).
简单来说客户端和服务器端约定的相同的虚拟地址来通信。
注意防火墙放行端口
官方客户端软件下载
注意:如果连接不上
安装依赖
1 | #iptables |
重启后出现
注意不会代理ping,所以ping不通的话,可以用curl来测试代理是否生效。https失败可以尝试http
1 | Collected errors: |
解决办法如下
1 | opkg update |
Dynamic DNS: 根據網際網路的域名訂立規則,域名必須跟從固定的IP位址。但動態DNS系統為動態網域提供一個固定的名稱伺服器(Name server),透過即時更新,使外界使用者能夠連上動態使用者的網址。
cloudflare动态域名 或者阿里云动态域名的DDNS都是很好的选择。
1 | [root@ax6s ~]$ cat ddns.sh |
修改crontab -e
1 | PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin |
脚本围绕,打印邻居路由表命令
1 | [root@ax6s ~]$ ip -6 neigh | grep 2c:f0:5d |
新建 /usr/lib/ddns/dynamic_dns_iphelper.sh
1 |
|
新建 /usr/lib/ddns/getip_demo.sh
1 |
|
脚本chmod +x就行
https://www.youtube.com/watch?v=F8z74oE71Gg&t=19s
https://xiumu.org/technology/openwrt-set-for-local-area-network-lan-equipment-ipv6-ddns.shtml
FTP是File Transfer Protocol(文件传输协议)的缩写,用来在两台计算机之间互相传送文件。相比于HTTP,FTP协议要复杂得多。复杂的原因,是因为FTP协议要用到两个TCP连接,一个是命令链路,用来在FTP客户端与服务器之间传递命令;另一个是数据链路,用来上传或下载数据。
FTP协议有两种工作方式:PORT方式和PASV方式,中文意思为主动式和被动式。
区别主要在于数据通道的建立方式:
1 | ftp ip |
但是这个是当前目录的文件,不包括文件夹
1字节=1B,1024B=1KB
安装
1 | sudo apt install vsftpd # 安装 |
配置文件 /etc/vsftpd/vsftpd.conf
1 | local_enable=YES # 是否允许本地用户访问 |
vsftpd虚拟用户
运行
1 | systemctl restart vsftpd.service |
●所有虚拟用户会统一映射为一个指定的系统帐号:访问共享位置,即为此系统帐号的家目录
●各虚拟用户可被赋予不同的访问权限,通过匿名用户的权限控制参数进行指定
1 | vim /etc/vsftpd/vusers.txt |
1 | sudo apt-get install db-util # install db_load |
1 | sudo useradd -d /data/ftproot -s /sbin/nologin -r vuser |
创建pam配置文件
1 | vim /etc/pam.d/vsftpd.db |
指定pam配置文件
1 | vim /etc/vsftpd/vsftpd.conf |
指定各用户配置文件存放的路径
1 | vim /etc/vsftpd/vsftpd.conf |
创建各个用户的配置文件存放路径,配置文件的文件名需要与用户名一致。
没有独立配置文件的虚拟用户会遵守/etc/vsftpd/vsftpd.conf这个主配置文件的权限配置。
1 | mkdir /etc/vsftpd/vusers.d/ |
建立目录,更改目录的所有者与所属组
1 | mkdir /tmp/vutest_d |
PAM 的各个模块一般存放在 /lib/security/ 或 /lib64/security/ 中,以动态库文件的形式存在,文件名格式一般为 pam_*.so。
PAM 的配置文件可以是 /etc/pam.conf 这一个文件,也可以是 /etc/pam.d/ 文件夹内的多个文件。如果 /etc/pam.d/ 这个文件夹存在,Linux-PAM 将自动忽略 /etc/pam.conf。
/etc/pam.conf 类型的格式如下:
1 | 服务名称 工作类别 控制模式 模块路径 模块参数 |
/etc/pam.d/ 类型的配置文件通常以每一个使用 PAM 的程序的名称来命令。比如 /etc/pam.d/su,/etc/pam.d/login 等等。还有些配置文件比较通用,经常被别的配置文件引用,也放在这个文件夹下,比如 /etc/pam.d/system-auth。这些文件的格式都保持一致:
1 | 工作类别 控制模式 模块路径 模块参数 |
Please read the vsftpd.conf.5 manual page to get a full idea of vsftpd’s capabilities.
1 | 530 Login incorrect. |
尝试改shell,但首先不是这个问题
1 | cat /etc/shells #没有/sbin/nologin |
查看报错
我以为我是修改错文件了,但是好像没怎么简单
添加
1 | guest_enable=YES # 开启虚拟用户 |
报错
后来发现原因是,变量这一行不要加注释
guest_enable=YES # 开启虚拟用户
只改pam的路径为pam.db
报错

这很明显是没有指定用户
https://www.jianshu.com/p/ac3e7009a764
WebDAV由互联网工程任务组的工作组在RFC 4918中定义。是基于Web的分布式编写和版本控制(WebDAV)是超文本传输协议(HTTP)的扩展,
WebDAV协议为用户在服务器上创建,更改和移动文档提供了一个框架。有利于用户间协同编辑和管理存储在万维网服务器文档。
WebDAV协议最重要的功能包括:
维护作者或修改日期的属性、名字空间管理、集合和覆盖保护。
维护属性包括创建、删除和查询文件信息等。
名字空间管理处理在服务器名称空间内复制和移动网页的能力。
集合(Collections)处理各种资源的创建、删除和列举。
覆盖保护处理与锁定文件相关的方面。
可以使用https来保证安全
局域网传输,没有加密
参考教程, 开启 https 5555 端口, http 5556端口
设置特殊用户keeweb来访问下载文件夹keeweb下内容。如https://10.0.233.3:5555/keeweb/1.txt
安装RaiDrive
在1.63GB大文件的时候,SMB能稳定的跑满千兆全速
首先通过split来拆分文件来测试
1 | split -b 2M 1.mkv split.mkv |
在2M的时候,WebDav有些许优势
在4K的时候,WebDav较大优势
暂无
暂无
KeePass是一个轻量级、易用且安全性极高的密码管理器,其源码完全开源(OSI certified),获得了世界多国的安全认证和评级。
只需要一个主密码+一个数据库文件即可安全的保存所有的密码。
普通用户面临的问题:
坚果云更像Dropbox,
坚果云免费版虽不如Dropbox,但也还算厚道:
参考教程
但是keeweb无法同步,会报错
LastPass、1Password、 秘迹 app
暂无
暂无
原本我是懒得用的,edge自带的密码管理器不好吗?