12 2020 档案
摘要:查看主机名查看当前系统主机名,输入hostname命令查看。 如果是centos7版本,可以用 hostnamectl查看详细的信息。 如果只是临时修改主机名,可以使用 hostname 新主机名。 hostname修改的主机名,重启网卡服务会自动还原。 永久修改主机名要修改静态主机名,即修改/et
阅读全文
摘要:文件描述符 每个进程拥有自己的标准输入流、标准输出流、标准错误流。这几个标准流说起来很复杂,但其实都是文件。 标准输入流(用 0 表示)可以作为进程执行的上下文(进程执行可以从输入流中获取数据)。 标准输出流(用 1 表示)中写入的结果会被打印到屏幕上。 如果进程在执行过程中发生异常,那么异常信息会
阅读全文
摘要:ps -ef 的结果如下图所示: UID 指进程的所有者; PID 是进程的唯一标识; PPID 是进程的父进程 ID; C 是 CPU 的利用率(就是 CPU 占用); STIME 是开始时间; TTY 是进程所在的 TTY,如果没有 TTY 就是 ?号; TIME; CMD 是进程启动时的命令,
阅读全文
摘要:本文转载自:https://www.cnblogs.com/lsdb/p/7171779.html curl和wget基础功能有诸多重叠,如下载等。 非要说区别的话,curl由于可自定义各种请求参数所以在模拟web请求方面更擅长;wget由于支持ftp和Recursive所以在下载文件方面更擅长。类
阅读全文
摘要:总结 硬链接: 与普通文件没什么不同,inode 都指向同一个文件在硬盘中的区块。一个硬链接仅仅是一个文件名,多个文件名指向同一索引节点(Inode)。(一个文件可以有好几个文件名,只有将最后一个文件名删除,才能把这个文件从磁盘上删掉)。 软链接: 它是一个包含了路径信息的小小的指定文件,保存了其代
阅读全文
摘要:/etc/profile 其实看名字就能了解大概了, profile 是某个用户唯一的用来设置环境变量的地方, 因为用户可以有多个 shell 比如 bash, sh, zsh 之类的, 但像环境变量这种其实只需要在统一的一个地方初始化就可以了, 而这就是 profile. 当用户第一次登录时,该文
阅读全文
摘要:配置环境变量的时候可以修改$HOME/.bashrc文件,也可以修改/etc/profile文件,这两者的区别如下:配置环境变量中 $HOME/.bashrc 和 /etc/profile 的区别 Golang 安装 首先我们到Golang 官网(由于国内无法访问 Golang 官网,推荐到Gola
阅读全文
摘要:/usr/local 目录和 /opt 目录都是用来安装第三方软件的目录,所谓第三方软件其实就是用户自己安装的软件,区别于安装系统时自带的软件。 /usr/local 下一般是你安装软件的目录,这个目录就相当于在windows下的programefiles这个目录; /opt 这个目录是一些大型软件
阅读全文
摘要:首次安装的centos操作系统是没有安装wget的,所以首先需要先安装wget,然后才能使用wget下载文件。 1、第一步,保证centos能正常连网。使用命令 :yum -y install wget ,稍等一会即可安装完成。 2、使用wget下载文件,以下载go为例。 (1)进入要下载的文件所在
阅读全文
摘要:cat > 文件名 << EOF:用来创建文件,在这之后输入的任何东西,都是在文件里的,输入完成之后以EOF结尾代表结束。 cat >> 文件名 << EOF:和上面一样,只不过是追加到文件,上面那个是覆盖写。 举例: ## >是覆盖写,文件不存在则创建 $ cat > a.txt << EOF >
阅读全文
摘要:本文转载自:https://blog.csdn.net/zhengwish/article/details/87882259 在粘贴前先设置进入粘贴插入模式,即不会自动缩进和连续注释 :set paste
阅读全文
摘要:前面课时我分别介绍了 Docker 常见的联合文件系统解决方案: AUFS 和 Devicemapper。今天我给你介绍一个性能更好的联合文件系统解决方案—— OverlayFS。 OverlayFS 的发展分为两个阶段。2014 年,OverlayFS 第一个版本被合并到 Linux 内核 3.1
阅读全文
摘要:上一课时我带你学习了什么是联合文件系统,以及 AUFS 的工作原理和配置。我们知道 AUFS 并不在 Linux 内核主干中,所以如果你的操作系统是 CentOS,就不推荐使用 AUFS 作为 Docker 的联合文件系统了。 那在 CentOS 系统中,我们怎么实现镜像和容器的分层结构呢?我们通常
阅读全文
摘要:AUFS 是 Docker 最早使用的文件系统驱动,多用于 Ubuntu 和 Debian 系统中。在 Docker 早期,OverlayFS 和 Devicemapper 相对不够成熟,AUFS 是最早也是最稳定的文件系统驱动。 接下来,我们就看看如何配置 Docker 的 AUFS 模式。 1.
阅读全文
摘要:我们知道,Docker 主要是基于 Namespace、cgroups 和联合文件系统这三大核心技术实现的。 联合文件系统(Union File System,Unionfs)是一种分层的轻量级文件系统,它可以把多个目录内容联合挂载到同一目录下,从而形成一个单一的文件系统,这种特性可以让使用者像是使
阅读全文
摘要:上一课时我介绍了 Docker 网络实现,为我们的容器插上了网线。这一课时我将介绍 Docker 的卷,为我们的容器插上磁盘,实现容器数据的持久化。 1. 为什么容器需要持久化存储 容器按照业务类型,总体可以分为两类: 无状态的(数据不需要被持久化) 有状态的(数据需要被持久化) 显然,容器更擅长无
阅读全文
摘要:前面介绍了 Linux 的 Namespace 和 Cgroups 技术,利用这两项技术可以实现各种资源的隔离和主机资源的限制,让我们的容器可以像一台虚拟机一样。但这时我们的容器就像一台未联网的电脑,不能被外部访问到,也不能主动与外部通信,这样的容器只能做一些离线的处理任务,无法通过外部访问。所以今
阅读全文
摘要:1. 虚拟专用网VPN 由于IP地址的紧缺,一-个机构能够申请到的IP地址数往往远小于本机构所拥有的主机数。考虑到互联网并不很安全,一个机构内也并不需要把所有的主机接入到外部的互联网。实际上,在许多情况下,很多主机主要还是和本机构内的其他主机进行通信(例如,在大型商场或宾馆中,有很多用于营业和管理的
阅读全文
摘要:利用以太网交换机可以很方便地实现虚拟局域网VLAN (Virtual LAN)。在 IEEE 802.1Q标准中,对虚拟局域网VLAN是这样定义的: 虚拟局域网VLAN是由一些局域网网段构成的与物理位置无关的逻辑组,而这些网段具有某些共同的需求。每一个 VLAN 的帧都有一个明确的标识符,指明发送这
阅读全文
摘要:1. 桥接模式 桥接网络是指本地物理网卡和虚拟网卡通过VMnet0虚拟交换机进行桥接,物理网卡和虚拟网卡在拓扑图上处于同等地位,因此虚拟机和主机是平等的,相当于一个网络中的两台计算机。这样,设置虚拟机的IP和主机在同一网段时,即可实现主机与虚拟机的通信。 所以当我们要在局域网使用虚拟机,对局域网其他
阅读全文
摘要:1. 物理层设备 1.1 中继器 中继器又称转发器,主要功能是将信号整形并放大再转发出去,以消除信号经过一长段电缆后,因噪声或其他原因而造成的失真和衰减,使信号的波形和强度达到所需要的事求,进而扩网络传输的距离。其原理是信号再生(而非简单地将衰减的信号放大)。中继器有两个端口,数据从一个端口输入,再
阅读全文
摘要:有线路由器的结构图: 路由表举例 无线路由器: 下图有1个WAN口,4个LAN口。 WAN是英文Wide Area Network的首字母所写,即代表广域网; 而LAN则是Local Area Network的所写,即局域网。那么我们不妨给路由器上的WAN口和LAN口取一个中文名称,分别是广域网端口
阅读全文
摘要:默认网关(Default Gateway),也叫缺省网关,是子网与外网连接的设备,通常是一个路由器。当一台计算机发送信息时,根据发送信息的目标地址,通过子网掩码来判定目标主机是否在本地子网中,如果目标主机在本地子网中,则直接发送即可。如果目标不在本地子网中则将该信息送到默认网关/路由器,由路由器将其
阅读全文
摘要:tar -cvf - /home | tar -xvf - 是什么意思? tar 是unix/linux下的打包器。-cvf可以看做-c -v -f,-xvf则是-x -v -f。其中-c/-x分别表示create/extract,即打包/解包。-v 是verbose,表示显示打包/解包的详细过程。
阅读全文
摘要:使用不同的 Namespace,可以实现容器中的进程看不到别的容器的资源,但是有一个问题你是否注意到?容器内的进程仍然可以任意地使用主机的 CPU 、内存等资源,如果某一个容器使用的主机资源过多,可能导致主机的资源竞争,进而影响业务。那如果我们想限制一个容器资源的使用(如 CPU、内存等)应该如何做
阅读全文
摘要:Docker 是使用 Linux 的 Namespace 技术实现各种资源隔离的。 什么是 Namespace? 简单来说,Namespace 是 Linux 内核的一个特性,该特性可以实现在同一主机系统中,对进程 ID、主机名、用户 ID、文件名、网络和进程间通信等资源的隔离。Docker 利用
阅读全文
摘要:启动本地仓库 Docker 官方提供了开源的镜像仓库 Distribution,并且镜像存放在 Docker Hub 的 Registry 仓库下供我们下载。 我们可以使用以下命令启动一个本地镜像仓库: $ docker run -d -p 5000:5000 --name registry reg
阅读全文
摘要:Linux 系统中“一切皆文件”,所有文件都放置在以根目录为树根的树形目录结构中。在 Linux 看来,任何硬件设备也都是文件,它们各有自己的一套文件系统(文件目录结构)。 因此产生的问题是,当在 Linux 系统中使用这些硬件设备时,只有将Linux本身的文件目录与硬件设备的文件目录合二为一,硬件
阅读全文
摘要:我们知道 Docker 是基于 Namespace、Cgroups 和联合文件系统实现的。其中 Cgroups 不仅可以用于容器资源的限制,还可以提供容器的资源使用率。无论何种监控方案的实现,底层数据都来源于 Cgroups。 Cgroups 的工作目录为/sys/fs/cgroup,/sys/fs
阅读全文
摘要:导出容器 我们可以使用docker export CONTAINER命令导出一个容器到文件,不管此时该容器是否处于运行中的状态。导出容器前我们先进入容器,创建一个文件,过程如下。 首先创建容器busybox2,(注意:不加-it选项的话,容器会立刻停止) docker run -itd --name
阅读全文
摘要:镜像操作 镜像是一个只读的 Docker 容器模板,包含启动容器所需要的所有文件系统结构和内容。简单来讲,镜像是一个特殊的文件系统,它提供了容器运行时所需的程序、软件库、资源、配置等静态数据。即镜像不包含任何动态数据,镜像内容在构建后不会被改变。 Dockerfile指令 Dockerfile指令介
阅读全文
摘要:Docker整体架构 Docker 整体架构采用 C/S(客户端 / 服务器)模式,主要由客户端和服务端两大部分组成。客户端负责发送操作指令,服务端负责接收和处理指令。客户端和服务端通信有多种方式,既可以在同一台机器上通过UNIX套接字通信,也可以通过网络连接远程通信。 Docker 客户端 Doc
阅读全文
摘要:1. 镜像 镜像是什么呢?通俗地讲,它是一个只读的文件和文件夹组合。它包含了容器运行时所需要的所有基础文件和配置信息,是容器启动的基础。所以你想启动一个容器,那首先必须要有一个镜像。镜像是 Docker 容器启动的先决条件。 简单来讲,镜像是一个特殊的文件系统,它提供了容器运行时所需的程序、软件库、
阅读全文
摘要:Docker 是跨平台的解决方案,它支持在当前主流的各大平台安装,包括 Ubuntu、RHEL、CentOS、Debian 等 Linux 发行版,同时也可以在 OSX 、Microsoft Windows 等非 Linux 平台下安装使用。 因为 Linux 是 Docker 的原生支持平台,所以
阅读全文
摘要:Linux下一般利用ifconfig获取网络接口设备信息,其输入如下所示: eth0 Link encap:Ethernet HWaddr 52:54:00:FA:9E:91 inet addr:192.168.129.46 Bcast:192.168.129.255 Mask:255.255.25
阅读全文
摘要:1.列出所有 tcp与udp 端口 netstat -tulnp Active Internet connections (servers and established) Proto Recv-Q Send-Q Local Address Foreign Address State PID/Pro
阅读全文
摘要:第1步:将docker镜像源修改为阿里云 在 /etc/docker/daemon.json 文件中添加以下参数(没有该文件则新建) #修改或创建文件 vim /etc/docker/daemon.json #添加以下 { "registry-mirrors": ["https://9cpn8tt6
阅读全文
摘要:cAdvisor cAdvisor 是谷歌开源的一款通用的容器监控解决方案。cAdvisor 不仅可以采集机器上所有运行的容器信息,还提供了基础的查询界面和 HTTP 接口,更方便与外部系统结合。所以,cAdvisor很快成了容器指标监控最常用组件,并且 Kubernetes 也集成了 cAdvis
阅读全文
摘要:默认情况下, docker 命令会使用 Unix socket 与 Docker 引擎通讯。 而只有 root 用户和docker 组的用户才可以访问 Docker 引擎的Unix socket。 (可以参考:Docker架构及组件剖析) docker 组内用户执行命令的时候会自动在所有命令前添加
阅读全文
摘要:#include <stdlib.h> int system(const char *command); system()函数会新起一个子进程来调用要执行的命令,执行完了之后还会回到你原来的程序中。 exec函数族 int execlp(const char*file,const char*arg,
阅读全文