machinelearningmastery.ru

Машинное обучение, нейронные сети, искусственный интеллект
Header decor

Home

Использование команды gsutil

Дата публикации Oct 3, 2019

На этой странице показано, как выполнять основные задачи в облачном хранилище с помощью инструмента командной строки gsutil.

фотоНильс ШирмернаUnsplash

ACL

Списки управления доступом (списки контроля доступа) предоставляют пользователям доступ для чтения или записи для блоков или объектов. ACL имеет три команды:GET,SET, илиCH,

ПОЛУЧИТЬ: Для получения списка разрешений на заданные области или объекты.

$ gsutil acl get gs://<bucket>
$ gsutil acl get gs://data/path/acl.png

ПОСТАВИЛ: Установить разрешение для заданных ведер или объектов.

Если вы хотите определить более детальный контроль над вашими данными и избежать ошибок. Вы можете использоватьgetкоманда, экспортировать их в файл.

$ gsutil acl get gs://<bucket1>/file1 acl.txt

Затем изменитеacl.txtфайл, а затем использоватьsetКоманда для установки новых разрешений, которые ACL на ведра и / или объекты.

$ gsutil acl set acl.txt gs://<bucket2>/file2
$ gsutil acl set acl.txt gs://<bucket3>

Используя-mвозможность выполнения параллельной синхронизации (многопоточная).

$ gustil -m acl set acl.txt gs://<bucket4>/*.png

СН: Изменить текущее разрешение для заданных сегментов или объектов.

Предоставить всем пользователям разрешение на чтение для объекта в bucket1.

$ gsutil acl ch -u AllUsers:R gs://<bucket1>/data/path.png

Предоставить всем пользователям разрешение на чтение для всех объектов по указанному URL.

$ gsutil acl -r ch -u AllUsers:R gs://<bucket1>/data/path/

Если в ведре есть большое количество объектов для обновления. Используя-mвозможность выполнения параллельной синхронизации (многопоточная).

$ gsutil -m acl -r ch -u Allusers:R gs://<bucket1>

Ls

Перечислите поставщиков, сегменты или объекты.

Перечислите все области облачного хранилища под вашим проектом.

$ gsutil ls

Список указанных объектов.

$ gsutil ls gs://<bucket>/*.png

дю

duКоманда отображает количество места в корзине.

Чтобы перечислить размер всех объектов в ведре.

$ gsutil du gs://<bucket>

Вывести итоговую сумму байтов в двух заданных сегментах.

$ gsutil du -s gs://<bucket1> gs://<bucket2>

Чтобы перечислить размер всех объектов в ведре.

$ gsutil du -a gs://<bucket>

мегабайт

Сделать ведра. Облачное хранилище имеет одно пространство имен и не должно использоваться другим пользователем.

mbКоманда создает новое ведро.

$ gsutil mv gs://<bucket>

милливольт

Moveилиrenameобъекты.

переехать: Для перемещения данных между локальной файловой системой и облачным хранилищем, а также для перемещения данных между облачным хранилищем.

Переместить все объекты из корзины в локальный каталог.

$ gsutil mv gs://<bucket>/* /local/dir

Переместить все объекты из локальной директории в корзину.

$ gsutil mv ./local/dir gs://<bucket>

переименование: Переименовать все объекты с заданным префиксом, чтобы иметь новый префикс.

Пространство имен Cloud Storage является плоским, оно не поддерживает настоящие папки. Значение/действительно навязывается пользователями. Когда вы переименовываете папку, это достигается путем копирования каждого объекта в новый объект с нужным именем при удалении старого.

$ gsutil mv gs://<bucket>/<old_prefix> gs://<bucket>/<new_prefix>

Сохранение разрешений ACL дляmv, вы должны использовать-pвариант.

$ gsutil mv -p gs://<bucket>/<old_prefix> gs://<bucket>/<new_prefix>

ср

cpКоманда используется для копирования данных между локальной файловой системой и облачным хранилищем.

Загрузить файл из локальной файловой системы.

$ gsutil cp /local/file gs://<bucket>/

Загрузите файл из облачного хранилища.

$ gsutil cp gs://<bucket>/file /local/path/

Передача файла между ведрами.

$ gsutil cp gs://<bucket1>/file gs://<bucket2>/

Создайте новую папку в ведре.

$ gsutil cp <folder_name> gs://<bucket>/

Rsync

Синхронизируйте содержимое двух сегментов / каталогов.

Копировать только новые / измененные файлы без удаления лишних файлов.

$ gsutil rsync -r /data/path gs://<bucket>

Сделать содержимое bucket1 таким же, как bucket2.

$ gsutil rsync -d -r gs://<bucket1> gs://<bucket2>

Выполнить параллельную синхронизацию (многопоточность).

$ gsutil -m rsync -r -d /data/path gs://<bucket>

Пожалуйста, будьте осторожны при использовании-dвариант. Эта опция сделает содержимое / data / path таким же, как bucket. если тыошибочно поменять источник и пункт назначения, Можно случайно удалить большие объемы данных.

жизненный цикл

GetилиsetКонфигурация жизненного цикла позволяет автоматически удалять или изменять класс хранилища.

получить: Получает конфигурацию жизненного цикла для данного сегмента.

$ gsutil lifecycle get gs://<bucket>

поставил: Устанавливает конфигурацию жизненного цикла для одного или нескольких сегментов с настройкой, определенной в*.jsonфайл.

В этомconfig.jsonфайл старше 30 дней будет удален автоматически.

$ cat config.json
{
"lifecycle": {
"rule": [
{
"action": {"type": "Delete"},
"condition": {"age": 30}
}
]
}
}

Чтобы включить жизненный цикл для ведра.

$ gsutil lifecycle set config.json gs://<bucket>

Изменение класса хранения объектов наNearlineпосле одного года. ЕслиNearlineстарше двух лет, который меняется наColdline,

$ cat config.json
{
"lifecycle": {
"rule": [
{
"action": {
"type": "SetStorageClass",
"storageClass": "NEARLINE"
},
"condition": {
"age": 365,
"matchesStorageClass": ["MULTI_REGIONAL", "STANDARD", "DURABLE_REDUCED_AVAILABILITY"]
}
},
{
"action": {
"type": "SetStorageClass",
"storageClass": "COLDLINE"
},
"condition": {
"age": 730,
"matchesStorageClass": ["NEARLINE"]
}
}
]
}
}

Оригинальная статья

Footer decor

© machinelearningmastery.ru | Ссылки на оригиналы и авторов сохранены. | map