InfraPub 为您找到相关结果 647

谷歌开源了代码评审规范:好坏代码应这样来判断

审 代码评审者指南本来是一个完整的文档,但作者将其分为了 6 部分,读者可根据需要阅读。 代码评审标准代码评审希望达到什么在代码评审中导航 CL代码评审的速度如何写审查的评论处理代码评审的回退 2.CL 作者指南——CL 作者批准代码的评审指南 CL 制定者指南包括一些进行代码评审的开发人员的最佳经验,这些经验能够帮助你更快、更高质量地完成评审。 写一个好的 CL 描述构建一些小的 CL如何处理代码评审者的评论 在谷歌看来,代码审核的目的是确保谷歌代码库的整体代码健康度。谷歌将以下规则作为代码评审的标准: 一般来说,一旦 CL 能提升整体代码的健康度,那么即使 CL 不完善,评审者同样也应该倾向于批准该列表。这是所有代码评审指南中的高级原则。它也会有一些限制,如,如果 CL 添加了一些...阅读全文

博文 2019-09-10 17:19:13 debian.cn

如何在 Debian Stretch 中安装使用 PHP5

在 Debian Stretch 中,系统自带的 PHP 版本已经默认为 PHP 7.0。我们如何在 Debian 9 中,把 PHP 的版本降为 Php 5 呢?本文提供了一种多个 PHP 版本共存的方案,我们以安装配置 PHP-5.6 为,并且支持在多个 PHP 的版本中切换。 首选,我们需要配置一个新的安装源,以便安装 php 5.6 的包,这里我们选择 deb.sury.org , 打开终端,运行以下命令, apt-get install apt-transport-https lsb-release ca-certificates 然后下载安装对应的GPG key 文件,使用命令, wget -O /etc/apt/trusted.gpg.d/php.gpg https...阅读全文

博文 2017-12-11 23:05:21 debian.cn

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

设置taint ``` kubectl taint node [node] key=value[effect] 其中[effect] 可取值: [ NoSchedule | PreferNoSchedule | NoExecute ] NoSchedule: 一定不能被调度 PreferNoSchedule: 尽量不要调度 NoExecute: 不仅不会调度, 还会驱逐Node上已有的Pod ``` 示: ``` kubectl taint node node1 key1=value1:NoSchedule kubectl taint node node1 key1=value1:NoExecute...阅读全文

Chrome 64发布:已打CPU补丁提升安全等级

今天,Google开始面向Windows、Mac和Linux平台推送Chrome 64稳定版更新,预计将会在未来几天/几周内完成。本次版本更新最值得关注的就是修复了Meltdown和Spectre两处CPU漏洞,阻止黑客利用这两个漏洞入侵用户设备。 Chrome 64改进了弹出阻止器,Google声称将阻止有恶意倾向的网站打开新的标签页或者窗口。如果你曾经被透明覆盖的网站、故意让你点击播放的按钮等方式所欺诈过,那么这项功能会让你感到满意。 正如此前所报道的,自Chrome 64开始自动视频播放默认情况下会处于关闭状态,不过自然也有一些外的情况。如已经静音或者没有声音的视频可以自动播放,或者用户表现出对这个视频内容的足够兴趣。 在安全方面,Google升级了Chrome的V8...阅读全文

博文 2018-01-25 13:30:24 debian.cn

Redis 官网宕机:错误提示无法连接 Redis

Redis 官网 redis.io 昨日罕见地宕机了一段时间。宕机原本不是什么新鲜事,但戏剧性的是网站的报错信息居然是连接不上 Redis。 Redis::CannotConnectError at / Error connecting to Redis on 127.0.0.1:6379 (Errno::ECONNREFUSED) ▲ 看到这,忍不住刷一句:禁止套娃! Redis 作者 Antirez 很快修复了问题,并解释了宕机的原因。原来是因为他最近在运行 redis.io 的实上安装了 Try Redis(用于在线体验 Redis 数据库),可能是未能对 session key 进行良好的垃圾回收,从而导致内存累积,最终因为内存溢出(OOM )引发宕机。对此,Antirez 表示...阅读全文

博文 2020-03-13 13:17:06 debian.cn

服务器文件上传下载利器 trzsz + iTerm2 配置指南

,筛选 COOKIE,选择 Yes。​iTerm2 Enable ITERM2_COOKIE进度条配置可选1:使用文本进度条text 进度条示​using trzsz in iTerm2 with text progress bar升级 iTerm2 到 Build 3.5.20220503-nightly 以上的版本。Trigger 的 Parameters 配置增加 -p text 参数。/usr/local/bin/trzsz-iterm2 -p text \1 注意 /usr/local/bin/trzsz-iterm2 要替换成真实的 trzsz-iterm2 绝对路径。可选2:使用 zenity 进度条zenity 进度条示​using trzsz in iTerm2 with...阅读全文

为什么使用 JavaScript 开发物联网?

较于PHP、Python、Java来说,JavaScript是最有可能在物联网大行其道的解释性语言。 JavaScript在浏览器没有对手,nodejs在服务器端也在不停的攻城拔寨,积累了大量的资源,构建了一个完整的应用开发生态环境。 JavaScript语言本身特点适合互联网,事件驱动,异步使单线处理网络事件得心应手。 JavaScript已经跨界到物联网,受到了行业巨头的关注,各种项目发展的如火如荼。 未来的物联网开发 如果JavaScript在物联网获得成功,那么物联网的开发将会发生巨大的变化。 底层驱动由C实现,应用开发者不需要关注硬件,大量的互联网、移动互联网应用开发者加入物联网开发。 传统的交叉编译、烧写、调试的开发方式使用范围将急剧缩小 所见即所得,上位机和下位机的架构由C...阅读全文

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

Ubuntu 创始人爆粗口: 开源社区弥漫着“反社会人格”

图片来自于 Youtube 关于近期关于放弃 Unity 的决定,Google+用户 Maartin Kozub 在文章中写道: 这个决定并不能简单的用惋惜和悲伤而形容,因为 Canonical 所从事开始的多个项目也宣告了死亡。 我认为当前最大的问题是大部分开源开发者无法深入理解,也不会进而欣赏面向对象的编语言(C++)。他们依然还习惯使用 C 语言来编一些丑陋的代码,也许有些时候利用个性化定制功能能够让 C 更加接近于 C++,但无疑会增加门槛和降低可读性。所以,为何不直接使用 C++?最典型的子就是 Wayland。 在另一方面,Canonical 是目前极少数创建优秀和简洁开源 C++代码的公司/社区,就像 Mir 一样能够充分利用各种现代化 C++功能。 Mark...阅读全文

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

Elastic search 6.0.0 正式发布 大量新特性

性就是序列 ID,它允许基于操作的分片恢复。 以前,如果由于网络问题或节点重启而从集群断开连接的节点,则节点上的每个分区都必须通过将分段文件与主分片进行比较并复制任何不同的分段来重新同步。 这可能是一个漫长而昂贵的过,甚至使节点的滚动重新启动非常缓慢。 使用序列 ID,每个分片将只能重放该分片中缺少的操作,使恢复过更加高效。 使用排序索引更快查询 通过索引排序,只要收集到足够的命中,搜索就可以终止。它对通常用作过滤器的低基数字段(如 age, gender, is_published)进行排序时可以更高效的搜索,因为所有潜在的匹配文档都被分组在一起。 稀疏区域改进 以前,每个列中的每个字段都预留了一个存储空间。如果只有少数文档出现很多字段,则可能会导致磁盘空间的巨大浪费。现在,你付出你...阅读全文

博文 2017-11-15 18:11:10 debian.cn

Debian 环境中安装git服务器 Gogs(下)

在本教中,我们将使用 Gogs 在 Debian 9 上按步骤指导您安装和配置您的私有 Git 服务器。这篇教中涵盖了如何在 Debian Stretch 上安装 Go 语言、PostgreSQL 和安装并且配置 Nginx 网页服务器作为 Go 应用的反向代理的细节内容。 步骤 4 - 使用 Gogs 安装 Git 服务 使用 git 用户登录并且使用 go 命令从 GitHub 下载 Gogs, su - git go get -u github.com/gogits/gogs 此命令将在 $GOPATH/src 目录下载 Gogs 的所有源代码。 切换至 $GOPATH/src/github.com/gogits/gogs 目录,并且使用下列命令搭建 Gogs。 cd...阅读全文

博文 2018-03-10 09:52:28 debian.cn

企业制定开源战略的免费指南

的战略文件战略方法关键考虑因素其他组成确定投资回报率投资目标 这里关键的第一步是创建和将你的开源策略形成文字,该策略将“帮助你最大限度地提高组织从开源中获得的利益。”同时,你详细的策略可以帮助你避免因错误而导致的困难,如:选择错误的许可证或不正确地维护代码。根据指南,该文件还可以: 让领导者感到兴奋并参与帮助在公司内获得支持促进分散的多部门组织的决策帮助建立一个健康的社区解释贵公司的开源方式和对其使用的支持明确贵公司在社区驱动的外部研发中投资的地方,以及贵公司将重点放在增值差异化的地方 Salesforce 的软件架构师兼本指南的撰稿人 Ian Varley 说:“在 Salesforce 内,我们有内部文件,我们将这些围绕开源战略指导和鼓励的文件分发给我们的工团队。其中鼓励创建和使用开...阅读全文

博文 2018-12-17 13:05:32 debian.cn

Kubernetes 1.7 发布,安全强化、StatefulSet 更新及可扩展特性

三方的API。如,其中添加了兼容Open Service Broker API的孵化特性service-catalog。与之相关的是,第三方资源(TPR,Third Party Resource)已经替代了用户资源定义(CRD,Custom Resource Definitions)。TPR提供了更整洁的API,并解决了在TPR Beta版期间出现的问题和极端案。对此,CoreOS发布了一个博客帖子,其中提供了差异的更多细节信息,并给出了一个创建CRD的走查过。社区已规划在Kubernetes 1.8中移除TPR Beta版特性。容器运行时接口(CRI,Container Runtime Interface)实现从运行时中获取容器的度量指标,它已使用新的RPC调用得以改进。CRI的验证...阅读全文

博文 2017-07-19 12:23:15 debian.cn

Greg Kroah

Windows Vista还贵的收费服务。) 由于Ubuntu直接抄袭Debian的特色内容,所以有的网友称Ubuntu为“番茄花园版的Debian”。这个系列的发行版以标新立异为荣,轻率修改关键代码,对用户极不负责。如对随机数发生器的非官方修改导致openssl密钥容易重复,直到现在Ubuntu还在不断追加black list,让其用户苦受倒悬之危。 Ubuntu区别于其它大多数发行版的另一显著特征就是临近版本之间改动极大。经常有人抱怨:“我的Ubuntu升级后不能启动了。”(如7.04版升级到7.10时,很多用户无法进入X Window.) 同时Ubuntu为了进一步增加用户的麻烦,用dash取代了bash,带来繁多的兼容问题。不幸的是,在其自身的论坛上,Ubuntu被证实在一些只兼容dash的...阅读全文

博文 2021-01-28 17:50:09 Hartman批评Ubuntu发行版

如何在 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

五种绕过 Linux 命令别名的方法

意一种方法来运行被 bash shell 别名绕过的命令。让我们先定义一个别名,用于本文的测试样: alias mount='mount | column -t' 运行 mount 命令,输出样如下: sysfs on /sys type sysfs (rw,relatime) proc on /proc type proc (rw,relatime) udev on /dev type devtmpfs (rw,nosuid,relatime,size=949632k,nr_inodes=237408,mode=755) devpts on /dev/pts type devpts (rw,relatime,gid=5,mode=620,ptmxmode=000) tmpfs on...阅读全文

博文 2018-03-08 13:33:02 debian.cn

大起底:揭开亚马逊云计算丰厚利润的秘密 - 电子商务

品的单独利润率,而在今年第一季度,官方公布的云计算运营利润率则是31%。一般来说,毛利润并没有计入研究、开发和市场营销的成本。美国另外一家小型云计算提供商“数字海洋”(DigitalOcean)的报告显示,二季度获得了58%的毛利润率,该公司主要收入来自于虚拟机,相当于亚马逊EC2的计算资源产品。数字海洋公司发言人介绍说,公司九成的收入来自于计算、存储和网络服务。目前,亚马逊云计算客户可以为未来预定EC2计算实,从而降低成本。AWS官方网站介绍说,预定的计算实要比按需提出便宜四分之三。企业的另外一个选项是使用EC2现货竞价计算实,这其实是亚马逊临时空闲出来的计算资源。亚马逊官方广告称,现货计算实要比按需实最多便宜九成。依托亚马逊云计算服务,企业客户可以方便运营自己的应用软件,另外可...阅读全文

博文 2021-09-07 11:41:54 cnBeta.COM

树莓派 9 周年:你不知道的树莓派冷知识

属于与 Arduino 相同的类别,适合用于嵌入式设备或物联网设备的开发,如控制电动机、灯光和传感器,并在打开电源后立即运行序,而无需启动,也无需担心在不安全关闭的情况下拔下插头会丢失数据。4. 最受欢迎的树莓派Raspberry Pi 3 B 是有史以来最畅销的树莓派机型,目前已累计售出 1320 万台。 而在目前流行的各种 Raspberry Pi 4 B RAM 版本中,4 GB 型号的销量最高,大约是 8 GB 和 2 GB 出货量的两倍。 值得一提的是,Raspberry Pi Pico 虽然仅上市了几周,但已经售出了 250,000 台,此外还有750,000 台处于待售状态。受疫情等因素影响,2020 年是树莓派产品销量最高的一年,总共售出 710 万台不同型号的树莓派设备...阅读全文

博文 2021-03-11 17:03:55 diablo4

Kubernetes 1.7:安全加固、有状态应用更新等

今天我们公布了Kubernetes 1.7,这一里碑版本引入了更为强大的安全性、存储以及扩展性因素,旨在满足Kubernetes在广泛企业环境下所面临的实际需求。 这次发布的版本中安全方面的改进包括加密的Serect,Pod到Pod通讯的网络策略,限制kubelet访问的节点授权器(node authorizer),和客户端/服务端 TLS 证书轮换。 对于在Kubernetes上伸缩数据库的用户,这次版本有一个重要特性向StatefulSet添加了自动化的更新,并增强了对DaemonSet的更新。同时我们宣布对本地存储和用于更快速伸缩StatefulSet的加速模式(burst mode)的alpha支持。 同时,对于高级用户,这次版本中的API聚合允许用户提供的API服务器和...阅读全文

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

2016年Linux领域的十条大新闻,你关注了吗?

。事实上,Linux出色的可靠性与灵活性使它成为关键性基础设施内不可或缺的核心要素。 那么究竟是什么神奇的力量让Linux这样一位“私生子”变成世界的主宰?根据VAR Guy网站的总结,Linux成功的原因包括分布式开发方法、务实的意识形态、切实可行的内核设计以及庞大且活跃的Linux社区。 2. Fedora 25成为首款默认使用Wayland的Linux发行版 Fedora 25将Wyland作为它兼容机上的默认显示协议。为什么选择Wayland?Fedora开发者Matthias Clasen表示它能够实现客户端间彼此隔离、更适合现代显示系统(不包含不必要的核心字体或核心渲染等‘累赘’)且能够实现原有X系统无法实现的多种功能(如输入转换以及在合并桌面与全屏客户端之间进行顺畅过渡...阅读全文

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

Linux下多线程程序为什么消耗大量虚拟内存

,使用了很多叫做arena的memory pool,缺省配置在64bit下面是每一个arena为64M,一个进可以最多有 cores * 8个arena。假设你的机器是4核的,那么最多可以有4 * 8 = 32个arena,也就是使用32 * 64 = 2048M内存。 当然你也可以通过设置环境变量来改变arena的数量.如 export MALLOC_ARENA_MAX=1 hadoop推荐把这个值设置为4。当然了,既然是多核的机器,而arena的引进是为了解决多线内存分配竞争的问题,那么设置为cpu核的数量估计也是一个不错的选择。设置这个值以后最好能对你的序做一下压力测试,用以看看改变arena的数量是否会对序的性能有影响。 mallopt(M_ARENA_MAX, xxx)如果...阅读全文

博文 2015-01-28 10:35:39 debian.cn

Java 12 / JDK 12 正式发布

CDS Archives 默认类数据共享归档文件344Abortable Mixed Collections for G1 可中止的 G1 Mixed GC346Promptly Return Unused Committed Memory from G1 G1 及时返回未使用的已分配内存 下边分别来看看: Shenandoah: A Low-Pause-Time Garbage Collector (Experimental) Shenandoah:低暂停时间的 GC(实验性功能) 新增了一个名为 Shenandoah 的 GC 算法,通过与正在运行的 Java 线同时进行 evacuation 工作来减少 GC 暂停时间。使用 Shenandoah 的暂停时间与堆大小无关,这意味着无论堆是...阅读全文

博文 2019-03-20 12:46:27 debian.cn

Linux 中使用 Fio 测评硬盘性能

Fio(Flexible I/O Tester) 是一款由 Jens Axboe 开发的用于测评和压力/硬件验证的自由开源的软件。它支持 19 种不同类型的 I/O 引擎 (sync、mmap、libaio、posixaio、SG v3、splice、null、network、 syslet、guasi、solarisaio,以及更多), I/O 优先级(针对较新的 Linux 内核),I/O 速度,fork 的任务或线任务等等。它能够在块设备和文件上工作。 Fio 接受一种非常简单易于理解的文本格式的任务描述。软件默认包含了几个示任务文件。 Fio 展示了所有类型的 I/O 性能信息,包括完整的 IO 延迟和百分比。 它被广泛的应用在非常多的地方,包括测评、QA,以及验证用途。它支持...阅读全文

博文 2018-08-15 19:18:24 debian.cn

Git 介绍与使用详解

没有中央服务器,每个人的电脑就是一个完整的版本库,这样,工作的时候就不需要联网了,因为版本都是在自己的电脑上。举个子,要浏览项目的历史,Git 不需外连到服务器去获取历史,然后再显示出来——它只需直接从本地数据库中读取。 你能立即看到项目历史。 如果你想查看当前版本与一个月前的版本之间引入的修改,Git 会查找到一个月前的文件做一次本地的差异计算,而不是由远服务器处理或从远服务器拉回旧版本文件再来本地处理。 2.安装、配置Git 2.1GUI可视化界面推荐 1.GitForWindows https://gitforwindows.org/ 自带GIT BASH和GIT GUI 2.TortoiseGit https://tortoisegit.org/download/ 3...阅读全文

博文 2017-02-25 09:00:27 程序员

如何使用 ipset 将单个国家的所有IP加入黑名单

ipset 是 iptables 的扩展,它允许你创建匹配整个地址集合的规则,而不像普通的 iptables 链只能单IP或单网段匹配。 ipset 规则中的IP地址集合存储在带索引的数据结构中,这种结构即时集合比较大也可以进行高效的查找,从而减少系统资源占用或网络拥塞。IPset 也具备一些新防火墙设计方法,并简化了配置。ipset 的官网:http://ipset.netfilter.org 下面我们以一个实际场景为样,介绍如何在Debian系统中,使用 ipset 将单个国家的左右 IP段 加入黑名单。 #### 准备工作:安装 ipset、或者网段列表 sudo apt-get -y install ipset wget -P . http://www.ipdeny.com...阅读全文

博文 2021-02-06 16:43:47 joseph

为保护隐私而生 反取证操作系统:Kodachi

Kodachi Linux 是一款基于 Debian 8.6 的操作系统。它是专为保护用户隐私而设计的,因此具有高度的安全及匿名性,并具备反调查取证的特点。 Kodachi 的使用也非常方便简单,你可以通过 USB 驱动来在你的 PC 上启动它。当你完全启动 Kodachi 操作系统后,你将会建立一个 VPN+Tor+DNScry 服务器的运行环境。你不需要特别了解或学习 Linux 的知识,Kodachi 都为你准备好了你所需要的!整个操作系统都活动在你的临时内存 RAM 下。因此,你一旦你关机,任何的操作痕迹都会被清除,避免你的隐私泄露及被追踪调查。 Kodachi 是一个实时的操作系统,你可以从几乎任何计算机上来启动它。如:从 DVD,U盘 或 SD卡等。它旨在保护你的隐私及匿名性...阅读全文

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

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

Tmux 简单来说就是终端里的『窗口管理器』,如果我使用终端登录到远主机并运行前台序,那么这个窗口等于就被占用了,想要看一下 CPU 的使用率,就得再连接一次。但是如果在远主机上运行 tmux,那么就可以开启多个控制台(类似于窗口),相当高效,比方说可以像下面这样: 需要注意的是,这里是在我本地使用 tmux,最好在远主机也安装 tmux,这样就只需要连接一次。 Hello World 前面提到的窗口管理只是 tmux 功能的一小部分,另一个很有用的功能就是,连接到远主机之后,一旦断开,那么当前账户登录的任务就被取消了,但是使用 tmux 可以在断开之后继续工作,下次登录可以查看。其他的功能还有: 窗口切换,每个窗口里还可以分割面板 配置方便,可以使用脚本 类似 vim 的双层操...阅读全文

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

基于thanos搭建分布式prometheus

prometheus存在单点问题,具体痛点可以这么描述: prometheus单机存储和抓取能力都有上限,容易单点故障。 虽然有一种方式是通过部署N个prometheus分别抓取不同的target来分摊压力的,但是grafana就要为不同的图表配置不同的prometheus地址,复杂度比较棘手。 thanos+prometheus可以解决这个问题,它提供了一个核心能力: 1,thanos querier组件可以反向代理到N个prometheus,然后grafana直接指向thanos querier即可,thanos querier会从N个prometheus同时查询数据,返回满足Promql的数据结果; 2,如果N个prometheus抓取的数据存在重复的,那么thanos...阅读全文

博文 2021-03-01 13:02:46 鱼儿的博客

说透IO多路复用模型_京东云开发者的博客

位是否为1。 FD_SET(int fd,fd_set*set) 用来设置描述词组set中相关fd的位,即将bitmap结构中某一位设置为1,索引值为fd。 FD_ZERO(fd_set *set) 用来清除描述词组set的全部位,即将bitmap结构全部清零。 首先来看一段服务端采用了select模型的示代码: //创建server端套接字,获取文件描述符 int listenfd = socket(PF_INET,SOCK_STREAM,0); if(listenfd < 0) return -1; //绑定服务器 bind(listenfd,(struct sockaddr*)&address,sizeof(address)); //监听服务器 listen(listenfd,5...阅读全文

博文 2023-01-01 15:13:50 CSDN博客

MacOSX 中如何列出登录历史记录?

参考命令: show --style syslog --last 2d | awk '/Enter/ && /unlockUIBecomesActive/ {print $1 " " $2}' 输出样: ``` 2021-03-02 11:56:49.503612+0800 2021-03-02 11:59:31.912671+0800 2021-03-02 12:16:09.012835+0800 2021-03-02 12:17:20.568175+0800 2021-03-02 12:32:57.510368+0800 2021-03-02 12:34:02.150225+0800 2021-03-02 12:51:34.580978+0800...阅读全文

如何列出域名 所有SAN字段的SSL证书?

SAN(Subject Alternative Name) 是 SSL 标准 x509 中定义的一个扩展。使用了 SAN 字段的 SSL 证书,可以扩展此证书支持的域名,使得一个证书可以支持多个不同域名的解析。 这里以 Google.com 为,证书中所包含的 SAN 扩展域名,可以用这个命令列出: echo | openssl s_client -connect google.com:443 2>&1 | openssl x509 -noout -text | awk -F, -v OFS="\n" '/DNS:/{x=gsub(/ *DNS:/, ""); $1=$1; print $0}'...阅读全文

如何为 Snap 设置代理服务器?

由于 Ubuntu snap 在一部分地区下载缓慢,使用代理则可获得理想速度。在 Ubuntu 系统下,如何为 snap 设置代理,加快下载速度? 我们执行 `sudo systemctl edit snapd.service` ,为 snapd 服务配置代理服务器即可。这里添加的内容,以监听在 1080 端口上的 socks5 代理为: [Service] Environment="http_proxy=socks5://127.0.0.1:1080" Environment="https_proxy=socks5://127.0.0.1:1080" 重新加载 snapd 服务: sudo systemctl daemon-reload sudo...阅读全文

使用 setfacl 管理文件的访问控制列表ACL

如果你是在一个大型组织,你运行了 NFS 或者 Samba 服务给不同的用户,你将会需要灵活的挑选并设置很多复杂的配置和权限去满足你的组织不同的需求。Linux(以及其他Unix等POSIX兼容的操作系统)有一个被称为访问控制列表(ACL)的权限控制方法,它是一种权限分配之外的普遍范式。如,默认情况下你需要维护3个权限组:owner、group和other。 使用ACL后,你可以设置权限给其他用户或组,而不单只是简单的"other"。可以允许指定的用户A、B、C拥有写权限而不再是让他们整个组拥有写权限。 ACL支持多种Linux文件系统,包括ext2, ext3, ext4, XFS, Btrfs等。如果你不确定你的文件系统是否支持ACL,请参考文档。 首先我们需要安装工具来管理ACL...阅读全文

钉钉发送报警消息的Python实现

我司使用钉钉作为主要的内部通讯工具,基本上大家在电脑和手机上都开着,消息可以第一时间查看,报警消息的即时性要求比较高,我们计划使用钉钉来发送报警通知。本文将简要介绍发送消息的API使用样。钉钉的API接口文档,请查阅钉钉开放平台。 介绍如何用 Python 实现钉钉自动发送消息,你可以用来和报警平台整合,或者做ChatOps。 获取 access token 要使用钉钉发送消息,首先需要获取access token,代码如下: def get_access_token(): url = 'https://oapi.dingtalk.com/gettoken?corpid=%s&corpsecret=%s' % (corp_id, corp_secret) request...阅读全文

博文 2018-04-27 08:51:33 debian.cn

解决 Debian 开机中 networking 大量耗时的问题

首先查看哪些服务占用了开机时间: `systemd-analyze blame` 本文示中发现 networking.service 的时间长达 5 分钟。查看该服务状态可发现如下错误: ``` systemd[1]: networking.service: Start operation timed out. Terminating. systemd[1]: networking.service: Main process exited, code=killed, status=15/TERM systemd[1]: networking.service: Failed with result 'timeout'. systemd[1]: Failed to...阅读全文

定时重启一个服务的几种方法

本文以 Ubuntu 18.04 为,介绍如何在 Linux 下使 systemd 服务定时重启。有几种不同的方法。 ** crontab ** 注意,此种方法在 root 用户下使用最佳,普通用户的 --user 服务会有许多问题需要解决。 `30 3 * * * /bin/systemctl restart your_service` `crontab -l cronjob` ** RuntimeMaxSec ** ``` [Service] Restart=always RuntimeMaxSec=604800 ``` ** timer ** a-restart.service ``` [Unit...阅读全文

提问的智慧 – 全文

。 不要请求私下回复 黑客们认为问题的解决过应该公开、透明,这样就会有更多的人参与到此问题的解决,如果有知识渊博,经验更丰富的人发现了这个问题,他们就会留意到回答中不完整或不准确的地方,那么原来的回答就会被纠正修复。同时,这些人的能力和学识也会被其他同行看到而得到赏识。 而当你要求私下回复时,以上的纠正过就会被中止,所以,不要请求私下回复,要让回复者来决定是否私下回复。实际上,如果他真的私下回复你了,通常是因为他认为问题太差或者太肤浅,自己给出的答案对其它人也毫无意义,那就发给你吧。 这条规则也有一个外,如果你确定该提问可能会带来大量雷同的回复时,那么你可以主动表示:「请向我发电子邮件,我将为论坛统一归纳这些回复」。你这个举动是非常值得赞扬的,因为你将论坛从洪水般雷同的回复中解救出来。最后...阅读全文

博文 2009-10-01 13:18:00 debian.cn

Apache Flink 1.14 新特性预览 - OSCHINA

模作业调度的优化 构建 Pipeline Region 的性能提升:所有由 pipline 边所连接构成的子图 。在 Flink 任务调度中需要通过识别 Pipeline Region 来保证由同一个 Pipline 边所连接的任务能够同时进行调度。否则有可能上游的任务开始调度,但是下游的任务并没有运行。从而导致上游运行完的数据无法给下游的节点进行消费,可能会造成死锁的情况 任务部署阶段:每个任务都要从哪些上游读取数据,这些信息会生成 Result Partition Deployment Descriptor。 这两个构建过在之前的版本都有 O (n^2) 的时间复杂度,主要问题需要对于每个下游节点去遍历每一个上游节点的情况。如去遍历每一个上游是不是一个 Pipeline 边连接的关系...阅读全文

博文 2021-09-05 07:26:58 中文开源技术交流社区

Intel 为啥要给 ARM 代工

日前,Intel 公开表示将为 ARM 阵营 IC 设计厂商代工生产芯片。且还公开叫板“友商”,称 Intel 的 10nm 工艺比三星、台积电的 10nm 工艺更具优势。ARM 方面表示很期待与英特尔合作。此外,不知道是否因为台积电和三星制造工艺注水的问题,Intel 的专家 Mark Bohr 还发布了一个更合理的衡量半导体工艺水平的公式。那么,Intel 缘何开始为 ARM 阵营 IC 设计公司代工芯片,Intel 提出的新计算公式能得到台积电、三星、格罗方德等代工大厂的认同么? Intel 罕有为第三方提供代工业务 一直以来,虽然台积电在芯片代工领域的市场份额独占鳌头,但在芯片制造工艺上,Intel 始终掌握着最先进的技术。举来说,虽然同样是 14nm 制造工艺,三星的 14nm...阅读全文

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

理解 Linux 的虚拟内存

有些矛盾。于是翻一下资料重新整理一下这些知识,希望下次在用到它们时能更顺畅。转载随意,请注明来源,文章持续修订。 由来 虚拟内存 毋庸置疑,虚拟内存绝对是操作系统中最重要的概念之一。我想主要是由于内存的重要”战略地位”。CPU太快,但容量小且功能单一,其他 I/O 硬件支持各种花式功能,可是相对于 CPU,它们又太慢。于是它们之间就需要一种润滑剂来作为缓冲,这就是内存大显身手的地方。 而在现代操作系统中,多任务已是标配。多任务并行,大大提升了 CPU 利用率,但却引出了多个进对内存操作的冲突问题,虚拟内存概念的提出就是为了解决这个问题。 虚拟内存简单直观的解释 操作系统有一块物理内存(中间的部分),有两个进(实际会更多)P1 和 P2,操作系统偷偷地分别告诉 P1 和 P2,我的整个内存...阅读全文

博文 2018-11-25 11:03:49 debian.cn

如何使用 journalctl 清理 journal 日志

,此方法在 Storage=none 时无效。 此方法不能实时读取日志消息, 但是可以读取先前保存的日志消息(如在系统启动完成之后读取系统启动早期的日志消息)。 此方法还可以读取到完整的日志元数据。 此方法一般无法读取当前最新的日志消息, 只能读取已经被记录到文件系统上的日志消息。 注意,syslog 守护进通常使用此方法(而不是前一种方法), 因此 Storage= 选项(而不是 ForwardToSyslog= 选项) 不应该设为"none"。...阅读全文

博文 2021-02-05 15:43:28 博客园

如何离线更新基于 Debian 的系统

、Linux Mint 这样基于 APT 的操作系统)提供的离线状态下 APT 包管理器。使用 apt-offline,我们可以在离线状态下完整地更新、升级我们的 Debian 系统。这个序是用 Python 开发的兼具 CLI 和图形界面的跨平台工具。 准备工作 一个已经联网的操作系统(Windows 或者 Linux)。本文中为了便于理解,我们称之为在线系统。 一个离线操作系统(Debian 及其衍生版本)。我们称之为离线系统。 有足够空间容纳所有更新包的 USB 驱动器或者外接硬盘。 安装配置 apt-offline Apt-Offline 可以在 Debian 及其衍生版本的默认仓库中获得。如果你的在线系统是运行的 Debian、Ubuntu、Linux Mint,及其它基于 DEB 的操作...阅读全文

博文 2018-02-07 10:06:03 debian.cn

开源硬件是趋势,Arm 却走了一条与众不同的路

需的内容。但他们没有像 Arm 或其他一些较早建立的供应商那样支持着整个生态系统。” 那么,验收开源硬件与验证开源软件有何不同?Mellanox Technologies 的外部董事 Thomas J Riordan 告诉 Synced,他认为两者面临的挑战实际上非常相似。“从指令集架构(ISA)层面上来看,处理器和开源序都是用某种高级语言(HLL)编写的软件(算法)。在这两种情况下,必须以详尽的方式对处理器/序进行验收,以确保质量结果。” “就实现指令集架构而言,它是开放的这一事实几乎可以保证其可以从多个来源获得许多实现,这也是 Arm 所担心的情况之一。毕竟开源模型的功能已得到充分验证。如果说 RISC-V 就是处理器界的 Linux,那么就好比微软希望 Linux 和...阅读全文

博文 2019-10-17 22:39:43 debian.cn

高性能缓存服务器 Nuster

Nuster 是一个基于 HAProxy 的高性能缓存服务器。Nuster 完全兼容 HAProxy,并且利用 HAProxy 的 ACL 功能来提供非常细致的缓存规则,比如 请求地址为某某时缓存 请求参数中的 X 为 Y 时缓存 响应头中的 X 为 Y 时缓存 请求速率超过多少时缓存 等等 Nuster 性能评测 非常快, 单进模式下是 nginx 的 3 倍,多进下 nginx 的 2 倍,varnish 的 3 倍。详见benchmark 安装 Nuster git clone https://github.com/jiangwenyuan/nuster.git cd nuster make TARGET=linux2628 make install 详情请参照 HAProxy...阅读全文

博文 2017-12-15 22:17:31 debian.cn

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

在以前,很多从其他语言转过来 Go 语言的同学会问到,或是踩到一个坑。就是以为 Go 语言所打包的二进制文件中会包含配置文件的联同编译和打包。 结果往往一把二进制文件挪来挪去,就无法把应用序运行起来了。因为无法读取到静态文件的资源。 无法将静态资源编译打包进二进制文件的话,通常会有两种解决方法: 第一种是识别这类静态资源,是否需要跟着序走。第二种就是考虑将其打包进二进制文件中。 第二种情况的话,Go 以前是不支持的,大家就会去借助各种花式的开源库,如:go-bindata/go-bindata 来实现。 但从在 Go1.16 起,Go 语言自身正式支持了该项特性,今天我们将通过这篇文章快速了解和学习这项特性。 基本使用 演示代码: import _ "embed...阅读全文

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

你应该选择Cinnamon作为Linux桌面环境的十个理由

Cinnamon 桌面 Cinnamon目前的最新版本为3.2。Cinnamon可用于多种发行版,其中包括Debian、Arch、Gentoo、Mint、Fedora以及OpenSUSE等。 使用Cinnamon的理由 1. 集成度。桌面的选择与应用可用性并无关联。事实上,我所用过的任何应用都能够在任意桌面环境中运行良好,Cinnamon自然也不外。不过,Cinnamon确实能够为各类面向KDE与GNOME乃至任何其他桌面编写的应用提供全部必要库,且带来良好的无缝化体验。 2. 外观。Cinnamon拥有清晰、简洁的外观设计,且字体与颜色组合适于阅读。大家可以通过System Settings -> Desktop菜单轻松完成图标显示设置,也能够借此指定桌面图标应该仅显示在主显示器上、副显示器上或者同时...阅读全文

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

为什么 Django 能持续统治 Python 开发世界

对于 Python 开发者来说,web 开发框架真可谓玲琅满目。然而 Django , 毋庸置疑的成为最受青睐的 web 框架。通过本篇博客,我来为大家讲解下为什么相比 Flask、Pyramid、Tornado、Bottle、Diesel、Pecan、Falcon 这些流行的 Python web 框架,Python 开发者更倾向于选择 Django。 再大肆宣扬Django之前,让我们简单了解一下web框架 Web框架是一个代码库,使开发人员更容易构建动态网站、Web应用序和Web服务。 众所周知的是,每个网站都有一些通用的功能(如处理会话,数据验证等等),一些您每次创建网站时都需要编写的功能。 这使开发任务平淡乏味。 然而,使用Web框架可以让您每次创建网站都需要重新编写通用功能代...阅读全文

博文 2017-07-21 14:15:11 debian.cn

为何说微软不会基于Linux内核重构Windows

。而且,他还作为 MVP (微软最有价值专家)参与微软产品和策略的各种简报会。 对于近日流行的“微软应该迁移 Windows 系统核心至 Linux 内核”说法,他表示从产品和工角度来说微软在任何情况下都不可能这么做。 在说明具体原因之前,Barnes 认为在 Slashdot 和 Hacker News 上不断出现这个观点的原因: 能够吸引用户点击对于开源和 Linux 倡导者来说,这是一个很早就存在的幻想。目前,Windows 扮演的角色正在发生变化。尤其是当前 Android、iOS、macOS、Chrome OS 和 Ubuntu 都基于 Linux 的世界里伴随着 Linux 在 Azure 和 WSL 的使用率增加,这种合理性正在不断增加。奥弗顿之窗(The Overton...阅读全文

博文 2020-10-15 14:59:58 debian.cn