기록

[GPT가 알려주는] adb shell sync 본문

잡동사니/GPT가 알려주는

[GPT가 알려주는] adb shell sync

heylo 2025. 9. 17. 11:16

adb shell sync 는 디바이스 안에서 sync 시스템콜을 실행해서, 방금 쓴 파일(데이터/메타데이터/SELinux xattr)이 플래시에 완전히 기록되도록 커널의 디스크 캐시를 강제로 비우는(flush) 명령이에요.

왜 쓰냐면:

  • adb push 직후엔 쓰기가 캐시에 남아 있을 수 있음 → 바로 재부팅/전원꺼짐이면 미기록·손상 위험
  • 특히 /vendor/lib64 같은 시스템/벤더 파티션은 캐시/저널링 때문에 지연 기록이 흔함
  • restorecon으로 바꾼 SELinux 컨텍스트(xattr) 도 파일시스템 메타데이터라 확실히 디스크에 반영시키는 게 안전

즉, “지금까지의 쓰기 다 디스크에 박고 재부팅할게” 라는 안전장치라고 보면 됩니다.
꼭 필수는 아니어도(대부분은 곧 쓰여요) 바로 재부팅할 때는 습관적으로 넣는 걸 추천합니다.

참고로,

  • adb shell sync = 디바이스에서 sync 실행(지금 우리가 쓰는 것)
  • adb sync(shell 없이) = 호스트에서 특정 디렉토리를 동기화/업로드하는 다른 명령 (전혀 별개)