Giter Club home page Giter Club logo

tech's People

Contributors

he-sb avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

Forkers

ximliu

tech's Issues

Google Drive 分享新姿势 - gdir

项目地址:https://github.com/workerindex/gdir

注意事项:

  • 配置需要普通用户,不能是 root 用户,否则会报错; 亲测并非必需,推测报错可能原因为 Node.js 或 Golang 安装问题,按本文方法安装是没问题的;

  • 需要准备 Cloudflare 和 GitHub 的 API;

  • GitHub 的 API 只需给 gist 权限即可;

配置 OpenSSH 提高效率

  • 配置密钥登陆,提高安全性且省去了输入密码的麻烦;

  • 不用密钥一定要用密码也可以配置好记住密码,自动登陆;

  • 设置别名一行命令连接指定远程主机(配合终端自动补全可以一键连接); 只需编辑 ~/.ssh/config 文件即可实现;

homelab - 1. 总体规划

前言

最近家里 HomeLab 的基础设施暂时算是施工完毕,在此总结一下折腾的过程,一来是回顾、总结经验,二来也是给对 HomeLab 感兴趣的大伙儿提供一个可供参考的思路。

由于内容较多(加入了一些背景知识和俺在做 trade-off 时的考量),且部分内容尚未搭建完成,俺打算做成系列的形式分享出来。

这里简要介绍一下本篇的主要内容:

成文时仅附上当前章节的简介

  1. 总体规划
    • 折腾 HomeLab 时的一些学习经验和架构设计,包括
      • 为什么要搭建 HomeLab
      • 硬件选择
      • 虚拟化环境选择
  2. 环境准备
    • 虚拟化环境安装
    • 虚拟机配置
  3. 虚拟化环境选择 合并至【1. 总体规划】篇
  4. 宿主机配置 合并至【2. 环境准备】篇
  5. 虚拟机配置 合并至【2. 环境准备】篇

至于什么是 HomeLab,这里俺摘录一位国外网友的总结,言简意赅:

Homelab is a laboratory at home where you can self-host, experiment with new technologies, practice for certifications, and so on.

-- Khue's Homelab

homelab - 2. 环境准备

  1. 虚拟化环境(宿主机)安装 - pve
  2. 虚拟机安装
    • docker (conpose) 安装
  3. 网关部署 单独撰文详述

Windows Server 2019 桌面环境配置

用了这么多年 Windows ,一路经历了 XP ,7 ,8 ,10 ,LTSC ,到目前在用的 Server 2019 ,中间各种 bug 和奇怪的问题层出不穷,相对来说最稳定的版本还是 Server 2019 ,不过因为这个版本本来是设计为服务器使用的(毕竟是“Server”版,不过这也解释了为什么这个版本 bug 最少,用起来最稳定),个人作为桌面环境使用的话要先进行一番配置,配置好之后可以做到【Win 10 一模一样的功能】+【Win 10 各个版本都没法比的稳定性】。

下面记录一下配置过程,希望能帮到各位。

使用 Envoy 反代谷歌

适合使用自己的服务器来搭建谷歌的镜像站,造福身边没有条件的朋友。

参考链接:

使用Nginx反向代理google,做谷歌搜索镜像 - 栖迟于一丘

核心配置:

location /
{
    proxy_redirect off;
    proxy_cookie_domain "google.com" "he-sb.tk";
    proxy_pass https://www.google.com;
    proxy_set_header Host "www.google.com";
    proxy_set_header User-Agent $http_user_agent;
    proxy_set_header Referer https://www.google.com;
    proxy_set_header Accept-Encoding "";
    proxy_set_header X-Real-IP $remote_addr; 
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 
    proxy_set_header X-Forwarded-Proto https;
    proxy_set_header Accept-Language "zh-CN";
    proxy_set_header Cookie 
    "PREF=ID=047808f19f6de346:U=0f62f33dd8549d11:FF=2:LD=zh-CN:NW=1:TM=1325338577:LM=1332142444:GM=1:SG=2:S=rE0SyJh2W1IQ-Maw";
    
    #Set Nginx Cache

	sub_filter "https://www.google.com" "https://google.he-sb.tk";
    sub_filter_once off;
    
    addition_types *;
}

实际使用发现以上方法并不行,只能打开谷歌首页,实际搜索内容时还是会被谷歌判定为机器人限制访问。

配置内网穿透

参考链接:

[Forwarded from (:3[____]]
稳定版本内转外网
http://mofasuidao.cn

v2ray 反向代理 内网穿透 白话文教程
https://toutyrater.github.io/app/reverse.html

[Forwarded from 主机百科资讯分享 (zhujiwiki)]
Proxyer是一个允许随意搭建的新一代的内网映射工具,借助于公网服务器和内网客户端,可以将内网电脑的任意IP地址和端口映射到公网服务器上。整个过程完全自动化,对内网的依赖极小,只要客户端能够连接外网服务器,就能够实现端口映射。
https://gitee.com/guangleihe/proxyer

Proxyer:一款简单且带Web面板的内网穿透工具 - Rat's Blog

利用 frp 进行内网穿透 - 漠然的博客 | mritd Blog

破解 Emby 客户端验证

参考链接:

白嫖一下Emby - TimeBlog时光轴

Emby Premiere破解思路 - 远方


建立一个域名为 mb3admin.com 的伪站,并配置伪静态返回客户端验证所需的 json 数据,然后在客户端所在的机器对伪站的自签名证书添加信任即可。

伪静态配置:

location /admin/service/registration/validateDevice {
	    default_type application/json;
	  return 200 '{"cacheExpirationDays": 3650,"message": "Device Valid","resultCode": "GOOD"}';
	}
	location /admin/service/registration/validate {
	    default_type application/json;
	  return 200 '{"featId":"","registered":true,"expDate":"2099-01-01","key":""}';
	}
	location /admin/service/registration/getStatus {
	    default_type application/json;
	  return 200 '{"deviceStatus":"","planType":"Lifetime","subscriptions":{}}';
	}

站点配置文件添加以下内容防止跨域报错:

    add_header Access-Control-Allow-Origin *;
    add_header Access-Control-Allow-Headers *;
    add_header Access-Control-Allow-Method *;
    add_header Access-Control-Allow-Credentials true;

Git 操作合集

用于记录 Git 相关操作,以防便自己忘记时查阅……

Caddy 文档拾遗

目前所有服务的反代已经切换至 Traefik 来实现了,不再使用 Caddy。为了纪念之前使用 Caddy 时付出的时间和精力,在此做一个集中总结,也方便需要使用 Caddy 来反代的小伙伴参考。


参考链接:

  1. Caddyfile 语法浅析 - bleem

配置终端代理

Windows 10 :

set http_proxy=http://127.0.0.1:1081
set https_proxy=http://127.0.0.1:1081

测试是否走代理:

curl ip.gs

效果持续到当前 CMD 窗口关闭。

需求评审相关

产品将一个即将实施的需求,讲解给相关参与人(开发,设计,测试等)。

需求的形式:

  • 需求文档
    • 背景,级别,收益,内容,业务流程,交互示例,影响范围说明
    • 模板,确认
  • 一句话需求
    • 没有规范
  • 口头传达
    • 产品有想法-找开发口述-边讲解边调整
    • 几次讲解内容还可能有出入

评审的目的:

对齐

  • 保证相关人员了解需求
    • 统一产品,开发,测试等对需求的理解
  • 讨论实现过程中可能存在的问题和解决方案
    • 不同角度,讨论优化,避免开发过程中遇到严重影响进度的困难
  • 明确职责和项目周期
    • 人员,职责,参与时间

谁来组织

一般是产品来讲解需求,但我们作为测试,发现了需求存在理解困难,有较多歧义的时候,也要积极主动的去组织需求评审,邀请产品或开发来进行讲解。积极主动,不要提测后才开始工作(测试左移)。

评审时要做什么

测试人员的关注点:

  • 关注公司,部门规划
  • 分辨需求类型(不是所有需求都需要评审)
  • 关注产品规划,找准责任人
  • 督促评审,关注交付进度,风险预警
  • 提前阅读需求文档

如何评审:

  • 测试左移的意识
    • 测试工作在需求评审时已开始,不是在开发完成,提测后才开始,每个阶段都有测试需要做的工作
  • 根据以往经验(测试经验,对业务的理解,客户的使用习惯等)对需求形成自己的意见,有异议要积极反馈
  • 关注大家的不同意见,讨论并找出优化方案,达成一致
  • 对需求的修改,确保产品修改相应文档,确保需求变动的文档化
  • 确认时间节点
  • 根据需求,明确测试范围
    • 本次需求要保证的内容
    • 可能影响的原有业务
    • 是否需要其他业务支持
  • 根据需求类型,确定测试方案
    • 需求确认--功能测试
    • 并发需求--性能测试
    • 安全相关--安全测试
    • 影响范围--回归测试

评审之后

  • 待确认内容是否达成一致
    • 达成一致的部分是否确认
    • 若未确认,是否影响整体规划,何时能给出确认方案
    • 避免无效会议(讨论了很久,最终没有形成准确方案,无法进行后续的落地实施)
  • 交付物的跟踪和确认
    • 需求文档是否修改
    • 开发和设计有无需要准备的内容
    • 时间节点是否 / 何时确定
  • 时间节点确认
    • 需求更改交付时间
    • 设计完成时间
    • 测试用例评审时间
    • 提测时间
    • 测试起止时间
    • 上线时间
  • 需求的维护和管理
    • 需求变动有没有更新到文档
    • 设计文档有无统一管理
    • 开发过程中,因技术问题引起的需求变动,是否落实到文档,是否将变动同步给各参与方

参考来源:

  1. 测试人员如何进行需求评审 · TesterHome

挂载 NTFS 移动硬盘

sudo apt install ntfs-3g  # 安装 NTFS 驱动
sudo mkdir -p /mnt/toshiba  # 创建挂载点
sudo ntfs-3g /dev/sda1 /mnt/toshiba  # 挂载移动硬盘
df -h  # 查看是否挂载成功

开机自动挂载:

sudo vi /etc/fstab

新增一行:

/dev/sda1 /mnt/toshiba ntfs defaults,nofail 0 2

ServerStatus探针配置

项目地址:https://github.com/cppla/ServerStatus

服务端配置:

docker run -d --restart=always --name=serverstatus -v /root/ServerStatus.json:/ServerStatus/server/config.json -p 999:80 -p 35601:35601 cppla/serverstatus

客户端配置:

wget --no-check-certificate -qO client-linux.py 'https://raw.githubusercontent.com/cppla/ServerStatus/master/clients/client-linux.py' && nohup python client-linux.py SERVER="server_ip" USER="s01" PASSWORD="PASSWORD" >/dev/null 2>&1 &

相对路径与绝对路径

相对路径

例如

  • ../a

  • ./a

  • a

上面三个例子都是相对路径的形式,其中后两个路径指向的是同一个文件,为当前目录下的 a 这个文件,第一个路径指向的是当前目录的父目录下的 a 这个文件

绝对路径

即文件或目录的完整路径,以根目录(Windows 中为盘符)开头,例如

  • C:\Windows\explorer.exe

  • D:\电影

  • /root/docker-compose.yml

系统初始化配置

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.