关于 top 工具的 6 个替代方案
我并不会说它们比 top 更好或者可以完全替代 top,但多了解一些类似的工具总是好的。Media
via https://linux.cn/article-10323-1.html
我并不会说它们比 top 更好或者可以完全替代 top,但多了解一些类似的工具总是好的。Media
via https://linux.cn/article-10323-1.html
关于 top 工具的 6 个替代方案
<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201812/08/134540t9h4rrsd9k68pahm.jpg">Media</a>在 GitHub 和 GitLab 上,不断有来自世界各地的开源应用程序和工具涌现。其中有全新的应用程序,也有针对现有各种被广泛使用的 Linux 程序的替代方案。在本文档中,我会介绍一些针对 <a href="https://www.ostechnix.com/the-top-command-tutorial-with-examples-for-beginners/">top</a> 工具(也就是命令行任务管理器程序)的替代方案。top 工具的替代方案在本文中,将会介绍以下 6 种 top 工具的替代方案:HtopVtopGtopGotopPtopHegemon如果后续有更多类似的工具,原作者会在原文进行更新。如果你对此有兴趣,可以持续关注。Htophtop 是一个流行的开源跨平台交互式进程管理器,也是我最喜欢的系统活动监控工具。htop 是对原版 top 工具的扩展。它最初只是用于 Linux 系统,后来开发者们不断为其添加对其它类 Unix 操作系统的支持,包括 FreeBSD 和 Mac OS。htop 还是一个自由开源软件,它基于 ncurses 并按照 GPLv2 发布。和原版的 top 工具相比,htop 工具有这些优势:htop 比 top 启动更快htop 支持横向滚动和纵向滚动浏览进程列表,以便看到所有的进程和完整的命令行在 top 工具中进行杀死进程、更改进程优先级这些操作时,需要输入进程 ID,而在 htop 工具中则不需要输入在 htop 中可以同时杀死多个进程在 top 中每次输入一个未预设的键都要等待一段时间,尤其是在多个键组成转义字符串的时候就更麻烦了在很多 Linux 发行版的默认软件仓库中,都带有了…
<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201812/08/134540t9h4rrsd9k68pahm.jpg">Media</a>在 GitHub 和 GitLab 上,不断有来自世界各地的开源应用程序和工具涌现。其中有全新的应用程序,也有针对现有各种被广泛使用的 Linux 程序的替代方案。在本文档中,我会介绍一些针对 <a href="https://www.ostechnix.com/the-top-command-tutorial-with-examples-for-beginners/">top</a> 工具(也就是命令行任务管理器程序)的替代方案。top 工具的替代方案在本文中,将会介绍以下 6 种 top 工具的替代方案:HtopVtopGtopGotopPtopHegemon如果后续有更多类似的工具,原作者会在原文进行更新。如果你对此有兴趣,可以持续关注。Htophtop 是一个流行的开源跨平台交互式进程管理器,也是我最喜欢的系统活动监控工具。htop 是对原版 top 工具的扩展。它最初只是用于 Linux 系统,后来开发者们不断为其添加对其它类 Unix 操作系统的支持,包括 FreeBSD 和 Mac OS。htop 还是一个自由开源软件,它基于 ncurses 并按照 GPLv2 发布。和原版的 top 工具相比,htop 工具有这些优势:htop 比 top 启动更快htop 支持横向滚动和纵向滚动浏览进程列表,以便看到所有的进程和完整的命令行在 top 工具中进行杀死进程、更改进程优先级这些操作时,需要输入进程 ID,而在 htop 工具中则不需要输入在 htop 中可以同时杀死多个进程在 top 中每次输入一个未预设的键都要等待一段时间,尤其是在多个键组成转义字符串的时候就更麻烦了在很多 Linux 发行版的默认软件仓库中,都带有了…
如何在 Ubuntu 18.04 LTS 中配置 IP 地址
在 Ubuntu 18.04 LTS 中配置 IP 地址的方法和以往使用的配置方法有很大的不同。和旧版本的不同之处在于,Ubuntu 18.04 使用 Netplan 来配置 IP 地址Media
via https://linux.cn/article-10324-1.html
在 Ubuntu 18.04 LTS 中配置 IP 地址的方法和以往使用的配置方法有很大的不同。和旧版本的不同之处在于,Ubuntu 18.04 使用 Netplan 来配置 IP 地址Media
via https://linux.cn/article-10324-1.html
如何在 Ubuntu 18.04 LTS 中配置 IP 地址
<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201812/09/100932s1ac5lcvvvm6f5f1.jpg">Media</a>在 Ubuntu 18.04 LTS 中配置 IP 地址的方法和以往使用的配置方法有很大的不同。和旧版本的不同之处在于,Ubuntu 18.04 使用 <strong>Netplan</strong> 来配置 IP 地址,<strong>Netplan</strong> 是一个新的命令行网络配置工具。其实在 Ubuntu 17.10 的时候 Ubuntu 开发者就已经介绍过 Netplan 了。接下来要介绍的新的 IP 配置方法不会再用到 /etc/network/interfaces 这个文件,取而代之的是一个 YAML 文件。默认的 Netplan 配置文件一般在 /etc/netplan 目录下。 在这篇教程中,我们会去学习在 <strong>Ubuntu 18.04 LTS</strong> 的最小化服务器中配置静态 IP 和动态 IP 。在 Ubuntu 18.04 LTS 中配置静态 IP 地址首先先找到 Netplan 默认的网络配置文件所在之处:<pre class="prettyprint linenums">$ ls /etc/netplan/50-cloud-init.yaml</pre>我们可以看到,默认的网络配置文件是 50-cloud-init.yaml ,这是一个 YAML 文件。然后我们再看一下这个文件的内容是什么:<pre class="prettyprint linenums">$ cat /etc/netplan/50-cloud-init.yaml</pre>我在之前安装 Ubuntu 18.04 的时候为了从 DHCP 服务器获取 IP 地址已经已经做过了网卡的相关配置,所以详细配置直接看下图:<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201812/09/100932lxoff3pq4cg4siiu.png">Media</a>可以看到这边有两个网卡,分别是 enp0s3 和 enp0s8 ,并且这两个网卡都配置为从 DHCP 服务器中获取 IP。现在我们给这两个网卡都配置为静态 IP 地址,先用任意一种编辑器来编辑配置文件。<pre class="prettyprint linenums">$ sudo nano /etc/netplan/50-cloud-init.yaml</pre>接下来我们分别添加 IP 地址、子网掩码、网关、DNS 服务器等配置。分别用 192.168.225.50 作为网卡 enp0s3 的 IP 地址, 192.168.225.51 作为&…
<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201812/09/100932s1ac5lcvvvm6f5f1.jpg">Media</a>在 Ubuntu 18.04 LTS 中配置 IP 地址的方法和以往使用的配置方法有很大的不同。和旧版本的不同之处在于,Ubuntu 18.04 使用 <strong>Netplan</strong> 来配置 IP 地址,<strong>Netplan</strong> 是一个新的命令行网络配置工具。其实在 Ubuntu 17.10 的时候 Ubuntu 开发者就已经介绍过 Netplan 了。接下来要介绍的新的 IP 配置方法不会再用到 /etc/network/interfaces 这个文件,取而代之的是一个 YAML 文件。默认的 Netplan 配置文件一般在 /etc/netplan 目录下。 在这篇教程中,我们会去学习在 <strong>Ubuntu 18.04 LTS</strong> 的最小化服务器中配置静态 IP 和动态 IP 。在 Ubuntu 18.04 LTS 中配置静态 IP 地址首先先找到 Netplan 默认的网络配置文件所在之处:<pre class="prettyprint linenums">$ ls /etc/netplan/50-cloud-init.yaml</pre>我们可以看到,默认的网络配置文件是 50-cloud-init.yaml ,这是一个 YAML 文件。然后我们再看一下这个文件的内容是什么:<pre class="prettyprint linenums">$ cat /etc/netplan/50-cloud-init.yaml</pre>我在之前安装 Ubuntu 18.04 的时候为了从 DHCP 服务器获取 IP 地址已经已经做过了网卡的相关配置,所以详细配置直接看下图:<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201812/09/100932lxoff3pq4cg4siiu.png">Media</a>可以看到这边有两个网卡,分别是 enp0s3 和 enp0s8 ,并且这两个网卡都配置为从 DHCP 服务器中获取 IP。现在我们给这两个网卡都配置为静态 IP 地址,先用任意一种编辑器来编辑配置文件。<pre class="prettyprint linenums">$ sudo nano /etc/netplan/50-cloud-init.yaml</pre>接下来我们分别添加 IP 地址、子网掩码、网关、DNS 服务器等配置。分别用 192.168.225.50 作为网卡 enp0s3 的 IP 地址, 192.168.225.51 作为&…
如何在 Linux 上管理字体
虽然在 Linux 平台上尚未找到完美的字体渲染方案,但开源平台做的很好一件事的就是允许用户轻松地管理他们的字体。Media
via https://linux.cn/article-10325-1.html
虽然在 Linux 平台上尚未找到完美的字体渲染方案,但开源平台做的很好一件事的就是允许用户轻松地管理他们的字体。Media
via https://linux.cn/article-10325-1.html
如何在 Linux 上管理字体
<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201812/09/111530pvtueaeqvajzjptz.jpg">Media</a>我不仅写技术文档,还写小说。并且因为我对 GIMP 等工具感到满意,所以我也(LCTT 译注:此处应指使用 GIMP)为自己的书籍创作了封面(并为少数客户做了图形设计)。艺术创作取决于很多东西,包括字体。虽然字体渲染已经在过去的几年里取得了长足进步,但它在 Linux 平台上仍是个问题。如果你在 Linux 和 macOS 平台上比较相同字体的外观,差别是显而易见的,尤其是你要盯着屏幕一整天的时候。虽然在 Linux 平台上尚未找到完美的字体渲染方案,但开源平台做的很好一件事的就是允许用户轻松地管理他们的字体。通过选择、添加、缩放和调整,你可以在 Linux 平台上相当轻松地使用字体。此处,我将分享一些这些年来我的一些技巧,可以帮我在 Linux 上扩展“字体能力”。这些技巧将对那些在开源平台上进行艺术创作的人有特别的帮助。因为 Linux 平台上有非常多可用的桌面界面(每种界面以不同的方式处理字体),因此当桌面环境成为字体管理的中心时,我将主要聚焦在 GNOME 和 KDE 上。话虽如此,让我们开始吧。添加新字体在相当长的一段时间里,我都是一个字体收藏家,甚至有些人会说我有些痴迷。从我使用 Linux 的早期开始,我就总是用相同的方法向我的桌面添加字体。有两种方法可以做到这一点:使字体按…
<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201812/09/111530pvtueaeqvajzjptz.jpg">Media</a>我不仅写技术文档,还写小说。并且因为我对 GIMP 等工具感到满意,所以我也(LCTT 译注:此处应指使用 GIMP)为自己的书籍创作了封面(并为少数客户做了图形设计)。艺术创作取决于很多东西,包括字体。虽然字体渲染已经在过去的几年里取得了长足进步,但它在 Linux 平台上仍是个问题。如果你在 Linux 和 macOS 平台上比较相同字体的外观,差别是显而易见的,尤其是你要盯着屏幕一整天的时候。虽然在 Linux 平台上尚未找到完美的字体渲染方案,但开源平台做的很好一件事的就是允许用户轻松地管理他们的字体。通过选择、添加、缩放和调整,你可以在 Linux 平台上相当轻松地使用字体。此处,我将分享一些这些年来我的一些技巧,可以帮我在 Linux 上扩展“字体能力”。这些技巧将对那些在开源平台上进行艺术创作的人有特别的帮助。因为 Linux 平台上有非常多可用的桌面界面(每种界面以不同的方式处理字体),因此当桌面环境成为字体管理的中心时,我将主要聚焦在 GNOME 和 KDE 上。话虽如此,让我们开始吧。添加新字体在相当长的一段时间里,我都是一个字体收藏家,甚至有些人会说我有些痴迷。从我使用 Linux 的早期开始,我就总是用相同的方法向我的桌面添加字体。有两种方法可以做到这一点:使字体按…
9 个鲜为人知的 Python 数据科学库
除了 pandas、scikit-learn 和 matplotlib,还要学习一些用 Python 进行数据科学的新技巧。Media
via https://linux.cn/article-10326-1.html
除了 pandas、scikit-learn 和 matplotlib,还要学习一些用 Python 进行数据科学的新技巧。Media
via https://linux.cn/article-10326-1.html
9 个鲜为人知的 Python 数据科学库
除了 pandas、scikit-learn 和 matplotlib,还要学习一些用 Python 进行数据科学的新技巧。<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201812/09/115459xoovm8j1z8bvu86z.jpg">Media</a>Python 是一种令人惊叹的语言。事实上,它是世界上增长最快的编程语言之一。它一次又一次地证明了它在各个行业的开发者和数据科学者中的作用。Python 及其库的整个生态系统使其成为全世界用户的恰当选择,无论是初学者还是高级用户。它成功和受欢迎的原因之一是它的一组强大的库,使它如此动态和快速。在本文中,我们将看到 Python 库中的一些数据科学工具,而不是那些常用的工具,如 pandas、scikit-learn 和 matplotlib。虽然像 pandas、scikit-learn 这样的库是机器学习中最常想到的,但是了解这个领域的其他 Python 库也是非常有帮助的。Wget提取数据,尤其是从网络中提取数据,是数据科学家的重要任务之一。<a href="https://pypi.org/project/wget/">Wget</a> 是一个免费的工具,用于从网络上非交互式下载文件。它支持 HTTP、HTTPS 和 FTP 协议,以及通过 HTTP 代理进行访问。因为它是非交互式的,所以即使用户没有登录,它也可以在后台工作。所以下次你想下载一个网站或者网页上的所有图片,wget 会提供帮助。安装:<pre class="prettyprint linenums">$ pip install wget</pre>例子:<pre class="prettyprint linenums">import wgeturl = 'http://www.futurecrew.com/skaven/song_files/mp3/razorback.mp3'filename = wget.download(url)100% [................................................] 3841532 / 3841532filename'razorback.mp3'</pre>钟摆对于在 Python 中处理日期时间感到沮丧的人来说, <a href="https://github.com/sdispater/pendulum">Pendulum</a> 库是很有帮助的z…
除了 pandas、scikit-learn 和 matplotlib,还要学习一些用 Python 进行数据科学的新技巧。<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201812/09/115459xoovm8j1z8bvu86z.jpg">Media</a>Python 是一种令人惊叹的语言。事实上,它是世界上增长最快的编程语言之一。它一次又一次地证明了它在各个行业的开发者和数据科学者中的作用。Python 及其库的整个生态系统使其成为全世界用户的恰当选择,无论是初学者还是高级用户。它成功和受欢迎的原因之一是它的一组强大的库,使它如此动态和快速。在本文中,我们将看到 Python 库中的一些数据科学工具,而不是那些常用的工具,如 pandas、scikit-learn 和 matplotlib。虽然像 pandas、scikit-learn 这样的库是机器学习中最常想到的,但是了解这个领域的其他 Python 库也是非常有帮助的。Wget提取数据,尤其是从网络中提取数据,是数据科学家的重要任务之一。<a href="https://pypi.org/project/wget/">Wget</a> 是一个免费的工具,用于从网络上非交互式下载文件。它支持 HTTP、HTTPS 和 FTP 协议,以及通过 HTTP 代理进行访问。因为它是非交互式的,所以即使用户没有登录,它也可以在后台工作。所以下次你想下载一个网站或者网页上的所有图片,wget 会提供帮助。安装:<pre class="prettyprint linenums">$ pip install wget</pre>例子:<pre class="prettyprint linenums">import wgeturl = 'http://www.futurecrew.com/skaven/song_files/mp3/razorback.mp3'filename = wget.download(url)100% [................................................] 3841532 / 3841532filename'razorback.mp3'</pre>钟摆对于在 Python 中处理日期时间感到沮丧的人来说, <a href="https://github.com/sdispater/pendulum">Pendulum</a> 库是很有帮助的z…
Emacs 系列(三): Org 模式的补充
<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201812/09/195006oz8xr841oko616x3.png">Media</a>这是 <a href="https://changelog.complete.org/archives/tag/emacs2018">Emacs 和 Org 模式系列</a>的第三篇。Todo 的跟进及关键字当你使用 Org 模式来跟进你的 TODO 时,它有多种状态。你可以用 C-c C-t 来快速切换状态。我将它设为这样:<pre class="prettyprint linenums">(setq org-todo-keywords '( (sequence "TODO(t!)" "NEXT(n!)" "STARTED(a!)" "WAIT(w@/!)" "OTHERS(o!)" "|" "DONE(d)" "CANCELLED(c)")))</pre>在这里,我设置了一个任务未完成的五种状态:TODO、NEXT、STARTED、WAIT 及 OTHERS。每一个状态都有单个字的快捷键(t、n、a 等)。管道符(|)之后的状态被认为是“完成”的状态。我有两个“完成”状态:DONE(已经完成)及 CANCELLED(还没完成,但由于其它的原因无法完成)。! 的含义是记录某项更改为状态的时间。我不把这个添加到完成的状态,是因为它们已经被记录了。@ 符号表示带理由的提示,所以当切换到 WAIT 时,Org 模式会问我为什么,并将这个添加到笔记中。以下是项目状态发生变化的例子:<pre class="prettyprint linenums">** DONE This is a test CLOSED: [2018-03-02 Fri 03:05] - State "DONE" from "WAIT" [2018-03-02 Fri 03:05] - State "WAIT" from "TODO" [2018-03-02 Fri 03:05] \\ waiting for pigs to fly - State "TODO" from "NEXT" [2018-03-02 Fri 03:05] - State "NEXT" from "TODO" [2018-03-02 Fri 03:05]</pre>在这里,最新的项目在最上面。议程模式,日程及期限当你处在一个待办事项时,C-c C-s 或 C-c C-d 可以为其设置相应的日程或期限。这些都是在议程模式中的功能。它们的区别在于其意图和表现。日程是你希望在某个时候完成的事情,而期限是在某个特定的时间应该完成的事情。默认情况下,议程视图将在项目௚…
<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201812/09/195006oz8xr841oko616x3.png">Media</a>这是 <a href="https://changelog.complete.org/archives/tag/emacs2018">Emacs 和 Org 模式系列</a>的第三篇。Todo 的跟进及关键字当你使用 Org 模式来跟进你的 TODO 时,它有多种状态。你可以用 C-c C-t 来快速切换状态。我将它设为这样:<pre class="prettyprint linenums">(setq org-todo-keywords '( (sequence "TODO(t!)" "NEXT(n!)" "STARTED(a!)" "WAIT(w@/!)" "OTHERS(o!)" "|" "DONE(d)" "CANCELLED(c)")))</pre>在这里,我设置了一个任务未完成的五种状态:TODO、NEXT、STARTED、WAIT 及 OTHERS。每一个状态都有单个字的快捷键(t、n、a 等)。管道符(|)之后的状态被认为是“完成”的状态。我有两个“完成”状态:DONE(已经完成)及 CANCELLED(还没完成,但由于其它的原因无法完成)。! 的含义是记录某项更改为状态的时间。我不把这个添加到完成的状态,是因为它们已经被记录了。@ 符号表示带理由的提示,所以当切换到 WAIT 时,Org 模式会问我为什么,并将这个添加到笔记中。以下是项目状态发生变化的例子:<pre class="prettyprint linenums">** DONE This is a test CLOSED: [2018-03-02 Fri 03:05] - State "DONE" from "WAIT" [2018-03-02 Fri 03:05] - State "WAIT" from "TODO" [2018-03-02 Fri 03:05] \\ waiting for pigs to fly - State "TODO" from "NEXT" [2018-03-02 Fri 03:05] - State "NEXT" from "TODO" [2018-03-02 Fri 03:05]</pre>在这里,最新的项目在最上面。议程模式,日程及期限当你处在一个待办事项时,C-c C-s 或 C-c C-d 可以为其设置相应的日程或期限。这些都是在议程模式中的功能。它们的区别在于其意图和表现。日程是你希望在某个时候完成的事情,而期限是在某个特定的时间应该完成的事情。默认情况下,议程视图将在项目௚…
30 个 Openstack 经典面试问题和解答
现在,大多数公司都试图将它们的 IT 基础设施和电信设施迁移到私有云, 如 OpenStack。如果你打算面试 OpenStack 管理员这个岗位,那么下面列出的这些面试问题可能会帮助你通过面试。Media
via https://linux.cn/article-10328-1.html
现在,大多数公司都试图将它们的 IT 基础设施和电信设施迁移到私有云, 如 OpenStack。如果你打算面试 OpenStack 管理员这个岗位,那么下面列出的这些面试问题可能会帮助你通过面试。Media
via https://linux.cn/article-10328-1.html
30 个 Openstack 经典面试问题和解答
现在,大多数公司都试图将它们的 IT 基础设施和电信设施迁移到私有云, 如 OpenStack。如果你打算面试 OpenStack 管理员这个岗位,那么下面列出的这些面试问题可能会帮助你通过面试。<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201812/09/212017yh2n305q2wti155i.jpg">Media</a>Q:1 说一下 OpenStack 及其主要组件?答: OpenStack 是一系列开源软件,这些软件组成了一个云供给软件,也就是 OpenStack,意即开源软件或项目栈。下面是 OpenStack 的主要关键组件:<strong>Nova</strong> – 用于在计算级别管理虚拟机,并在计算或管理程序级别执行其他计算任务。<strong>Neutron</strong> – 为虚拟机、计算和控制节点提供网络功能。<strong>Keystone</strong> – 为所有云用户和 OpenStack 云服务提供身份认证服务。换句话说,我们可以说 Keystone 是一个提供给云用户和云服务访问权限的方法。<strong>Horizon</strong> – 用于提供图形用户界面。使用图形化管理界面可以很轻松地完成各种日常操作任务。<strong>Cinder</strong> – 用于提供块存储功能。通常来说 OpenStack 的 Cinder 中集成了 Chef 和 ScaleIO 来共同为计算和控制节点提供块存储服务。<strong>Swift</strong> – 用于提供对象存储功能。通常来说,Glance 管理的镜像是存储在对象存储空间的。像 ScaleIO 这样的外部存储也可以提供对象存储,可以很容易的集成 Glance 服务。<strong>Glance</strong> – 用于提供镜像服务。使用 Glance 的管理平台来上传和下载云镜像。<strong>Heat</strong> – 用于提供编排服务或功能。使用 Heat 管理平台可以轻松地将虚拟机作&#…
现在,大多数公司都试图将它们的 IT 基础设施和电信设施迁移到私有云, 如 OpenStack。如果你打算面试 OpenStack 管理员这个岗位,那么下面列出的这些面试问题可能会帮助你通过面试。<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201812/09/212017yh2n305q2wti155i.jpg">Media</a>Q:1 说一下 OpenStack 及其主要组件?答: OpenStack 是一系列开源软件,这些软件组成了一个云供给软件,也就是 OpenStack,意即开源软件或项目栈。下面是 OpenStack 的主要关键组件:<strong>Nova</strong> – 用于在计算级别管理虚拟机,并在计算或管理程序级别执行其他计算任务。<strong>Neutron</strong> – 为虚拟机、计算和控制节点提供网络功能。<strong>Keystone</strong> – 为所有云用户和 OpenStack 云服务提供身份认证服务。换句话说,我们可以说 Keystone 是一个提供给云用户和云服务访问权限的方法。<strong>Horizon</strong> – 用于提供图形用户界面。使用图形化管理界面可以很轻松地完成各种日常操作任务。<strong>Cinder</strong> – 用于提供块存储功能。通常来说 OpenStack 的 Cinder 中集成了 Chef 和 ScaleIO 来共同为计算和控制节点提供块存储服务。<strong>Swift</strong> – 用于提供对象存储功能。通常来说,Glance 管理的镜像是存储在对象存储空间的。像 ScaleIO 这样的外部存储也可以提供对象存储,可以很容易的集成 Glance 服务。<strong>Glance</strong> – 用于提供镜像服务。使用 Glance 的管理平台来上传和下载云镜像。<strong>Heat</strong> – 用于提供编排服务或功能。使用 Heat 管理平台可以轻松地将虚拟机作&#…
udev 入门:管理设备事件的 Linux 子系统
创建这样一个脚本,当指定的设备插入时触发你的计算机去做一个指定动作。Media
via https://linux.cn/article-10329-1.html
创建这样一个脚本,当指定的设备插入时触发你的计算机去做一个指定动作。Media
via https://linux.cn/article-10329-1.html
udev 入门:管理设备事件的 Linux 子系统
创建这样一个脚本,当指定的设备插入时触发你的计算机去做一个指定动作。<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201812/09/221138aqmuwpuu5uxlw85w.jpg">Media</a>udev 是一个为你的计算机提供设备事件的 Linux 子系统。通俗来讲就是,当你的计算机上插入了像网卡、外置硬盘(包括 U 盘)、鼠标、键盘、游戏操纵杆和手柄、DVD-ROM 驱动器等等设备时,代码能够检测到它们。这样就能写出很多可能非常有用的实用程序,而它已经很好了,普通用户就可以写出脚本去做一些事情,比如当某个硬盘驱动器插入时,执行某个任务。这篇文章教你去如何写一个由一些 udev 事件触发的 <a href="https://linux.die.net/man/8/udev">udev</a> 脚本,比如插入了一个 U 盘。当你理解了 udev 的工作原理,你就可以用它去做各种事情,比如当一个游戏手柄连接后加载一个指定的驱动程序,或者当你用于备份的驱动器连接后,自动执行备份工作。一个初级的脚本使用 udev 的最佳方式是从一个小的代码块开始。不要指望从一开始就写出完整的脚本,而是从最简单的确认 udev 触发了某些指定的事件开始。对于你的脚本,依据你的目标,并不是在任何情况下都能保证你亲眼看到你的脚本运行结果的,因此需要在你的脚本日志中确认它成功触发了。而日志文件通常放在 /var 目录下,但那个目录通常是 root 用户的领地。对于测试目的,可以使用 /tmp&…
创建这样一个脚本,当指定的设备插入时触发你的计算机去做一个指定动作。<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201812/09/221138aqmuwpuu5uxlw85w.jpg">Media</a>udev 是一个为你的计算机提供设备事件的 Linux 子系统。通俗来讲就是,当你的计算机上插入了像网卡、外置硬盘(包括 U 盘)、鼠标、键盘、游戏操纵杆和手柄、DVD-ROM 驱动器等等设备时,代码能够检测到它们。这样就能写出很多可能非常有用的实用程序,而它已经很好了,普通用户就可以写出脚本去做一些事情,比如当某个硬盘驱动器插入时,执行某个任务。这篇文章教你去如何写一个由一些 udev 事件触发的 <a href="https://linux.die.net/man/8/udev">udev</a> 脚本,比如插入了一个 U 盘。当你理解了 udev 的工作原理,你就可以用它去做各种事情,比如当一个游戏手柄连接后加载一个指定的驱动程序,或者当你用于备份的驱动器连接后,自动执行备份工作。一个初级的脚本使用 udev 的最佳方式是从一个小的代码块开始。不要指望从一开始就写出完整的脚本,而是从最简单的确认 udev 触发了某些指定的事件开始。对于你的脚本,依据你的目标,并不是在任何情况下都能保证你亲眼看到你的脚本运行结果的,因此需要在你的脚本日志中确认它成功触发了。而日志文件通常放在 /var 目录下,但那个目录通常是 root 用户的领地。对于测试目的,可以使用 /tmp&…
你和 Linux 极客只差一个 LFS:LFS 8.3 中文翻译版本发布!
不用羡慕那些说起这些就头头是道是 Linux 极客们,其实你和他们之间只是差一个 LFS 而已。Media
via https://linux.cn/article-8438-1.html
不用羡慕那些说起这些就头头是道是 Linux 极客们,其实你和他们之间只是差一个 LFS 而已。Media
via https://linux.cn/article-8438-1.html
你和 Linux 极客只差一个 LFS:LFS 8.3 中文翻译版本发布!
<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201704/23/093951rv6hy3d1xhhedvxd.jpg">Media</a>很多同学都已经学习了 Linux ,可能已经在自己的机器上安装过 Linux,甚至都能搭建个简单的个人博客,也有可能编译部署过邮件服务器之类的软件,可是感觉仍然对 Linux 有点摸不着,颇有隔靴挠痒的感受。总是好奇 Linux 内核是怎么回事,究竟里面有点什么?总是好奇 Linux 是怎么启动起来的,那个什么 GRUB 怎么知道读取引导信息?总是好奇设备怎么就可以被当成文件操作,为什么可以从 <code>/proc</code> 读到进程的信息?总是好奇如何才能构建一个操作系统,从无到有的做成一个可引导的 Linux 启动盘?不用羡慕那些说起这些就头头是道是 Linux 极客们,其实你和他们之间只是差一个 LFS 而已。什么?请听我娓娓道来~LFS 是什么?<a href="http://www.linuxfromscratch.org/lfs/">LFS</a>(英文 Linux From Scratch 的缩写),中文释意为“从零开始构建的 Linux”。好吧!看起来很高大上 OTZ,可它到底是什么东西呢?感觉上它好像经常和 RedHat,Debain 这类发行版混在一起,那它应该也是个发行版吧!这样理解其实也没有什么不对,但比起发行版来,它其实更像一本书。书本只提供知识,它只教你做,不会帮你做。这才是 LFS 和别的发行版的本质区别。这本书可以教你如何亦步亦趋的从零开始搭建一个具体而微的 Linux 系统,没错,就是从零开始,是不是有一种上帝视角௚…
<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201704/23/093951rv6hy3d1xhhedvxd.jpg">Media</a>很多同学都已经学习了 Linux ,可能已经在自己的机器上安装过 Linux,甚至都能搭建个简单的个人博客,也有可能编译部署过邮件服务器之类的软件,可是感觉仍然对 Linux 有点摸不着,颇有隔靴挠痒的感受。总是好奇 Linux 内核是怎么回事,究竟里面有点什么?总是好奇 Linux 是怎么启动起来的,那个什么 GRUB 怎么知道读取引导信息?总是好奇设备怎么就可以被当成文件操作,为什么可以从 <code>/proc</code> 读到进程的信息?总是好奇如何才能构建一个操作系统,从无到有的做成一个可引导的 Linux 启动盘?不用羡慕那些说起这些就头头是道是 Linux 极客们,其实你和他们之间只是差一个 LFS 而已。什么?请听我娓娓道来~LFS 是什么?<a href="http://www.linuxfromscratch.org/lfs/">LFS</a>(英文 Linux From Scratch 的缩写),中文释意为“从零开始构建的 Linux”。好吧!看起来很高大上 OTZ,可它到底是什么东西呢?感觉上它好像经常和 RedHat,Debain 这类发行版混在一起,那它应该也是个发行版吧!这样理解其实也没有什么不对,但比起发行版来,它其实更像一本书。书本只提供知识,它只教你做,不会帮你做。这才是 LFS 和别的发行版的本质区别。这本书可以教你如何亦步亦趋的从零开始搭建一个具体而微的 Linux 系统,没错,就是从零开始,是不是有一种上帝视角௚…
NASA 在开放科学方面做了些什么
在这篇文章中我们主要讨论了 NASA 的积极努力,这些努力包括他们通过开源实践来促进科学研究的积极作用。Media
via https://linux.cn/article-10330-1.html
在这篇文章中我们主要讨论了 NASA 的积极努力,这些努力包括他们通过开源实践来促进科学研究的积极作用。Media
via https://linux.cn/article-10330-1.html
NASA 在开放科学方面做了些什么
<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201812/10/185529jeiwccc6k36ch6mf.jpg">Media</a>最近我们刚为开设了一个新的“<a href="https://itsfoss.com/category/science/">科学类</a>”的文章分类。其中发表的最新一篇文章名为:<a href="https://itsfoss.com/open-source-impact-on-science/">开源是怎样影响科学的</a>。在这篇文章中我们主要讨论了 <a href="https://www.nasa.gov/">NASA</a> 的积极努力,这些努力包括他们通过开源实践来促进科学研究的积极作用。NASA 是怎样使用开源手段促进科学研究的NASA 将他们的整个研究库对整个公共领域开放,这是一项<a href="https://futurism.com/free-science-nasa-just-opened-its-entire-research-library-to-the-public/">壮举</a>。没错!每个人都能访问他们的整个研究库,并能从他们的研究中获益。他们现已开放的资料可以大致分为以下三类:开源 NASA开放 API开放数据1、开源 NASA这里有一份 <a href="https://github.com/">GitHub</a> 的联合创始人之一和执行总裁 <a href="http://chriswanstrath.com/">Chris Wanstrath</a> 的采访,他向我们介绍道,一切都是从很多年前开始的。该项目名为 “<a href="http://code.nasa.gov">code.nasa.gov</a>”,截至本文发表为止,NASA 已经<a href="https://github.com/open-source">通过 GitHub 开源</a>了 365 个科学软件(LCTT 译注:本文原文发表于 2018/3/28,截止至本译文发布,已经有 454 个项目了)。对于一位热爱程序的开发者来说,即使一天研究一个软件,想把 NASA 的这些软件全部研究过来也要整整一年的时间。即使你不是一位开发者,你也可以在这个门户网站浏览这个壮观的软件合集。其中就有<a href="https://www.nasa.gov/mission_pages/apollo/missions/apollo11.html">阿波罗 11 号</a>的制导计算机的源代码。阿波罗 11 号空间飞行器<a href="https://www.space.com/16758-apollo-11-first-moon-landing.html">首次将两名人类带上月球</a>,分别是 <a href="https://www.jsc.nasa.gov/Bios/htmlbios/armstrong-na.html">Neil Armstrong</a> 和 <a href="https://www.jsc.nasa.gov/Bios/htmlbios/aldrin-b.html">Edwin Aldrin</a> 。如果你对 Edwin Aldrin 感兴趣,可以点击<a href="https://buzzaldrin.com/the-man/">这里</a>了解更多。NASA 开源代码促进会使用的开源代码许可它们采用了几种<a href="https://itsfoss.com/open-source-licenses-explained/">开源许可证</a>,其分类如下:<a href="https://www.apache.org/licenses/LICENSE-2.0">Apache 许可证 2.0</a><a href="https://opensource.org/licenses/NASA-1.3">Nasa 开源许可证 3.0</a><a href="https://www.gnu.org/licenses/gpl.html">GPL v3</a><a href="https://en.wikipedia.org/wiki/MIT_License">MIT 许可证</a>2、开放 API开放 <a href="https://en.wikipedia.org/wiki/Application_programming_interface">API</a> 在推行开放科学中起到了很大作用。与<a href="https://opensource.org/">开源促进会</a>类似,对于 API,也有一个 <a href="https://www.openapis.org/">开放 API 促进会</a>。下面这张示意图可以告诉你 API 是怎样将应用程序和它的开发者连接起来的。<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201812/10/185529se9ihvzqa9uv9di9.jpg">Media</a>记得点击这个<a href="https://sproutsocial.com/insights/what-is-an-api/">链接</a>看看。链接内的文章使用了简单易懂的方法解读了 API ,文末总结了五大要点。<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201812/10/185530hibolbbiok4tx9l9.jpg">Media</a>这会让你感受到专有 API 和开放 API 会有多么大的不同。<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201812/10/185530r343o34ml6po5ekv.jpg">Media</a><a href="https://api.nasa.gov/">NASA 的 Open API</a> 主要针对应用程序开发者,旨在显著改善数据的可访问性,也包括图片内容在内。该网站有一个实时编辑器,可供你调用<a href="https://apod.nasa.gov/apod/astropix.html">每日天文一图(APOD)</a> 的 API。3、开放数据<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201812/10/185531bta147c1p17cy3z1.jpg">Media</a>在<a href="https://itsfoss.com/open-source-impact-on-science/">我们发布的第一篇开放科学的文章</a>中,我们在“开放科学”段落下提到的三个国家 —— 法国、印度和美国的多种开放数据形式。NASA 有着类似的想法和行为。这种重要的意识形态已经被<a href="https://www.xbrl.org/the-standard/why/ten-countries-with-open-data/">多个国家</a>所接受。<a href="https://data.nasa.gov/">NASA 的开放数据门户</a>致力于开放,拥有不断增长的可供大众自由使用的开放数据。将数据集纳入到这个数据集对于任何研究活动来说都是必要且重要的。NASA 还在他们的门户网站上征集各方的数据需求,以一同收录在他们的数据库中。这一举措不仅是领先的、创新的,还顺应了<a href="https://en.wikipedia.org/wiki/Data_science">数据科学</a>、<a href="https://www.kdnuggets.com/2017/07/ai-deep-learning-explained-simply.html">AI 和深度学习</a>的趋势。下面的视频讲的是学者和学生们是怎样通过大量研究得出对数据科学的定义的。这个过程十分的激动人心。瑞尔森大学罗杰斯商学院的 <a href="https://www.ryerson.ca/tedrogersschool/bm/programs/real-estate-management/murtaza-haider/">Murtaza Haider 教授</a>在视频结尾中提到了开源的出现对数据科学的改变,尤其让是旧有的闭源方式逐渐变得开放。而这也确实成为了现实。<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201812/10/185531kly4h8gezbh5eh7c.jpg">Media</a>现在任何人都能在 NASA 上征集数据。正如前面的视频中所说,NASA 的举措很大程度上与征集和分析优化数据有关。<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201812/10/185532mnvmg520tivtl7zz.jpg">Media</a>你只需要免费注册即可。考虑到论坛上的公开讨论以及数据集在可能存在的每一类分析领域中的重要性,这一举措在未来会有非常积极的影响,对数据的统计…
<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201812/10/185529jeiwccc6k36ch6mf.jpg">Media</a>最近我们刚为开设了一个新的“<a href="https://itsfoss.com/category/science/">科学类</a>”的文章分类。其中发表的最新一篇文章名为:<a href="https://itsfoss.com/open-source-impact-on-science/">开源是怎样影响科学的</a>。在这篇文章中我们主要讨论了 <a href="https://www.nasa.gov/">NASA</a> 的积极努力,这些努力包括他们通过开源实践来促进科学研究的积极作用。NASA 是怎样使用开源手段促进科学研究的NASA 将他们的整个研究库对整个公共领域开放,这是一项<a href="https://futurism.com/free-science-nasa-just-opened-its-entire-research-library-to-the-public/">壮举</a>。没错!每个人都能访问他们的整个研究库,并能从他们的研究中获益。他们现已开放的资料可以大致分为以下三类:开源 NASA开放 API开放数据1、开源 NASA这里有一份 <a href="https://github.com/">GitHub</a> 的联合创始人之一和执行总裁 <a href="http://chriswanstrath.com/">Chris Wanstrath</a> 的采访,他向我们介绍道,一切都是从很多年前开始的。该项目名为 “<a href="http://code.nasa.gov">code.nasa.gov</a>”,截至本文发表为止,NASA 已经<a href="https://github.com/open-source">通过 GitHub 开源</a>了 365 个科学软件(LCTT 译注:本文原文发表于 2018/3/28,截止至本译文发布,已经有 454 个项目了)。对于一位热爱程序的开发者来说,即使一天研究一个软件,想把 NASA 的这些软件全部研究过来也要整整一年的时间。即使你不是一位开发者,你也可以在这个门户网站浏览这个壮观的软件合集。其中就有<a href="https://www.nasa.gov/mission_pages/apollo/missions/apollo11.html">阿波罗 11 号</a>的制导计算机的源代码。阿波罗 11 号空间飞行器<a href="https://www.space.com/16758-apollo-11-first-moon-landing.html">首次将两名人类带上月球</a>,分别是 <a href="https://www.jsc.nasa.gov/Bios/htmlbios/armstrong-na.html">Neil Armstrong</a> 和 <a href="https://www.jsc.nasa.gov/Bios/htmlbios/aldrin-b.html">Edwin Aldrin</a> 。如果你对 Edwin Aldrin 感兴趣,可以点击<a href="https://buzzaldrin.com/the-man/">这里</a>了解更多。NASA 开源代码促进会使用的开源代码许可它们采用了几种<a href="https://itsfoss.com/open-source-licenses-explained/">开源许可证</a>,其分类如下:<a href="https://www.apache.org/licenses/LICENSE-2.0">Apache 许可证 2.0</a><a href="https://opensource.org/licenses/NASA-1.3">Nasa 开源许可证 3.0</a><a href="https://www.gnu.org/licenses/gpl.html">GPL v3</a><a href="https://en.wikipedia.org/wiki/MIT_License">MIT 许可证</a>2、开放 API开放 <a href="https://en.wikipedia.org/wiki/Application_programming_interface">API</a> 在推行开放科学中起到了很大作用。与<a href="https://opensource.org/">开源促进会</a>类似,对于 API,也有一个 <a href="https://www.openapis.org/">开放 API 促进会</a>。下面这张示意图可以告诉你 API 是怎样将应用程序和它的开发者连接起来的。<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201812/10/185529se9ihvzqa9uv9di9.jpg">Media</a>记得点击这个<a href="https://sproutsocial.com/insights/what-is-an-api/">链接</a>看看。链接内的文章使用了简单易懂的方法解读了 API ,文末总结了五大要点。<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201812/10/185530hibolbbiok4tx9l9.jpg">Media</a>这会让你感受到专有 API 和开放 API 会有多么大的不同。<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201812/10/185530r343o34ml6po5ekv.jpg">Media</a><a href="https://api.nasa.gov/">NASA 的 Open API</a> 主要针对应用程序开发者,旨在显著改善数据的可访问性,也包括图片内容在内。该网站有一个实时编辑器,可供你调用<a href="https://apod.nasa.gov/apod/astropix.html">每日天文一图(APOD)</a> 的 API。3、开放数据<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201812/10/185531bta147c1p17cy3z1.jpg">Media</a>在<a href="https://itsfoss.com/open-source-impact-on-science/">我们发布的第一篇开放科学的文章</a>中,我们在“开放科学”段落下提到的三个国家 —— 法国、印度和美国的多种开放数据形式。NASA 有着类似的想法和行为。这种重要的意识形态已经被<a href="https://www.xbrl.org/the-standard/why/ten-countries-with-open-data/">多个国家</a>所接受。<a href="https://data.nasa.gov/">NASA 的开放数据门户</a>致力于开放,拥有不断增长的可供大众自由使用的开放数据。将数据集纳入到这个数据集对于任何研究活动来说都是必要且重要的。NASA 还在他们的门户网站上征集各方的数据需求,以一同收录在他们的数据库中。这一举措不仅是领先的、创新的,还顺应了<a href="https://en.wikipedia.org/wiki/Data_science">数据科学</a>、<a href="https://www.kdnuggets.com/2017/07/ai-deep-learning-explained-simply.html">AI 和深度学习</a>的趋势。下面的视频讲的是学者和学生们是怎样通过大量研究得出对数据科学的定义的。这个过程十分的激动人心。瑞尔森大学罗杰斯商学院的 <a href="https://www.ryerson.ca/tedrogersschool/bm/programs/real-estate-management/murtaza-haider/">Murtaza Haider 教授</a>在视频结尾中提到了开源的出现对数据科学的改变,尤其让是旧有的闭源方式逐渐变得开放。而这也确实成为了现实。<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201812/10/185531kly4h8gezbh5eh7c.jpg">Media</a>现在任何人都能在 NASA 上征集数据。正如前面的视频中所说,NASA 的举措很大程度上与征集和分析优化数据有关。<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201812/10/185532mnvmg520tivtl7zz.jpg">Media</a>你只需要免费注册即可。考虑到论坛上的公开讨论以及数据集在可能存在的每一类分析领域中的重要性,这一举措在未来会有非常积极的影响,对数据的统计…
一个免费、安全、跨平台的密码管理器
密码管理器就像一个存储库,你可以在其中存储不同账户的所有密码,并用一个主密码将其锁定。这样,你需要记住的就只剩下主密码了Media
via https://linux.cn/article-10331-1.html
密码管理器就像一个存储库,你可以在其中存储不同账户的所有密码,并用一个主密码将其锁定。这样,你需要记住的就只剩下主密码了Media
via https://linux.cn/article-10331-1.html
一个免费、安全、跨平台的密码管理器
<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201812/10/222518d4m4elq47bv3e1s7.png">Media</a>在这个现代化的互联网时代,你一定在许多网站上有多个账户,它可能是个人或官方邮箱账户、社交或专业网络账户、GitHub 账户和电子商务账户等。因此,对于不同的账户,你应该设置多个不同的密码。我相信你应该已经意识到为多个账户设置相同的密码是件疯狂又危险的事情。如果攻击者设法破解了你的一个账户,那么他/她很可能尝试使用相同的密码访问你的其他账户。所以,<strong>强烈建议为不同的账户设置不同的密码</strong>。不过,记住好几个密码是很困难的。你可以把它们写在纸上,但那也不是一个有效的方法,你可能会在一段时间后失去它们。这时密码管理器就派上用场了。密码管理器就像一个存储库,你可以在其中存储不同账户的所有密码,并用一个主密码将其锁定。这样,你需要记住的就只剩下主密码了。之前我们介绍过一个叫 <a href="https://linux.cn/article-10211-1.html">KeeWeb</a> 的开源密码管理器,今天,我们将介绍另外一款密码管理器 ——— Buttercup。关于 ButtercupButtercup 是一个自由、开源、安全、跨平台的密码管理器,使用 <strong>NodeJS</strong> 编写。它可以帮助你将不同账户的所有登录凭证存储到加密存档中,该存档可以保存在本地系统或任何远程服务(如 DropBox、OwnCloud、NextCloud 和基于 WebDAV 的服务)中。它使用强大的 <strong>256 位…
<a href="https://dn-linuxcn.qbox.me/data/attachment/album/201812/10/222518d4m4elq47bv3e1s7.png">Media</a>在这个现代化的互联网时代,你一定在许多网站上有多个账户,它可能是个人或官方邮箱账户、社交或专业网络账户、GitHub 账户和电子商务账户等。因此,对于不同的账户,你应该设置多个不同的密码。我相信你应该已经意识到为多个账户设置相同的密码是件疯狂又危险的事情。如果攻击者设法破解了你的一个账户,那么他/她很可能尝试使用相同的密码访问你的其他账户。所以,<strong>强烈建议为不同的账户设置不同的密码</strong>。不过,记住好几个密码是很困难的。你可以把它们写在纸上,但那也不是一个有效的方法,你可能会在一段时间后失去它们。这时密码管理器就派上用场了。密码管理器就像一个存储库,你可以在其中存储不同账户的所有密码,并用一个主密码将其锁定。这样,你需要记住的就只剩下主密码了。之前我们介绍过一个叫 <a href="https://linux.cn/article-10211-1.html">KeeWeb</a> 的开源密码管理器,今天,我们将介绍另外一款密码管理器 ——— Buttercup。关于 ButtercupButtercup 是一个自由、开源、安全、跨平台的密码管理器,使用 <strong>NodeJS</strong> 编写。它可以帮助你将不同账户的所有登录凭证存储到加密存档中,该存档可以保存在本地系统或任何远程服务(如 DropBox、OwnCloud、NextCloud 和基于 WebDAV 的服务)中。它使用强大的 <strong>256 位…