Posted
Filed under 공부한 것들
1. Base64란?

Base64는 8비트 이진 데이터(이미지, 실행 파일 등)를 ASCII 영역의 64개 문자만 사용하여 텍스트로 변환하는 인코딩 방식입니다.

쉽게 말해, 컴퓨터만 이해하는 복잡한 이진 데이터를 **"전 세계 어디서나 통용되는 안전한 문자 포장지"**로 감싸는 것이라고 이해하면 됩니다.

왜 굳이 변환하나요?

과거의 네트워크 시스템(특히 이메일 전송 표준인 SMTP)은 오직 7비트 ASCII 문자만 처리할 수 있었습니다. 여기에 한글이나 이미지 같은 8비트 데이터를 그대로 보내면 시스템이 해석하지 못해 데이터가 깨지거나 전송이 중단되는 사고가 발생했죠. Base64는 이런 데이터 깨짐 현상을 방지하기 위해 등장했습니다.

2. Base64의 핵심 원리: "3-to-4" 규칙

인코딩 4단계 (예: "Man" 변환하기)

  1. 2진수 변환: 문자 "Man"을 ASCII 코드로 바꾼 뒤 이진수로 나열합니다.

    • M(77) → 01001101 / a(97) → 01100001 / n(110) → 01101110

  2. 6비트 분할: 총 24비트의 데이터를 앞에서부터 6비트씩 4묶음으로 자릅니다.

    • 010011 | 010110 | 000101 | 101110

  3. 10진수 치환: 자른 6비트 묶음을 다시 숫자로 바꿉니다.

    • 19 | 22 | 5 | 46

  4. 문자 매핑: 아래의 Base64 색인표에서 숫자에 해당하는 문자를 찾습니다.

    • T | W | F | u

결과: "Man"은 Base64로 인코딩하면 **"TWFu"**가 됩니다!


3. 끝에 붙는 = 기호는 무엇인가요?
Base64는 데이터를 3바이트(24비트) 단위로 처리하는데, 원본 데이터가 1바이트나 2바이트만 남아서 딱 떨어지지 않을 때가 있습니다. 이때 비어있는 자리를 0으로 채우고, 보는 사람에게 "여기는 원래 데이터가 없던 자리야"라고 알려주기 위해 =을 붙이는 것입니다.

 

2026/02/17 19:38 2026/02/17 19:38
Posted
Filed under 공부한 것들/기타

가장 많이 쓰는 한 줄 (그대로 붙여넣기)

robocopy "C:\원본\폴더" "E:\외장SSD\대상\폴더" /E /MT:10 /COPY:DAT /DCOPY:T
  • /E : 하위 폴더 전부 + 빈 폴더까지 복사
  • /MT:10 : 10개 스레드로 동시에 복사(멀티스레드)
  • /COPY:DAT : 데이터/속성/시간만 복사(권한은 제외)
  • /DCOPY:T : 폴더의 시간 정보도 유지
추천 값
• HDD → 외장 SSD : /MT:8~12
• SSD ↔ SSD : /MT:16~32 (상황 봐서 올리기)

자주 쓰는 상황별 예시

1) HDD → 외장 SSD (안정적·빠르게)

robocopy "C:\원본" "E:\대상" /E /MT:10 /R:2 /W:2 /COPY:DAT /DCOPY:T

/R:2 /W:2 : 실패 시 2회 재시도, 2초 간격

2) SSD ↔ SSD “동기화”(소스와 똑같이 맞추기)

robocopy "D:\SRC" "G:\DST" /MIR /MT:32 /R:2 /W:2 /COPY:DAT /DCOPY:T
주의 /MIR는 대상에서 소스에 없는 파일을 삭제합니다. 먼저 드라이런으로 점검하세요.
robocopy "D:\SRC" "G:\DST" /MIR /L /NP

3) 변경된 것만 빠르게(증분 느낌)

robocopy "C:\SRC" "E:\DST" /E /MT:16 /XO /XN /XC /R:2 /W:2 /COPY:DAT /DCOPY:T

4) 네트워크 드라이브(중간에 끊겨도 이어받기)

robocopy "\\SERVER\share\SRC" "E:\DST" /E /Z /MT:16 /R:3 /W:5 /COPY:DAT /DCOPY:T

/Z : 재시작 가능한 모드(네트워크 불안정 시 유용)

숨김/시스템 파일도 복사되나요?

네, 기본적으로 전부 복사됩니다(별도로 빼라는 옵션을 주지 않으면).

대상에서 숨김/시스템 속성을 지우고 싶다면:

robocopy "C:\SRC" "E:\DST" /E /MT:10 /COPY:DAT /DCOPY:T /A-:SH

/A-:SH : 복사된 파일·폴더의 숨김(H)/시스템(S) 속성 제거

링크/정션으로 무한 루프가 걱정되면 /XJ(정션 제외) 옵션을 고려하세요.

로그 파일 없이, 화면도 조용하게

로그를 남기지 않으려면 /LOG 옵션을 쓰지 않으면 됩니다. 출력도 최소화하려면:

robocopy "C:\SRC" "E:\DST" /E /MT:10 /R:2 /W:2 /COPY:DAT /DCOPY:T /NP /NFL /NDL

완전 무소음은 끝에 >nul (또는 >nul 2>&1) 추가

어디에서 실행하나요?

  • CMD(관리자) : 시작 메뉴에서 “명령 프롬프트” → 우클릭 → 관리자 권한으로 실행
  • Windows 터미널(관리자) 도 동일하게 사용 가능
  • 명령어는 CMD/PowerShell 둘 다 똑같이 됩니다

마지막 체크리스트

  • 대량 삭제 위험이 있는 /MIR는 꼭 /L 로 미리 점검
  • 경로가 너무 길면 \\?\C:\... 형태 고려
  • 외장 SSD가 exFAT이면 권한 정보가 안 맞을 수 있으니 /COPY:DAT 권장
  • 최적 속도는 PC마다 다릅니다. /MT 값을 8, 12, 16…으로 바꿔 짧게 테스트

 

2025/08/09 13:28 2025/08/09 13:28