<?xml version="1.0" encoding="utf-8"?> 
<rss version="2.0"
  xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd"
  xmlns:atom="http://www.w3.org/2005/Atom">

<channel>

<title>Блог: заметки с тегом google drive</title>
<link>https://utata.ru/tags/google-drive/</link>
<description>konditerov.ru</description>
<author>Илья Кондитеров</author>
<language>ru</language>
<generator>E2 (v3877; Aegea)</generator>

<itunes:owner>
<itunes:name>Илья Кондитеров</itunes:name>
<itunes:email></itunes:email>
</itunes:owner>
<itunes:subtitle>konditerov.ru</itunes:subtitle>
<itunes:image href="" />
<itunes:explicit></itunes:explicit>

<item>
<title>Бекап VestaCP в облако на примере Google Drive (Ubuntu 16.04)</title>
<guid isPermaLink="false">87</guid>
<link>https://utata.ru/all/bekap-vestacp-na-google-drive-ubuntu-16-04/</link>
<pubDate>Fri, 08 May 2020 01:07:30 +0300</pubDate>
<author>Илья Кондитеров</author>
<comments>https://utata.ru/all/bekap-vestacp-na-google-drive-ubuntu-16-04/</comments>
<description>
&lt;p&gt;Эта инструкция написана для меня, но воспользоваться ей может любой, нужны базовые знания консоли linux, минут 30 на настройку.&lt;/p&gt;
&lt;p&gt;Для начала нам необходимо установить Rclone:&lt;br /&gt;
Заходим под рутом&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;sudo su&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Скачиваем и устанавливаем Rclone&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;curl https://rclone.org/install.sh | sudo bash&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Запускаем настройку Rclone&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;rclone config&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Создаем новый профиль Rclone&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;i&gt;No remotes found — make a new one&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;n) New remote&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;s) Set configuration password&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;q) Quit config&lt;/i&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;n/s/q&amp;gt; n&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Задаем имя (тут вы можете назвать как угодно)&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;name&amp;gt; gdrive&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Выбираем сервис.&lt;br /&gt;
У меня гуглдиск оказался под номером 13, возможно в дальнейшем номер изменится.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;i&gt;13 / Google Drive&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;   \ «drive»&lt;/i&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;Storage&amp;gt; 13&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Тут нам необходимо получить авторизацию у google.&lt;br /&gt;
Переходим по ссылке и авторизуемся под своим аккаунтом: &lt;a href="https://code.google.com/apis/console/"&gt;https://code.google.com/apis/console/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Создаем проект и даем ему имя → Заходим в проект → Заходим в библиотеки → Ищем &lt;b&gt;Google Drive API&lt;/b&gt; → Включаем → Переходим в &lt;b&gt;Учетные данные&lt;/b&gt; → Настроить окно запроса доступа → Заходим в &lt;b&gt;Учетные данные&lt;/b&gt; → Создаем &lt;b&gt;Идентификатор клиента OAuth&lt;/b&gt; → &lt;b&gt;Другие типы&lt;/b&gt; → Получаем ключи:&lt;br /&gt;
&lt;b&gt;Идентификатор клиента&lt;/b&gt; и &lt;b&gt;Секретный код клиента&lt;/b&gt;, они нам и нужны.&lt;/p&gt;
&lt;p&gt;Скринкаст:&lt;/p&gt;
&lt;div class="e2-text-picture"&gt;
&lt;div class="fotorama" data-width="1423" data-ratio="1.6060948081264"&gt;
&lt;img src="https://utata.ru/pictures/1.png" width="1423" height="886" alt="" /&gt;
&lt;img src="https://utata.ru/pictures/2.png" width="1423" height="886" alt="" /&gt;
&lt;img src="https://utata.ru/pictures/3.png" width="1423" height="886" alt="" /&gt;
&lt;img src="https://utata.ru/pictures/4.png" width="1423" height="886" alt="" /&gt;
&lt;img src="https://utata.ru/pictures/5.png" width="1423" height="886" alt="" /&gt;
&lt;img src="https://utata.ru/pictures/6.png" width="1423" height="886" alt="" /&gt;
&lt;img src="https://utata.ru/pictures/7.png" width="1423" height="886" alt="" /&gt;
&lt;img src="https://utata.ru/pictures/8.png" width="1423" height="886" alt="" /&gt;
&lt;img src="https://utata.ru/pictures/9.png" width="1423" height="886" alt="" /&gt;
&lt;img src="https://utata.ru/pictures/10.png" width="1423" height="886" alt="" /&gt;
&lt;img src="https://utata.ru/pictures/11.png" width="1423" height="886" alt="" /&gt;
&lt;img src="https://utata.ru/pictures/12.png" width="1423" height="886" alt="" /&gt;
&lt;img src="https://utata.ru/pictures/13.png" width="1423" height="886" alt="" /&gt;
&lt;img src="https://utata.ru/pictures/14.png" width="1423" height="886" alt="" /&gt;
&lt;img src="https://utata.ru/pictures/15.png" width="1423" height="886" alt="" /&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;Продолжаем настройку Rclone&lt;br /&gt;
Вводим &lt;b&gt;Идентификатор клиента&lt;/b&gt;&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;client_id&amp;gt; Ваш идентификатор клиента (Client ID)&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Вводим &lt;b&gt;Секретный код клиента&lt;/b&gt;&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;client_secret&amp;gt; Ваш код клиента (Secret code)&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;далее выбираем&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;i&gt;Scope that rclone should use when requesting access from drive.&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;Enter a string value. Press Enter for the default («„).&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;Choose a number from below, or type in your own value&lt;/i&gt;&lt;br /&gt;
&lt;i&gt; 1 / Full access all files, excluding Application Data Folder.&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;   \ „drive“&lt;/i&gt;&lt;br /&gt;
&lt;i&gt; 2 / Read-only access to file metadata and file contents.&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;   \ „drive.readonly“&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;   / Access to files created by rclone only.&lt;/i&gt;&lt;br /&gt;
&lt;i&gt; 3 | These are visible in the drive website.&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;   | File authorization is revoked when the user deauthorizes the app.&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;   \ „drive.file“&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;   / Allows read and write access to the Application Data folder.&lt;/i&gt;&lt;br /&gt;
&lt;i&gt; 4 | This is not visible in the drive website.&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;   \ „drive.appfolder“&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;   / Allows read-only access to file metadata but&lt;/i&gt;&lt;br /&gt;
&lt;i&gt; 5 | does not allow any access to read or download file content.&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;   \ „drive.metadata.readonly“&lt;/i&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;scope&amp;gt; 1&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Далее настройка упрощается, нажимаем &lt;i&gt;&lt;b&gt;Enter&lt;/b&gt;&lt;/i&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;i&gt;ID of the root folder&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;Leave blank normally.&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;&lt;i&gt;Fill in to access «Computers» folders (see docs), or for rclone to use&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;a non root folder as its starting point.&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;&lt;i&gt;Note that if this is blank, the first time rclone runs it will fill it&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;in with the ID of the root folder.&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;&lt;i&gt;Enter a string value. Press Enter for the default («„).&lt;/i&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;root_folder_id&amp;gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Еще раз нажимаем &lt;i&gt;&lt;b&gt;Enter&lt;/b&gt;&lt;/i&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;i&gt;Service Account Credentials JSON file path &lt;/i&gt;&lt;br /&gt;
&lt;i&gt;Leave blank normally.&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;Needed only if you want use SA instead of interactive login.&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;Enter a string value. Press Enter for the default («„).&lt;/i&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;service_account_file&amp;gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Далее&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;i&gt;Edit advanced config? (y/n)&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;y) Yes&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;n) No (default)&lt;/i&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;y/n&amp;gt; n&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Далее&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;i&gt;Remote config&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;Use auto config?&lt;/i&gt;&lt;br /&gt;
&lt;i&gt; * Say Y if not sure&lt;/i&gt;&lt;br /&gt;
&lt;i&gt; * Say N if you are working on a remote or headless machine&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;y) Yes (default)&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;n) No&lt;/i&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;y/n&amp;gt; n&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Переходим по этой ссылке в браузере и копируем &lt;b&gt;ваш верификационный код&lt;/b&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;i&gt;Please go to the following link: &lt;a href="https://accounts.google.com/o/oauth2/auth?....."&gt;https://accounts.google.com/o/oauth2/auth?.....&lt;/a&gt; &lt;/i&gt;&lt;br /&gt;
&lt;i&gt;Log in and authorize rclone for access&lt;/i&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;Enter verification code&amp;gt; Ваш код&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Далее&lt;br /&gt;
&lt;i&gt;Configure this as a team drive?&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;y) Yes&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;n) No (default)&lt;/i&gt;&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;y/n&amp;gt; n&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;И в завершении настройки получаете такое сообщение:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;i&gt;——————————&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;[gdrive]&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;type = drive&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;client_id = Ваш идентификатор клиента (Client ID)&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;client_secret = Ваш код клиента (Secret code)&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;scope = drive&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;token = {«access_token»:» ¯\_(ツ)_/¯ «,«expiry»:«2020-05-07T20:49:03.221799741+03:00»}&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;——————————&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;y) Yes this is OK (default)&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;e) Edit this remote&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;d) Delete this remote&lt;/i&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Проверяем настройки и вводим &lt;b&gt;y&lt;/b&gt;&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;y/e/d&amp;gt; y&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Дальше программа показывает нам созданный профиль и спрашивает что делать дальше&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;i&gt;Current remotes:&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;&lt;i&gt;Name                 Type&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;====                 ====&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;gdrive               drive&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;&lt;i&gt;e) Edit existing remote&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;n) New remote&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;d) Delete remote&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;r) Rename remote&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;c) Copy remote&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;s) Set configuration password&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;q) Quit config&lt;/i&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Выходим&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;e/n/d/r/c/s/q&amp;gt; q&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;&lt;b&gt;Rclone&lt;/b&gt; установлен и настроен&lt;/p&gt;
&lt;p&gt;Пробуем скопировать содержимое папки на свой сервер (критично к регистру)&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;rclone copy /backup/ gdrive:Backup/Myserver/ -P&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Если всё копируется, то будем настраивать синхронизацию по времени.&lt;br /&gt;
Т. к. веста не умеет от рута запускать скрипты, настроим крон сами:&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;sudo nano /etc/crontab&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;И в конце файла добавляем следующий код (выполняется каждый день в 4 часа):&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;0 4 * * * root rclone sync /backup/ gdrive:Backup/Myserver/&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;P.s. &lt;a href="https://losst.ru/nastrojka-cron"&gt;Настройка Cron&lt;/a&gt;.&lt;/p&gt;
</description>
</item>


</channel>
</rss>