Форум русскоязычного сообщества Ubuntu


Считаете, что Ubuntu недостаточно дружелюбна к новичкам?
Помогите создать новое Руководство для новичков!

Автор Тема: scp и кодировка  (Прочитано 2615 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн fisher74

  • Автор темы
  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 13758
    • Просмотр профиля
scp и кодировка
« : 12 Мая 2011, 22:41:11 »
По крону бросаю ежедневные бекапы (формируются отдельно в виде tar.gz-архивов) на другую машину:
scp -i ~/.ssh/id_rsa -c blowfish -rp ~/backup/'date +%F' login@ip_remote:~/backup/

Вроде бы как всё хорошо, но ... первая машина под локалью UTF8, вторая - KOI8-R и, как вы наверное уже догадались, в названиях файлов присутствует наша родная кириллица.
На обоих машинах есть утила convmv, но на инициаторе архивы тоже хранятся, а кувыркать их названия дважды - не спортивно.
Можно копировать директорию в tmp  и там конвертить, но хотелось бы без лишних дисковых операций.
Изменение системной локали и отказ от кириллистических названий не предлагать - про этот "хук слева" я знаю.
Есть мысли?

Оффлайн AnrDaemon

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 28476
    • Просмотр профиля
Re: scp и кодировка
« Ответ #1 : 12 Мая 2011, 23:03:45 »
Цитировать
SendEnv
Specifies what variables from the local environ(7) should be sent to the server. Note that environment passing is only supported for protocol 2. The server must also support it, and the server must be configured to accept these environment variables. Refer to AcceptEnv in sshd_config(5) for how to configure the server. Variables are specified by name, which may contain wildcard characters. Multiple environment variables may be separated by whitespace or spread across multiple SendEnv directives. The default is not to send any environment variables.
м?
Хотите получить помощь? Потрудитесь представить запрошенную информацию в полном объёме.

Прежде чем [Отправить], нажми [Просмотр] и прочти собственное сообщение. Сам-то понял, что написал?…

Оффлайн podkovyrsty

  • Старожил
  • *
  • Сообщений: 1547
  • Content-Type: alternative
    • Просмотр профиля
Re: scp и кодировка
« Ответ #2 : 12 Мая 2011, 23:15:54 »
А rsync?
Шаг за шагом можно достичь цели.

Оффлайн fisher74

  • Автор темы
  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 13758
    • Просмотр профиля
Re: scp и кодировка
« Ответ #3 : 12 Мая 2011, 23:47:36 »
SendEnv что-то не прокатывает... или не так правлю:
SendEnv LANG=ru_RU.UTF-8
rsync боюсь столкнётся с такой же проблемой. Да и неохота сервер rsync корячить из-за такой мелочи.
(к тому же на remote-машине больше нужна избыточность, чем зеркальность)

Оффлайн podkovyrsty

  • Старожил
  • *
  • Сообщений: 1547
  • Content-Type: alternative
    • Просмотр профиля
Re: scp и кодировка
« Ответ #4 : 12 Мая 2011, 23:52:28 »
В рсинке встроеннный механизм перекодировки имен и иже с ними.
А SendEnv надо врубить
Цитировать
Refer to AcceptEnv in sshd_config(5) for how to configure the server.
Шаг за шагом можно достичь цели.

Оффлайн AnrDaemon

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 28476
    • Просмотр профиля
Re: scp и кодировка
« Ответ #5 : 13 Мая 2011, 00:14:53 »
SendEnv что-то не прокатывает... или не так правлю:
SendEnv LANG=ru_RU.UTF-8
rsync боюсь столкнётся с такой же проблемой. Да и неохота сервер rsync корячить из-за такой мелочи.
(к тому же на remote-машине больше нужна избыточность, чем зеркальность)

Не так. SendEnv принимает только ИМЕНА переменных.
Подробнее в man sshd_conf (я не зверствую, я действительно только сейчас с твоей подачи пошел это всё ковырять, по ссылкам с man scp набрёл - даже проверить негде, у меня все системы в уникоде с рождения.)
Хотите получить помощь? Потрудитесь представить запрошенную информацию в полном объёме.

Прежде чем [Отправить], нажми [Просмотр] и прочти собственное сообщение. Сам-то понял, что написал?…

Оффлайн fisher74

  • Автор темы
  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 13758
    • Просмотр профиля
Re: scp и кодировка
« Ответ #6 : 13 Мая 2011, 00:16:15 »
Поглубже изучил этот (SendEnv) вопрос. Выяснилось, что на серверной стороне нужно разрешить экспортировать переменные параметром AcceptEnv
Но к сожалению, попытка добавить эту опцию привела к гибели sshd и  ... видимо версия 3.5 (9-ая мандрейка) ещё не поддерживала этих опций. Благо завтра (точнее уже сегодня) буду рядом с "телом" и доступ вернуть проблем не будет.

Оффлайн podkovyrsty

  • Старожил
  • *
  • Сообщений: 1547
  • Content-Type: alternative
    • Просмотр профиля
Re: scp и кодировка
« Ответ #7 : 13 Мая 2011, 00:22:36 »
Я тут поначалу про монтирование писал, удалил потом - подумал чушь, аннет.
man sshfs
[iconv]
-o from_code=CHARSET
original encoding of file names (default: UTF-8)
-o to_code=CHARSET
new encoding of the file names (default: ISO-8859-2)
Шаг за шагом можно достичь цели.

Оффлайн fisher74

  • Автор темы
  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 13758
    • Просмотр профиля
Re: scp и кодировка
« Ответ #8 : 13 Мая 2011, 16:43:40 »
с sshfs неинтересно, к тому же на инициаторе нет даже fuse (тоже не Ubuntu)
Обновление сервера sshd до текущей версии не помогло, но вышеуказанные параметры начал принимать без сюрпризов
Итого, имеем
(Нажмите, чтобы показать/скрыть)

Повышение версии клиента стороне ситуацию не изменяет (пробовал с Ubuntu 10.04).
После соединения по ssh получаем дефолтную локаль серверной стороны, хотя необходимая есть
Цитировать
$ locale -a | grep ru_RU.UTF-8
ru_RU.UTF-8

Начинают медленно опускаться руки...

Оффлайн podkovyrsty

  • Старожил
  • *
  • Сообщений: 1547
  • Content-Type: alternative
    • Просмотр профиля
Re: scp и кодировка
« Ответ #9 : 13 Мая 2011, 17:10:01 »
Тынц, а конкретно - в чем проблема?
Вообще, глобально.
Шаг за шагом можно достичь цели.

Оффлайн fisher74

  • Автор темы
  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 13758
    • Просмотр профиля
Re: scp и кодировка
« Ответ #10 : 13 Мая 2011, 17:21:34 »
В принципе, проблема надумана. Бекапы нужны только мне, а как их в читабельный вид перевести - мне раз плюнуть.
Просто столкнулся с ситуацией и просто хотел сделать красиво. А потом стало просто интересно справиться с этим... не выходит :(

Оффлайн podkovyrsty

  • Старожил
  • *
  • Сообщений: 1547
  • Content-Type: alternative
    • Просмотр профиля
Re: scp и кодировка
« Ответ #11 : 13 Мая 2011, 17:23:06 »
В принципе, проблема надумана. Бекапы нужны только мне, а как их в читабельный вид перевести - мне раз плюнуть.
Просто столкнулся с ситуацией и просто хотел сделать красиво. А потом стало просто интересно справиться с этим... не выходит :(
Мнэм ...
А завести пользователя под бэкапы, добавить в список доступных локалей, на сервере, UTF, и установить её системной для данного пользователя?
Шаг за шагом можно достичь цели.

 

Страница сгенерирована за 0.076 секунд. Запросов: 26.