InfraPub 为您找到相关结果 122

Kubernetes 部署 Nacos 1.4 集群 · 小豆丁

-binding subjects: - kind: ServiceAccount name: nacos-admin namespace: devops roleRef: kind: ClusterRole name: nacos-admin-clusterrole apiGroup: rbac.authorization.k8s.io 执行部署 Nacos RBAC 资源 -n:部署的 Namespace $ kubectl apply -f nacos-rbac.yaml -n mydlqcloud 2、创建数据库配置 ConfigMap 资源 nacos-config.yaml apiVersion: v1 kind: ConfigMap metadata: name: nacos...阅读全文

博文 2021-02-24 10:10:29 www.mydlq.club

使用 imagemagick 的 convert 命令处理图片

$convert image.png -crop 100x100 crop.png 可以裁剪位置的相对位置 -gravity: $convert image.png -gravity northeast -crop 100x100+0+0 crop.png -gravity即坐标原点,有northwest:左上角,north:上边中间,northeast:右上角,east:右边中间…… 5,旋转 -rotate $convert image.png -rotate 45 rotate.png 默认的背景为白色,我们可以背景色: $convert image.png -backround black -rotate 45 rotate.png $convert image.png...阅读全文

nsenter 及 Linux命名空间 简介

nsenter 是一个可以在进程的命令空间下,运行程序的命令,它位于 util-linux 包中。 nsenter 用途 nsenter 的一个典型用途是进入容器的网络名字空间,进行网络相关的排障。大多数容器,为了保持轻量,没有包含较为基础的命令,比如说 ip,ping,telnet,ss,tcpdump等,这就给容器内的网络调试带来困扰。这时就可以使用 nsenter 命令仅进入到容器的网络命名空间,使用宿主机的相关命令调试容器网络。 此外,nsenter也可以进入 mnt, uts, ipc, pid, user 命令空间,以及根目录和工作目录。 nsenter 使用 首先看下nsenter命令的语法: nsenter [options] [program [arguments...阅读全文

博文 2020-12-15 11:22:44 debian.cn

Debian的版本号及distributions

Code name debian archive里真正的distribution目录用的是code name,比如sarge、etch,其他名字的distribution目录如stable/testing/unstable、debian 3.1等都是指向code name目录的符号连结。用code name的好处是可以一致地一个distribution,而不管该distribution release的状态,譬如当前处于testing的etch distribtuion在release后仍然可以用etch来引用它。 sid是一个特殊的code name,它的distribution永远处于unstable状态,永远不会release。 Release testing指向下一个要...阅读全文

博文 2021-01-28 17:50:08 debian.cn

如何在 Debian 中锁定软件包版本

在 Debian 或基于 Debian/Ubuntu 的 Linux 发行版系统中,有多种方法可以将软件包锁定在一个特定的版本。也就是说,可以将某个软件固定维护在版本,不让其随系统更新而更新。 为什么要锁定软件包,防止软件包更新呢? 通常是用户对某个软件版本有特定的需求,或更新期间、更新后可能会导致问题,所以需要维持特定的版本不进行升级。在常见的数据类服务中,这样的需求很有代表性,比如缓存Redis、数据队列RabbitMQ等。还有部分服务依赖于系统中特定的软件,比如的 Linux 内核版本,这时就需要锁定内核版本防止因内核升级导致服务异常。 我们这里介绍两种方式,防止软件包被更新。需要注意的是,如果软件包被其他软件所依赖,阻止其更新,可能会导致关联问题。建议将尽量少的的软件包锁定...阅读全文

博文 2019-01-09 13:19:52 debian.cn

最全 MongoDB 基础教程

MongoDB 创建数据库 - 格式:use DATABASE_NAME - use ruochen - db 创建数据库需要插入一条数据才会在列表中显示 - db.ruochen.insert({'name': '若尘'}) - show dbs 删除数据库 格式:db.dropDatabase() use ruochen db.dropDatabase() show dbs 创建集合 - 格式:db.createCollection(name, options) - name: 要创建的集合名称 - options: 可选参数,有关内存大小及索引的选项 字段 类型 描述 capped 布尔 (可选)如果为 true,则创建固定集合。固定集合是指有着固定大小的集合,当达到最大值时,它...阅读全文

博文 2021-02-22 07:45:45 OSChina

Irssi: 命令行下的 IRC 客户端

/list # 频道列表 /names [#聊天室] # 列出当前服务器或聊天室下的所有人员名称(无法列出隐藏人员) /who # 查看频道的所有人 /whois [name] # 查看某人的基本资料 /ison … # 查询别名是否在线 /info # 查询服务器信息 /admin # 查询当前服务器上的Admin /lusers # 查询当前服务器上的统计信息 /motd # 查询当前服务器今日的统计信息 /links # 查询当前的服务器,解析当前的有几个服务器 聊天 /msg # 向某人发私消息(会打开新窗口) /query # 向某人发私消息(新开窗口且转换到这个窗口) /say 阅读全文

博文 2021-01-28 17:50:33 debian.cn

Kafka 常用命令行工具

创建主题kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic infras_cn 查看所有主题kafka-topics.sh --zookeeper localhost:2181 --list 查看主题的详细信息kafka-topics.sh --zookeeper localhost:2181 --topic infras_cn --describe 命令行生产者kafka-console-producer.sh --broker-list localhost:9092 --topic infras_cn 行消费者消费所...阅读全文

HAProxy用法详解 最详细中文文档

(milliseconds),即1/1000秒; s: 秒(seconds); m: 分钟(minutes); h:小时(hours); d: 天(days); 2.3 全局配置 * 进程管理及安全相关的参数 – chroot :修改haproxy的工作目录至的目录并在放弃权限之前执行chroot()操作,可以提升haproxy的安全级别,不过需要注意的是要确保的目录为空目录且任何用户均不能有写权限; – daemon:让haproxy以守护进程的方式工作于后台,其等同于“-D”选项的功能,当然,也可以在命令行中以“-db”选项将其禁用; – gid :以的GID运行haproxy,建议使用专用于运行haproxy的GID,以免因权限问题带来风险; – group...阅读全文

博文 2014-05-10 17:14:46 debian.cn

Redis 命令、特性介绍与性能调优

”user:1000:followers”来说,节省了寥寥的存储空间,却引发了可读性和可维护性上的麻烦 最好使用统一的规范来设计Key,比如”object-type:id:attr”,以这一规范设计出的Key可能是”user:1000″或”comment:1234:reply-to” Redis允许的最大Key长度是512MB(对Value的长度限制也是512MB) String String是Redis的基础数据类型,Redis没有Int、Float、Boolean等数据类型的概念,所有的基本类型在Redis中都以String体现。 与String相关的常用命令: SET:为一个key设置value,可以配合EX/PX参数key的有效期,通过NX/XX参数针对key是否存在的情况进行区别操作...阅读全文

博文 2018-10-27 10:37:55 debian.cn

如何为 k8s 节点增加污点,或者移除污点?

kubectl taint node node1 key2=value2:NoSchedule ``` 查看taint: `kubectl describe node node1` 删除taint: ``` kubectl taint node node1 key1:NoSchedule- # 这里的key可以不用value kubectl taint node node1 key1:NoExecute- kubectl taint node node1 key1- 删除key所有的effect kubectl taint node node1 key2:NoSchedule- ``` master节点设置taint `kubectl taint...阅读全文

Debian 环境下简单配置 Bind9 服务

192.168.10.2 www IN CNAME @ ftp IN CNAME @ proxy IN CNAME @ blog IN CNAME @ mysql IN CNAME @ * IN A 192.168.10.2 这里了域 debian.cn 的授权 DNS服务器为 ns.debian.cn. 即为本机,因为随后的正向解析记录(即A记录),将 ns 指向到了本地的IP地址 192.168.10.2。 同时我们也添加了几个 CNAME 别名记录,都指向 debian.cn。 最后添加泛解析支持,所有对 *.debian.cn 的請求都会被解析到192.168.10.2 。 1.2 反向解析:db.192.168内容如下: $TTL 604800 @ IN SOA debian.cn...阅读全文

博文 2016-12-18 22:26:30 debian.cn

如何在 Nginx 中配置 gRPC 的代理

gRPC服务。 nginx是使用http服务器监听gRPC的请求。示例如下: http { server { listen 80 http2; access_log logs/access.log main; location / { # The 'grpc://' prefix is optional; unencrypted gRPC is the default grpc_pass grpc://localhost:50051; } } } 指令grpc_pass用来代理的gRPC服务器地址,前缀协议有两种: grpc://:与gRPC服务器端交互是以明文的方式 grpcs://:与gRPC服务器端交互式以TLS加密方式 gRPC服务器地址的前缀“grpc://”是可以忽略,默认就是明文...阅读全文

博文 2018-04-20 11:03:39 debian.cn

Docker 快速入门之 Dockerfile

, LABEL, EXPOSE, ENV, ADD, COPY, ENTRYPOINT, VOLUME, USER, WORKDIR, ARG, ONBUILD, SHELL等指令,这里只选择常用的几个进行讲解,可结合上面的示例进行理解。其它的请自行查阅官方文档。 3.1 FROM FROM 指令用于要操作的基础镜像,因为在我们构建我们自己的镜像的时候需要一个基础镜像。 语法: FROM [AS ] FROM [:] [AS ] 其中 [AS ] 为一个名称,在一个 Dockerfile 中多次使用 FROM 时如有需要,可用 COPY --from= 语法进行复制。 3.2 RUN RUN 指令...阅读全文

博文 2017-12-16 13:50:31 debian.cn

Kubernetes 使用 PodPreset 注入信息到 Pods_哎_小羊的博客

文章目录 1、PodPreset 介绍2、环境、软件准备3、K8s 启用 PodPreset 配置4、PodPreset 注入信息示例4.1、匹配 Pod 加载配置4.2、匹配某个 Namespace 下所有 Pod 加载配置 1、PodPreset 介绍 PodPreset 是一种 K8s API 资源,用于在创建 Pod 时注入其他运行时需要的信息,这些信息包括 secrets、volume mounts、environment variables 等,我们可以使用标签选择器来某个或某些 Pod,来将 PodPreset 预设信息应用上去。使用 PodPreset 的好处就是我们可以将一些常用 Pod 预设信息配置为模板,这样就不需要显式为每个 Pod 提供所有信息,简化...阅读全文

博文 2021-01-27 18:47:00 CSDN博客

Mac OS下如何安装卸载 Homebrew

: /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" 在安装 Homebrew 时,如果遇到墙的问题,可通过设置环境变量 ALL_PROXY,通过通用的代理服务,绕过限制。 卸载 Homebrew 卸载Homebrew同样只需要执行一条命令即可,注意最后一个单词从 install 换为 uninstall 即可, /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/uninstall)" Homebrew 的日常使用 安装软...阅读全文

博文 2020-04-04 21:48:16 debian.cn

如何快速导出 route53 中指定域名的DNS记录为Bind格式?

这三行脚本不错,方便快捷。 可以直接导出 Route53 中域名的解析记录,为 bind 格式, ``` #!/bin/bash zonename=$1 hostedzoneid=$(aws route53 list-hosted-zones --output json | jq -r ".HostedZones[] | select(.Name == \"$zonename.\") | .Id" | cut -d'/' -f3) aws route53 list-resource-record-sets --hosted-zone-id $hostedzoneid --output json | jq -jr '.ResourceRecordSets...阅读全文

AWS IAM 基本概念介绍

ComplianceIntegrated with many AWS servicesEventually ConsistentFree to use 基本概念 User 您可以在账户中创建与组织中的用户对应的各 IAM 用户,而不是与他人共享您的根账户凭证。IAM 用户不是单独的账户;它们是您账户中的用户。每个用户都可以有自己的密码以用于访问 AWS 管理控制台。您还可以为每个用户创建单独的访问密钥,以便用户可以发出编程请求以使用账户中的资源。 Group IAM中,组是 IAM 用户的集合。利用组,可为多个用户权限,以便更轻松地管理这些用户的权限。例如,您可能有一个名为 Admins 的组,并向该组授予管理员通常需要的权限类型。该组中的任何用户均自动具有分配给该组的权限。如果有新用户加入您的组织,并且需要管理员权限,则可...阅读全文

博文 2019-06-04 20:22:31 debian.cn

如何在 Debian 中安装 DHCP 服务器

/default/isc-dhcp-server 使用 INTERFACES 选项定义 DHCPD 响应 DHCP 请求所使用的接口。 比如,如果你想让 DHCPD 守护进程监听 eth0,按如下设置: INTERFACES="eth0" 同样记得为上面的接口配置静态地址。 步骤 2:在 Debian 中配置 DHCP 服务器 3、 DHCP 配置的主文件是 /etc/dhcp/dhcpd.conf, 你必须填写会发送到客户端的所有网络信息。 并且 DHCP 配置中定义了两种不同的声明,它们是: parameters - 如何执行任务、是否执行任务,还有要发送给 DHCP 客户端的网络配置选项。 declarations - 定义网络拓扑、客户端、为客户端提供地址,或将一组参数应用于一组声明...阅读全文

博文 2021-01-28 17:50:25 debian.cn

命令行下如何对字符进行十六进制的编码和解码?

比如,当我们需要查看 /etc/passwd 的内容时,可以通过对文件名编码,隐藏这个操作, ``` cat $(echo -e "\x2f\x65\x74\x63\x2f\x70\x61\x73\x73\x77\x64") ``` 如何对的字符串做 16 进制的编码?借助 od 命令即可, ``` $ echo /etc/passwd | od -A n -t x1 2f 65 74 63 2f 70 61 73 73 77 64 0a ```...阅读全文

漏洞扫描 容器安全Trivy

Trivy是一种适用于CI的简单而全面的容器漏洞扫描程序。Trivy可检测操作系统包(Alpine、RHEL、CentOS等)和应用程序依赖(Bundler、Composer、npm、yarn等)的漏洞。 Trivy很容易使用,只要安装二进制文件,就可以扫描了。扫描只需容器的镜像名称。与其他镜像扫描工具相比,例如Clair,Anchore Engine,Quay相比,Trivy在准确性、方便性和对CI的支持等方面都有着明显的优势。推荐在CI中使用它,在推送到container registry之前,您可以扫描本地容器镜像。...阅读全文

开源项目 2023-01-03 21:07:44

JavaFX 11 发布,与 JDK 拆分后的首个正式大版

JDK 11。 此次更新主要内容如下: 重要更新: JavaFX 模块:因为 JDK 不再包含 JavaFX,那么必须明确包含应用程序使用的 JavaFX 模块,详情见:https://openjfx.io/openjfx-docs/。 添加 API 以自定义 Spinner 控件的步骤重复计时。在 JavaFX 11 中修改值步骤之前,必须在 Spinner 控件箭头按钮上按下鼠标一段默认持续时间,JavaFX 11 中已添加两个新属性“initialDelay”和“repeatDelay”来配置此操作。 javafx.* 模块现在由应用程序类加载器加载,默认情况下不再具有权限。想要在启用安全管理器的情况下运行的应用程序需要使用“-Djava.security.policy”自定义策略...阅读全文

博文 2018-09-20 13:09:25 debian.cn

Debian 8 使用 Apache 部署 Ruby on Rails

systemctl restart apache2 部署多个Rails应用程序 有许多方法可以使用Passenger部署多个Rails应用程序。 最简单的方法是运行如上配置的多个不同的虚拟主机来托管单个Rails应用程序。 或者,您可以在单个虚拟主机中托管多个Rails应用程序。 本节介绍一个。 1.添加RailsBaseURI指令,虚拟主机配置中Rails应用程序的路径,如以下示例所示, /etc/apache2/sites-available/example.com.conf: DocumentRoot /var/www/html/example.com/public_html/ RailsBaseURI /app1 RailsBaseURI /app2 RailsBaseURI /app3 这些指...阅读全文

博文 2021-01-28 17:50:33 debian.cn

SVN切换分支用法汇总

参考这些命令,来更好地管理自己的代码仓库。1. svn switchsvn switch URL [PATH] 该命令的作用是将工作副本切换到URL的版本。如果了PATH,则该命令会将PATH的目录切换到URL的版本。如果省略PATH,则该命令将当前工作目录切换到URL的版本。2. svn checkoutsvn checkout URL [PATH] 该命令的作用是将URL的版本库checkout到PATH的本地目录。如果省略PATH,则该命令会在当前目录下创建一个与URL同名的本地目录,并在其中checkout版本库。3. svn listsvn list URL 该命令的作用是查看URL的版本库中的文件和目录。4. svn movesvn move old_URL...阅读全文

博文 2023-06-09 14:22:35 infras

RabbitMQ 高可用实现镜像队列

数据也是在三个节点之间同步,但 Queue 的实际存储只会在一个节点。我们发送消息到 Queue,其实是发送消息到节点下的 Queue。如下图所示,消息发送至队列 testQueue,无论发送者通过哪个 RMQ 节点执行发送,其最终的执行都会是在 MQ03 节点执行消息的存储。 说到这儿,可能有的小伙伴就要问了?说好的,RabbitMQ 集群提供高可用性呢?分析一下,RabbitMQ集群搭建完成后,如果不进行任何高可用配置,会有哪些问题呢? 单点故障会导致消息丢失:如果 MQ03 节点故障,那么 MQ03 中的消息就会丢失无法最大化的利用 RMQ 提升执行效率:既然每次发送到队列 testQueue 的消息都会在 MQ03 节点存储,那么何必搭建集群。 引入 RabbitMQ 的镜像...阅读全文

博文 2018-12-30 19:21:59 debian.cn

Kubernetes常用命令大全(持续更新)

autoscale deployment foo --min=2 --max=10 #### 自动扩展 deployment “foo” 编辑资源 kubectl edit svc/docker-registry #### 编辑名为 docker-registry 的 service KUBE_EDITOR="nano" kubectl edit svc/docker-registry #### 使用其它编辑器 动态伸缩pod kubectl scale --replicas=3 rs/foo #### 将foo副本集变成3个 kubectl scale --replicas=3 -f foo.yaml #### 缩放“foo”中的资源。 kubectl scale --current-replicas...阅读全文

博文 2020-03-13 12:35:13 debian.cn

三个简单而优秀的 Linux 网络监视器

你可以通过 iftop、Nethogs 和 vnstat 这三个 Linux 网络命令,了解有关你网络连接的大量信息。iftop 通过进程号跟踪网络连接,Nethogs 可以快速显示哪个在占用你的带宽,而 vnstat 作为一个很好的轻量级守护进程运行,可以随时随地记录你的使用情况。 iftop iftop 监听你的网络接口,并以 top 的形式展示连接。 这是一个很好的小工具,用于快速识别占用、测量速度,并保持网络流量的总体运行。看到我们使用了多少带宽是非常令人惊讶的,特别是对于我们这些还记得使用电话线、调制解调器、让人尖叫的 Kbit 速度和真实的实时波特率的老年人来说。我们很久以前就放弃了波特率,转而使用比特率。波特率测量信号变化,有时与比特率相同,但大多数情况下不是。 如果你只...阅读全文

博文 2017-11-07 00:07:38 debian.cn

PostgreSQL 13 正式版发布

挑战,尽管之前的 PostgreSQL 版本已经做了一些工作来减轻清理的开销。 PostgreSQL 13 通过引入用于索引的并行化清理来继续改进清理系统 。具体来说,VACUUM 命令能够并行处理索引。可以使用 VACUUM 命令上的新 PARALLEL 选项(或 vacuumdb 上的 --parallel)来访问其功能,该选项允许用户用于清理索引的并行 Worker 进程的数量。要注意的是,这不适用于 FULL 选项。由于管理员可以选择要运行的并行 Worker 进程的数量,因此可以针对特定的工作负载调整此新功能的使用。除了这些性能优势之外,数据插入现在还可以触发自动清理过程。 复制插槽(Replication slots),用于防止在复制副本接收到预写日志(WAL, write...阅读全文

博文 2020-10-04 20:07:23 debian.cn

bmon:一个强大的网络带宽监视和调试工具

(初学者说明:RX 表示每秒接收数据,TX 表示每秒发送数据): $ bmon bmon - Linux 带宽监视按 d 键可以查看更详细的带宽使用情况的图形化统计信息,参考下面的截图。 bmon - Detailed Bandwidth Statistics按 Shift + ? 可以查看快速指南。再次按 Shift + ? 可以退出(指南)界面。 bmon – 快速指南通过 Up 和 Down 箭头键可以查看特定网卡的统计信息。但是,要监视一个特定的网卡,你也可以像下面这样作为命令行参数。 选项 -p 了要显示的网卡,在下面的例子中,我们会监视网卡 enp1s0: $ bmon -p enp1s0 bmon – 监控以太网带宽要查看每秒位数而不是每秒字节数,可以像下面这样使用 -b...阅读全文

博文 2021-01-28 17:50:27 debian.cn

兼容 tmux 的文件上传/下载工具 trzsz ( trz / tsz ) 使用指南 支持进度条和目录传输

– 安装 tabby-trzsz 插件即可。electerm – 升级到 1.19.0 以上的版本即可。trzsz-go – 只要是支持本地 shell 的终端就可以用。trzsz.js – 让运行在浏览器中的 webshell 和用 electron 开发的终端支持 trzsz。 如果你的终端也支持 trzsz,请告诉我,我很乐意将它加到此列表中。trzsz 使用指南trz 上传文件trz 命令可以不带任何参数,将上传文件到当前目录。也可以带一个目录参数,上传到哪个目录。trz /tmp/ tsz 下载文件tsz 可以带一个或多个文件名(可使用相对路径或绝对路径,也可使用通配符),将下载的文件。tsz file1 file2 file3 -q 静默模式trz -q 或 tsz -q...阅读全文

Gitlab CI 配置文件 .gitlab

。CI_COMMIT_REG_NAME就是一个很好的例子,它的值表示用于构建项目的分支或tag名称。除了在.gitlab-ci.yml中设置变量外,还有可以通过GitLab的界面上设置私有变量。 更多关于variables。 cache Gitlab Runner v0.7.0 开始引入。 cache用来需要在job之间缓存的文件或目录。只能使用该项目工作空间内的路径。 从GitLab 9.0开始,pipelines和job就默认开启了缓存 如果cache定义在jobs的作用域之外,那么它就是全局缓存,所有jobs都可以使用该缓存。 缓存binaries和.config中的所有文件: rspec: script: test cache: paths: - binaries/ - .config 缓存git中没有被跟踪的文件...阅读全文

博文 2018-12-12 21:01:19 ci.yaml 详解(上)

腾讯云 TKE 集群如何修改单节点的Pod数量的上限?

TKE集群在创建时,会设置节点上允许的Pod数量的上限,一般默认是64个。 这里介绍,如何把单节点的 Pod 数量上限,从 32个 调整到 64个,分两种: 1. 新增的节点,需要在创建节点时最大Pod 的上限,增加一个自定义项即可, ![94e3.png](https://img.debian.cn/210826/d5feab6345ffe7746904b417470594e3.png) 2. 存量的节点可以使用这个脚本更新一下配置: ``` #!/bin/bash grep MAX_PODS /etc/kubernetes/kubelet if [ $? -eq 0 ]; then echo 'patched already' sed...阅读全文

Numpy 库准备放弃支持 Python 2

持 Python 3。 NumPy 的最后一个 Python 2 的版本,将被为一个长期支持版(LTS),意味着我们会长期持续合并 Bug 修复和制作 Bug 补丁。LTS 版将会支持到 2019 年 12 月 31 日。 从 2020 年 1 月 1 日起,NumPy 社区对 Python 2 的支持,就彻底说再见了。不过,PyPI 会继续支持 Python 2。如果有商业厂商希望在 2020 年 1 月 1 日后扩大 LTS 的支持,我们愿意让他们使用 NumPy 官方 repo 中的 LTS 分支。...阅读全文

博文 2017-11-18 08:30:29 debian.cn

Harbor项目发布v1.7 2018圆满收官

有用; · 在线GC(垃圾回收)- 现在 Harbor 可以清理从后端存储中已删除的镜像且在执行GC操作之前不再要求中断 Harbor 的运行。这对那些在 CI 构建流水线中使用Harbor而导致大量镜像垃圾碎片的用户来说是个福音; · 支持定制 Logger -允许用户为在 job 服务中运行的任务定制不同的 logger,支持STDOUT / STDERR / FILE / DB多种类型; · 优化Helm Chart库 - 持续优化 Helm Chart 管理体验,同时也修复了多个相关缺陷,包括: 通用搜索结果中包含 Helm Chart 的相关结果;支持给 Helm Chart 打标签;删除的 Helm Chart (删除 Chart 下所有的版本); 再次感谢广大用户长期以...阅读全文

博文 2018-12-30 09:35:15 debian.cn

Tmux 快速教程:快捷键和配置

session window 窗口:session 中可以有不同的 window(但是同时只能看到一个 window) tmux new-window 创建一个新的 window tmux list-windows tmux select-window -t :0-9 根据索引转到该 window tmux rename-window 重命名当前 window pane 面板:window 中可以有不同的 pane(可以把 window 分成不同的部分) tmux split-window 将 window 垂直划分为两个 pane tmux split-window -h 将 window 水平划分为两个 pane tmux swap-pane -[UDLR] 在的方向交换 pane tmux...阅读全文

博文 2017-11-07 15:17:49 debian.cn

十个增加 Linux Shell 脚本趣味的小工具

"rsnapshot done :)" 输出: 下面是一个复杂一点的例子: .... alert=18000 live=$(lynx --dump http://money.rediff.com/ | grep 'BSE LIVE' | awk '{ print $5}' | sed 's/,//g;s/\.[0-9]*//g') [ $notify_counter -eq 0 ] && [ $live -ge $alert ] && { notify-send -t 5000 -u low -i "BSE Sensex touched 18k"; notify_counter=1; } ... 输出: 这里的参数解释如下: -t 5000:超时的时间,毫秒 -u low:设置是否紧急 -i gtk...阅读全文

博文 2018-04-09 09:38:50 debian.cn

如何在 Debian 上添加和删除用户

一个用户,一个组,并为您的用户主目录。您的新用户现在可以使用了!您现在可以使用您设置的密码登录。 注 :继续,如果你需要你的新用户访问管理功能。 如何授予用户Sudo权限 如果您的新用户需要执行root权限命令,你就需要给新的用户访问sudo 。 让我们来看看两种方法解决这个问题:将用户预先定义sudo 用户组 ,并且针对每个用户的基础上在的特权sudo的配置。 将新用户添加到Sudo组 默认情况下, sudo在Debian系统8配置为完全权限延伸到sudo的组中的任何用户。 您可以看到您的新用户是组与groups命令: $ groups sammy sammy : sammy 默认情况下,新用户仅在自己的组中,该组是在创建帐户时创建的,并与用户共享名称。为了将用户添加到新组,可使用...阅读全文

博文 2021-01-28 17:50:21 debian.cn

下一代时间同步服务 Chrony 详解

使用以下命令来实现。 $ systemctl enable chrony # [On SystemD] $ chkconfig --add chronyd # [On Init] 配置 Chrony Chrony 的默认配置文件为 /etc/chrony.conf,下面将介绍一些常用的配置项。 server hostname [option] server 指令用于要同步的 NTP 服务器。 server 0.centos.pool.ntp.org iburst 其中的 0.centos.pool.ntp.org 是 NTP 服务器的地址,默认有四组官方的 NTP 服务器。你也可以修改为自定义的时间服务器,例如:ntp1.aliyun.com。 iburst 是参数, 一般用此参数即可...阅读全文

博文 2021-01-04 08:41:14 debian.cn

Java Annotations详解

对舍弃的原因加以说明。 @Override @Override被用在方法前,用来说明覆盖了父类中的方法。假如一个方法被@Override修饰,但实际上它并没有覆盖任何方法,则编译器会提示一个错误。 @Override并不是必须的,即覆盖父类方法时,也可以不在子类方法前面添加@Override。但是还是推荐使用@Override,因为这样做是有好处的,至少可以较少一些不必要的错误。如覆盖方法的方法名不对,并没有实现覆盖;或者有人修改了父类中的方法名,导致的子类中的覆盖失效,如果有@Override,编译器就会自动提示错误,从而避免了错误。 @SuppressWarnings 使用@SuppressWarnings能够是编译器对的方法放弃提示警告。如方法中引用了已经被舍弃...阅读全文

博文 2013-03-02 08:04:55 CSDN博客

Golang 中的 channel 通道详解

,dataqsiz 表示缓冲区的大小,对于无缓冲区通道而言 dataqsiz 的值为 0。如果 qcount 和 dataqsiz 的值相同,则表示缓冲区用完了。__buf __缓冲区表示的是一个环形队列 。其中 **sendx 表示下一个发送的地址,recvx **表示下一个接收的地址。elemtype 是channel的中存放的具体类型,每一个通道都是一个具体类型的导管,也就是声明channel的时候需要为其元素类型。recvq 表示等待接收的 sudog 列表,一个接收语句执行时,如果缓冲区没有数据而且当前没有别的发送者在等待,那么执行者 goroutine 会被挂起,并且将对应的 sudog 对象放到 recvq 中。sendq 类似于 recvq,一个发送语句执行时,如果缓冲区已经满了,而且没...阅读全文

GitLab 11.10 正式发布,进一步简化协作功能

。 进一步简化协作功能 GitLab 11.10 提供了更多功能来简化协作和开发人员的工作流程。之前的版本中 引入了合并请求建议,允许审阅者在合并请求注释中建议提供单行更改。现在这项功能得到了改进,可以建议 多行更改 ,要删除的现有行,并引入多行添加。详细更新请查看发布公告。...阅读全文

C++20 标准草案全票批准通过

9月4日,C++20 的国际标准草案(DIS, Draft International Standard)投票结束,最终获全票批准通过。 这意味着 C++20 已获得了最终的技术批准,并完成了 ISO 的投票,预计在完成最后一轮 ISO 的编辑工作后,C++20 将在2020年底正式发布。 与上个版本 C++17 相比,C++20 是一次重大的更新,引入了许多新特性: 模块 (Modules)协程 (Coroutines)范围 (Ranges)概念与约束 (Constraints and concepts)初始化 (designated initializers)操作符 <=> != ==constexpr支持:new/ delete、dynamic_cast、try/ catch、虚...阅读全文

博文 2020-09-08 10:51:13 debian.cn

Ryzen发布两周:AMD 称表现达到预期 四月发布更新

要游戏正确识别了 Zen 的核心与缓存,即可在启用 Ryzen SMT 技术后恢复正常性能。遗憾的是,该公司暂未给出确切的时间表。 简而言之,当前 Ryzen 用户只能享受到略低于理想状况的性能,除非它们将 Windows 电源设置选项为“高性能”模式才能得到改观。AMD 称,此举可减少处理器核心闲置行为,在程序有需要时给出更快的响应。 至于Ryzen 桌面处理器的 CPU 默认均衡配置优化,AMD 表示会通过 4 月首周的更新进行修复。【原文编译自 TechReport.com 】...阅读全文

博文 2021-01-28 17:50:24 debian.cn

Apollo 配置中心简单介绍

,同一份代码部署在不同的环境就应该能够获取到不同环境的配置所以环境默认是通过读取机器上的配置(server.properties中的env属性)的,不过为了开发方便,我们也支持运行时通过System Property等,具体信息请参见Java客户端使用指南。cluster (集群) 一个应用下不同实例的分组,比如典型的可以按照数据中心分,把上海机房的应用实例分为一个集群,把北京机房的应用实例分为另一个集群。对不同的cluster,同一个配置可以有不一样的值,如zookeeper地址。集群默认是通过读取机器上的配置(server.properties中的idc属性)的,不过也支持运行时通过System Property,具体信息请参见Java客户端使用指南。namespace...阅读全文

博文 2021-04-09 17:53:51 CSDN

Go1.16 新特性:一文快速上手 Go embed

(string(data1)) data2, _ := f.ReadFile("hello2.txt") fmt.Println(string(data2)) } 在 go:embed 注解时可以一次性多个文件来读取,并且也可以一个变量多行注解: //go:embed hello1.txt //go:embed hello2.txt var f embed.FS 也可以通过在注解中目录 helloworld,再对应读取文件: //go:embed helloworld var f embed.FS func main() { data1, _ := f.ReadFile("helloworld/hello1.txt") fmt.Println(string(data1)) data2...阅读全文

博文 2021-02-17 08:44:12 CSDN

Systemd 及 Service 文件含义解析

在服务(service)而不是(target)上,所以上述的 httpd 所依赖的仅仅是一些 target,因而也就没有 Requires 和 Wants 出现。 [Service] 可选择几种不同的服务启动方式,启动方式通过Type参数进行设置。 * Type=simple(默认值):systemd认为该服务将立即启动。服务进程不会fork。如果该服务要启动其他服务,不要使用此类型启动,除非该服务是socket激活型。 * Type=forking:systemd认为当该服务进程fork,且父进程退出后服务启动成功。对于常规的守护进程(daemon),除非你确定此启动方式无法满足需求,使用此类型启动即可。使用此启动类型应同时 PIDFile=,以便systemd能够跟踪服务的主进程...阅读全文

博文 2021-02-17 10:02:50 joseph

Prometheus 常用 PromQL 语句样例

PromQL 是 Prometheus 提供的一个函数式的表达式语言,可以使用户实时地查找和聚合时间序列数据。表达式计算结果可以在图表中展示,也可以在 Prometheus表达式浏览器中以表格形式展示,或者作为数据源,以 HTTP API 的方式提供给外部系统使用。PromQL 虽然以 QL 结尾,但是它不是类似 SQL 的语言,因为在时间序列上执行计算类型时,SQL 语言相对缺乏表达能力。而 PromQL 语言表达能力非常丰富,可以使用标签进行任意聚合,还可以使用标签将不同的标签连接到一起进行算术运算操作。内置了时间和数学等很多函数可以使用 选择序列选择指标名称的序列最新样本: my_metric_name选择指标名称序列5分钟的样本范围: my_metric_name[5m]筛...阅读全文

博文 2021-02-09 11:07:15 51CTO博客

Gitlab CI 配置文件 .gitlab

。 默认情况下,job artifacts 只正对成功的jobs收集。 artifacts用于成功后应附加到job的文件和目录的列表。只能使用项目工作间内的文件或目录路径。如果想要在不通的job之间传递artifacts,请查阅依赖关系。以下是一些例子: 发送binaries和.config中的所有文件: artifacts: paths: - binaries/ - .config 发送所有没有被Git跟踪的文件: artifacts: untracked: true 发送没有被Git跟踪和binaries中的所有文件: artifacts: untracked: true paths: - binaries/ 定义一个空的dependencies可以禁用artifact传递: job...阅读全文

博文 2018-12-12 21:09:02 ci.yaml 详解(下)

Debian 9 使用kubeadm创建 k8s 集群(上)

是您将在其中运行所有本地命令的目录。 使用nano或您喜欢的文本编辑器创建名为~/kube-cluster/hosts文件: nano ~/kube-cluster/hosts 将以下文本添加到文件中,该文件将有关群集逻辑结构的信息:〜/ KUBE群集/主机 [masters] master ansible_host=master_ip ansible_user=root [workers] worker1 ansible_host=worker_1_ip ansible_user=root worker2 ansible_host=worker_2_ip ansible_user=root [all:vars] ansible_python_interpreter=/usr/bin...阅读全文

博文 2019-05-13 22:47:39 debian.cn