Linux 文件系统中的权限

常规权限 读权限(r) 对文件来说, 就是文件的读取权限, 如 cat . 对目录来说, 就是查询目录下文件结构的权限, 如 ls . 写权限(w) 对文件来说, 就是文件的写入权限, 如重定向输出到这个文件. 对目录来说, 就是修改此目录下的文件结构的权限, 包括创建文件/删除文件/移动文件. 执行权限(x) 对文件来说, 就是文件的执行权限. 对于目录来说, 就是进入此目录的权限, 并控制访问此目录中的其他文件或目录的权限,…

为单一命令设置代理环境变量的终端函数

实际应用 需求 一个命令行函数 将其参数作为命令运行 为运行的命令设置环境变量, 同时不影响原本的 shell 环境变量 结果 function proxyenv { ( proxy_dest="http://localhost:8888" proxy=${proxy_dest} http_proxy=${proxy_dest} https_proxy=${proxy_dest} PROXY=${proxy_dest} HTTP_PROXY=${proxy_dest} HTTPS_PROXY=${proxy_dest} export proxy http_proxy https_proxy PROXY…

2021 年 2 月份的玩耍

随便写写关于 vsftpd 几个可能导致本地用户无法登录的问题 PAM 服务中检测了用户的 shell 的可用性 PAM 服务中与用户可用 shell 的检测相关条目的一般都是下面这种样子 auth required pam_shells.so 当添加本地账户为系统账户时(用户的登录 shell 为 /sbin/nologin)时, 这个条目的检测会不通过, 导致用户验证失败, 且此时的报错信息与普通的用户密码不正确别无二致. PAM 服务中删除了过多的条目, 导致验证不通过 (存疑)…

部署 davical 到 apache2

缘起于 radicale 的 well-known 自动配置不能与 thunderbird 的 tbsync 插件和平地工作, 以及使用 python 实现的 radicale 在过去的半年中失去响应了 3 次, 所以决定找一个可能更稳定一些, 更加通用一些的支持 caldav 的服务程序, 最终选定了 davical . 这里将在 debian…

webdav 的挂载

webdav 挂载到本地文件系统有优有劣, 好处是权限更加开放, 使用也比较方便, 但缺点是在需要同步时受网络影响较大, 所以建议不要直接打开挂载到本地目录的 webdav 文件, 尤其是 GUI 会卡顿较长时间. 使用 webdav 的本意是同步一下 keepass 密码格式的数据库, 摆脱所有密码都一样的困扰, 于是采取了 webdav 挂载到PC本地目录, 安卓使用 FolderSync 进行同步的解决方案, 实际体验不太令人满意, PC打开文件都需要等待少则几秒的下载文件的时间,…

nginx 配置 webdav

本质上, webdav就是从http拓展了几条指令, 从而可以用来管理文件系统或进行文件分享. 重新编译 nginx 原本 nginx 配置 webdav 很简单, 只要在配置文件中加入关于这个模块的配置就好了, 可惜官方文档中轻描淡写说了下面一句话, 然后 webdav 的PROPFIND,OPTIONS,LOCK,UNLOCK 几条命令就不被支持了, 于是就需要给 nginx 加入新的 module . WebDAV clients that require…

KVM 安装

本篇总结自how-to-install-virtual-machine-manager-kvm-in-manjaro-and-arch-linux. 检查硬件支持 LC_ALL=C lscpu | grep Virtualization 以上语句应当得到Virtualization: VT-x或者Virtualization: AMD-V的结果, 否则硬件不支持, 请前往BIOS设置虚拟化选项. 检查内核支持 运行zgrep CONFIG_KVM /proc/config.gz, 得到的结果应该是CONFIG_KVM_INTEL或者CONFIG_KVM_AMD的值为m或y. 以下是样例输出. CONFIG_KVM_GUEST=y # CONFIG_KVM_DEBUG_FS is not set CONFIG_KVM_MMIO=y…

树莓派 Arch Base 系统无头配置 wifi

开门见山 本文讲解了基于ArchLinux的发行版在没有显示器/键盘/网线, 只有读卡器/一台电脑/WIFI的情况下配置无线连接的事. 细节讲解在后边. 在我为了无头配置wifi而焦头烂额的时候, 我终于看到了这么一篇博文, 而博文中有这样一番代码. #!/bin/sh set -e if [[ $# -ne 3 ]] ; then echo "Usage: $0 </dev/disk> <ssid> <passphase>" exit…