피드로 돌아가기
Dev.toDevOps
원문 읽기
Browser File Manager의 Binary Corruption 해결 및 SSH 기반 배포 자동화
'Command not found' — and what's really blocking WP-CLI
AI 요약
Context
WP-CLI를 Shared Host에 설치하는 과정에서 파일 존재 및 권한 설정이 정상임에도 'command not found' 오류가 발생하는 현상 분석. 브라우저 기반 File Manager의 MIME detection 오류로 인해 Binary 파일이 Text로 오인되어 업로드 중 바이트 변형이 발생하는 구조적 결함 확인.
Technical Solution
- PHAR 내부의 SHA1 Signature 검증 메커니즘을 통한 Binary 무결성 훼손 지점 식별
- Browser-based Upload의 Line-ending 변환 및 Character-encoding 정규화로 인한 데이터 오염 경로 파악
- 로컬 PC를 거치지 않고 Server-to-Server 전송을 수행하는 curl 기반 Direct Download 방식 채택
- 기존 파일의 Timestamp 기반 Backup 및 신규 PHAR 배포를 결합한 Idempotent One-liner 스크립트 설계
- Exit Status 기반의 최종 실행 검증 프로세스를 통해 Hash 비교의 한계를 극복한 무결성 확인 로직 구현
실천 포인트
1. Binary 파일 전송 시 Browser File Manager 사용을 금지하고 SFTP 또는 SSH 기반 도구 활용
2. 배포 스크립트 설계 시 기존 파일의 원자적 백업(Atomic Backup) 및 Idempotency 보장 로직 포함
3. 단순 파일 해시(Hash) 비교를 넘어 실제 런타임의 Exit Status를 통한 최종 검증 단계 구축