InfraPub 为您找到相关结果 809

Linux 系统 vim 编辑器使用简明教程

字输入,按ESC键可回到命令模式。 3) 底行模式(last line mode) 将保存或退出vi,也可以设置编辑环境,如寻找字符串、列出行号。 不过一般我们在使用时把vi简化成两个模式,就是将底行模式也算入命令模式。 一、打开、保存、关闭(vi命令模式下使用) vi filename //打开filename :w //保存 :w debian.cn //保存为前目录下的"debian.cn" :q //退出编辑器,如果已修改请使用下面的命令 :q! //退出编辑器,且不保存 :wq //退出编辑器,且保存 :x! //退出编辑器,且保存,忽略是否对具有写权限 二、插入本或行(vi命令模式下使用,执行下面命令后将进入插入模式,按ESC键可退...阅读全文

博文 2015-07-25 16:33:04 debian.cn

如何在Debian和Ubuntu下重新打包Deb文件

将会为 Ubuntu、Linux Mint 和 Debian GUN/Linux 用户讲述,如何在它们基于Debian的Linux操作系统上轻松的解压和重新打包.deb。 有时候你在生活中会碰到这样的问题,你想要修改.deb的部分内容,然后重新打包。下面的例子是刚发生在我身上的真实经历。一位Linux开发者为一个软构建了一个Debian包(.deb),我也成功地将它安装在我的装载Ubuntu的电脑上。 我试图从一个Git库中检索一些时,它总是卡顿,很显然,该软并没有正常工作。我知道安装的在哪里(/opt目录),所以,我搜查了代码并适地将部分问题修复。之后,程序试图检索需要的包时不再卡顿。 所以长话短说,我要将.deb解包,替换上我的补丁,然后再重新打包...阅读全文

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

influxdb内存消耗分析及性能优化【探索篇】

1.新的问题influxdb目前支持内存型索引inmem及型索引tsi1。之前追踪篇将influxd索引修改为tsi1之后,经过一段时间的运行,从监控观察到,由于调用方采用异步队列+批处理的方案将数据写入influxdb,会在某些时刻调用方内部出现数据堆积,指标如图:横坐标: 时间轴,从12-29 00:00 到 12-30 00:00纵坐标: 队列中数据堆积长度,坐标最大值250k,即最大25w个数据堆积从上图可以看到,天监控出现数次堆积,上午7:00-10:00尤为严重。在堆积时,登录influxdb服务器,查看机器状态如下:top - 09:40:58 up 120 days, 19:18, 1 user, load average: 32.29, 32.32, 29.82...阅读全文

博文 2021-10-27 16:06:30 知乎

Linux Kernel 5.12-RC1标记为dontuse 严重到会毁掉整个根文件系统

Torvalds 将某些代码标记为“dontuse”,通常表明这个问题比较大。在 5.12 首个候选版本更新中,破坏了交换(swapfile)的处理。具体来说,更新后的代码会失去指向 swapfile 开头的正确偏移。用 Torvalds 自己的话来说,“交换还是会发生,但它发生在系统的错误部分,最终结果显然是灾难性的”。这样 Linux 内核如果想要将内存中的内容分页到磁盘上的时候,数据就会落在相同磁盘和 swapfile 活跃的分区的随机部分上,而且这不是作为,而是作为垃圾直接写入到磁盘的原始扇区。这意味着不仅要覆盖现有中的数据,还要覆盖相大块的元数据,这些元数据的损坏很可能会导致整个系统无法挂载和使用。Torvalds 继续指出,如果你根本不使用 swap...阅读全文

k8s 中发现很多为状态为 Evicted 的 Pod

")) | "kubectl delete pods \(.metadata.name) -n \(.metadata.namespace)"' | xargs -n 1 bash -c 将Evicted状态的pod删除后,清理一波磁盘,具体操作可以查看如何清理Linux服务器磁盘空间 df -h //查看服务器空间 du -h --max-depth=1 //查看前目录,哪个占用最大 du -sh * //查看前目录下各夹占用大小 cp /dev/null a.log //将a.log清除为空 最后k8s上的服务显示正常了。...阅读全文

博文 2021-03-05 08:34:20 diablo4

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

作者:京东零售 石朝阳 在说IO多路复用模型之前,我们先来大致了解下Linux系统。在Linux系统中,不论是你的鼠标,键盘,还是打印机,甚至于连接到本机的socket client端,都是以描述符的形式存在于系统中,诸如此类,等等等等,所以可以这么说,一切皆。来看一下系统定义的描述符说明: 从上面的列表可以看到,描述符0,1,2都已经被系统占用了,系统启动的时候,这三个描述符就存在了。其中0代表标准输入,1代表标准输出,2代表错误输出。我们创建新的描述符的时候,就会在2的基础上进行递增。可以这么说,描述符是为了管理被打开的而创建的系统索引,他代表了的身份ID。对标windows的话,你可以认为和句柄类似,这样就更容易理解一些。 由于网上对linux...阅读全文

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

Hadoop 核心 - HDFS 分布式文件系统详解

block_size * 3 大小 hdfs dfsadmin -setSpaceQuota 4k /user/root/dir # 限制空间大小4KB hdfs dfs -put /root/a.txt /user/root/dir 生成任意大小的命令: dd if=/dev/zero of=1.txt bs=1M count=2 #生成2M的 清除空间配额限制 hdfs dfsadmin -clrSpaceQuota /user/root/dir 5.2. HDFS 的安全模式 安全模式是hadoop的一种保护机制,用于保证集群中的数据块的安全性。集群启动的时候,会首先进入安全模式。系统处于安全模式时会检查数据块的完整性。 假设我们设置的副本数(即参数dfs.replication)是3,那么...阅读全文

Git 介绍与使用详解

出现的原因,又是谁在何时报告了某个功能缺陷等等。 使用版本控制系统通常还意味着,就算你乱来一气把整个项目中的改的改删的删,你也照样可以轻松恢复到原先的样子。 但额外增加的工作量却微乎其微。 1.1.1集中化的版本控制系统,代表Svn 缺点: 1、依赖中央服务器。 如果宕机一小时,那么在这一小时内,谁都无法提交更新,也就无法协同工作。 2、如果中心数据库所在的磁盘发生损坏,又没有做恰备份,将丢失所有数据——包括项目的整个变更历史,只剩下人们在各自机器上保留的单独快照。 3、整个项目的历史记录被保存在单一位置,就有丢失所有历史更新记录的风险 4、必须联网才能工作,如果在局域网还可以,带宽够大,速度够快,如果在互联网下,如果网速慢的话,效率就很低了。 1.1.2分布式版本控制系统,代表Git...阅读全文

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

XFS V5 如何找到文件的创建时间?

xfs 从 v5 开始支持查看的创建时间。使用 dmesg 命令,可以查看系统前使用的 xfs 的版本: ``` # dmesg | grep -iE 'xfs.*\s+mounting' | head -1 ``` 如何查看 xfs 上的创建时间? 找到的 inode 信息后,就可以直接查看, ``` # stat -c '%i' test.txt 7827295 ``` 然后获取的创建时间, ``` # xfs_db -r -c "inode 7827295" -c "p v3.crtime.sec" v3.crtime.sec = Thu Feb 23 12:15:46...阅读全文

Web前端知识体系精简

页面就是由一堆html标签组成的代码,,人可以通过可视化的方式来判断页面上哪些内容是重点,而机器做不到。 但搜索引擎会根据标签的含义来判断内容的权重,因此,在合适的位置使用恰的标签,使整个页面的语义明确,结构清晰,搜索引擎才能正确识别页面中的重要内容,并予以较高的权值。比如h1~h6这几个标签在SEO中的权值非常高,用它们作页面的标题就是一个简单的SEO优化。 2、页面渲染机制 页面渲染就是浏览器的渲染引擎将html代码根据CSS定义的规则显示在浏览器窗口中的过程。大致工作原理如下: 用户输入网址,浏览器向服务器发出请求,服务器返回html; 渲染引擎开始载入html代码,并将HTML中的标签转化为DOM节点,生成DOM树; 如果中引用了外部css,则发出css请求...阅读全文

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

Debian 安装包的简单制作

在Linux分发软有两种形式,一种是源码,一种是安装包。目标机器不带有编译环境,且不能联网时,安装包就是唯一的方案了。 Linux 下的安装包有多种格式,不同Linux使用的格式并不完全相同。市场上主流的安装包格式是*.deb *.rpm 其中deb是debian系列的安装包,rpm是CentOS系列的安装包。 本主要介绍的是一种简单的deb安装包的制作方法,使用范围有限。如需了解更多可以阅读Debian 新维护人员手册 所需工具 如果没有安装dpkg工具包的话,就先安装(一般是默认安装的) sudo apt-get install dpkg 结构 example-package ├── DEBIAN (必须) │ ├── control (必须) │ └── md5sums...阅读全文

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

Gitlab CI 配置文件 .gitlab

GitLab 8.6 和 Runner v1.1.0 引入。 name允许定义创建的artifacts存档的名称。这样一来,我们可以为每个存档提供一个唯一的名称,需要从GitLab中下载是才不会混乱。artifacts:name可以使用任何的预定义变量(predefined variables)。它的默认名称为artifacts,下载是就变成了artifacts.zip。 配置示例 通过使用前job的名字作为存档名称: job: artifacts: name: "$CI_JOB_NAME" 使用前分支名称或者是tag作为存到名称,只存档没有被Git跟踪的: job: artifacts: name: "$CI_COMMIT_REF_NAME" untracked: true 使用前...阅读全文

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

开源云存储 Seafile 6.1.4 发布

Seafile 是一款开源的企业云盘,注重可靠性和性能。支持 Windows, Mac, Linux, iOS, Android 平台。支持同步或者直接挂载到本地访问。Seafile 的最新稳定版 6.1.4 已发布,更新如下: 云浏览器: 更新时不使用断点续传的上传功能 通过图标的显示来表示一个已被缓存 更改后且无法上传到服务器时显示警告图标 用户可以重新对上传失败的本地修改进行上传 添加一个命令打开本地缓存夹 上传夹时改进错误提示消息 [mac] 修复 doc/xls 下载后自动上传的 bug 一些 UI 的修复和改进 其他更新: 不显示 127.0.0.1 的连接状态 禁止编辑本地同步路径,用户只能选择路径 一些 UI 的修复和改进 完整更...阅读全文

博文 2017-12-21 09:52:34 debian.cn

Docker 快速入门之 Dockerfile

在容器环境中,我们可以通过容器创建一个我们自定义过的镜像,那么我们是否可以直接通过基础的镜像直接自定义镜像呢?答案然是可以的,在 Docker 中我们可以从名为 Dockerfile 的中读取指令并且自动构建镜像。在本中,将介绍 Dockerfile 的基本语法以及基本知识。 1 Dockerfile 是什么? Dockerfile 其实是一份档,里面包含了用户可以用来操作镜像的一些指令。通过顺序执行这些指令,最后得到一个自定义的镜像,这有点类似于我们的 shell script。 2 Dockerfile 示例 接下来先看一个 Dockerfile 示例: FROM centos LABEL maintainer="Locez " ENV...阅读全文

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

Systemd 及 Service 文件含义解析

。 * Type=oneshot:这一选项适用于只执行一项任务、随后立即退出的服务。可能需要同时设置 RemainAfterExit=yes 使得 systemd 在服务进程退出之后仍然认为服务处于激活状态。 * Type=notify:与 Type=simple 相同,但约定服务会在就绪后向 systemd 发送一个信号。这一通知的实现由 libsystemd-daemon.so 提供。 * Type=dbus:若以此方式启动,指定的 BusName 出现在DBus系统总线上时,systemd认为服务就绪。 修改现存单元 要更改由软包提供的单元,先创建名为 /etc/systemd/system/<单元名>.d/ 的目录(如/etc/systemd/system...阅读全文

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

Debian系统如何从 Jessie 升级为 Stretch

Debian 9(代号为 Stretch)前为测试阶段,代码已进入开发的最后阶段并已冻结,预计 Stretch RC1 的发布时间为四月底,正式版大约在七月底左右发布。 目前作为个人用的VPS主机,可以开始尝鲜 Debian 9了。 前 VPS 提供商还不提供 Debian 9 的镜像,如何直接从 Debian 8 升级到 Debian Stretch? 接下来就一步一步为大家介绍 Debian 的垮镜像升级的一般步骤。操作前请务必妥善备份现有系统,做好异地备份或者离线备份。 升级前准备: 备份前系统的数据 这类大操作都是有风险,所以我们先做好最坏的打算:如果系统升级后完全不可用,我们怎么办? 创建备份,并且同步到异地。 一般的VPS环境,需要备份的有几大类,Web服务器配置...阅读全文

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

WebAssembly:无需容器的 Docker (下)

。优化二进制码Wasm 是一个虚拟指令集,因此任何运行时的默认行为都是即时解释这些指令。 然,这在某些情况下可能会让速度变慢。 因此,为了通过 WasmEdge 获得两全其美的效果,你可以创建一个 AOT(提前编译)优化的二进制,它可以在前机器上原生运行,但仍然可以在其他机器上进行解释。要创建优化的二进制,请运行以下命令:wasmedgec --enable-all --optimize 3 \ build-output/php/php-7.4.32/bin/php-wasmedge \ build-output/php/php-7.4.32/bin/php-wasmedge-aot 我们在下面的例子中使用这个 build-output/php/php-7.4.32/bin/php...阅读全文

博文 2023-01-03 06:39:46 spider

Rust 1.37.0 稳定版发布

Rust 1.37.0 stable 有什么?Rust 1.37.0 的亮点包括通过类型别名引用枚举变量、内置 cargo vendor、对宏使用未命名的 const、配置引导的优化、Cargo 中的 default-run 和枚举上的 #[repr(align(N))] 。 通过类型别名引用枚举变量 在 Rust 1.37.0,可以通过类型别名引用枚举变量。例如: type ByteOption = Option; fn increment_or_zero(x: ByteOption) -> u8 { match x { ByteOption::Some(y) => y + 1, ByteOption::None => 0, } } 要实现它,Self 充类型别名。在 Rust...阅读全文

博文 2019-08-17 21:17:23 debian.cn

WordPress 4.8 Evans 正式版发布

,字体加粗,迅速添加链接等。本挂的功能更加强大,使用也更加简单了。 链接边界 你在编辑链接和更新链接的时候,是否有过不方便,很难正确编辑的时候呢?比如想要更新链接的字,却发现字在链接之外。 链接边界功能主要就是解决这个问题。你的鼠标光标进入链接区之后,将自动进入链接编辑模式,再进行任何修改,都是在修改锚本。光标离开链接范围之后,自动退出链接编辑模式。 细微之处的改进,却非常实用哦。 附近的 WordPress 活动 WordPress 社区非常活跃,在全球 400 多个城市举办过线下活动。WordPress 现在将这些活动的信息显示在 WordPress 的管理后台,吸引用户关注和参与这些活动,提升你的 WordPress 使用技术,结交好友等! 这是许多用户所喜爱的一个新功能...阅读全文

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

如何使用 journalctl 清理 journal 日志

在CentOS 7开始使用的systemd使用了journal日志,这个日志的管理方式和以往使用syslog的方式不同,可以通过管理工具维护。 使用df -h检查磁盘,可以看到/run目录下有日志目录/run/log/journal,占用了数G空间 Filesystem Size Used Avail Use% Mounted on /dev/mapper/centos-root 8.5G 4.2G 4.4G 49% / tmpfs 16G 1.6G 15G 11% /run 在日志目录下有很多历史累积的日志。 检查前journal使用磁盘量 journalctl --disk-usage 清理方法可以采用按照日期清理,或者按照允许保留的容量清理 journalctl...阅读全文

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

Linux Kernel 5.0 正式面向公众

big.LITTLE CPU 架构的设备的电源管理。以及支持 fscrypt 中用于低功耗设备的 Adiantum 加密系统和 Btrfs 交换系统。 其它值得留意变化包括:支持用户数据报协议(UDP)中的通用接收卸载(GRO)功能,cgroupv2 中的cpuset 资源控制器,以及支持能够运行多个 Android 实例的 binderfs 系统。 然,Linux Kernel 5.0 还更新了添加了许多驱动程序,以及无数的 bug 和安全修复。预计接下来几天内,各大 GNU / Linux 发行版都将迎来更新。 Linux Kernel 5.0 下载地址: https://cdn.kernel.org/pub/linux/kernel/v5.x/linux-5.0.tar.xz...阅读全文

博文 2019-03-04 19:06:03 debian.cn

如何在 Debian服务器 上启用双因子身份验证

双因子身份验证就是指,需要两种身份验证才能完成账号有效性的验证,可以是密码、SSH 密钥,也可以是第三方服务,比如 Google Authenticator。这意味着单个验证方式的缺陷,不会影响账号的安全。本我们将介绍如何在 Debian 服务器上启用双因子验证。 请注意,本涉及到多次修改 SSH 配置,你修改配置时,请确保有至少两个到服务器终端的连接。打开的终端将一直保持,即便 SSH 服务重启。第二终端意味着你可以修复你在SSH配置的错误。 密钥和密码验证的SSH SSH 支持对登录要求不止一个身份验证方法,我们首先启用密钥和密码验证。 在 /etc/sh/sshd_config 中的 SSH 服务器配置中的 AuthenticationMethods 选项中设置了身份验证方...阅读全文

博文 2018-12-05 11:44:56 debian.cn

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

省编辑器,并在每个用户的基础上明确指定的特权。 编辑/etc/sudoers/提供了更多的灵活性,但只能你需要这种灵活性,因为它管理用户帐户时,需要更多的维护使用。 使用visudo是做出改变的唯一推荐的方式/etc/sudoers ,因为它锁定对多个同时编辑该,并覆盖之前执行其内容的完整性检查。 这有助于防止在那里你错误地配置的情况sudo和,因为你已经失去了解决问题的防止sudo权限。 如果您前登录的用户名为root用户键入: visudo 如果您在使用一个非root用户签署sudo权限,请键入: sudo visudo 传统上, visudo打开/etc/sudoers中的vi编辑器,这对于没有经验的用户混淆。 默认情况下,新的Debian安装,就应该改用nano ,它...阅读全文

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

Terraform 学习总结 — Terraform 简介

Terraform Terraform 的安装非常简单,直接把官方提供的二进制可执行保存到本地就可以了。比如笔者习惯性的把它保存到 /usr/local/bin/ 目录下,然这个目录会被添加到 PATH 环境变量中。完成后检查一下版本号: 通过 -h 选项我们可以看到 terraform 支持的所有命令: 在 Azure 上创建一个 Resource Group 要让 Terraform 访问 Azure 订阅中的资源,需要先创建 Azure service principal,Azure service principa 允许你的 Terraform 脚本在 Azure 订阅中配置资源。请参考这里创建 Azure service principal。 配置 Terraform 环境变量 若要配置...阅读全文

你和 Linux 高手只差了一个 LFS

很多同学都已经学习了 Linux ,可能已经在自己的机器上安装过 Linux,甚至都能搭建个简单的个人博客,也有可能编译部署过邮服务器之类的软,可是感觉仍然对 Linux 有点摸不着,颇有隔靴挠痒的感受。 总是好奇 Linux 内核是怎么回事,究竟里面有点什么?总是好奇 Linux 是怎么启动起来的,那个什么 GRUB 怎么知道读取引导信息?总是好奇设备怎么就可以被操作,为什么可以从 /proc 读到进程的信息?总是好奇如何才能构建一个操作系统,从无到有的做成一个可引导的 Linux 启动盘? 不用羡慕那些说起这些就头头是道是 Linux 极客们,其实你和他们之间只是差一个 LFS 而已。 LFS 是什么? LFS(英 Linux From Scratch 的缩写),中释意...阅读全文

博文 2017-07-17 17:45:59 debian.cn

三大亮点带你看 Linux 内核 5.6

我们还在体验 Linux 5.5 稳定发行版带来更好的硬支持时,Linux 5.6 已经来了。说实话,Linux 5.6 比 5.5 更令人兴奋。即使即将发布的 Ubuntu 20.04 LTS 发行版将自带 Linux 5.5,你也需要切实了解一下 Linux 5.6 内核为我们提供了什么。 我将在本中重点介绍 Linux 5.6 发布版中值得期待的关键更改和功能: Linux 5.6 功能亮点 Linux 5.6 有新消息时,我会努力更新这份功能列表。但现在让我们先看一下前已知的内容: 1、支持 WireGuard WireGuard 将被添加到 Linux 5.6,出于各种原因的考虑它可能将取代 OpenVPN。如果你使用过它,那你可能已经知道它比 OpenVPN 更好的...阅读全文

博文 2020-02-07 11:13:09 debian.cn

Debian 11 "bullseye" 发布,带来内核 exFAT 支持

systemd 服务将在使用 USB 的打印机连接到系统时启动 ipp-usb 守护程序,以使其可用于打印任务。默认情况下 cups-browsed 软包应可以自动完成配置,或者可以手动设置本地无驱动打印队列。SANE 和无驱动扫描官方的 SANE 无驱动后端在 libsane1 软包中由 sane-escl 提供。另有一独立开发的无驱动后端 sane-airscan。两个后端均可使用 eSCL 协议,但 sane-airscan 另外也可使用 WSD 协议。用户应该考虑在系统上同时安装两个后端。eSCL 和 WSD 均为网络协议。因此,它们在设备是 IPP-over-USB 设备的情况下也可经由 USB 连接生效(参见上)。请注意 libsane1 推荐安装 ipp-usb 软包。在软...阅读全文

Debian Stretch 安装 Nodejs 最新版本

nodejs 你也可以直接下载官方预编译好的二级制来安装,注意更新 $PATH 变量。Node.js 的二进制打包脚本的官方地址在 GitHub 上。你也可以直接从官方网站上下载通用版的预编译,额外的工作是你需要自己解决 $PATH 等环境变量的设置问题。 检查确认 Nodejs 版本 通过执行命令 node -v ,我们可以看到前Node.js是最新的v8.x版本。 提示:如果我们需要其他版本的Node.js,我们只需要将安装里面下载链接 setup_8.x 替换成其它即可,如setup_7.x...阅读全文

博文 2018-01-17 14:00:39 debian.cn

社交巨人Facebook使用Linux和Btrfs的姿势

在Reddit上有人表示把42TB的普通存储(没有组RAID或者其他)全部采用Btrfs技术,通过把ext4系统迁移到Btrfs至少节省了5TB的存储空间。尽管已经开发了相长时间,但是鲜有发行版把Btrfs作默认的系统,目前SUSE企业版把Btrfs作为系统默认的系统。Linux.com日前采访了Btrfs的主要贡献者Chris Mason,通过他的讲述透露了社交巨头Facebook使用Linux内核与Btrfs系统的大量细节。 Chris Mason是开源系统项目Btrfs的主要贡献者,Mason最初在Oracle从事Btrfs的开发,后来他加入社交巨人Facebook的Linux内核技术小组继续从事Btrfs系统的研发工作。Facebook需要升级新内核的...阅读全文

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

kubectl 创建 Pod 背后到底发生了什么?—探寻 Kubectl 创建 Pod 的原理

--kubeconfig 参数, kubectl 就使用 –kubeconfig 参数提供的 kubeconfig 。如果没有提供 –kubeconfig 参数,但设置了环境变量 $KUBECONFIG,则使用该环境变量提供的 kubeconfig 。如果 –kubeconfig 参数和环境变量 $KUBECONFIG 都没有提供,kubectl 就使用默认的 kubeconfig $HOME/.kube/config。 解析完 kubeconfig 后,kubectl 会确定前要使用的上下前指向的群集以及与前用户关联的任何认证信息。如果用户提供了额外的参数(例如 –username),则优先使用这些参数覆盖 kubeconfig 中指定的值。一旦拿到这些信息之后, kubectl 就...阅读全文

博文 2022-04-18 16:18:04 CSDN

Linux 上如何禁用 USB 存储设备

block_usb.conf (也可能叫其他名字) , $ sudo vim /etc/modprobe.d/block_usb.conf 然后将下行内容添加进去: install usb-storage /bin/true 最后保存并退出。 方法 2:删除 USB 驱动 这种方法要求我们将 USB 存储的驱动程序(usb_storage.ko)删掉或者移走,从而达到无法再访问 USB 存储设备的目的。 执行下面命令可以将驱动从它默认的位置移走: $ sudo mv /lib/modules/$(uname -r)/kernel/drivers/usb/storage/usb-storage.ko /home/user 现在在默认的位置上无法再找到驱动程序了,因此 USB 存储器连接到系统上时也就无法加载到驱动...阅读全文

博文 2017-12-18 22:52:58 debian.cn

Gitlab CI 配置文件 .gitlab

也有一个特殊的状态,叫manual。 手动操作指令默认是不阻塞的。如果你想要手动操作指令产生阻塞,首先需要在job的配置.gitlab-ci.yml中添加allow_failure:false。 可选的手动操作指令默认设置allow_failure:true。 可选动作的状态不影响整个pipeline的状态。 手动操作指令被认为是写操作,所以前用户触发操作时,必须拥有操作保护分支的权限。换句话说,为了触发一个手动操作指令到pipeline中正在运行的指定分支,前用户必须拥有推送到这分支的权限。 enviroment 注意: GitLab 8.9 开始引入。 更多关于environment说明或者示例可以查看 documentation about environments...阅读全文

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

如何查看当前 Debian 系统的版本

有多种方式查看前 Debian系统 的版本信息,这里我们会分别介绍。最简单的查看方法,是查看 /etc/issue 这个,样例如下; root@debian:~# cat /etc/issue Debian GNU/Linux 9 \n \l 上面的命令有个小问题,它没有显示 Debian 的小版本号。要获取 Debian 的小版本号 Point Release 信息,我们可以使用以下这几个命令。 joseph@debian:~$ cat /etc/debian_version 9.9 /etc/debian_version 提供了完整的版本信息。另一个,则会提供更详细的版本信息,名是 /etc/os-release,样例如下; joseph@debian:~$ cat...阅读全文

博文 2019-04-20 13:06:36 debian.cn

Debian 25 岁生日快乐!精彩仍在继续

美国地时间8月16日,即今天,Debian 在官网发庆祝诞生 25 周年。 Debian 于1993年8月16日由 Ian Murdock 首次发布,最初将其称为"Debian Linux Release"。时,他将这封著名的电子邮发送到 comp.os.linux.development 邮列表,宣布他正在开发新的 Linux 发行版,并正在寻找建议。他将其称为 Debian Linux Release,并表示这是由 Linux 开发者从头开始开发的,尽管它受到 Softlanding Linux System (SLS) 的启发。 Debian 的名称由 Ian Murdock 时的女友 Debra 和 Ian Murdock 自己的名字合并而成,所以 Debian 一词是...阅读全文

博文 2018-08-17 00:01:33 debian.cn

Linux内存buffer和cache的区别

冲区,一个用于存储速度不同步的设备或优先级不同的设备之间传输数据的区域。通过缓冲区,可以使进程之间的相互等待变少,从而使从速度慢的设备读入数据时,速度快的设备的操作进程不发生间断。 在Free命令中显示的buffer和cache,它们都是占用内存: buffer : 作为buffer cache的内存,是块设备的读写缓冲区,更靠近存储设备,或者直接就是disk的缓冲区。 cache: 作为page cache的内存, 系统的cache,是memory的缓冲区 如果 cache 的值很大,说明cache住的数很多。如果频繁访问到的都能被cache住,那么磁盘的读IO 必会非常小。...阅读全文

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

-offline get apt-offline.sig --threads 5 --bundle apt-offline-bundle.zip 在这里的 -threads 5 代表着(并发连接的) APT 仓库的数目。如果你想要从更多的仓库下载软包,你可以增加这里的数值。然后 -bundle apt-offline-bundle.zip 选项表示所有的软包将会打包到一个叫做 apt-offline-bundle.zip 的单独存档中。这个存档将会被保存在你的前工作目录中(LCTT 译注:即 tmp 目录)。 上面的命令将会按照之前在离线系统上生成的签名下载数据。根据你的网络状况,这个操作将会花费几分钟左右的时间。请记住,apt-offline 是跨平台的,所以你可以在任何操作系统上使用它下...阅读全文

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

基于 Qt 的开源笔记软件 VNote 1.11.1 发布

新年伊始,VNote发布小更新v1.11.1。顾名思义,这次更新将会很“小”,主要是修复已知问题。然,这次更新也有值得大家浪费带宽下载的地方: 1. 更好的中支持 这一次基本所有界面都已经支持中了,强迫症表示幸福感来的有点突然。 2. 更好的复制粘贴 如果大家之前使用VNote来编辑,然后在阅读模式将HTML本复制到其他应用(如OneNote或者邮客户端)的话,那么这次绝对要更新了。现在VNote支持在阅读模式复制,基本格式无损地粘贴到其他富本编辑器中,甚至支持本图片混合复制哦!另外,还提供了无背景复制功能,让你的粘贴更酸爽! 3. 更好的主题 改进了主题,特别是针对暗色主题,让大家用得更舒服! 4. 外部程序支持快捷键 自定义外部程序现在支持快捷键了,从此可以一键打开喜欢的...阅读全文

博文 2018-01-05 23:43:22 debian.cn

Debian目前面临的问题:钱足够但很缺人!

。” Jonathan Carter 的演讲报告幻灯片,“问题永无止境” 社区的化是不花费不必要的钱。Carter 说,“Debian 人不喜欢花钱,对此有负罪感”。在 Register 看来,这导致社区依赖于少量中坚开发人员承担所有的工作。 官方给出了为 Debian 项目添砖加瓦的开发人员统计情况。目前上传代码的开发人员有 975 人,项目维护者有 223 人。在 Carter 看来,这远远不够,因为 Debian 项目正在不断增长。 在 2009 年,时的发行版 Lenny 的 i386 架构中有近 2.2 万个二进制软包。目前的 Bullseye 发行版中,amd64 架构中就有超过 6.1 万个二进制软包。Carter 指出,“规模很快就会突破 10 万个软包”。因此,规模扩张是项目面对的燃...阅读全文

博文 2020-10-09 10:24:04 debian.cn

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

会出现两次。因此,请放弃使用 ntpd、ntpdate 来校时。 makestep threshold limit 此指令使 Chrony 根据需要通过加速或减慢时钟来逐渐校正任何时间偏移。例如:makestep 1.0 3,就表示头三次校时,如果时间相差 1.0s, 则跳跃式校时。 rtcsync 启用内核时间与 RTC 时间同步 (自动写回硬)。 logdir 该参数用于指定 Chrony 日志的路径。 stratum weight 该参数用于设置 chronyd 从可用源中选择同步源时,每个层应该添加多少距离到同步距离。默认情况下设置为 0,让 chronyd 在选择源时忽略源的层级。 基本上常用的参数就只有这几个了,通常默认的配置就可以直接使用了,下面我们来看一个修改完...阅读全文

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

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

Kubernetes 1.7已经发布,该版本聚焦于安全、存储和扩展性等交付特性,其中包括Network Policy API、StatefulSets自动升级策略以及可扩展的API聚合层。Kubernetes的上一个发布版1.6版侧重于解决规模化和自动化上的问题,显然最新的1.7发布版力图为Kubernetes在企业组织中的进一步采用夯实基础。需注意的是,虽然1.7版的核心集群编排功能是以稳定版提供,但是其中给出的一些头条发布特性在档中被标为Alpha版或Beta版。 新提供的安全特性包括:Network Policy API。该API前已提升到稳定版,在实现为网络插时,用户可以设置并强制使用规则,指定可相互通信的Pod(类似于在用的网络/云ACL);节点授权器(Node...阅读全文

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

3个 Linux 命令让你看起来很忙:摸鱼的技巧

以在 github 上的 apache 2.0 许可下找到。 Blessed-contrib 我个人最喜欢的是 Blessed-contrib,但是它并不是一个专门为了这种表演而设计的应用程序。相反,它是一个基于 node.js 的终端仪表板构建库的演示,该库名为 fordated contrib。与其他两个命令不同的是,我实际上使用了 fulded contrib 的库来做一些实际工作的事情,而不仅仅是假装工作。它是一个非常有用的库,有可以用一组命令行显示信息的小部。但它也很容易填充虚拟数据来实现类似《WarGames》中的梦想。 在 github 上可以找到 Blessed-contrib 的源代码。 然,虽然这些工具很简单,但有很多方法可以让你的屏幕充满各种乱码。你将在电影中看...阅读全文

博文 2019-09-28 15:48:43 debian.cn

Linux Mint 19.2 Tina Beta 版发布 更好的内核管理功能

现在能够区分重复的应用程序(例如,flatpak、snap)新的滚动条设置ISO 中包含新的“引导修复”工具默认情况下启用“最近的档”Blueberry 小程序可让用户更快地断开/连接配对设备Xed 支持切换注释和注释块新壁纸Mint GTK 主题调整 此外,Nemo 管理器现在支持 夹固定 。这在大型目录中特别方便,因为它可以免去不必要的搜索。 一系列 Samba 支持改进也在 Cinnamon 4.2 中提供,包括在设置 Samba 时自动添加“适的 UFW 防火墙规则”。...阅读全文

博文 2019-07-17 16:39:26 debian.cn

Java Annotations详解

三个编译注释,你可以使用它们来给编译器发送指令。这些注释会在稍后再做更详细的介绍。 Java注释可以在编译时(build-time)时使用,你编译你的工程时。编译过程包括生成源代码,编译资源,生成XML(如:部署表述),以及将编译好的代码或打包成一个jar等。编译过程通常是由诸如Apache Ant或Apache Maven之类的编译工具自动完成的。编译工具会浏览你代码中的特定注释,并基于这些注释生成源代码或其他。 通常情况下,Java注释在代码编译完成后就变得不可见了。但是存在这种可能,你可以定义自己的注释,并使它们在运行时仍然可见。之后可以通过反射机制来访问这些注释来影响你的程序。 注释的基本知识 注释的最简单形式如下: @Entity 字符@告诉编译器这是一个...阅读全文

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

Linux系统诊断-内存基础

谈及linux内存,很多时候,我们会关注free,top等基础命令。系统遇到异常情况时,内存问题的根因追溯,现场诊断时,缺乏深层次的debug能力。本篇幅不做深层讨论,能把前系统的问题描述清楚,是每个SRE应该具备的最基础能力。free========2.1 free命令原理free是通过查看 /proc/meminfo 来获取内存的使用情况。但是 /proc/meminfo 这个又是怎么来的?我们先了解下 /proc 目录:/proc 是一个虚拟系统,该目录下的所有都是伪,该类只存在于内存中,并不占用空间——使用 du -sh 即可验证,该模具路下的磁盘占用都是0。/proc 下的所有都是内核调用proc_create() 接口来创建的虚拟条目。/proc 中...阅读全文

博文 2021-02-11 14:22:42 SegmentFault 思否

Git 免用户名密码访问代码库

config --global credential.helper store store为永久存储,然也可以设置临时的: git config –global credential.helper cache 默认为15分钟,如果想设置保存时间的话,可以输入: git config credential.helper 'cache --timeout=3600' 这样就设置了一个小时的有效时间。 执行完后查看 %HOME% 目录下的 .gitconfig ,会多了一项: [credential]helper=store 重新开启git bash会发现git push时不用再输入用户名和密码。在 Debian 等 Linux 系统中方法一致,只需要在自己的 $HOME 下创建 .git...阅读全文

博文 2018-11-28 12:55:36 debian.cn

Debian 将支持从 F2FS 根文件系统进行系统引导

不少用户希望通过将 Flash-Friendly File-System (F2FS) 作为根系统来启动和运行 Debian,现在这个目标将有望达成了。尽管 F2FS 早已问世,并且得到了越来越多的采用,尤其是在 Android 移动设备上,但默认情况下,大多数 Linux 发行版都不允许默认从 F2FS 系统进行引导。 不过事情现在迎来了转机,GRUB 2.04 在其 2019 年中期发布的版本中提供了 F2FS 支持。 更新后的 GRUB 能够支持读取 F2FS 根系统,而且这种支持也一直在向 Linux 发行版中扩散,然还需要启用相关模块(F2FS 模块)才能使用。对于 Debian 而言,他们本周最终将 F2FS 模块添加到了已签名的 UEFI 映像中。 从 F2FS...阅读全文

博文 2020-01-13 13:36:55 debian.cn

DPDK Graph Pipeline 框架简介与实现原理

enqueue 在上面介绍 node 的 object 队列大小部分,我们提到将报排队到下一个 node 的概念。对于普通的 enqueue,就是简单的将前 node 中处理好的报,通过使用 rte_memcpy / pointer assignment 作为传递方法, enqueue 到下一个可能的 node。 Home run Home run 则是一种优化的情况,它不像普通的 enqueue 把报复制到下一个 node,而是简单地交换前 node 和下一个 node 之间的有关于报的指针(例如报、报数目),从而消除 memory copy / pointer assignment 的开销。满足以下条时,home run 才会被触发: 所有已处理好的报都将前往同一个 node...阅读全文

博文 2023-02-09 07:13:55 掘金

我要彻底放弃 Debian 操作系统!-Michael Stapelberg

能清楚地记住不同工作流程的所有细节。每我遇到一个与我的工作方式截然不同的包时,我就会非常沮丧,我不得不重温日常工作的各个方面。 在注意到Go包团队(我最初的团队)工作流程的支离破碎后,我尝试采用这篇章(https://go-team.pages.debian.net/workflow-changes.html)中介绍的工作流程更改提议来解决这个问题,但没能成功。虽然我愿意贡献时间和精力,但周围的工具缺乏有效的自动化,且变化速度缓慢,这抹杀了我的动力。 陈旧的基础设施:包的上传 如果想在Debian中创建包,你需要通过匿名FTP上传GPG签名的。还有几个定时(例如dinstall的运行时间为UTC 01:52、UTC 07:52、UTC 13:52和UTC 19:52)运行的批处理作业...阅读全文

博文 2019-03-22 17:01:23 Michael Stapelberg

架构师详解 Nginx 架构

,主进程和工作进程需要进程交互。交互依赖于 Socket 实现的管道来实现。 Master-Worker 交互 这条管道与普通的管道不同,它是由主进程指向工作进程的单向管道,包含主进程向工作进程发出的指令,工作进程 ID 等;同时主进程与外界通过信号通信;每个子进程具备接收信号,并处理相应的事的能力。 worker-worker 交互 这种交互是和 Master-Worker 交互是基本一致的,但是会通过主进程。工作进程之间是相互隔离的,所以工作进程 W1 需要向工作进程 W2 发指令时,首先找到 W2 的进程 ID,然后将正确的指令写入指向 W2 的通道。W2 收到信号采取相应的措施。 五. 总结 通过这篇章,我们对 Nginx 服务器的整体架构有了一个整体的认识。包括其模块化的设计...阅读全文

博文 2018-05-01 23:10:47 debian.cn

Linux 5.2.1 发布 最新的稳定版内核

在 Linux 5.2 发布一周后,第一个修订版本 5.2.1 也已经发布了,用来处理各种错误/回归。需要注意的是5.2并非长期支持(LTS)分支,推荐注重稳定的用户还是使用前的LTS内核。 5.2.1版只是修改一些小小的问题,主要有以下方面: 修复 Perf减少 RTL 8712 驱动程序的堆栈使用fscrapt 将不再为 dead 目录设置策略还有一个新的档部分,详细说明了 Spectre 的 CPU 漏洞 完整列表查看发布说明。 Linux Kernel 5.2的亮点包括Sound Open Firmware,这是一个支持DSP音频设备的开源固。此外还新增了用于挂载系统的新挂载API,面向ARM Mail设备的全新开源GPU驱动,在EXT4系统中支持不区分大小写,以及对...阅读全文

博文 2019-07-15 10:24:57 debian.cn