Todos los productos
Search
Centro de documentos

Object Storage Service:FAQ

Última actualización: Sep 03, 2026

Este tema describe los problemas comunes al usar ossutil y sus soluciones.

Nota

A partir de ossutil v1.6.16, puede usar ossutil directamente como nombre del comando, sin importar el sistema operativo. Para versiones anteriores a la v1.6.16, debe usar el nombre del ejecutable específico del sistema operativo. Para obtener más información, consulte ossutil command reference.

¿ossutil es compatible con la firma V4?

Sí, ossutil V1.7.12 y versiones posteriores son compatibles con la firma V4. Para obtener más información, consulte Include a V4 signature in the Authorization header (recommended).

ossutil agrega las opciones --sign-version y --region a sus comandos existentes. El siguiente comando crea un bucket en la región China (Hangzhou) mediante la firma V4:

./ossutil64 --sign-version v4 --region cn-hangzhou mb oss://examplebucket

¿Se admite la sincronización de objetos para objetos de acceso poco frecuente y estándar?

Sí, ossutil admite la sincronización de objetos tanto para objetos de acceso poco frecuente (IA) como para objetos estándar. Para obtener más información, consulte Overview.

¿Cómo evito sobrescribir un objeto con el mismo nombre?

Agregue la opción -u/@parmname a su comando de ossutil. Con esta opción, ossutil no sobrescribe un objeto existente que tenga el mismo nombre.

¿Por qué aparece un mensaje de 'skip' al cargar un objeto con la opción -u?

Este es un comportamiento esperado. Cuando usa la opción -u/@parmname, ossutil compara la hora de última modificación del objeto que se carga con la de cualquier objeto existente con el mismo nombre en el bucket de destino. Si la hora de última modificación del objeto existente es igual o posterior a la del objeto que se carga, ossutil lo omite. El mensaje de omisión es normal cuando utiliza la opción -u/@parmname para cargar un objeto.

Si el objeto en el bucket es la versión que desea conservar, puede ignorar el mensaje de omisión de forma segura.

¿Por qué obtengo un error HTTP 403 al restaurar un objeto?

Un error HTTP 403 en la restauración de un objeto tiene una de dos causas:

  • El usuario de Resource Access Management (RAM) que ejecuta la operación carece de los permisos obligatorios.

  • OSS ha bloqueado el objeto debido a contenido prohibido.

Soluciones:

  • Permisos insuficientes: Otorgue los permisos obligatorios al usuario de RAM.

  • Infracción de contenido: Elimine o ignore el objeto bloqueado.

¿Por qué no puedo eliminar un bucket que parece vacío tras ejecutar el comando ls?

El comando ls/@cmdname sin opciones no enumera las partes de cargas multiparte incompletas ni las versiones anteriores de objetos en buckets con control de versiones. Si un bucket contiene alguno de estos elementos, no está verdaderamente vacío y no se puede eliminar solo con rm/@cmdname.

Para eliminar el bucket, utilice uno de los siguientes enfoques:

Aviso

Los buckets y objetos eliminados no se pueden restaurar. Tenga precaución al ejecutar estos comandos.

  • Elimine primero las partes y las versiones anteriores, y luego elimine el bucket.

    1. Elimine las partes de cargas multiparte incompletas y todas las versiones de objetos.

      • Enumere y elimine las partes de cargas multiparte incompletas:

        ./ossutil64 ls oss://bucket1 -m
        ./ossutil64 rm -m oss://bucket1 -r
      • Enumere y elimine todas las versiones de objetos (para buckets con control de versiones):

        ./ossutil64 ls oss://bucket1 --all-versions
        ./ossutil64 rm oss://bucket1 --all-versions -r
    2. Elimine el bucket.

      ./ossutil64 rm oss://bucket1 -b
  • Fuerce la eliminación del bucket en un solo comando.

    • Si el control de versiones está deshabilitado:

      ./ossutil64 rm oss://bucketname -abrf
    • Si el control de versiones está habilitado:

      ./ossutil64 rm oss://bucketname -abrf --all-versions

¿Por qué el progreso de carga o descarga supera el 100%?

Para objetos mayores de 100 MB, ossutil utiliza la carga reanudable o la descarga reanudable de forma predeterminada y almacena el archivo de punto de control en un directorio .ossutil_checkpoint/@filepath. Cuando varias instancias de ossutil se ejecutan simultáneamente en la misma máquina, comparten este directorio de punto de control predeterminado. Cuando una instancia finaliza y elimina el directorio .ossutil_checkpoint/@filepath, corrompe el estado del punto de control de otras transferencias en curso. Esto provoca que sus contadores de progreso muestren valores incorrectos (como superar el 100%) y que las transferencias fallen.

Para solucionar esto:

  • Detenga la tarea con errores y reinicie la carga o descarga.

  • Al ejecutar tareas simultáneas, asigne un directorio de punto de control único a cada una mediante la opción --checkpoint-dir/@parmname con el comando cp/@cmdname:

    ./ossutil64 cp oss://bucket1/myphoto.jpg  /dir  --checkpoint-dir checkpoint

¿Por qué se registran varias solicitudes al descargar un solo objeto?

Dos comportamientos explican las entradas adicionales en el registro:

  • Reintentos automáticos: ossutil reintenta automáticamente las solicitudes con errores o excepcionales, hasta 10 veces de forma predeterminada.

  • Solicitudes de rango: Para objetos mayores de 100 MB, ossutil descarga el objeto por partes mediante solicitudes de rango. Cada parte genera una entrada de registro independiente.

¿Qué debo hacer si se interrumpe la descarga de un objeto grande?

  1. Causas comunes de interrupciones en la descarga:

    • Tiempo de espera agotado o desconexión debido a una descarga prolongada.

      Factores contribuyentes: limitación del ancho de banda de red y baja estabilidad de la red.

    • La descarga devuelve un código de error de fin de archivo (EOF) y la tarea se interrumpe.

      Esto generalmente se debe a una conexión perdida o a una velocidad de lectura/escritura del disco que no puede seguir el ritmo de la descarga.

  2. Solución: Utilice la descarga reanudable.

    • Especifique un directorio de punto de control mediante la opción --checkpoint-dir. Si la transferencia se interrumpe, ossutil la reanuda desde donde se detuvo utilizando el archivo de punto de control guardado.

      ./ossutil64 cp examplefile.txt oss://examplebucket/desfolder/ --checkpoint-dir localfolder/
    • Para obtener más información sobre --checkpoint-dir, consulte Command syntax.

¿Por qué obtengo el error Error: accessKeyID and ecsUrl are both empty?

ossutil no pudo encontrar un archivo de configuración en su directorio principal.

Para resolver esto, utilice cualquiera de los siguientes enfoques:

  • Cree un archivo de configuración en su directorio principal antes de ejecutar comandos de ossutil. Para obtener más información, consulte Install ossutil.

  • Pase la ruta a su archivo de configuración explícitamente con cada comando mediante la opción -c:

    ./ossutil64 cp examplefile.txt oss://examplebucket/destfolder/ -c /home/admin/.ossutilconfig

¿Por qué se agrega charset=utf-8 al Content-Type de los objetos cargados?

ossutil determina el Content-Type de un objeto buscando el tipo de Extensiones Multipropósito de Correo de Internet (MIME) correspondiente a la extensión del archivo mediante la biblioteca MIME estándar de Go. Esta biblioteca agrega automáticamente charset=utf-8 a los tipos MIME basados en texto. Por ejemplo, un archivo .htm obtiene un Content-Type de text/html; charset=utf-8.

Actualice ossutil a la V1.7.14 o posterior para corregir esto. Actualícelo reinstalando la herramienta. Para obtener más información, consulte Install ossutil.

¿Puedo usar ossutil para consultar el tamaño de un directorio?

Sí, ejecute el comando du/@cmdname. Este llama a la API ListObjects/@cmdname para recuperar todos los objetos bajo el prefijo especificado y calcula el tamaño total. Para directorios con una gran cantidad de objetos, la operación puede tardar algún tiempo.

Para obtener más información, consulte du.

¿Cómo genero una URL firmada que contenga un nombre de dominio personalizado?

  1. Configure un nombre de dominio personalizado para el bucket.

    Para obtener más información, consulte Configure a custom domain name.

  2. Ejecute el comando sign/@cmdname para generar una URL firmada.

    Para obtener más información, consulte sign (generate a signed URL).

¿Puedo ordenar los resultados al enumerar objetos con ossutil?

No, ossutil no admite la clasificación de resultados al enumerar objetos.

¿Por qué obtengo un error 'no such host' al ejecutar comandos de ossutil?

El endpoint no es válido. Especifique un endpoint válido mediante la opción -e/@parmname o actualice el endpoint en su archivo de configuración. La opción -e/@parmname toma el endpoint de la región del bucket, por ejemplo -e oss-cn-shanghai.aliyuncs.com. No incluya caracteres adicionales en la cadena del endpoint. Para obtener una lista de endpoints, consulte Regions and endpoints.

¿Cómo se factura el comando du?

El comando du genera tarifas por solicitudes de API. Sin --all-versions, llama a ListObjects. Con --all-versions, llama a ListObjectVersions. En ambos casos, también llama a ListMultipartUploads. Para obtener más información, consulte Request fees.

Nota

Si el bucket contiene partes de cargas multiparte incompletas, también se aplicarán tarifas por solicitudes de ListUploadedParts.