Skocz do zawartości
Fizyda

LXC unprivileged containers - problemy podczas tworzenia i uruchamiania

Polecane posty

Cześć, mam mały kłopot z którym nie mogę sobie poradzić. Próbuję utworzyć nieuprzywilejowane kontenery na Debian Jessie, jednak już od momentu tworzenia ich mam z nimi niemały problem.

 

- TWORZENIE -

Pierwszy problem jaki spotkałem to problem z nadawaniem uid i gid - wystarczyło doinstalować uidmap.

 

(1) Później na lxcusr (użytkownik na którym ma działać kontener, ma utworzone potrzebne katalogi i default..conf dla lxc z podanymi subuid i subgid dla niego, nie tworzyłem domyślnych wziąłem zakresy te które już miał z /etc/{subuid subgid)) nie mogłem w ogóle utworzyć kontenera, ale szybko wygooglałem problem i rozwiązanie:

https://lists.debian.org/debian-user/2015/05/msg00162.html

 

Po tych zabiegach mogłem już tworzyć kontenery, ale szybko pojawił się problem, mianowicie brak Debian Jessie na liście systemów dla kontenera którego tworzę. Jako root spokojnie mogę stworzyć kontener z Debian Jessie i jest on na liście dostępnych (lxc-create -t download -n container1). Wiem że są 2 różne listy dostępnych systemów dla kontenerów z zależności od typu konteneru (root i unprivileged), tylko ludzie normalnie mogą tworzyć unprivileged kontener z Debian Jessie na np Ubuntu.

Moje pytanie jest takie czym to jest spowodowane?

 

Wyczytałem coś że to problem z systemd pod debianem i trzeba zastosować jakąś łatkę z Ubuntu. Ale w szczegóły nie wchodziłem bo to były informacje sprzed roku i zastanawiam się po prostu czy to nadal jest aktualne.

 

- URUCHAMIANIE -

Stworzyłem dla testów kontener Debian Wheeze ale nie potrafię go uruchomić oto błędy jakie dostaje po próbie uruchomienia kontenera:

lxcusr@debian:~$ lxc-start -n test1
lxc_container: Permission denied - Could not create cgroup '/test1' in '/sys/fs/cgroup/perf_event'.
lxc_container: Read-only file system - cgroup_rmdir: failed to delete /sys/fs/cgroup/perf_event/
lxc_container: Read-only file system - cgroup_rmdir: failed to delete /sys/fs/cgroup/blkio/
lxc_container: Read-only file system - cgroup_rmdir: failed to delete /sys/fs/cgroup/net_cls,net_prio/
lxc_container: Read-only file system - cgroup_rmdir: failed to delete /sys/fs/cgroup/freezer/
lxc_container: Read-only file system - cgroup_rmdir: failed to delete /sys/fs/cgroup/devices/
lxc_container: Read-only file system - cgroup_rmdir: failed to delete /sys/fs/cgroup/cpu,cpuacct/
lxc_container: Read-only file system - cgroup_rmdir: failed to delete /sys/fs/cgroup/cpuset/
lxc_container: failed creating cgroups
lxc_container: failed to spawn 'test1'
lxc_container: The container failed to start.
lxc_container: Additional information can be obtained by setting the --logfile and --logpriority options.

Dodatkowo żeby móc uruchomić kontener - przepraszam spróbować, muszę zastosować rozwiązanie (1) inaczej znów nie mam uprawnień. Skoro przed nawet uruchomieniem muszę zmienić jakieś ustawienia to czy to nie będzie problem w momencie gdy będę chciał uruchomić kontener wraz ze startem systemu?

Jak temu zapobiec?

Edytowano przez Fizyda (zobacz historię edycji)

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Żeby było ciekawiej zaktualizowałem systemd do wersji dostępnej w wersji testowej Stretch. Zarówno na 215+17+deb8u3 jak i 229-4 mam ten sam problem przy starcie konteneru z ograniczonymi uprawnieniami.

 

Nie mam już pomysłu jak yo ugryźć i uruchomić nieuprzywilejowany kontener z system debian jessie na hoscie z debian jessie.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Przedwczoraj sprawdziłem jeszcze jak działa LXC z wersji Stretch i tutaj małe zaskoczenie to właśnie wersja LXC pod Jessie wygląda jakby była jakaś uboga jeśli chodzi o obsługę kontenerów nieuprzywilejowanych. Wersja z Stretch widzi wszystkie wersje Debiana Jessie Sid i Stretch, włącznie z Wheezy którego widzi ta z Jessie jako jedyną wersję debiana.

 

Dodatkowo w LXC z wersji testowej debiana nie ma problemów z uruchomieniem kontenerów, jedyne co napotkałem to niemożliwość zalogowania się przez lxc-console do takiego kontenera. lxc-attach działa bez problemu (ssh nie sprawdzałem) a przez konsole nie idzie.

Po podaniu loginu i hasła pojawia się komunikat:

cannot make/remove an entry for the specified session

I znów proszony jestem o podanie loginu i hasła. No i są jeszcze jakieś informacje o systemie. W razie potrzeby mogę podrzucić pełny widok z konsoli.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Bądź aktywny! Zaloguj się lub utwórz konto

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto

Zarejestruj nowe konto, to proste!

Zarejestruj nowe konto

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się


×