프로그래밍/Linux

[lxc] 인스턴스 생성 실패 Failed detecting root disk device: No root device could be found 해결방법

Lou Park 2022. 10. 3. 21:53
ubuntu@:~$ sudo lxc launch ubuntu:22.04 manager1
Creating manager1
Error: Failed instance creation: Failed creating instance record: Failed initialising instance: Invalid devices: Failed detecting root disk device: No root device could be found

lxc 인스턴스 생성시에 No root device could be found 오류가 떴을 경우, profile에 root disk에 대한 storage 설정을 해주어야한다.

 

storage 목록이 만약에 비었다면,

$ lxc storage ls
+------+--------+--------+-------------+---------+-------+
| NAME | DRIVER | SOURCE | DESCRIPTION | USED BY | STATE |
+------+--------+--------+-------------+---------+-------+

storage를 먼저 생성해준다.

zfs를 이용하는 것 외에 storage pool을 생성하는 다른 방법은 공식 사이트에서 찾을 수 있다.

 

$ lxc storage create pool1 zfs
+-------+--------+------------------------------------------+-------------+---------+---------+
| NAME  | DRIVER |                  SOURCE                  | DESCRIPTION | USED BY |  STATE  |
+-------+--------+------------------------------------------+-------------+---------+---------+
| pool1 | zfs    | /var/snap/lxd/common/lxd/disks/pool1.img |             | 0       | CREATED |
+-------+--------+------------------------------------------+-------------+---------+---------+

 

이제 방금만든 pool1 storage를 root disk에 추가한다.

lxc profile device add default root disk path=/ pool=pool1

그러면 정상적으로 컨테이너를 생성할 수 있게 된다.