Intereting Posts
Рекурсивные chmod только папки или только файлы через скрипт или меню nautilus? Окна загрузки из командной строки командной строки grub Есть ли способ приостановить процесс, который принадлежит оболочке A, а на переднем плане – в оболочке B? Где моя конфигурация eth0 на Wheezy Найти исходные файлы для OpenGL на хосте Остановка автоматической перезагрузки Samba при загрузке Создание разреженного (автоматически расширяющегося и сжатого) файла подкачки с поддержкой отверстий Где найти исходный архив для libgfortran3? Проблемы с графикой и беспроводными драйверами на Crunchbang добавить команду в файл /etc/init.d/rc.local, который отсутствует Есть ли разница между read, head -1 и sed 1q? Как сохранить сеанс регистрации в Arch Linux? Linux, альтернативный кодам ALT + numpad Не удалось выполнить аутентификацию через ssh.Centos Лучший подход к созданию и добавлению содержимого в файлы

Уровень громкости systemd с использованием символической ссылки устройства

Я пытаюсь установить systemd на томе с помощью symlink. К сожалению, когда я пытаюсь это время, ожидая появления устройства systemd.

# systemctl start mnt-ephemeral0.mount A dependency job for mnt-ephemeral0.mount failed. See 'journalctl -xn' for details. # journalctl -xn Aug 04 17:02:09 i-c7a88499 systemd[1]: Expecting device dev-block-ec2-ephemeral0.device... Aug 04 17:03:39 i-c7a88499 systemd[1]: Job dev-block-ec2-ephemeral0.device/start timed out. Aug 04 17:03:39 i-c7a88499 systemd[1]: Timed out waiting for device dev-block-ec2-ephemeral0.device. Aug 04 17:03:39 i-c7a88499 systemd[1]: Dependency failed for /mnt/ephemeral0. 

В сообщении говорится, что он ждет dev-block-ec2-ephemeral0.device . Мой файл устройства указывает What=/dev/block/ec2/ephemeral0 , который является символической /dev/xvdb на /dev/xvdb .

man 5 systemd.device говорит:

systemd будет динамически создавать устройства для всех устройств ядра, которые отмечены тегом «systemd» udev

Однако, по-видимому, создается только устройство для пути /sys .

 # systemctl list-units | grep 'xvdb\|ephemeral0' sys-devices-vbd\x2d2064-block-xvdb.device loaded active plugged /sys/devices/vbd-2064/block/xvdb 

ephemeral0 обозначение 0 является правильно обозначенной символикой udev:

 # udevadm info -q symlink -n /dev/xvdb block/ec2/ephemeral0 disk/by-uuid/d57e2dd9-0062-448c-a914-0b6df045dafb # ls -l /dev/block/ec2/ephemeral0 lrwxrwxrwx 1 root root 10 Aug 4 16:59 /dev/block/ec2/ephemeral0 -> ../../xvdb 

Вот текущий файл блока:

 [Unit] After=ephemeral0-format.service [Mount] What=/dev/block/ec2/ephemeral0 Where=/mnt/ephemeral0 того, как [Unit] After=ephemeral0-format.service [Mount] What=/dev/block/ec2/ephemeral0 Where=/mnt/ephemeral0 

Есть ли способ установить это через модуль systemd.mount?
Могу ли я создать поддельный блок, подобный systemd для этого sys-devices-vbd... one?

Оказывается, проблема в том, что systemd игнорирует все внутри /dev/block .

/dev/block/ec2/ephemeral0 был символической ссылкой, созданной правилом udev, поэтому решение состоит в том, чтобы просто отрегулировать правило udev и поместить символическую ссылку в другое место. Вместо этого я решил разместить его на /dev/disk/ec2/ephemeral0 .

 $ udevadm info -q symlink -n /dev/xvdb disk/by-uuid/ae145d53-9501-419f-b9b1-7416e5c4fec9 disk/ec2/ephemeral0 $ systemctl list-units -a | grep 'xvdb\|ephemeral0' dev-disk-ec2-ephemeral0.device loaded active plugged /dev/disk/ec2/ephemeral0 dev-xvdb.device loaded active plugged /dev/xvdb sys-devices-vbd\x2d2064-block-xvdb.device loaded active plugged /sys/devices/vbd-2064/block/xvdb 

Источник: http://lists.freedesktop.org/archives/systemd-devel/2014-August/021919.html