- Drive에서 관리하는 메타데이터(이름, 태그, indexableText, 썸네일)와 다른 Google Cloud 서비스에 속하는 메타데이터가 무엇인지 알아보세요.
- Drive API를 사용하여 메타데이터를 쿼리하고 조정하고, 파일을 업로드하기 전에 EXIF 및 내장 데이터를 정리합니다.
- 제한 사항과 규칙(축소판, 색인 가능 텍스트, 확장 프로그램)을 준수하고 로컬 REST 테스트를 위해 gcloud로 인증합니다.
파일의 메타데이터를 제어하고 싶습니까? 구글 드라이브 어디서부터 시작해야 할지 모르시겠어요? 여기서 자세히 설명해 드리겠습니다. Google 드라이브에서 메타데이터를 효과적이고 안전하게 제거하는 방법 (업로드된 파일의 메타데이터). 또한 Google에서 파일 이름, 크기 및 권한에 어떤 제한을 두는지 알려드립니다.
이 가이드는 Google Drive의 메타데이터와 관련하여 무엇을 "삭제"할 수 있고 무엇을 "삭제"할 수 없는지에 대한 완전하고 현실적인 이해를 제공합니다.
Drive에서 변경하거나 "삭제"할 수 있는 항목
이것들은 메타데이터 Google Drive에 업로드된 파일에서 제거할 수 있는 항목:
Nombre y extensión: API를 통해 파일을 생성할 때는 이름 필드에 "cat.jpg"와 같이 확장자를 지정하는 것이 좋습니다. 확장자를 지정하지 않으면 드라이브가 MIME 유형에서 확장자를 유추할 수 있지만, 직접 정의하는 것이 더 좋습니다. 이후 응답에서는 읽기 전용 fileExtension이 표시될 수 있으며, 확장자는 name에서 입력됩니다. 사용자가 파일을 다운로드하면 드라이브는 제목(및 확장자)을 기반으로 최종 이름을 컴파일합니다.
- 인덱싱 가능한 텍스트(contentHints.indexableText): Drive는 기본적으로 일반적인 문서 및 유형(PDF, OCR 지원 이미지 등)을 색인합니다. 앱에서 다른 형식(그림, 동영상, 바로가기)을 저장하는 경우, 색인 가능한 텍스트를 제공하여 검색 기능을 향상시킬 수 있습니다. 이 텍스트는 HTML로 처리됩니다. 태그가 포함된 문자열을 전달하면 태그 속성이 아닌 텍스트 콘텐츠가 색인됩니다. contentHints.indexableText의 크기 제한은 128KB이며, 저장할 때마다 업데이트하고 파일과 관련성이 있도록 유지하는 것이 좋습니다.
- 썸네일(contentHints.thumbnail): 드라이브는 다양한 유형의 썸네일을 생성하지만, 자동으로 생성되지 않는 형식의 경우 파일을 만들거나 업데이트할 때 직접 업로드할 수 있습니다. 이미지는 URL 보안 Base64 및 해당 MIME 유형으로 설정해야 합니다. 주요 규칙: 지원되는 형식은 PNG, GIF 또는 JPG입니다. 권장 너비는 1600px(최소 220px), 최대 크기는 2MB입니다. 파일 콘텐츠가 변경되면 썸네일은 무효화되지만, 메타데이터는 변경되지 않습니다.
- 썸네일 접근: ThumbnailLink 필드는 앱이 파일을 읽을 수 있는 권한이 있는 경우에만 접근할 수 있는 짧은 URL을 반환합니다(공개되지 않은 경우 자격 증명을 사용하여 요청해야 함). 특정 파일이나 유형별로 필터링된 목록을 쿼리할 수 있습니다.
- 라벨: Drive에서는 파일에 라벨을 연결할 수 있습니다. 라벨을 찾으려면 files.listLabels를 사용하고, 라벨을 수정하려면 해당 labelId와 fileId를 참조해야 합니다. 이 메커니즘은 콘텐츠를 건드리지 않고도 분류하고, 필요한 경우 원치 않는 분류를 "정리"하는 데 유용합니다.
Google Drive에서 메타데이터 삭제: 파일 자체의 "숨겨진" 메타데이터
Google Drive에서 메타데이터(예: 사진의 EXIF 정보 또는 PDF에 포함된 데이터)를 삭제할 수 있는 마법의 버튼은 없습니다. Drive는 자체적으로 메타데이터를 관리하지만, 파일 내 메타데이터는 해당 메타데이터를 만든 도구에 따라 달라집니다.
권장되는 관행은 다음과 같습니다. Drive에 업로드하기 전에 파일을 정리하세요. 이미지나 문서 속성에서 EXIF 데이터를 제거하는 시스템 도구나 특수 앱을 사용합니다. 이렇게 하면 드라이브에 저장한 콘텐츠가 "삭제된" 상태로 도착합니다.
이미 내장된 메타데이터가 포함된 파일이 업로드되어 있는 경우 Google Drive에서 메타데이터를 제거하는 대신 다음 단계를 따르는 것이 더 편리합니다. 다운로드, 정리 및 재업로드, 해당되는 경우 원본을 대체합니다. PDF나 이미지의 경우, 저자, 위치 또는 편집 기록을 보호하려는 경우 일반적으로 이러한 방식이 사용됩니다.
Drive의 특정 부분에 대해서는 이름, 레이블 및 콘텐츠 조정에 집중하세요. 힌트(인덱싱 가능한 텍스트/축소판) 귀하가 제어할 수 있는 항목입니다. 액세스 권한도 관리하면 표시되는 메타데이터(예: 읽기 권한이 있는 사용자가 액세스할 수 있는 썸네일 링크)의 노출도 줄일 수 있습니다.
잊지 마세요 Drive 메타데이터만 변경하면 EXIF나 내부 속성은 제거되지 않습니다. 따라서 귀하의 전략은 Drive에서 제공하는 세부적인 메타데이터 관리와 파일 사전 정리를 결합해야 합니다.
Google Cloud에서 혼동하기 쉬운 메타데이터: VM, gcloud 및 제한
Google Cloud를 사용하면 많은 것을 볼 수 있습니다. 실제로 Drive가 아닌 Compute Engine이나 Cloud Storage를 지칭하는 "메타데이터"에 대한 가이드입니다. 그렇더라도, 조사할 때 혼동되지 않도록 이러한 점을 알아두는 것이 좋습니다.
기본 gcloud CLI 구성
Google Cloud CLI를 설치한 후 다음을 사용하여 초기화합니다.
gcloud init
다음 사항이 최신 버전인지 확인하는 것이 중요합니다.
gcloud components update
외부 ID 공급자를 사용하는 경우 gcloud를 사용하기 전에 페더레이션 ID로 로그인하세요. 특히 로컬 환경에서 REST 호출을 위해 인증하려는 경우 더욱 그렇습니다. REST API 샘플은 gcloud에서 구성한 사용자 인증 정보를 사용할 수 있습니다.
VMs
권한 및 역할(Compute Engine): VM에서 사용자 지정 메타데이터를 추가, 업데이트 또는 삭제하려면 적절한 IAM 권한이 필요합니다. 일반적인 예는 다음과 같습니다.
- VM이 서비스 계정을 사용하는 경우: 허가
iam.serviceAccounts.actAs서비스 또는 프로젝트 계정에서. - Metadatos del proyecto:
compute.projects.getycompute.projects.setCommonInstanceMetadata. - 지역별 메타데이터:
compute.instanceSettings.getycompute.instanceSettings.update해당 분야에 대한. - 인스턴스 메타데이터:
compute.instances.getycompute.instances.setMetadata.
Limitaciones
Google Drive에서 메타데이터를 제거하려고 할 때 발생한 주요 제한 사항은 다음과 같습니다.
- 크기 제한(Compute Engine): 메타데이터 항목의 총 크기는 512KB로 제한됩니다. 각 키는 128바이트로, 각 값은 256KB로 제한됩니다. 예를 들어 ssh-keys 키를 사용하여 256KB 제한을 초과하는 경우, 정리하기 전까지는 키를 더 추가할 수 없습니다.
- Mayúsculas y minúsculas: 키는 대소문자를 구분하며, 부울 값을 제외한 값도 대소문자를 구분합니다. 영역형에서는 대소문자만 다른 두 개의 키(zonal-metadata-key 대 ZONAL-METADATA-KEY)를 생성할 수 없습니다.
- 지역별 메타데이터: gcloud 또는 REST를 사용하여 설정하거나 제거합니다. SSH 키(ssh-keys)에 대한 영역 값은 정의할 수 없습니다. 논리적 project/ 디렉터리에 동일한 키에 대한 프로젝트 수준 값과 영역 값이 있는 경우, 해당 영역에서는 영역 값이 우선합니다.
- 지원되는 부울 값: TRUE/FALSE 외에도 Y/Yes/1, N/No/0을 사용할 수 있습니다(대소문자 구분 없음).
- 구성 범위(Compute Engine):
- Proyecto: 프로젝트의 모든 VM에 공통적인 메타데이터입니다.
- Zonal: 특정 영역의 모든 VM에 영향을 미치고 프로젝트 값을 재정의할 수 있는 항목입니다.
- Instancia: 특정 VM(생성 중이거나 이미 존재함)에 대한 메타데이터입니다.

Drive의 썸네일, 인덱싱 및 메타데이터 검색(REST 및 모범 사례)
이제 Google 드라이브에서 메타데이터를 삭제할 때 썸네일이 어떤 역할을 하는지 살펴보겠습니다. 또한 썸네일을 복구하는 가장 좋은 방법도 알아보겠습니다.
- 온프레미스 REST 인증: 머신에서 REST 예제를 테스트하는 경우 gcloud에서 구성된 사용자 인증 정보를 사용하세요. 이렇게 하면 Drive API 호출 시 이미 설정된 ID와 권한이 적용됩니다.
- 사용자 정의 썸네일 업로드: contentHints.thumbnail에 URL 보안 Base64 이미지와 올바른 mimeType, 두 필드를 설정합니다. 드라이브에서 자동으로 썸네일을 생성할 수 있는 경우, 드라이브 자체 썸네일을 사용하고 사용자가 생성한 썸네일은 건너뜁니다. 그렇지 않은 경우 사용자가 제공한 썸네일을 사용합니다.
Drive의 썸네일을 위한 주요 규칙:
- 형식: PNG, GIF 또는 JPG.
- 권장 너비: 1600px(최소 220px).
- Tamaño máximo: 2 MB.
- 여전히 관련성이 있다면 저장할 때마다 썸네일을 업데이트합니다.
중요한 것 무효화: 파일 내용이 변경되면 썸네일은 무효화되지만, 메타데이터는 변경되지 않습니다. 태그나 이름만 변경하는 경우, 파일을 수정하지 않는 한 새 썸네일은 생성되지 않습니다.
인덱싱 가능한 텍스트
유행어로 검색을 "속이려" 하지 마세요. 사용자가 해당 파일을 검색할 만한 개념과 용어를 파악하세요. 128KB 제한을 확인하세요. 내용이 크게 변경될 때마다 업데이트하세요.
일관된 이름과 확장자를 적용하세요가능하면 업로드할 때 이름에 확장자를 포함하세요. 확장자가 없으면 드라이브에서 MIME을 통해 확장자를 유추합니다. 이름을 명확하게 지정하면 모호성을 방지하고 확장자 검색을 더 쉽게 할 수 있습니다.
드라이브의 태그
레이블을 수정하려면 필요한 식별자를 기록해 두세요. 레이블의 labelId와 파일의 fileId가 필요합니다. 먼저 files.listLabels를 사용하여 레이블을 나열한 다음, 해당 변경 사항을 대상 파일에 적용할 수 있습니다.
// Al modificar etiquetas de un archivo en Drive:
// - labelId: identificador de la etiqueta a cambiar
// - fileId: identificador del archivo al que aplicas la etiqueta
// Usa files.listLabels para localizarlas antes de actualizar.
이 점을 명심하세요. Drive가 초점이기는 하지만 많은 개발이 Drive를 Cloud Storage나 다른 서비스와 결합합니다. 따라서 객체 속성을 검사하기 위한 저장소의 예를 볼 수 있습니다.
// Ejemplo en Go para obtener atributos de un objeto en Cloud Storage (no Drive)
// e imprimir metadatos como ContentType, CacheControl, MD5, etc.
// Útil si tu flujo sube primero a Storage y luego a Drive.
import (
"context"
"fmt"
"io"
"time"
"cloud.google.com/go/storage"
)
func getMetadata(w io.Writer, bucket, object string) (*storage.ObjectAttrs, error) {
ctx := context.Background()
client, err := storage.NewClient(ctx)
if err != nil { return nil, fmt.Errorf("storage.NewClient: %w", err) }
defer client.Close()
ctx, cancel := context.WithTimeout(ctx, 10*time.Second)
defer cancel()
o := client.Bucket(bucket).Object(object)
attrs, err := o.Attrs(ctx)
if err != nil { return nil, fmt.Errorf("Object(%q).Attrs: %w", object, err) }
fmt.Fprintf(w, "Bucket: %v\n", attrs.Bucket)
fmt.Fprintf(w, "CacheControl: %v\n", attrs.CacheControl)
fmt.Fprintf(w, "ContentDisposition: %v\n", attrs.ContentDisposition)
fmt.Fprintf(w, "ContentEncoding: %v\n", attrs.ContentEncoding)
fmt.Fprintf(w, "ContentLanguage: %v\n", attrs.ContentLanguage)
fmt.Fprintf(w, "ContentType: %v\n", attrs.ContentType)
fmt.Fprintf(w, "Crc32c: %v\n", attrs.CRC32C)
fmt.Fprintf(w, "Generation: %v\n", attrs.Generation)
fmt.Fprintf(w, "KmsKeyName: %v\n", attrs.KMSKeyName)
fmt.Fprintf(w, "Md5Hash: %v\n", attrs.MD5)
fmt.Fprintf(w, "MediaLink: %v\n", attrs.MediaLink)
fmt.Fprintf(w, "Metageneration: %v\n", attrs.Metageneration)
fmt.Fprintf(w, "Name: %v\n", attrs.Name)
fmt.Fprintf(w, "Size: %v\n", attrs.Size)
fmt.Fprintf(w, "StorageClass: %v\n", attrs.StorageClass)
fmt.Fprintf(w, "TimeCreated: %v\n", attrs.Created)
fmt.Fprintf(w, "Updated: %v\n", attrs.Updated)
fmt.Fprintf(w, "Event-based hold enabled? %t\n", attrs.EventBasedHold)
fmt.Fprintf(w, "Temporary hold enabled? %t\n", attrs.TemporaryHold)
fmt.Fprintf(w, "Retention expiration time %v\n", attrs.RetentionExpirationTime)
fmt.Fprintf(w, "Custom time %v\n", attrs.CustomTime)
fmt.Fprintf(w, "Retention: %+v\n", attrs.Retention)
fmt.Fprintf(w, "\n\nMetadata\n")
for key, value := range attrs.Metadata {
fmt.Fprintf(w, "\t%v = %v\n", key, value)
}
return attrs, nil
}
Google 드라이브에서 파일 삭제와 메타데이터 삭제 비교
Si lo que quieres es 드라이브에서 파일 삭제소유자는 웹에서 마우스 오른쪽 버튼을 클릭하고 '휴지통으로 이동'을 선택하여 파일을 휴지통으로 옮길 수 있습니다. 소유자가 다른 사람인 경우, 보기에서 파일을 "제거"만 할 수 있으며, 다른 사람은 여전히 해당 파일을 볼 수 있습니다.
을 위한 파일을 영구적으로 삭제하려면 휴지통을 비우거나 영구 삭제 옵션을 사용해야 합니다. 이 경우에는 복구할 수 없습니다. 이 작업만으로는 다른 파일의 "메타데이터가 제거"되는 것이 아니라 해당 항목에만 적용됩니다.
Google Drive에서 본인이 소유하지 않은 파일의 메타데이터를 삭제할 수 없습니다. 해당 계정의 제어권은 계정을 만든 사람이나 조직 내에서 더 높은 권한을 가진 사람에게 있기 때문입니다. 이 경우, 액세스 권한 또는 공개 상태를 해제하면 됩니다.
메타데이터와 관련해서: 파일을 삭제하면 해당 파일의 메타데이터도 함께 Drive에 삭제됩니다. 하지만 시스템에 남아 있는 다른 사본의 메타데이터나 다른 문서에 내장된 메타데이터에는 영향을 미치지 않습니다.
위의 모든 내용을 통해 이제 잘 구별할 수 있습니다. 드라이브가 제어하는 메타데이터(이름, 태그, 검색 힌트 및 썸네일)REST를 통해 쿼리하는 방법, 업로드하기 전에 내장된 데이터를 정리하기 위한 모범 사례, 다른 맥락에서 "메타데이터"에 대해 설명하는 Google Cloud 문서를 접할 때 적용되는 제한 및 권한에 대해 설명합니다.
다양한 디지털 미디어 분야에서 10년 이상의 경험을 보유한 기술 및 인터넷 문제 전문 편집자입니다. 저는 전자상거래, 커뮤니케이션, 온라인 마케팅 및 광고 회사에서 편집자이자 콘텐츠 제작자로 일했습니다. 나는 또한 경제, 금융 및 기타 분야 웹사이트에 글을 썼습니다. 내 일은 또한 나의 열정이다. 이제 내 기사를 통해 Tecnobits, 저는 기술 세계가 우리 삶을 개선하기 위해 매일 제공하는 모든 뉴스와 새로운 기회를 탐색하려고 노력합니다.