偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

無(wú)需sudo使用Podman在Linux上運(yùn)行容器

系統(tǒng) Linux
本文演示了如何配置你的 Linux 系統(tǒng),使普通用戶(hù)可以在不使用 sudo 的情況下(“無(wú)根”)運(yùn)行 Podman。


配置你的系統(tǒng)使用無(wú)根容器。


容器是現(xiàn)代計(jì)算的一個(gè)重要組成部分,隨著圍繞容器的基礎(chǔ)設(shè)施的發(fā)展,新的和更好的工具開(kāi)始浮出水面。過(guò)去,你只需用 ??LXC??? 就可以運(yùn)行容器,然而隨著 Docker 得到了普及,它開(kāi)始變得越來(lái)越復(fù)雜。最終,我們?cè)?nbsp;??Podman?? 得到了我們所期望的容器管理系統(tǒng):一個(gè)無(wú)守護(hù)進(jìn)程的容器引擎,它使容器和吊艙易于構(gòu)建、運(yùn)行和管理。

容器直接與 Linux 內(nèi)核能力(如控制組和命名空間)交互,它們?cè)谶@些命名空間中產(chǎn)生大量的新進(jìn)程。簡(jiǎn)而言之,運(yùn)行一個(gè)容器實(shí)際上就是在 Linux 系統(tǒng)內(nèi)部運(yùn)行一個(gè) Linux 系統(tǒng)。從操作系統(tǒng)的角度來(lái)看,它看起來(lái)非常像一種管理和特權(quán)活動(dòng)。普通用戶(hù)通常不能像容器那樣自由支配系統(tǒng)資源,所以默認(rèn)情況下,運(yùn)行 Podman 需要 root 或 ??sudo??? 權(quán)限。然而,這只是默認(rèn)設(shè)置,而且這絕不是唯一可用的設(shè)置。本文演示了如何配置你的 Linux 系統(tǒng),使普通用戶(hù)可以在不使用 ??sudo?? 的情況下(“無(wú)根rootless”)運(yùn)行 Podman。

命名空間的用戶(hù) ID

??內(nèi)核命名空間?? 本質(zhì)上是一種虛構(gòu)的結(jié)構(gòu),可幫助 Linux 跟蹤哪些進(jìn)程屬于同一類(lèi)。這是 Linux 中的“隊(duì)列護(hù)欄”。一個(gè)隊(duì)列中的進(jìn)程與另一個(gè)隊(duì)列中的進(jìn)程之間實(shí)際上沒(méi)有區(qū)別,但可以將它們用“警戒線(xiàn)”彼此隔離。要聲明一組進(jìn)程為“容器”,而另一組進(jìn)程為你的操作系統(tǒng),將它們分開(kāi)是關(guān)鍵。

Linux 通過(guò)用戶(hù) ID(UID)和組 ID(GID)來(lái)跟蹤哪個(gè)用戶(hù)或組擁有的進(jìn)程。通常情況下,一個(gè)用戶(hù)可以訪(fǎng)問(wèn)一千個(gè)左右的從屬 UID,以分配給命名空間的子進(jìn)程。由于 Podman 運(yùn)行的是分配給啟動(dòng)容器的用戶(hù)的整個(gè)從屬操作系統(tǒng),因此你需要的不僅僅是默認(rèn)分配的從屬 UID 和從屬 GID。

你可以用 ??usermod??? 命令授予一個(gè)用戶(hù)更多的從屬 UID 和從屬 GID。例如,要授予用戶(hù) ??tux?? 更多的從屬 UID 和從屬 GID,選擇一個(gè)還沒(méi)分配用戶(hù)的適當(dāng)?shù)母?UID(如 200000),然后將其增加幾千:

$ sudo usermod \
--add-subuids 200000-265536 \
--add-subgids 200000-265536 \
tux


命名空間訪(fǎng)問(wèn)

對(duì)命名空間數(shù)量也有限制。這通常被設(shè)置得很高。你可以用 ??systctl??,即內(nèi)核參數(shù)工具來(lái)驗(yàn)證用戶(hù)的命名空間分配:

$ sysctl --all --pattern user_namespaces
user.max_user_namespaces = 28633


這是很充足的命名空間,而且可能是你的發(fā)行版默認(rèn)設(shè)置的。如果你的發(fā)行版沒(méi)有這個(gè)屬性或者設(shè)置得很低,那么你可以在文件 ??/etc/sysctl.d/userns.conf?? 中輸入這樣的文本來(lái)創(chuàng)建它:

user.max_user_namespaces=28633

加載該設(shè)置:

$ sudo sysctl -p /etc/sysctl.d/userns.conf

在沒(méi)有 root 權(quán)限的情況下運(yùn)行一個(gè)容器

當(dāng)你設(shè)置好你的配置,重啟你的計(jì)算機(jī),以確保你的用戶(hù)和內(nèi)核參數(shù)的變化被加載和激活。

重啟后,試著運(yùn)行一個(gè)容器鏡像:

$ podman run -it busybox echo "hello"
hello


容器像命令一樣

如果你是第一次接觸容器,可能會(huì)覺(jué)得很神秘,但實(shí)際上,它們與你現(xiàn)有的 Linux 系統(tǒng)沒(méi)有什么不同。它們實(shí)際上是在你的系統(tǒng)上運(yùn)行的進(jìn)程,沒(méi)有仿真環(huán)境或虛擬機(jī)的成本和障礙。容器和你的操作系統(tǒng)之間的區(qū)別只是內(nèi)核命名空間,所以它們實(shí)際上只是帶有不同標(biāo)簽的本地進(jìn)程。Podman 使這一點(diǎn)比以往更加明顯,當(dāng)你將 Podman 配置為無(wú)根命令,容器感覺(jué)更像命令而不是虛擬環(huán)境。Podman 使容器和吊艙變得簡(jiǎn)單,所以請(qǐng)?jiān)囈辉嚒?/p>

責(zé)任編輯:龐桂玉 來(lái)源: Linux中國(guó)
相關(guān)推薦

2022-09-22 16:21:43

開(kāi)源GUI 應(yīng)用

2019-03-22 09:20:45

Linux命令sudo

2018-10-26 16:20:27

PodmanrootLinux

2021-02-17 09:16:58

PodmanLinuxDocker

2011-01-13 09:44:19

Linuxsudo技巧

2022-05-25 16:38:42

sudoLinuxroot 賬戶(hù)

2021-05-17 12:54:04

AnsiblePodman開(kāi)源

2018-01-29 11:40:44

LinuxAndroidTermux

2021-07-25 10:34:17

FedoraPodmanLinux

2010-10-12 13:40:54

Linuxsudo

2022-06-30 13:54:16

BottlesLinuxWindows

2021-07-31 12:58:53

PodmanLinux虛擬機(jī)

2017-09-18 10:05:15

WindowsLinux容器

2011-03-25 11:21:36

NagiosLinux

2022-06-23 09:55:56

WineZGUILinux 桌面Windows 應(yīng)用

2017-09-19 15:40:23

Linuxsudo命令密碼

2019-12-05 10:30:17

LinuxMultitail

2011-03-22 10:06:27

LinuxZFS

2020-06-11 14:33:10

MacBookLinux軟件

2010-11-17 09:29:31

linux Fedora 13Ubuntu 10.0
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)