分类目录归档:计算机

nextcloudpi首次登陆,通过无线自动连接wifi

问题

镜像部署nextcloudpi登陆后发现设备并没有用提供给树莓派image_boot的wifi账号密码正确登陆

nmap扫了本地设备,找不到nextcloudpi这台设备,说明没有正确联网

手边也没有网线直接连接树莓派到路由器

解决

  1. sd card取出,挂载到另一台主机上

  2. 向sd卡根目录下的/etc/NetworkManager/system-connections/CMCC-test.nmconnection 写入

如果没有则创建

[connection] 
id=CMCC-test
uuid=17d60521-c4de-4674-b115-d8c10d873f99
type

Read more (846 views)

archlinux上GNUCash仅有xml文件选项

在archlinux上安装GNUCash仅有xml文件选项,没有sql选项

但是GNUCash官网明确说明了支持Sqllite3、Mysql、PostgreSql

https://www.gnucash.org/docs/v5/C/gnucash-guide/basics-files1.html#ftn.idm1378

Look for a package named something like libdbd-sqlite3, libdbd-mysql, or libdbd-pgsql for SQLite3, MySql, and Postgresql respectively.

但是a

Read more (814 views)

使用url名称替代绝对或相对路径(django举例)

绝对路径和相对路径往往更易于理解,新手常使用路径引用某个文件,从而使构建的代码不够稳定。

在 Django 中设置 LOGIN_REDIRECT_URL 时,推荐使用 URL 的名称而不是相对路径或绝对路径。

这样做的好处是,如果未来更改了 URL 的结构,只需要在 urls.py 中更新 URL 的名称映射,而不需要在代码的其他部分进行修改。

最佳实现:"使用 URL 名称"

settings.py 文件中,将 LOGIN_REDIRECT_URL 设置为希望用户在登录后重定向到的 URL 的名称。例如:

# settings.py
LOGIN_REDIRECT_URL = 'playlis

Read more (1007 views)

白话常见开源协议

GitHub上的开源协议是一组规则和指南,用来定义别人可以如何使用、修改和分享在GitHub上发布的代码。

就像是在你的代码上附加了一份使用说明书,告诉别人他们可以或者不可以做什么。

下面我用通俗的方式解释几种常见的开源协议:

  1. MIT许可证
    • 这是一种非常宽松的协议。想象你做了一个蛋糕并告诉大家:“你们可以随意吃这个蛋糕,可以加点你们喜欢的东西,也可以给别人一些。只要你告诉他们这个蛋糕最初是谁做的就行。”
    • 使用MIT协议的代码,别人可以自由地使用、修改和再发布,只要他们在代码中包含原始许可证的副本。
  2. GPL(GNU通用公共许可证)
    • 这是一种更严格的协议。它就像是说:“你可以用这个蛋糕,

Read more (972 views)

阿里云oss+obsidian同步方案

obsidian的syn服务每月10美元,价格稍贵,用过坚果云替代同步方案,ios上无法连接,并且调用api有次数限制。发现obsidian remotely save 插件支持s3同步,国内的阿里云oss也能胜任。

步骤

1.开通阿里云oss的资源包,9元/年,有40G容量。

2.创建bucket,名为yourname-obsidian-vault name,权限为私有。

权限为“私有“

数据无价!建议开通版本管理(注意:开通后不能关闭)

阿里云OSS bucket要求名称不能唯一,用yourname手动区分不同用户的名称

vault name建议和本地要同步的仓库名称一致,避免混淆。

3

Read more (1400 views)

/sys/class/backlight变成了空路径

背景

1.archlinux笔记本亮度突然调节不了。

2.查看"/sys/class/backlight/"这个路径,发现里面的文件全都空了。

3.以为是更新系统出现了bug。

4.根据archwiki的提示,修改"/etc/default/grub"里的acpi_backlight无效。

解决

修改"/boot/grub/grub.cfg"(装系统时设定的grub配置文件)

acpi_backlight=vendor

改为

acpi_backlight=native

重启,解决。

Read more (967 views)

django储存数据库连接信息

背景

django需要和mysql数据库连接,但是因为代码开源,如果把密码明文直接放在文本里会非常不安全。

经过试验,找到了django储存数据库连接信息的最佳方式。

解决

直接存在当前机器的环境变量里!

以Linux举例

写入shell配置文件里

我用zsh,就在使用用户下的.zshrc里边加入:

export ALIYUN_RDS_1_PASSWORD="password"
export ALIYUN_RDS_1_NAME="database name"
export ALIYUN_RDS_1_USER="user name"
e

Read more (714 views)

homeassistant deploy: No module named '_sqlite3'.

背景

遇到一个坑:homeassistant部署后提示_sqlite3依赖找不到!

可是libsqlite-dev已经装有。

???

发现

因为Homeassistant最低需要Python3.9起步,raspberryPi国内镜像只有3.7版本(国外镜像慢得出奇就没加入源,也不知道有没有),只能自行编译安装。

官方默认sqlite可以被python调用的,但自己编译的就很孤立。于是configure的时候没有加进去!!!不说这谁能知道!

1.确认已经安装好所需要的依赖:

sudo apt-get install libsqlite3-dev

2.编译的时候加上sqlite的拓展!!!

./

Read more (709 views)

堆排序

2022下半年软考软件设计下午算法题:实现大顶堆排序。

因为复习没到位,导致该题全错!此处补上知识点。

堆排序实现:

1.构建初始大顶堆。

2.最后一个元素与第一个元素交换位置。

3.重排堆。

4.排完后的堆按自下而上插回顺序表。

HeapSort.cpp

#include <iostream>
using namespace std;
#define  MAXSIZE  20    //顺序表的最大长度

//定义顺序表数值结构
typedef struct
{
    int key;
    char *otherinfo;
}ElemType;

//顺序表的存储结构   

Read more (689 views)

python操作excel

需求

某网站导出的excel表需要先变换格式才能整合进新表。

每次都要手动:取消单元格合并->筛选->升序排列->删除多余列。

处理前

修改前

处理后

修改后

让程序来做这些枯燥而重复的工作!

考虑到vba只能对单个excel执行,而c++库太少,python有丰富现成的库,所以选择python作为实现语言。

过程:

①读取文件路径作为变量。

②拆分带有合并的单元格。

③A6~AH14范围内,按A6升序排列。

④删除多余列。

⑤保存并退出。

面向过程,当脚本使用。

代码如下:

filename : dataProcess.py

import xlwings as xw
import t

Read more (569 views)