Как настроить офлайновое средство просмотра карты для openstreetmaps на debian?

Вот измененное и очень расширенное пересообщение моего ответа на Ваш предыдущий вопрос:

sfill от secure-delete пакет может сделать то, что Вы хотите.

В отличие от zerofree (который работает только с ext2, ext3, и ext4 файловые системы), sfill будет работать с любой файловой системой.

например.

sfill -l -l -z /mnt/X

sfill/secure-delete домашняя страница, теперь, кажется, исчез, но она упаковывается для debian и человечности. вероятно, другие дистрибутивы также. если Вам нужен исходный код, который может быть найден в архивах debian, если Вы не можете найти его больше нигде.

Примечание: sfill только работает над смонтированной файловой системой. Если Вы заполните нулями файлы изображений от хост-системы, а не из VM, то необходимо будет смонтировать изображение фс на хосте. Точный метод варьируется в зависимости от того, какой файл изображения это (например, qcow2 или сырые данные).

Монтирование 'необработанных' изображений легко и просто. Просто используйте kpartx на файле изображения для создания устройства закольцовывания и/dev/mapper/записей для каждого раздела может затем быть смонтирован индивидуально.

вот частичный сценарий, измененный от фрагмента сценария, который я использую для монтирования сетевых загрузочных freedos образов жесткого диска (используемый для обновлений BIOS на машинах, где flashrom не будет работать):

image="myrawimagefile.img"

# use kpartx to build /dev/mapper device nodes
KP=$(kpartx -a -v "$image")

# now mount each partition under ./hd/
for p in $(echo "$KP" | awk '/^add map/ {print $3}') ; do
  dm="/dev/mapper/$p"
  fp=$(echo "$p" | sed -r -e 's/^loop[0-9]+//')
  mkdir -p "./hd/$fp"
  mount "$dm" "./hd/$fp"
  sfill -l -l -v "./hd/$fp"
  umount "$dm"
done

# now remove the loopback device and /dev/mapper entries
kpartx -d "$image"

Примечание: это предполагает, что каждый раздел в изображении является монтируемым. верный в моем примере использования (freedos изображение высокой четкости с одним разделом). не верный, если один из разделов является, скажем, областью подкачки. Обнаружение таких разделов и использование dd для обнуления раздела подкачки оставляют как осуществление для читателя :)

Этот метод или вариант его, должен работать на объемы LVM также.

Если Ваши изображения являются qcow затем, можно использовать qemu-nbd инструмент от qemu-utils пакет, который представит файл изображения и его разделы как сетевые блочные устройства - например,/dev/nbd0/dev/ndb0p1 - который может привыкнуть подобным способом к/dev/mapper устройствам выше.

Это является возможно легче и меньше стычки (но более трудоемким) использовать qemu-img для преобразования от qcow до сырых данных используйте метод для сырых данных выше и затем преобразуйте измененное необработанное изображение назад в сжатый qcow2. Это, вероятно, приведет к немного меньшим изображениям, чем использование qemu-nbd, поскольку Вы будете сжимать новое изображение qcow2, поскольку оно создается.

2
21.11.2013, 04:01
2 ответа

Форматы OSM

Согласно по крайней мере этой странице GitHub, названной: openstreetmap/gosmore, это кажется, что возможно использовать Открытые карты города (OSM) с Gosmore. С этой командой показывают gosmore.

$ bzcat planet-...osm.bz2 | gosmore rebuild

Таким образом, необходимо смочь использовать Ваш osm.bz2 файлы как это:

$ bzcat osm.bz2 | gosmore rebuild

Можно также видеть вышеупомянутые команды в файле README для Gosmore также. Наконец в названной Wiki OSM существует страница: Gosmore/RebuildGuide, который показывает альтернативные методы вышеупомянутому в зависимости от природы данных карты, которые Вы пытаетесь использовать.

Форматы PBF

Если Вы надеетесь импортировать osm.pbf файлы Вы смогли находить метод на этой странице в Wiki OSM на формате файла PBF.

Дополнительно существует этот инструмент, osmconvert, который надеется быть тем, что Вы хотите, главным образом для преобразования OSM в PBF. Страница Wiki для этой команды имеет довольно хорошие детали о своем использовании.

Пример

$ bzcat europe.osm.bz2 | osmconvert - -o=europe.pbf
1
27.01.2020, 22:22
  • 1
    Спасибо за ответ! Что относительно osm.pbf? Я читал немного, кажется, что этот формат быстрее и легче, таким образом, я загрузил азиатскую карту в этом формате для попытки, но использование команды Вы, если я получаю только ошибки. Из трупа я загружу bz2 и попробую также, просто задавшись вопросом. –  user63130 20.11.2013, 04:48
  • 2
    @user63130 - Не уверенный. Я нашел эту страницу: wiki.openstreetmap.org/wiki/Renderers_feature_list. Я никогда не использовал ни одного этого программного обеспечения, и так только уходил документы. Также эта страница: wiki.openstreetmap.org/wiki/PBF_Format –  slm♦ 20.11.2013, 04:52
  • 3
    @user63130 - посмотрите обновления. –  slm♦ 20.11.2013, 05:07
  • 4
    Да, я уже считал все на этих ссылках перед обеспечением его но это не было полезно. И я не должен был преобразовывать osm в pbf, у меня уже был pbf, но кажется, что gosmore просто не работает с этим форматом. Для меня, к сожалению, gosmore не работает вообще. Nither Gosmore, ни что-либо еще. Но так или иначе благодарит пытаться помочь. –  user63130 20.11.2013, 23:06

Я думаю, что нашел довольно хорошее решение - оно назвало Мрамор. Это хранит карты как почти все приложения карты андроида - в изображениях, названных "мозаиками". Существует недостаток: Вы не можете загрузить целую мировую карту, потому что это было бы слишком большим в размере, но про - то, что это работает довольно быстро.

Я установил его, это работает из поля, только необходимо выбрать "Openstreetmaps "тема", перейдите к области, к которой Вы хотите смочь получить доступ офлайн, нажать "File"-> "Download Region", установить "диапазон уровня мозаики" (существует ограничение на число мозаик), нажмите "Ok" и в правильной нижней части conner экрана, Вы будете видеть загружающееся состояние.

Если Вы перешли через карту, она также кэширует все, что Вы загружаете, я увеличился, размер кэша в "Настройках"-> "Настраивают Виртуальный Земной шар"-> "Кэш и Прокси" к 10 000. Теперь я загружаю карты, это медленно, но я уверен, что это стоит того.

0
27.01.2020, 22:22

Теги

Похожие вопросы