Как определить тип хранилища lxc-контейнера (каталог / btrfs / aufs и т. Д.)?

Это может быть не самый актуальный вопрос для askubuntu, но я постараюсь ответить на него тем не менее: вы, вероятно, включили в свой документ графику, в которой используется шрифт Helvetica (общий пример - метки оси для фигур, созданных Matlab) , правильно? Если вы использовали Helvetica в своем документе (например, с \usepackage{helvet}), вместо него будет использоваться замена Helvetica Nimbus Sans L.

В настоящее время вложение шрифтов из внешних фигур невозможно (оно должно работать, если вы убедитесь, что внешние фигуры вставляют сами шрифты, хотя!).

Поэтому, как было предложено в комментариях, единственным решением, похоже, является преобразование PDF-> PS-> PDF, например :

pdf2ps file.pdf file.ps
ps2pdf14 -dPDFSETTINGS=/prepress -dEmbedAllFonts=true file.ps file.pdf

К сожалению, гиперссылки, например, не выживут это преобразование.

См. этот вопрос на более подходящем веб-сайте tex.stackexchange: https: // tex. stackexchange.com/questions/10391/how-to-embed-fonts-at-compile-time-with-pdflatex

0
задан 1 October 2017 в 14:16

3 ответа

Мне теперь интересно узнать о вашей реализации и все еще не уверены в вашей среде. Но я основываю этот комментарий на нескольких предположениях:

У вас есть доступ к командной строке оболочки Linux (CLI). Вы загрузили / установили LXC и btrfs-tools. Вы загрузили модуль ядра btrfs.

Я бы подумал, что если вы собираетесь клонировать контейнер lxc, все равно будет существовать запись в корневой файловой системе, так как это определяет тип rootfs. Говоря о том, что из моего опыта клонирования полных виртуализационных сред всегда возникают конфликтующие проблемы.

Кроме того, вы создали фактическую файловую систему btrfs или просто определили ее в команде lxc-create? Он может не отображаться, потому что фактическое блочное устройство не может быть определено.

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

То, как я создам контейнер LXC с хранилищем резервных копий BTRFS, будет.

Установите BTRFS (похоже, что вы сделали это ):

apt-get -y install btrfs-tools

Установить BTRFS (похоже, что вы это сделали):

[d14 ] modprobe btrfs

Создайте файловую систему btrfs (похоже, что вы это сделали):

mkfs -t btrfs / dev / sda

Сделать файловая система btrfs (похоже, что вы это сделали):

mkdir / home / btrfs-mnt (или где бы вы ни находились)

mount / dev / sda / home / btrfs-mnt

Это были бы шаги, которые я предпринял бы для создания пригодной для использования файловой системы для контейнеров LXC.

Это были бы шаги, которые я предпринял бы для создания удобной файловой системы для контейнеров LXC.

file -s / dev / sda (показывает что тип файла является файловой системой btrfs).

Отображение файловой системы btrfs ( показывает, что тип файла является файловой системой btrfs ).

btrfs subvolume show / home / btrfs-mnt (идентифицирует корневой каталог btrfs).

cat / proc / mounts | grep btrfs ( идентифицирует корневой каталог btrfs ).

btrfs файловая система df / home / btrfs-mnt (показывает использование диска btrfs).

После btrfs блочное устройство, и LXC установлен, я могу создать контейнер. Путь к монтированию btrfs будет определен с помощью параметра -lxcpath =, а тип btrfs rootfs определяется с помощью опции -bdev. Поскольку путь к положению lxc по умолчанию теперь отличается, для перенаправления в фактическое местоположение требуется символическая ссылка.

показывает использование диска btrfs

[d39 ] lxc-create --bdev btrfs --lxcpath = / home / btrfs-mnt --name mybtrfscontainerfoo --template ubuntu

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

cd / var / lib / lxc / mybtrfscontainerfoo /

ln -s / home / btrfs-mnt / mybtrfscontainerfoo / config / var / lib / lxc / mybtrfscontainerfoo / config

Звучит так: мне нравится, как вы пытаетесь настроить контейнеры btrfs или скопировать их, поэтому, надеюсь, это поможет. OpenWRT, я не уверен, что вы там делаете. Я использовал его только для получения нестандартной прошивки на домашнем маршрутизаторе.

Надеюсь, это поможет, если нет, то, возможно, немного описать вашу среду, может помочь мне получить более четкое изображение. [!d45 ]

дайте мне знать, как вы это делаете.

Лучшие попытки,

Jason-C

0
ответ дан 22 May 2018 в 17:57
  • 1
    Еще раз спасибо за ваш замечательный (проницательный упакованный ) ответ! Ваш первый ответ ответил на мой вопрос отлично (в контексте его спрашивали: generic / Ubuntu)! Я не упоминал о своих спецификациях, чтобы предотвратить слишком много отсрочки от Ubuntu. Я надеялся, что общие знания будут применимы. Это похоже на системную специфику: Turris Omnia + ForrisOS (OpenWRT-fork) с предустановленной оснасткой LXC. У меня есть root-доступ и добавлен диск mSATA; отформатированный / смонтированный BTRFS для контейнеров (функциональный). Я думаю, что мои контейнеры - это BTRFS (snapshotable), которые просто не указаны как таковые в конфигурационных файлах. – woosting 25 November 2017 в 20:43

Мне теперь интересно узнать о вашей реализации и все еще не уверены в вашей среде. Но я основываю этот комментарий на нескольких предположениях:

У вас есть доступ к командной строке оболочки Linux (CLI). Вы загрузили / установили LXC и btrfs-tools. Вы загрузили модуль ядра btrfs.

Я бы подумал, что если вы собираетесь клонировать контейнер lxc, все равно будет существовать запись в корневой файловой системе, так как это определяет тип rootfs. Говоря о том, что из моего опыта клонирования полных виртуализационных сред всегда возникают конфликтующие проблемы.

Кроме того, вы создали фактическую файловую систему btrfs или просто определили ее в команде lxc-create? Он может не отображаться, потому что фактическое блочное устройство не может быть определено.

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

То, как я создам контейнер LXC с хранилищем резервных копий BTRFS, будет.

Установите BTRFS (похоже, что вы сделали это ):

apt-get -y install btrfs-tools

Установить BTRFS (похоже, что вы это сделали):

modprobe btrfs

Создайте файловую систему btrfs (похоже, что вы это сделали):

mkfs -t btrfs / dev / sda

Сделать файловая система btrfs (похоже, что вы это сделали):

mkdir / home / btrfs-mnt (или где бы вы ни находились)

mount / dev / sda / home / btrfs-mnt

Это были бы шаги, которые я предпринял бы для создания пригодной для использования файловой системы для контейнеров LXC.

Это были бы шаги, которые я предпринял бы для создания удобной файловой системы для контейнеров LXC.

file -s / dev / sda (показывает что тип файла является файловой системой btrfs).

Отображение файловой системы btrfs ( показывает, что тип файла является файловой системой btrfs ).

btrfs subvolume show / home / btrfs-mnt (идентифицирует корневой каталог btrfs).

cat / proc / mounts | grep btrfs ( идентифицирует корневой каталог btrfs ).

btrfs файловая система df / home / btrfs-mnt (показывает использование диска btrfs).

После btrfs блочное устройство, и LXC установлен, я могу создать контейнер. Путь к монтированию btrfs будет определен с помощью параметра -lxcpath =, а тип btrfs rootfs определяется с помощью опции -bdev. Поскольку путь к положению lxc по умолчанию теперь отличается, для перенаправления в фактическое местоположение требуется символическая ссылка.

показывает использование диска btrfs

lxc-create --bdev btrfs --lxcpath = / home / btrfs-mnt --name mybtrfscontainerfoo --template ubuntu

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

cd / var / lib / lxc / mybtrfscontainerfoo /

ln -s / home / btrfs-mnt / mybtrfscontainerfoo / config / var / lib / lxc / mybtrfscontainerfoo / config

Звучит так: мне нравится, как вы пытаетесь настроить контейнеры btrfs или скопировать их, поэтому, надеюсь, это поможет. OpenWRT, я не уверен, что вы там делаете. Я использовал его только для получения нестандартной прошивки на домашнем маршрутизаторе.

Надеюсь, это поможет, если нет, то, возможно, немного описать вашу среду, может помочь мне получить более четкое изображение.

дайте мне знать, как вы это делаете.

Лучшие попытки,

Jason-C

0
ответ дан 18 July 2018 в 05:56

Мне теперь интересно узнать о вашей реализации и все еще не уверены в вашей среде. Но я основываю этот комментарий на нескольких предположениях:

У вас есть доступ к командной строке оболочки Linux (CLI). Вы загрузили / установили LXC и btrfs-tools. Вы загрузили модуль ядра btrfs.

Я бы подумал, что если вы собираетесь клонировать контейнер lxc, все равно будет существовать запись в корневой файловой системе, так как это определяет тип rootfs. Говоря о том, что из моего опыта клонирования полных виртуализационных сред всегда возникают конфликтующие проблемы.

Кроме того, вы создали фактическую файловую систему btrfs или просто определили ее в команде lxc-create? Он может не отображаться, потому что фактическое блочное устройство не может быть определено.

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

То, как я создам контейнер LXC с хранилищем резервных копий BTRFS, будет.

Установите BTRFS (похоже, что вы сделали это ):

apt-get -y install btrfs-tools

Установить BTRFS (похоже, что вы это сделали):

modprobe btrfs

Создайте файловую систему btrfs (похоже, что вы это сделали):

mkfs -t btrfs / dev / sda

Сделать файловая система btrfs (похоже, что вы это сделали):

mkdir / home / btrfs-mnt (или где бы вы ни находились)

mount / dev / sda / home / btrfs-mnt

Это были бы шаги, которые я предпринял бы для создания пригодной для использования файловой системы для контейнеров LXC.

Это были бы шаги, которые я предпринял бы для создания удобной файловой системы для контейнеров LXC.

file -s / dev / sda (показывает что тип файла является файловой системой btrfs).

Отображение файловой системы btrfs ( показывает, что тип файла является файловой системой btrfs ).

btrfs subvolume show / home / btrfs-mnt (идентифицирует корневой каталог btrfs).

cat / proc / mounts | grep btrfs ( идентифицирует корневой каталог btrfs ).

btrfs файловая система df / home / btrfs-mnt (показывает использование диска btrfs).

После btrfs блочное устройство, и LXC установлен, я могу создать контейнер. Путь к монтированию btrfs будет определен с помощью параметра -lxcpath =, а тип btrfs rootfs определяется с помощью опции -bdev. Поскольку путь к положению lxc по умолчанию теперь отличается, для перенаправления в фактическое местоположение требуется символическая ссылка.

показывает использование диска btrfs

lxc-create --bdev btrfs --lxcpath = / home / btrfs-mnt --name mybtrfscontainerfoo --template ubuntu

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

cd / var / lib / lxc / mybtrfscontainerfoo /

ln -s / home / btrfs-mnt / mybtrfscontainerfoo / config / var / lib / lxc / mybtrfscontainerfoo / config

Звучит так: мне нравится, как вы пытаетесь настроить контейнеры btrfs или скопировать их, поэтому, надеюсь, это поможет. OpenWRT, я не уверен, что вы там делаете. Я использовал его только для получения нестандартной прошивки на домашнем маршрутизаторе.

Надеюсь, это поможет, если нет, то, возможно, немного описать вашу среду, может помочь мне получить более четкое изображение.

дайте мне знать, как вы это делаете.

Лучшие попытки,

Jason-C

0
ответ дан 24 July 2018 в 18:28
  • 1
    Я думаю, что это именно то, что мне нужно (и за его пределами)! К сожалению, в конкретной версии LXC, которую я использую (openWRT), это не тот случай @ Jason-C. I do имеют сам файл конфигурации, но в нем отсутствует запись lxc.rootfs.backend. df -TH (выполняется из контейнера) показывает : /dev/sda btrfs 233G 13G 219G 6% / хотя! Может быть, потому, что я начал работать с каталогом, который я клонировал в поддерживаемый BTRFS (с использованием параметра -B), или вы считаете, что это определенная вещь OpenWRT? – woosting 7 November 2017 в 04:58
  • 2
    Еще раз спасибо за ваш замечательный (проницательный упакованный ) ответ! Ваш первый ответ ответил на мой вопрос отлично (в контексте его спрашивали: generic / Ubuntu)! Я не упоминал о своих спецификациях, чтобы предотвратить слишком много отсрочки от Ubuntu. Я надеялся, что общие знания будут применимы. Это похоже на системную специфику: Turris Omnia + ForrisOS (OpenWRT-fork) с предустановленной оснасткой LXC. У меня есть root-доступ и добавлен диск mSATA; отформатированный / смонтированный BTRFS для контейнеров (функциональный). Я думаю, что мои контейнеры - это BTRFS (snapshotable), которые просто не указаны как таковые в конфигурационных файлах. – woosting 25 November 2017 в 20:43

Другие вопросы по тегам:

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