Proxmox给容器设置特权——浪浪云

前言

在虚拟化技术日益普及的今天,Proxmox凭借其强大的功能和开源的特性,成为众多企业和开发者的首选虚拟化平台。在使用Proxmox进行容器管理时,合理设置容器特权可以极大地提升系统的灵活性和安全性。本文将深入探讨如何在Proxmox中为容器设置特权,以满足不同应用场景的需求。特别感谢浪浪云对本次文章的赞助与支持。作为云计算领域的佼佼者,浪浪云以其卓越的技术实力和贴心的服务赢得了广大用户的信赖。无论是云存储、云计算还是其他云服务,浪浪云始终致力于为客户提供高效、可靠的解决方案。选择浪浪云,您将享受到无与伦比的技术支持和服务体验。

容器选项

Pasted image 20241010091221

编辑容器配置文件

Pasted image 20241010091533

  1. 命令行启用特权模式
  • 如果通过Web界面无法启用特权模式,可以尝试使用命令行。
  • 编辑LXC容器的配置文件(通常位于/etc/pve/lxc/<CTID>.conf),添加或修改以下行:

无特权:

unprivileged: 1

有特权:

lxc.privileged: 1

Pasted image 20241010091629

### 找回或重置 Proxmox 虚拟机管理员密码的方法 #### 方法一:通过挂载 LVM 并修改根文件系统中的密码 当面对物理主机上的 Proxmox VE 7.2 ISO 镜像时,如果忘记了 `pve` 的 root 密码,则可以通过以下方式来重置: 1. 使用 Live CD 或者其他可引导介质启动机器。 2. 创建临时挂载点 `/mnt` 并将逻辑卷映射器(LVM)分区 `/dev/mapper/pve-root` 挂载到该位置。 ```bash mount /dev/mapper/pve-root /mnt ``` 3. 利用 `chroot` 命令切换环境至已挂载的目标目录并执行命令以更改 root 用户的密码[^1]。 ```bash chroot /mnt passwd root ``` 4. 更改完成后记得卸载之前挂载的设备,并正常重启服务器以便应用新的设置。 --- #### 方法二:利用 GRUB 编辑模式绕过现有认证机制 对于基于 Linux 发行版构建的虚拟化平台,在无法访问图形界面的情况下也可以尝试此方法。具体操作如下所示: 1. 开启目标虚拟机实例直至出现 GRUB 引导菜单前的画面;此时迅速按下键盘上任意键阻止自动加载过程继续进行下去。 2. 当显示 GRUB 主页之后选择默认项并通过按键导航定位光标于该项处随后敲击字母 e 进入编辑状态。 3. 将原本含有只读属性 (`ro`) 参数替换成为读写形式(`rw`) ,紧接着在同一行末尾追加指令串 `init=/sysroot/bin/sh` 来指定初始化程序路径[^2]。 ```text linux16 ... rw init=/sysroot/bin/sh ``` 4. 修改完毕后确认无误即可以组合键 Ctrl+X 提交变更从而让改动生效。 5. 接下来会获得一个拥有超级用户权限级别的 shell 终端窗口,在这里先运行 `chroot /sysroot` 实现改变当前工作目录的目的然后再去更新 root 密码。 ```bash chroot /sysroot passwd root ``` 6. 设置好新密码以后还需创建 `.autorelabel` 文件标记下次启动需重建 SELinux 上下文标签信息最后才允许计算机恢复正常运作流程。 ```bash touch /.autorelabel exit reboot ``` --- #### 方法三:针对 Docker 容器内部署的服务如 GitLab 管理员账户恢复措施 考虑到某些场景可能是由于容器化的应用程序而导致的问题,比如使用 Docker 构建起来的 GitLab 应用服务遇到了类似的困境——丢失了具有最高级别特权的身份验证凭证。那么解决思路就变成了直接进入到对应的容器环境中进而调整数据库记录里的相关内容达到目的。 1. 获取正在运行着 GitLab WebUI 的那个特定容器 ID 号或者是名称字符串作为参数传递给后续命令调用。 ```bash docker ps | grep gitlab ``` 2. 采用交互式的 Bash Shell 登录手段连接到上述查询所得的结果所指向的那个实体之上。 ```bash docker exec -it <container_id_or_name> /bin/bash ``` 3. 在获取到了足够的控制权之后便能够顺利开启 Rails 控制台工具准备开展下一步动作了。 ```ruby gitlab-rails console production ``` 4. 查询出对应邮箱地址关联的第一个匹配对象赋值给变量 user 存储起来方便后面的操作处理。 ```ruby user = User.find_by(email: 'admin@example.com') ``` 5. 对选定出来的这条记录实施密码字段更新作业并将变动同步保存入库结束整个修复环节的工作流。 ```ruby user.password = "new_password" user.save! ``` ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

geekrabbit

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值