1.如何修改etc/apt/sources.list?
2.source /etc/profile
3.(2)从源码到dashboard-单节点部署k8s1.26-部署etcd并使用etcdctl命令操作etcd
4./etc/ld.so.conf详解
如何修改etc/apt/sources.list?
首先要求使用的用户是这个人文件的所有者,这个文件的所有者应该是 root 。之后 chmod /etc/apt/sources.list 这样所有人都能修改了。
之后别忘了chmod /etc/apt/sources.list
改回这个文件的权限。
/etc/apt/sources.list 是包管理工具 apt 所用的记录软件包仓库位置的配置文件,同样的大掌门游戏源码还有位于 /etc/apt/sources.list.d/*.list 的各文件。
sources.list 条目格式
sources.list 文件中的条目一般都有如下所示的形式:
deb :
/源列表
发行版 (Distribution):跟在仓库地址后的是发行版。发行版有两种分类方法,一类是发行版的具体代号,如 xenial,trusty, precise 等;还有一类则是发行版的发行类型,如oldstable, stable, testing 和 unstable。
另外,控件源码网站在发行版后还可能有进一步的指定,如 xenial-updates, trusty-security, stable-backports 等。
软件包分类 (Component):跟在发行版之后的就是软件包的具体分类了,可以有一个或多个。
不同的 Linux 发行版对软件有着不同的分类,如:
1.Debian
(1)main:包含符合 DFSG 指导原则的自由软件包,而且这些软件包不依赖不符合该指导原则的软件包。这些软件包被视为 Debian 发型版的一部分。
(2)contrib:包含符合 DFSG 指导原则的自由软件包,不过这些软件包依赖不在 main 分类中的软件包。
(3)non-free:包含不符合 DFSG 指导原则的好运虎源码非自由软件包。
2.Ubuntu
(1)main:官方支持的自由软件。
(2)restricted:官方支持的非完全自由的软件。
(3)universe:社区维护的自由软件。
(4)multiverse:非自由软件。
(5)Ubuntu 对软件包的分类可以用下表来表示:
<1>自由软件
<2>非自由软件
<3>官方支持的 : Main Restricted
<4>非官方支持的 : Universe Multiverse
source /etc/profile
/etc/profile 是一个系统级别的环境变量设置文件,每当用户登录时,它会自动运行,设置的内容对所有用户通用。这个文件的作用类似于系统级别的"点命令",通过".bashrc",root用户在登录时会执行特定的抛物点源码配置,仅对当前用户生效。如果你使用bash shell,这些设置才会起作用。此外,rpm(Red Hat、Fedora、CentOS的包管理器)和tar.gz包在安装和文件类型上有所区别:rpm包含二进制文件,可以直接执行,而tar.gz通常是源代码,需要编译后才能运行,类似于Windows的python原理源码exe文件,可以直接运行。
source命令还有一个实用的功能,即当你对初始化文件(如bashrc)进行修改后,使用source命令可以立即使这些更改生效,无需注销并重新登录,提高了用户的操作效率。
(2)从源码到dashboard-单节点部署k8s1.-部署etcd并使用etcdctl命令操作etcd
在上一章中,我们已经准备好了8个二进制文件,存储在/opt/kubernetes/bin目录下。接下来,我们将进行etcd的单节点部署,并利用etcdctl命令对etcd数据库进行操作。请确保在实际操作中,将.0.4.替换为你自己的机器IP地址。步骤一:编译证书工具cfssl
为了支持k8s的https通信,我们需要cfssl工具。你可以从GitHub下载v1.6.3的版本,或者自行编译得到cfssl和cfssljson这两个二进制文件。步骤二:生成根证书
首先创建ca-config.json和csr的json配置文件,然后生成ca证书和密钥文件。步骤三:生成etcd证书
接着,为etcd创建对应的json配置文件,生成etcd-key.pem和etcd.pem证书。步骤四:启动etcd服务
在cfg目录下,为etcd设置环境变量,确保IP地址正确。在Ubuntu环境下,我们需要在/etc/systemd/system中创建etcd.service文件,并启动服务进行检查。步骤五:配置etcdctl并测试数据操作
etcdctl操作需要证书支持。将相关的环境变量设置到/etc/profile中,然后进行写入和读取数据的测试,确认etcd是否正常工作。 特别注意,之前的1.9版本k8s使用ETCDCTL_API=V2,而在1.版本中,我也选择开启该功能。/etc/ld.so.conf详解
/etc/ld.so.conf文件是Linux系统中记录编译时动态库路径的关键配置文件。默认情况下,系统在编译时只会查找/lib和/usr/lib目录下的库文件。然而,当通过源码包安装软件时,如果未在该文件中添加如/usr/local/lib这样的额外库路径,即便已成功安装源码包,仍可能因系统未知源码包的存在而遇到.so库找不到的问题。
解决此问题有两方法:一是安装源码包时,通过--prefix指定库文件的安装路径为/usr/lib,这样无需额外配置。二是直接将/usr/local/lib目录添加到/etc/ld.so.conf文件中,该方法效率较高。
此外,ldconfig是位于/sbin下的程序,其主要功能是将/etc/ld.so.conf中列出的路径下的库文件缓存到/etc/ld.so.cache文件中,以提高库文件的访问效率。当安装新的库文件或修改/etc/ld.so.conf文件以添加新的库搜索路径时,运行ldconfig命令,将确保所有库文件被正确缓存到文件/etc/ld.so.cache中,避免因找不到库而产生的问题。