配置 Ubuntu 18.04 自动更新
12sudo apt install unattended-upgradessudo vim /etc/apt/apt.conf.d/50unattended-upgrades
去掉 update 一行前的注释,并修改自动清除未用包的设置。
1234"${distro_id}:${distro_codename}-updates";...Unattended-Upgrade::Remove-Unused-Kernel-Packages "true";Unattended-Upgrade::Remove-Unused-Dependencies "true";
然后修改重启配置:
1sudo vim /etc/apt/apt.conf.d/20auto-upgrades
12APT::Periodic::Update-Package-Lists "1";APT::Periodic::Unattended-Upgrade "1";
最后测试运行 ...
Windows 远程投屏方案
1 Windows->Android1.1 VNC 协议使用 VNC Viewer
优点:
屏幕没有工具栏
缺点:
需要鼠标操作,不能用键盘/遥控器定位
间歇性断线
没有声音
1.2 RDP 协议使用 Remote Desktop Manager
优点:
键盘可以操作
稳定
有声音
缺点:
第一次创建连接需要用鼠标点
工具栏需要操作才能消去
1.3 向日葵软件使用 远程投屏-向日葵
优点:
暂缺
缺点:
依赖公网
依赖第三方服务
在 Ubuntu VPS 上引导 iso 安装纯净系统
租用 VPS 厂商的机器时,一般只能预装厂商原有的镜像。有时镜像并不纯净,厂商会在里面加料。因此需要安装原版系统。下面以腾讯云重新安装 Ubuntu 18.04 LTS 为例。
1. 检测系统环境1.1 确定系统有 grub1cat /boot/grub/grub.cfg
1.2 确认分区布局1df -h
查看 / 和 /boot 目录是否在不同分区。如果仅有根目录,处理较为容易,否则在后续步骤中需要注意。
2. 下载系统镜像注意:Ubuntu 如果使用常规 iso,安装会报错,因此使用网络安装版(Network installer)的iso。
1sudo wget -O /boot/isoboot.iso http://archive.ubuntu.com/ubuntu/dists/bionic-updates/main/installer-amd64/current/images/netboot/mini.iso
3. 准备 Memdisk原理是将 iso 镜像读入内存。使用 apt 安装 Syslinux:
1sudo apt install syslinux -y
复 ...
不装 VS Windows Terminal 编译 msxi 自签名安装
Windows Terminal 一直没有发布可以直接安装的二进制文件,想自行编译的时候,看到系统需求中包含体积巨大的 Visual Studio 和 Windows SDK,脑袋都大了。直接下载其他人编译好的安装包又不放心,那么就想个办法避免在本地环境编译吧。
1. 编译结果获取首先想到 Azure DevOps,这个可以简单理解成微软提供的在线 CI 平台,写好编译文件就可以调用微软的自带所有编译环境的镜像直接在线编译,并生成二进制下载。这个服务可以使用 edu 教育账号免费使用,有 edu 邮箱的都可以用。我曾经使用这个编译过其他人久不更新的 MFC 项目。自己写一个 ,或者修改微软生成的 azure-pipelines.yml 即可。
那么就从 GitHub 上把微软的代码拿过来,再写个 pipeline 直接编译吧。这时注意到,GitHub 上的项目中,居然已经包含了写好的 pipeline。
想了想也是自然,微软写的东西当然自己也会用 Azure DevOps 啊。
接下来注意到,在 GitHub 仓库的 Readme 中,已经有 Azure Pipelines 的编译 ...
Windows RDP 添加证书
使用远程桌面时,默认使用自签发的证书,会导致连接时弹出 SSL 证书警告。
勾上不提醒可以消除警告,但会导致 SSL 连接不安全。因此导入第三方签发的证书解决问题。
下面以 Let’s Encrypt 的证书为例:
1. 证书格式证书必须为 pfx 格式,转换 pem 时使用:
1openssl pkcs12 -export -out certificate.pfx -inkey privkey.pem -in cert.pem -certfile chain.pem -passout pass:
2 手动添加并关联证书英文参考 CSDN 参考
2.1 运行 mmc,添加证书管理单元
在 文件 中选择 添加/删除管理单元 。
在左侧选中 证书 后点击 添加 。
在弹出的对话框中选择 计算机账户,点击 下一步 。
之后选择 本地计算机(保持默认) 然后点击 完成 ,再然后点击 确定 。
2.2 把证书添加到 Local Computer 下的 Personal 中
在 证书-个人 上点击 右键 ,选择 所有任务-导入 。
按照向导点击 下一步 ,之后选择你的 证书文件 ( ...
在 Ubuntu 中 mount VMware 共享文件夹
1. 安装 VMware Tools
给虚拟机增加一个光驱
VM> Install VMware Tools
手动安装
123456sudo mkdir /mnt/cdromsudo mount /dev/cdrom /mnt/cdromtar xzvf /mnt/cdrom/VMwareTools-x.x.x-xxxx.tar.gz -C /tmp/cd /tmp/vmware-tools-distrib/sudo ./vmware-install.pl -dsudo reboot
可以删掉光驱
2. 映射共享文件夹
查看 /mnt/hgfs 目录下是否已有映射的目录
如果没有,/usr/bin/vmware-config-tools.pl
Linux 显示 git 分支名
Download this
Copy to ~/.git-prompt.sh, or wget it.
.bashrc
1234source ~/.git-prompt.shexport PS1='\[\e]0;\u@\h: \w\a\]${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[01;33m\]$(__git_ps1)\[\033[00m\]\$ '
WSL 同步主机 ssh key
123456789vim ~/.bashrcvim ~/.zshrcmv -f ~/.ssh/known_hosts ~/.ssh/known_hosts.bakchmod -R 0755 ~/.sshcp -r /mnt/c/Users/sykie/.ssh/* ~/.sshchmod 0600 ~/.ssh/*chmod 0755 ~/.sshmv -f ~/.ssh/known_hosts.bak ~/.ssh/known_hosts
ConEmu 里 tqdm 等进度条吃屎解决
问题:
运行全横行进度条时,莫名换行,更改字体也无效。
解决:是 ConEmu 的 RealConsole 的字体问题,不管 ConEmu 显示什么字体,都是在一对一映射一个隐藏的 RealConsole 的字体。
按 Ctrl+Alt+Win+Space 弹出 RealConsole,右键属性发现字体是新宋体:
新宋体无法正确显示进度条使用的方块字符。
首先在注册表 HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Console\TrueTypeFont 中把新宋体改成一个正常的带中文的等宽字体,比如 Sarasa Term 系列
然后在 ConEmu 设置中,Feature 选项里点右侧 Show real console 旁边的省略号按钮,修改字体为正常字体。
好了,美滋滋。
参考官方帮助:ConEmu | Unicode Support
Proxychains 配置支持多场景和自定义 DNS
Proxychains 开启时使用的是写死的公用 DNS 4.2.2.2,并不科学。同时只能支持一个代理或代理链,需要切换使用多个代理时并不方便。
下面以使用 pc 和 pf 两个命令分别连接两个不同的代理为例:
链接 ss 的代理1sudo vim /etc/proxychains.conf
1234567strict_chainquiet_modeproxy_dnstcp_read_time_out 15000tcp_connect_time_out 8000[ProxyList]socks5 127.0.0.1 1080
链接 fiddler 的代理1sudo vim /etc/proxyfiddler.conf
1234567strict_chainquiet_modeproxy_dnstcp_read_time_out 15000tcp_connect_time_out 8000[ProxyList]http 127.0.0.1 8888
usage
pc xx : use socks5 proxy 127.0.0.1:4411 to connect to xx
...
Windows 10 商店应用无法启动解决
Bug 10 的桌面版商店应用全崩了,提示没有权限啥啥啥,脑壳疼。今天发现截图软件崩了,试图重启的时候弹出一个框告诉我访问啥啥没权限。
哦擦这是什么鬼呢。
顺着提示找到路径 C:\Users\<username>\AppData\Local\Microsoft\WindowsApps,发现是放置所有从 Windows Store 安装的桌面应用的地方。注意是桌面应用而不是 UWP 应用。进到目录里看到所有的 exe 都是 0KB 没有图标的,双击后弹出一样的错误框。查看整个 WindowsApps 目录发现是没有大小的。
起初以为是目录文件损坏,找出了一周前的系统备份镜像发现备份中的这个目录也是一样的 0KB。这就比较棘手了。
尝试启动了一下 WSL 的那个 Ubuntu 图标,发现也报一样的错误。搜索后发现 Github 上有一个 issue 在研究这个问题。看了看其中的解决方式,重置 Windows Store 什么的都不好使。尝试右键管理员运行,依然报错。但注意到选择管理员运行后先弹出了 UAC 提权框,其中的程序图标是正常显示的。于是怀疑并不是这个 ex ...
Windows 远程桌面连接到自己
连接到 localhost 或者 127.0.0.1 会报错。连接到 127.0.0.2 即可。
Workaround for Remote Desktop Client to Connect to Localhost (Local Terminal Server Service) - Tech Journey
重命名 Nextcloud 分享链接
https://github.com/LazyShpee/sharerenamer
Choose ‘download’ and put the files in the apps subfolder of nextcloud, make sure they are in a folder called ‘sharerenamer’ and all in there, not in another subfolder in there (like ‘master’). Then make sure the files are owned by the webserver user (like, www-run or something) and you can enable the app in the app interface.
https://github.com/nextcloud/server/issues/4536
项目已经更新至:
https://github.com/DecaTec/sharerenamer/
https://apps.nextcloud.co ...
WinSCP 获取 sudo 权限
查看 sftp 路径
12cat /etc/ssh/sshd_config|grep sftpSubsystem sftp /usr/lib/openssh/sftp-server
编辑 sudo
12345sudo visudo# Allow members of group sudo to execute any command%sudo ALL=(ALL:ALL) ALLtojo ALL=NOPASSWD: /usr/lib/openssh/sftp-server
可选
Windows 远程桌面同时查看内容(shadow)
远程桌面连接中重复使用同一用户登录时,默认情况下新连接会顶掉旧连接。如果允许同一用户多重登陆,则会建立多个 session,并存。但多个 session 之间内容并不共享。所以需要同时查看同一 session 的桌面时,就需要使用 shadow 方式查看已经连接的桌面。
以下操作均在 rdp 服务端进行
1 允许静默连接组策略Computer Configuration\Administrative Templates\Windows Components\Remote Desktop Services\Remote Desktop Session Host\Connections\修改 Set rules for remote control of Remote Desktop Services user sessions 为 Full control without user's permission
2 查看已经登陆的用户与 sessionqwinsta 或者 query session
3 连接到对应 session管理员权限
1mstsc /shadow:< ...