Операции с файлами между веб-сервером и локальным компьютером
Файлы сайта на VPS могут выгружаться с помощью настроенного репозитория git. Хотя это удобнее, не всегда подходит.
Консольная утилита scp
может использоваться как для выгрузки файлов и архивов на удаленный сервер, так и загрузки с него (все команды выполняются с локального компьютера). На самом деле происходит копирование, как и в случае с командой cp
. Первым аргументом указывается что и откуда копируется, вторым - куда. Так ниже в первом примере файл переносится на сервер, во втором - файл загружается с сервера в текущий каталог.
$ scp index.html user@11.187.22.233:/var/www/bioedu.info/ $ scp user@11.187.22.233:/var/www/bioedu.info/index.html ./
Если требуется скопировать несколько файлов, они указываются по-очереди. В любом случае последний аргумент команды - место назначения. Также могут использоваться шаблоны. Например, *.html
будет означать копирование всех файлов с таким расширением.
Для копировании каталогов используется ключ -r
.
Существует также утилита curl
(cURL), которая позволяет загружать файлы по их URL. Ее можно использовать для загрузки с веб-сервера, если на последнем файл доступен по url-адресу:
$ curl -O https://younglinux.info/younglinux0525.tar
Однако большого смысла в этом нет. Зная URL, файл можно загрузить через браузер.
Для создания и распаковки архивов пользуются консольными утилитами tar
, zip
и unzip
.
Упаковка в архив *.zip:
$ zip -r archive.zip *.txt node_test/
Распаковка архива *.zip:
$ unzip archive.zip
Упаковка в архив *.tar:
$ tar -cf archive.tar images/ *.html
В примере выше в архив упаковывается каталог images и все файл *.html текущего каталога.
Распаковка архива *.tar в текущий или иной каталог:
$ tar -xf archive.tar $ tar -xf archive.tar -C /var/www/folder/
Упаковка в архив *.tar.gz:
$ tar -caf archive.tar.gz * .htaccess
В примере выше упаковываются все файлы текущего каталога. Скрытый файл надо указывать отдельно.
Распаковка архива *.tar.gz:
$ tar xzvf site0525.tar.gz