From eb36bf2910a2f5d3df3e3087fa3e3724f06f6928 Mon Sep 17 00:00:00 2001 From: Xingyu Wang Date: Sat, 12 Sep 2020 11:55:10 +0800 Subject: [PATCH 1/2] PRF @geekpi --- ...sole using Python and Jupyter Notebooks.md | 41 ++++++++----------- 1 file changed, 16 insertions(+), 25 deletions(-) diff --git a/translated/tech/20200904 Build a remote management console using Python and Jupyter Notebooks.md b/translated/tech/20200904 Build a remote management console using Python and Jupyter Notebooks.md index 5126bb57ff..c048dbfa24 100644 --- a/translated/tech/20200904 Build a remote management console using Python and Jupyter Notebooks.md +++ b/translated/tech/20200904 Build a remote management console using Python and Jupyter Notebooks.md @@ -1,28 +1,30 @@ [#]: collector: (lujun9972) [#]: translator: (geekpi) -[#]: reviewer: ( ) +[#]: reviewer: (wxy) [#]: publisher: ( ) [#]: url: ( ) [#]: subject: (Build a remote management console using Python and Jupyter Notebooks) [#]: via: (https://opensource.com/article/20/9/remote-management-jupyter) [#]: author: (Moshe Zadka https://opensource.com/users/moshez) -使用 Python 和 Jupyter Notebooks 构建一个远程管理控制台 +使用 Jupyter Notebooks 构建一个远程管理控制台 ====== -把 Jupyter 变成一个远程管理控制台。 -![Computer laptop in space][1] -SSH 是一个强大的远程管理工具,但它缺乏一些细节。编写一个成熟的远程管理控制台听起来好像是一件很费劲的事情。当然,开源社区中肯定有人已经写了一些东西。 +> 把 Jupyter 变成一个远程管理控制台。 -他们已经写了,它的名字是 [Jupyter][2]。你可能会认为 Jupyter 是那些数据科学家用来分析一周内的广告点击趋势之类的工具。这并没有错,他们确实是这样做的,而且它是一个很好的工具。但这只是它的表面。 +![](https://img.linux.net.cn/data/attachment/album/202009/12/115114jct1g15e9ucsr6ua.jpg) + +SSH 是一个强大的远程管理工具,但有些细节还不够好。编写一个成熟的远程管理控制台听起来好像是一件很费劲的事情。当然,开源社区中肯定有人已经写了一些东西吧? + +是的,他们已经写出来了,它的名字是 [Jupyter][2]。你可能会认为 Jupyter 是那些数据科学家用来分析一周内的广告点击趋势之类的工具。这并没有错,它确实是的,而且它是一个很好的工具。但这仅仅刻画是它的表面。 ### 关于 SSH 端口转发 -有时,你可以通过 22 端口进入一台服务器。没有理由认为你可以连接到任何其他端口。也许你是通过另一个有更多访问权限的”堡垒机“,或者有主机或者限制端口的网络防火墙访问 SSH。当然,限制访问的 IP 范围是有充分理由的。SSH 是远程管理的安全协议,但允许任何人连接到任何端口是相当不必要的。 +有时,你可以通过 22 端口进入一台服务器。一般你也连接不到其他端口。也许你是通过另一个有更多访问权限的“堡垒机”,或者限制主机或端口的网络防火墙访问 SSH。当然,限制访问的 IP 范围是有充分理由的。SSH 是远程管理的安全协议,但允许任何人连接到任何端口是相当不必要的。 -这里有一个替代方案:运行一个简单的 SSH 端口转发命令,将本地端口转发到一个_远程本地_连接上。当你运行像 `-L 8111:127.0.0.1:8888` 这样的 SSH 端口转发命令时,你是在告诉 SSH 将你的_本地_端口 `8111` 转发到_远程_主机 `127.0.0.1:8888`。远程主机认为 `127.0.0.1` 就是它本身。 +这里有一个替代方案:运行一个简单的 SSH 端口转发命令,将本地端口转发到一个“远程”本地连接上。当你运行像 `-L 8111:127.0.0.1:8888` 这样的 SSH 端口转发命令时,你是在告诉 SSH 将你的*本地*端口 `8111` 转发到它认为的“远程”主机 `127.0.0.1:8888`。远程主机认为 `127.0.0.1` 就是它本身。 -就像在_芝麻街_一样,“这里”(here)是一个微妙的词。 +就像在《芝麻街》节目一样,“这里”是一个微妙的词。 地址 `127.0.0.1` 就是你告诉网络的“这里”。 @@ -30,7 +32,6 @@ SSH 是一个强大的远程管理工具,但它缺乏一些细节。编写一 这可能听起来很混乱,但运行比解释它更简单。 - ``` $ ssh -L 8111:127.0.0.1:8888 moshez@172.17.0.3 Linux 6ad096502e48 5.4.0-40-generic #44-Ubuntu SMP Tue Jun 23 00:01:04 UTC 2020 x86_64 @@ -41,13 +42,13 @@ individual files in /usr/share/doc/*/copyright. Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent permitted by applicable law. -Last login: Wed Aug  5 22:03:25 2020 from 172.17.0.1 +Last login: Wed Aug 5 22:03:25 2020 from 172.17.0.1 $ jupyter/bin/jupyter lab --ip=127.0.0.1 [I 22:04:29.771 LabApp] JupyterLab application directory is /home/moshez/jupyter/share/jupyter/lab [I 22:04:29.773 LabApp] Serving notebooks from local directory: /home/moshez [I 22:04:29.773 LabApp] Jupyter Notebook 6.1.1 is running at: -[I 22:04:29.773 LabApp] -<MORE STUFF SNIPPED> +[I 22:04:29.773 LabApp] http://127.0.0.1:8888/?token=df91012a36dd26a10b4724d618b2e78cb99013b36bb6a0d1 +<删节> ``` 端口转发 `8111` 到 `127.0.0.1`,并在远程主机上启动 Jupyter,它在 `127.0.0.1:8888` 上监听。 @@ -56,32 +57,22 @@ $ jupyter/bin/jupyter lab --ip=127.0.0.1 ![Jupyter remote management console][3] -(Moshe Zadka, [CC BY-SA 4.0][4]) - 这就是你的远程管理控制台。如你所见,底部有一个“终端”图标。点击它可以启动一个终端。 ![Terminal in Jupyter remote console][5] -(Moshe Zadka, [CC BY-SA 4.0][4]) - 你可以运行一条命令。创建一个文件会在旁边的文件浏览器中显示出来。你可以点击该文件,在本地的编辑器中打开它。 ![Opening a file][6] -(Moshe Zadka, [CC BY-SA 4.0][4]) - 你还可以下载、重命名或删除文件: ![File options in Jupyter remote console][7] -(Moshe Zadka, [CC BY-SA 4.0][4]) - -点击**上箭头**就可以上传文件了。为什么不上传上面的截图呢? +点击**上箭头**就可以上传文件了。那就上传上面的截图吧。 ![Uploading a screenshot][8] -(Moshe Zadka, [CC BY-SA 4.0][4]) - 最后说个小功能,Jupyter 可以让你直接通过双击远程图像查看。 哦,对了,如果你想用 Python 做系统自动化,还可以用 Jupyter 打开笔记本。 @@ -95,7 +86,7 @@ via: https://opensource.com/article/20/9/remote-management-jupyter 作者:[Moshe Zadka][a] 选题:[lujun9972][b] 译者:[geekpi](https://github.com/geekpi) -校对:[校对者ID](https://github.com/校对者ID) +校对:[wxy](https://github.com/wxy) 本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出 From 0b07844cc6f9dfeff21d4a882a40dd537d37ab08 Mon Sep 17 00:00:00 2001 From: Xingyu Wang Date: Sat, 12 Sep 2020 11:55:47 +0800 Subject: [PATCH 2/2] PUB @geekpi https://linux.cn/article-12606-1.html --- ...e management console using Python and Jupyter Notebooks.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) rename {translated/tech => published}/20200904 Build a remote management console using Python and Jupyter Notebooks.md (98%) diff --git a/translated/tech/20200904 Build a remote management console using Python and Jupyter Notebooks.md b/published/20200904 Build a remote management console using Python and Jupyter Notebooks.md similarity index 98% rename from translated/tech/20200904 Build a remote management console using Python and Jupyter Notebooks.md rename to published/20200904 Build a remote management console using Python and Jupyter Notebooks.md index c048dbfa24..8134eb911a 100644 --- a/translated/tech/20200904 Build a remote management console using Python and Jupyter Notebooks.md +++ b/published/20200904 Build a remote management console using Python and Jupyter Notebooks.md @@ -1,8 +1,8 @@ [#]: collector: (lujun9972) [#]: translator: (geekpi) [#]: reviewer: (wxy) -[#]: publisher: ( ) -[#]: url: ( ) +[#]: publisher: (wxy) +[#]: url: (https://linux.cn/article-12606-1.html) [#]: subject: (Build a remote management console using Python and Jupyter Notebooks) [#]: via: (https://opensource.com/article/20/9/remote-management-jupyter) [#]: author: (Moshe Zadka https://opensource.com/users/moshez)