mirror of
https://github.com/LCTT/TranslateProject.git
synced 2025-03-12 01:40:10 +08:00
commit
faa49b6663
61
published/20160511 4 Container Networking Tools to Know.md
Normal file
61
published/20160511 4 Container Networking Tools to Know.md
Normal file
@ -0,0 +1,61 @@
|
||||
4 个你需要了解的容器网络工具
|
||||
===========
|
||||
|
||||

|
||||
|
||||
> [Creative Commons Zero][1]
|
||||
|
||||
有如此之多的各种新的云计算技术、工具和技术需要我们跟进,到底从哪里开始学习是一个艰难的决定。这一系列[下一代云计算技术][2]的文章旨在让你快速了解新兴和快速变化领域的重大项目和产品,比如软件定义网络(SDN)、容器,以及其交叉领域:容器网络。
|
||||
|
||||
对于企业容器部署,容器和网络之间的关系仍然是一个挑战。容器需要网络功能来连接分布式应用程序。根据一篇最新的[企业网络星球][3]的文章,一部分的挑战是“以隔离的方式部署容器,在提供隔离自己容器内数据的所需功能的同时,保持有效的连接性”。
|
||||
|
||||
流行的容器平台 [Docker][4],使用了软件定义虚拟网络来连接容器与本地网络。此外,它使用 Linux 的桥接功能和虚拟可扩展局域网(VXLAN)技术,可以在同一 Swarm 或容器集群内互相沟通。Docker 的插件架构也支持其他网络管理工具来管理容器网络,比如下面的提到的工具。
|
||||
|
||||
容器网络上的创新使得容器可以跨主机连接到其他容器上。这使开发人员可以在开发环境中,在一个主机上部署一个容器来运行一个应用,然后可以过渡到测试环境中,进而到生产环境中,使应用可以持续集成,敏捷开发,快速部署。
|
||||
|
||||
容器网络工具有助于实现容器网络的可扩展性,主要是通过:
|
||||
|
||||
1. 使复杂的,多主机系统能够跨多个容器主机进行分发。
|
||||
2. 允许构建跨越多个公有云和私有云平台上的大量主机的容器系统。
|
||||
|
||||

|
||||
|
||||
*John Willis speaking 在 Open Networking Summit 2016.*
|
||||
|
||||
要获取更多信息,查看 [Docker 网络教程][5],是由 Brent Salisbury 和 John Willis 在最近的 [Open Networking Summit (ONS)][6]讲演的。更多关于 ONS 的演讲内容可以在[这里][7]找到。
|
||||
|
||||
你应该知道的容器网络工具和项目包括下述:
|
||||
|
||||
- [Calico][8] -- Calico 项目(源自 [Metaswitch][9])利用边界网关协议(BGP)和集成的云编排系统来保证虚拟机和容器之间的 IP 通信安全。
|
||||
- [Flannel][10] -- Flannel (之前叫 rudder) 源自 [CoreOS][11],它提供了一个覆盖网络,可以作为一个现有的 SDN 解决方案的替代品。
|
||||
- [Weaveworks][12] -- Weaveworks 项目管理容器的工具包括 [Weave Net][13]、Weave Scope、Weave Flux。Weave Net 是一种用于构建和部署 Docker 容器的网络工具。
|
||||
- [Canal][14] -- 就在本周,CoreOS 和 Tigera 宣布了新的开源项目 Canal 的信息。据其声明,Canal 项目旨在结合部分 Calico 和 Flannel,“构造网络安全策略到网络架构和云管理平台之中”。
|
||||
|
||||
你可以通过 Linux 基金会的免费“云基础设施技术”课程来了解更多关于容器管理、软件定义网络和其他下一代云技术,这是一个在 edX 上提供的大规模公开在线课程。[课程注册目前已经开放][15],课程内容于 6 月开放。
|
||||
|
||||
------
|
||||
|
||||
via: https://www.linux.com/news/4-container-networking-tools-know
|
||||
|
||||
作者:[AMBER ANKERHOLZ][a]
|
||||
译者:[Bestony](https://github.com/Bestony)
|
||||
校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: https://www.linux.com/users/aankerholz
|
||||
[1]: https://www.linux.com/licenses/category/creative-commons-zero
|
||||
[2]: https://www.linux.com/news/5-next-gen-cloud-technologies-you-should-know
|
||||
[3]: http://www.enterprisenetworkingplanet.com/datacenter/datacenter-blog/container-networking-challenges-for-the-enterprise.html
|
||||
[4]: https://docs.docker.com/engine/userguide/networking/dockernetworks/
|
||||
[5]: https://youtu.be/Le0bEg4taak
|
||||
[6]: http://events.linuxfoundation.org/events/open-networking-summit
|
||||
[7]: https://www.linux.com/watch-videos-from-ons2016
|
||||
[8]: https://www.projectcalico.org/
|
||||
[9]: http://www.metaswitch.com/cloud-network-virtualization
|
||||
[10]: https://coreos.com/blog/introducing-rudder/
|
||||
[11]: https://coreos.com/
|
||||
[12]: https://www.weave.works/
|
||||
[13]: https://www.weave.works/products/weave-net/
|
||||
[14]: https://github.com/tigera/canal
|
||||
[15]: https://training.linuxfoundation.org/linux-courses/system-administration-training/introduction-to-cloud-infrastructure-technologies?utm_source=linuxcom&utm_medium=article&utm_campaign=cloud%20mooc%20article%201
|
@ -1,36 +1,35 @@
|
||||
Terminator 一款一个窗口包含多个终端的 Linux 终端仿真器
|
||||
Terminator:一款一个窗口包含多个终端的 Linux 终端仿真器
|
||||
=============================================================================
|
||||
|
||||

|
||||
|
||||
为了通过命令行和系统互动,每一款 Linux 发行版都有一款默认的终端仿真器。但是,默认的终端应用可能不适合你。为了加快你工作的速度,有好多款终端应用提供给你更多的功能来同时执行更多的任务。这些有用的终端仿真器包括 Terminator,一款 Linux 系统下支持多窗口的免费的终端仿真器。
|
||||
|
||||
为了通过命令行和系统互动,每一款 Linux 发行版都有一款默认的终端仿真器。但是,默认的终端应用可能不适合你。为了大幅提升你工作的速度,有好多款终端应用提供了更多的功能,可以同时执行更多的任务。这些有用的终端仿真器就包括 Terminator,这是一款 Linux 系统下支持多窗口的自由开源的终端仿真器。
|
||||
|
||||
### 什么是 Linux 终端仿真器
|
||||
|
||||
Linux 终端仿真器是一个让你和 shell 交互的程序。所有的 Linux 发行版都会自带一款 Linux 终端应用让你向 shell 传递命令。
|
||||
|
||||
### Terminator,一款免费的 Linux 终端应用
|
||||
### Terminator,一款自由开源的 Linux 终端应用
|
||||
|
||||
Terminator 是一款 Linux 终端模拟器,提供了你的默认的终端应用不支持的多个特性。它提供了在一个窗口创建多个终端的功能,加快你的工作速度。除了多窗口外,它也允许你修改其他特性,例如字体、字体颜色、背景色等等。让我们看看我们如何安装它,并且如何在不同的 Linux 发行版下使用 Terminator。
|
||||
Terminator 是一款 Linux 终端模拟器,提供了你的默认的终端应用不支持的多个特性。它提供了在一个窗口创建多个终端的功能,以加快你的工作速度。除了多窗口外,它也允许你修改其它特性,例如字体、字体颜色、背景色等等。让我们看看我们如何安装它,并且如何在不同的 Linux 发行版下使用 Terminator。
|
||||
|
||||
### 如何在 Linux 下安装Terminator?
|
||||
### 如何在 Linux 下安装 Terminator?
|
||||
|
||||
#### 在基于 Ubuntu 的发行版上安装 Terminator
|
||||
|
||||
Terminator 在默认的 Ubuntu 仓库就可以使用。所以你不需要添加额外的 PPA。只需要使用 APT 或者 软件应用在 Ubuntu 下直接安装。
|
||||
Terminator 在默认的 Ubuntu 仓库就可以使用。所以你不需要添加额外的 PPA。只需要使用 APT 或者“软件应用”在 Ubuntu 下直接安装。
|
||||
|
||||
```
|
||||
sudo apt-get install terminator
|
||||
```
|
||||
|
||||
假如你的默认的仓库中 Terminator 不可使用,只需要使用源码编译 Terminator 即可。
|
||||
假如你的默认的仓库中 Terminator 不可用,只需要使用源码编译 Terminator 即可。
|
||||
|
||||
[下载源码][1]
|
||||
- [下载源码][1]
|
||||
|
||||
下载 Terminator 源码并且解压到你的桌面。现在打开你的默认的终端然后 cd 到解压的目录。
|
||||
下载 Terminator 源码并且解压到你的桌面。现在打开你的默认的终端,然后 `cd` 到解压的目录。
|
||||
|
||||
现在就可以使用下面的命令来安装 Terminator 了 -
|
||||
现在就可以使用下面的命令来安装 Terminator 了:
|
||||
|
||||
```
|
||||
sudo ./setup.py install
|
||||
@ -44,17 +43,17 @@ dnf install terminator
|
||||
|
||||
#### 在 OpenSuse 上安装 Terminator
|
||||
|
||||
[在 OPENSUSE 上安装][2]
|
||||
参见此文:[在 OPENSUSE 上安装][2]。
|
||||
|
||||
### 如何在一个窗口使用多个终端?
|
||||
|
||||
安装好 Terminator 之后,你可以简单的在一个窗口打开多个终端。只需要右键并选择。
|
||||
安装好 Terminator 之后,你可以简单的在一个窗口打开多个终端。只需要右键点击并切分。
|
||||
|
||||

|
||||
|
||||

|
||||
|
||||
只要你愿意,你可以创建尽可能多的终端,如果你能管理它们的话。
|
||||
只要你愿意,你可以创建尽可能多的终端,只要你能管理得过来。
|
||||
|
||||

|
||||
|
||||
@ -68,17 +67,15 @@ dnf install terminator
|
||||
|
||||
### 结论:什么是你最喜欢的终端模拟器
|
||||
|
||||
Terminator 是一款高级的终端模拟器,它让你自定义界面。如果你还没有从你默认的终端模拟器中切换过来的话,你可以尝试一下它。我知道你将会喜欢上它。如果你在使用其他的免费的终端模拟器的话,请让我们知道你最喜欢的那一款。而且不要忘了和你的朋友分享这篇文章。或许你的朋友正在寻找类似的东西。
|
||||
|
||||
|
||||
Terminator 是一款先进的终端模拟器,它可以让你自定义界面。如果你还没有从你默认的终端模拟器中切换过来的话,你可以尝试一下它。我知道你将会喜欢上它。如果你正在使用其他的自由开源的终端模拟器的话,请让我们知道你最喜欢的那一款。不要忘了和你的朋友分享这篇文章。或许你的朋友正在寻找类似的东西。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.tecmint.com/mandatory-access-control-with-selinux-or-apparmor-linux/
|
||||
via: http://www.linuxandubuntu.com/home/terminator-a-linux-terminal-emulator-with-multiple-terminals-in-one-window
|
||||
|
||||
作者:[author][a]
|
||||
译者:[译者ID](https://github.com/译者ID)
|
||||
校对:[校对者ID](https://github.com/校对者ID)
|
||||
译者:[yangmingming](https://github.com/yangmingming)
|
||||
校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
36
published/20160805 Introducing React Native Ubuntu.md
Normal file
36
published/20160805 Introducing React Native Ubuntu.md
Normal file
@ -0,0 +1,36 @@
|
||||
React Native Ubuntu 简介
|
||||
=====================
|
||||
|
||||
在 Canonical 的 Webapps 团队,我们总在寻找可以为开发者所用的 web 和 web 相关技术。我们想让每个人生活更轻松,让 web 开发者更加熟悉工具的使用,并且在 Ubuntu 上提供一个使用它们的简单途径。
|
||||
|
||||
我们提供对 web 应用以及创建和打包 Cordova 应用的支持,这使得在 Ubuntu 上使用任意 web 框架来创造美妙的应用体验成为可能。
|
||||
|
||||
其中一个可以在这些情景中使用的主流框架就是 React.js。React.js 是一个拥有声明式编程模型和强大的组件系统的 UI 框架,它主要侧重于 UI 的构建,所以你可以在你喜欢的任何地方用上它。
|
||||
|
||||
然而这些应用场景太广泛了,有时候你可能需要更高的性能,或者能够直接用原生 UI 组件来开发,但是在一个不太熟悉的场景中使用它可能不合时宜。如果你熟悉 React.js,那么通过 React Native 来开发可以毫不费力地将你所有现有的知识和工具迁移到完全的原生组件开发中。React Native 是 React.js 的姐妹项目,你可以用同样的方式和代码来创建一个直接使用原生组件并且拥有原生级别性能的应用,而且这就和你期待的一样轻松快捷。
|
||||
|
||||

|
||||
|
||||
我们很高兴地宣布随着我们对 HTML5 应用的支持,现在可以在 Ubuntu 平台上开发 React Native 应用了。你可以移植你现有的 iOS 或 Android 版本的 React Native 应用,或者利用你的 web 开发技能来创建一个新的应用。
|
||||
|
||||
你可以在 [这里][1] 找到 React Native Ubuntu 的源代码,要开始使用时,跟随 [README-ubuntu.md][2] 的指导,并创建你的第一个应用吧。
|
||||
|
||||
Ubuntu 的支持包括生成软件包的功能。通过 React Native CLI,构建一个 snap 软件包只需要简单执行 `react-native package-ubuntu --snap` 这样的命令。还可以为 Ubuntu 设备构建一个 click 包,这意味着 React Native Ubuntu 应用从一开始就可以放到 Ubuntu 商店了。
|
||||
|
||||
在不久的将来会有很多关于在 Ubuntu 上开发一个 React Native 应用你所需要了解的东西的博文,例如创建应用、开发流程以及打包并发布到商店等等。还会有一些关于怎样开发新型的可复用的模块的信息,这些模块可以给运行时环境增加额外的功能,并且可以发布为 npm 模块。
|
||||
|
||||
赶快去实践一下吧,看看你能创造出些什么来。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://developer.ubuntu.com/en/blog/2016/08/05/introducing-react-native-ubuntu/
|
||||
|
||||
作者:[Justin McPherson][a]
|
||||
译者:[Mars Wong](https://github.com/OneNewLife)
|
||||
校对:[wxy](https://github.com/wxy)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: https://developer.ubuntu.com/en/blog/authors/justinmcp/
|
||||
[1]: https://github.com/CanonicalLtd/react-native
|
||||
[2]: https://github.com/CanonicalLtd/react-native/blob/ubuntu/README-ubuntu.md
|
@ -0,0 +1,68 @@
|
||||
OneNewLife translating
|
||||
|
||||
Why Linux pioneer Linus Torvalds prefers x86 chips over ARM processors
|
||||
=============
|
||||
|
||||
**Torvalds has an affinity for x86 because of the infrastructure and ecosystem**
|
||||
|
||||

|
||||
|
||||
*Linus Torvalds addressed a packed auditorium of Linux enthusiasts during his speech at the LinuxWorld show in San Jose, California, on August 10, 1999. Credit: James Niccolai
|
||||
*
|
||||
|
||||
Linux pioneer Linus Torvalds is a stand-up guy—he says what he feels. There’s no sugarcoating, and he’ll admit to faults, like [recent issues][1] with the Linux 4.8 kernel.
|
||||
|
||||
He was [full of surprises][2] at last week’s Linaro Connect conference, when he was asked about his favorite chip architecture. He didn’t blink before saying it was x86, not ARM.
|
||||
|
||||
It may have been the long history of x86 with PCs that influenced his answer. There’s little fragmentation of software and hardware with x86, and things just work.
|
||||
|
||||
People are too fixated with the instruction set and the CPU core, Torvalds said, but it ultimately is the ecosystem around the architecture that matters more.
|
||||
|
||||
“What matters is all the infrastructure around the instruction set, and x86 has all that infrastructure... at a lot of different levels,” Torvalds said. “It’s opening a way that no other architecture is.”
|
||||
|
||||
A lot of application development happens on PCs with x86 chips from Intel or AMD. Compatibility matters for x86 chips and PCs, which have a unified model around hardware, development, and other infrastructure.
|
||||
|
||||
The same can’t be said about ARM. From hardware vendor perspective, that leads to a fragmented market, Torvalds said.
|
||||
|
||||
“Being compatible just wasn’t as big of a deal for the ARM ecosystem as it has been traditionally for the x86 ecosystem,” Torvalds said during a fireside chat with ARM developers listening on.
|
||||
|
||||
|
||||
ARM dominates the mobile-device market, and a majority of devices use Android, which is based on the Linux kernel. But there are a lot of fragmentation in the ARM ecosystem, and that’s caused support and device issues.
|
||||
|
||||
One problem: It’s not possible to make one build of Android that can be deployed across all mobile devices because of different hardware configurations. Hardware makers tune Android to be compatible with chipsets in their devices. One Android update can’t be delivered to all mobile devices, unlike Windows updates to PCs.
|
||||
|
||||
Intel tried to put its x86 chips in smartphones but has now stopped the effort. One of Intel’s goals was to [deliver Android updates][3] that could be downloaded and installed on all x86 handsets.
|
||||
|
||||
There are also ARM server software development issues. Architectural, networking, and I/O characteristics are different on each chipset, and software has to be written to exploit those features. That has significantly slowed down the adoption of ARM in servers. There isn’t a matching problem with x86, which continues to dominate the server market.
|
||||
|
||||
“I’ve been personally pretty disappointed with ARM as a hardware platform, not as an instruction set, though I’ve had my issues there, too,” Torvalds said. “As a hardware platform, it is still not very pleasant to deal with.”
|
||||
|
||||
When he was growing up, Torvalds programmed on an 8-bit 6502 microprocessor in machine code and loved the architecture because the instructions were pipelined, something no other hardware did at the time. That architecture delivered more on-chip performance.
|
||||
|
||||
“What I wanted to upgrade to was Acorn Archimedes ... the thing that gave ARM its name,” Torvalds said. “That was my dream machine for a while.”
|
||||
|
||||
The [Archimedes][4] was a personal computer based on the first ARM RISC chips from Acorn Computer Group. ARM was formed as an offshoot of Acorn.
|
||||
|
||||
Torvalds liked the Archimedes because it had the 6502-like feature of pipelining with RAM chips to get high-performance. Unfortunately, he couldn’t find the computer.
|
||||
|
||||
He went with an “odd British computer,” [Sinclair QL][5], which was an even bigger failure than Acorn Archimedes, Torvalds said.
|
||||
|
||||
“Finland wasn’t the center of the universe back then,” Torvalds said. “After that, I learned my lesson—never ever go buy into something that doesn’t have infrastructure.”
|
||||
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.pcworld.com/article/3129300/linux/why-linux-pioneer-linus-torvalds-prefers-x86-over-arm.html
|
||||
|
||||
作者:[Agam Shah][a]
|
||||
译者:[译者ID](https://github.com/译者ID)
|
||||
校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: http://www.pcworld.com/author/Agam-Shah/
|
||||
[1]: http://www.theregister.co.uk/2016/10/05/linus_torvalds_admits_buggy_crap_made_it_into_linux_48/
|
||||
[2]: https://www.youtube.com/watch?v=fuAebQvFnRI
|
||||
[3]: http://www.infoworld.com/article/2908072/android/google-and-intel-vow-to-speed-up-delivery-of-android-updates-to-devices.html
|
||||
[4]: http://www.pcworld.com/article/3097427/hardware/how-arm-set-itself-up-for-a-32-billion-acquisition.html
|
||||
[5]: http://oldcomputers.net/ql.html
|
@ -1,3 +1,5 @@
|
||||
Martin translating
|
||||
|
||||
After a nasty computer virus, sys admin looks to Linux
|
||||
=======================================================
|
||||
|
||||
|
@ -1,145 +0,0 @@
|
||||
How to Mount Remote Linux Filesystem or Directory Using SSHFS Over SSH
|
||||
============================
|
||||
|
||||
The main purpose of writing this article is to provide a step-by-step guide on how to mount remote Linux file system using SSHFS client over SSH.
|
||||
|
||||
This article is useful for those users and system administrators who want to mount remote file system on their local systems for whatever purposes. We have practically tested by installing SSHFS client on one of our Linux system and successfully mounted remote file systems.
|
||||
|
||||
Before we go further installation let’s understand about SSHFS and how it works.
|
||||
|
||||

|
||||
>Sshfs Mount Remote Linux Filesystem or Directory
|
||||
|
||||
### What Is SSHFS?
|
||||
|
||||
SSHFS stands for (Secure SHell FileSystem) client that enable us to mount remote filesystem and interact with remote directories and files on a local machine using SSH File Transfer Protocol (SFTP).
|
||||
|
||||
SFTP is a secure file transfer protocol that provides file access, file transfer and file management features over Secure Shell protocol. Because SSH uses encryption while transferring files over the network from one computer to another computer and SSHFS comes with built-in FUSE (Filesystem in Userspace) kernel module that allows any non-privileged users to create their file system without modifying kernel code.
|
||||
|
||||
In this article, we will show you how to install and use SSHFS client on any Linux distribution to mount remote Linux filesystem or directory on a local Linux machine.
|
||||
|
||||
#### Step 1: Install SSHFS Client in Linux Systems
|
||||
|
||||
By default sshfs packages does not exists on all major Linux distributions, you need to enable [epel repository][1] under your Linux systems to install sshfs with the help of Yum command with their dependencies.
|
||||
|
||||
```
|
||||
# yum install sshfs
|
||||
# dnf install sshfs [On Fedora 22+ releases]
|
||||
$ sudo apt-get install sshfs [On Debian/Ubuntu based systems]
|
||||
```
|
||||
|
||||
#### Step 2: Creating SSHFS Mount Directory
|
||||
|
||||
Once the sshfs package installed, you need to create a mount point directory where you will mount your remote file system. For example, we have created mount directory under /mnt/tecmint.
|
||||
|
||||
```
|
||||
# mkdir /mnt/tecmint
|
||||
$ sudo mkdir /mnt/tecmint [On Debian/Ubuntu based systems]
|
||||
```
|
||||
|
||||
### Step 3: Mounting Remote Filesystem with SSHFS
|
||||
|
||||
Once you have created your mount point directory, now run the following command as a root user to mount remote file system under /mnt/tecmint. In your case the mount directory would be anything.
|
||||
|
||||
The following command will mount remote directory called /home/tecmint under /mnt/tecmint in local system. (Don’t forget replace x.x.x.x with your IP Address and mount point).
|
||||
|
||||
```
|
||||
# sshfs tecmint@x.x.x.x:/home/tecmint/ /mnt/tecmint
|
||||
$ sudo sshfs -o allow_other tecmint@x.x.x.x:/home/tecmint/ /mnt/tecmint [On Debian/Ubuntu based systems]
|
||||
```
|
||||
|
||||
If your Linux server is configured with SSH key based authorization, then you will need to specify the path to your public keys as shown in the following command.
|
||||
|
||||
```
|
||||
# sshfs -o IdentityFile=~/.ssh/id_rsa tecmint@x.x.x.x:/home/tecmint/ /mnt/tecmint
|
||||
$ sudo sshfs -o allow_other,IdentityFile=~/.ssh/id_rsa tecmint@x.x.x.x:/home/tecmint/ /mnt/tecmint [On Debian/Ubuntu based systems]
|
||||
```
|
||||
|
||||
#### Step 4: Verifying Remote Filesystem is Mounted
|
||||
|
||||
If you have run the above command successfully without any errors, you will see the list of remote files and directories mounted under /mnt/tecmint.
|
||||
|
||||
```
|
||||
# cd /mnt/tecmint
|
||||
# ls
|
||||
[root@ tecmint]# ls
|
||||
12345.jpg ffmpeg-php-0.6.0.tbz2 Linux news-closeup.xsl s3.jpg
|
||||
cmslogs gmd-latest.sql.tar.bz2 Malware newsletter1.html sshdallow
|
||||
epel-release-6-5.noarch.rpm json-1.2.1 movies_list.php pollbeta.sql
|
||||
ffmpeg-php-0.6.0 json-1.2.1.tgz my_next_artical_v2.php pollbeta.tar.bz2
|
||||
```
|
||||
|
||||
#### Step 5: Checking Mount Point with df -hT Command
|
||||
|
||||
If you run df -hT command you will see the remote file system mount point.
|
||||
|
||||
```
|
||||
# df -hT
|
||||
```
|
||||
|
||||
Sample Output
|
||||
|
||||
```
|
||||
Filesystem Type Size Used Avail Use% Mounted on
|
||||
udev devtmpfs 730M 0 730M 0% /dev
|
||||
tmpfs tmpfs 150M 4.9M 145M 4% /run
|
||||
/dev/sda1 ext4 31G 5.5G 24G 19% /
|
||||
tmpfs tmpfs 749M 216K 748M 1% /dev/shm
|
||||
tmpfs tmpfs 5.0M 4.0K 5.0M 1% /run/lock
|
||||
tmpfs tmpfs 749M 0 749M 0% /sys/fs/cgroup
|
||||
tmpfs tmpfs 150M 44K 150M 1% /run/user/1000
|
||||
tecmint@192.168.0.102:/home/tecmint fuse.sshfs 324G 55G 253G 18% /mnt/tecmint
|
||||
```
|
||||
|
||||
#### Step 6: Mounting Remote Filesystem Permanently
|
||||
|
||||
To mount remote filesystem permanently, you need to edit the file called /etc/fstab. To do, open the file with your favorite editor.
|
||||
|
||||
```
|
||||
# vi /etc/fstab
|
||||
$ sudo vi /etc/fstab [On Debian/Ubuntu based systems]
|
||||
```
|
||||
|
||||
Go to the bottom of the file and add the following line to it and save the file and exit. The below entry mount remote server file system with default settings.
|
||||
|
||||
```
|
||||
sshfs#tecmint@x.x.x.x:/home/tecmint/ /mnt/tecmint fuse.sshfs defaults 0 0
|
||||
```
|
||||
|
||||
Make sure you’ve [SSH Passwordless Login][2] in place between servers to auto mount filesystem during system reboots..
|
||||
|
||||
```
|
||||
sshfs#tecmint@x.x.x.x:/home/tecmint/ /mnt/tecmint fuse.sshfs IdentityFile=~/.ssh/id_rsa defaults 0 0
|
||||
```
|
||||
|
||||
Next, you need to update the fstab file to reflect the changes.
|
||||
|
||||
```
|
||||
# mount -a
|
||||
$ sudo mount -a [On Debian/Ubuntu based systems]
|
||||
```
|
||||
|
||||
#### Step 7: Unmounting Remote Filesystem
|
||||
|
||||
To unmount remote filesystem, jun issue the following command it will unmount the remote file system.
|
||||
|
||||
```
|
||||
# umount /mnt/tecmint
|
||||
```
|
||||
|
||||
That’s all for now, if you’re facing any difficulties or need any help in mounting remote file system, please contact us via comments and if you feel this article is much useful then share it with your friends.
|
||||
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.tecmint.com/sshfs-mount-remote-linux-filesystem-directory-using-ssh/?utm_source=feedburner&utm_medium=feed&utm_campaign=Feed%3A+tecmint+%28Tecmint%3A+Linux+Howto%27s+Guide%29
|
||||
|
||||
作者:[Ravi Saive][a]
|
||||
译者:[译者ID](https://github.com/译者ID)
|
||||
校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: http://www.tecmint.com/author/admin/
|
||||
[1]: http://www.tecmint.com/how-to-enable-epel-repository-for-rhel-centos-6-5/
|
||||
[2]: http://www.tecmint.com/ssh-passwordless-login-using-ssh-keygen-in-5-easy-steps/
|
69
sources/tech/20160921 Rust meets Fedora.md
Normal file
69
sources/tech/20160921 Rust meets Fedora.md
Normal file
@ -0,0 +1,69 @@
|
||||
### [Rust meets Fedora](https://fedoramagazine.org/rust-meets-fedora/)
|
||||
|
||||
### 
|
||||
|
||||
### What is Rust?
|
||||
|
||||
Rust is a system programming language which runs blazingly fast, and prevents almost all crashes, [segfaults](https://wikipedia.org/wiki/Segmentation_fault), and data races. You might wonder exactly why yet another programming language is useful, since there are already so many of them. This article aims to explain why.
|
||||
|
||||
### Safety vs. control
|
||||
|
||||
[](https://i0.wp.com/cdn.fedoramagazine.org/wp-content/uploads/2016/09/Screenshot-from-2016-09-12-08-29-02.png?ssl=1)
|
||||
|
||||
You may have seen a diagram of the above spectrum. On one side there’s C/C++, which has more control of the hardware it’s running on. Therefore it lets the developer optimize performance by executing finer control over the generated machine code. However, this isn’t very safe; it’s easier to cause a segfault, or security bugs like [Heartbleed](https://fedoramagazine.org/update-on-cve-2014-0160-aka-heartbleed/).
|
||||
|
||||
On the other hand, there are languages like Python, Ruby, and JavaScript where the developer has little control but creates safer code. The code can’t generate a segfault, although it can generate exceptions which are fairly safe and contained.
|
||||
|
||||
Somewhere in the middle, there’s Java and a few other languages which are a mixture of these characteristics. They offer some control of the hardware they run on but try to minimize vulnerabilities.
|
||||
|
||||
Rust is a bit different, and doesn’t fall in this spectrum. Instead it gives the developer both safety and control.
|
||||
|
||||
### Specialties of Rust
|
||||
|
||||
Rust is a system programming language like C/C++, except that it gives the developer fine grained control over memory allocations. A garbage collector is not required. It has a minimal runtime, and runs very close to the bare metal. The developer has greater guarantees about the performance of the code. Furthermore, anyone who knows C/C++ can understand and write code for this language.
|
||||
|
||||
Rust runs blazingly fast, since it’s a compiled language. It uses LLVM as the compiler backend and can tap into a large suite of optimizations. In many areas it can perform better than C/C++. Like JavaScript, Ruby, and Python, it’s safe by default, meaning it doesn’t cause segfaults, dangling pointers, or null pointers.
|
||||
|
||||
Another important feature is the elimination of data races. Nowadays, most computers have multiple cores and many threads running in parallel. However it’s tough for developers to write good parallel code, so this feature removes that necessity. There are two key concepts Rust uses to eliminate data races:
|
||||
|
||||
* Ownership. Each variable is moved to a new location, and prevents the previous location from using it. There is only oneowner of each piece of data.
|
||||
* Borrowing. Owned values can be borrowed to allow usage for a certain period of time.
|
||||
|
||||
### Rust in Fedora 24 and 25
|
||||
|
||||
To get started, just install the package:
|
||||
|
||||
```
|
||||
sudo dnf install rust
|
||||
```
|
||||
|
||||
```
|
||||
fn main() {
|
||||
println!("Hello, Rust is running on Fedora 25 Alpha!");
|
||||
}
|
||||
```
|
||||
|
||||
```
|
||||
rustc helloworld.rs
|
||||
./helloworld
|
||||
```
|
||||
|
||||
Run the following command to install the latest testing version on Fedora:
|
||||
|
||||
```
|
||||
sudo dnf --enablerepo=updates-testing --refresh --best install rust
|
||||
```
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://fedoramagazine.org/rust-meets-fedora/
|
||||
|
||||
作者:[Sumantro Mukherjee][a]
|
||||
|
||||
译者:[译者ID](https://github.com/译者ID)
|
||||
|
||||
校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: https://fedoramagazine.org/author/sumantrom/
|
@ -0,0 +1,85 @@
|
||||
GHLandy Translating
|
||||
|
||||
HOW TO USE FTP TO MOVE FILES BETWEEN YOUR COMPUTER AND YOUR ANDROID DEVICE
|
||||
====
|
||||
|
||||
[](https://itsfoss.com/wp-content/uploads/2016/09/linux-ftp-android.jpg)
|
||||
|
||||
Everyone who has an Android device knows that you can [transfer files by plugging it into your computer with a USB cable](https://itsfoss.com/how-to-connect-kindle-fire-hd-with-ubuntu-12-10/). Not everyone knows that you can use FOSS software to connect to your Android devices wirelessly.
|
||||
|
||||
I know that it’s not the easiest method out there, but this is a fun and geeky way to do it. So if you are in some DIY mood, let me show you how to transfer files between Linux and Android using FTP.
|
||||
|
||||
### STEP 1: GET THE NECESSARY SOFTWARE
|
||||
|
||||
In order to connect to your Android device, you need two things: an FTP server and an FTP client. There are quite a few of both to choose from. I would recommend [Filezilla](https://filezilla-project.org/) as an FTP client because it is open-source and available on multiple platforms.
|
||||
|
||||
My favorite FOSS app store for Android is [F-Droid](https://f-droid.org/). F-Droid has two great FTP server apps: [primitive ftpd](https://f-droid.org/repository/browse/?fdfilter=ftp&fdid=org.primftpd) and [FTP Server (Free)](https://f-droid.org/repository/browse/?fdfilter=ftp&fdid=be.ppareit.swiftp_free). Both require Android 4.0 or newer. I will focus on primitive ftpd in this article, but similar steps can be used for FTP Sever (Free).
|
||||
|
||||
### STEP 2: GETTING FAMILIAR WITH THE FTP SERVER
|
||||
|
||||
Once you have both the FTP client and server installed, It’s time to set up the connection between the two. Let’s start with the FTP server on the Android device. First, open primitive ftpd from your app drawer.
|
||||
|
||||
[](https://itsfoss.com/wp-content/uploads/2016/09/android-1.png)
|
||||
|
||||
Once the app opens, you’ll be confronted by a bunch of numbers. Don’t freak out. You’ll see that server has assigned an IP address (in this test case 192.168.1.131). If you look down further, you will see that both FTP and SFTP are currently not running (SFTP is a slightly different protocol that uses SSH to connect.). Below you can see the username, which is currently set to user.
|
||||
|
||||
At the top of the screen, there two buttons. One will start the FTP server and the other will take you to settings. Starting the server is self-explanatory.
|
||||
|
||||
|
||||
[](https://itsfoss.com/wp-content/uploads/2016/09/android-2.png)
|
||||
|
||||
In the setting menu, you can change the server’s username, password and which port the server uses. You can also prevent standby while the server is active, set the server to start on boot or change the theme.
|
||||
|
||||

|
||||
|
||||
### STEP 3: USING FILEZILLA
|
||||
|
||||
Now open FileZilla on your system of choice. You have two options on how you use Filezilla. You can either manually type in the IP address, username, password, and port every time you want to move a file or you can store that information on Filezilla. (Note: Every time you start the FTP server the IP address will be different, so you will have to update the number saved on Filezilla.) I will show you both ways.
|
||||
|
||||
If you want to do it manually, merely fill in the required spaced at the top of the FileZilla window and hit “quick connect”.
|
||||
|
||||

|
||||
|
||||
To save the information, click on the icon below the file menu. This will open the Site Manager dialog box. Fill out the information you want to save. I usually set “login type” to “ask for password” top be a little bit more secure. If you are going to use FTP, you can leave the default, but if you want to use SFTP you have to select it from the Protocol dropdown box.
|
||||
|
||||

|
||||
|
||||
Click connect, enter your password and you are in. You will see a warning that you are connecting to a new host. You can verify the fingerprint on the screen against what primitive ftpd says. If it’s correct (and it should be) select the box to add it to the cache, so you don’t see this message in the future.
|
||||
|
||||

|
||||
|
||||
### STEP 4: MOVING FILES
|
||||
|
||||
Now you’ll see an address box that says “local site” and another that says “remote site”. Those represent your computer and your Android device respectively. From here you can browse through your PC and move files to your Android device. I would recommend uploading files into your Downloads folder so you can keep track of them easier. You can either right-click on a file and select upload or download from the popup menu to move it or you can just double click on it.
|
||||
|
||||

|
||||
|
||||
### STEP 5: CLOSING UP SHOP
|
||||
|
||||
When you are done moving files, all you have to do is stop the FTP server on your Android device and close down Filezilla. As easy as that.
|
||||
|
||||
### CLOSING THOUGHTS
|
||||
|
||||
I’m sure that several people will point out that FTP isn’t really very secure. I think that this use case is different because the connection will be very short and in most cases, people will do it in the privacy of their own homes.
|
||||
|
||||
This is my favorite method of moving files between Linux and Android.
|
||||
|
||||
Did you find it helpful? Do you have any suggesting for similar programs? Let us know below in the comments.
|
||||
|
||||
[](https://itsfoss.com/how-to-open-run-install-or-execute-a-jar-file-in-ubuntu-linux/)[](https://itsfoss.com/solve-overheating-issue-in-ubuntu-12-10/)
|
||||
|
||||
If you found this article interesting, please take a minute to share it on your favorite social media sites.
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://itsfoss.com/use-ftp-linux-android/?utm_source=feedburner&utm_medium=feed&utm_campaign=Feed%3A+ItsFoss+%28Its+FOSS%21+An+Open+Source+Blog%29
|
||||
|
||||
作者:[John Paul ][a]
|
||||
|
||||
译者:[译者ID](https://github.com/译者ID)
|
||||
|
||||
校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: https://itsfoss.com/author/john/
|
@ -0,0 +1,70 @@
|
||||
|
||||
|
||||
Keeping Linux containers safe and secure
|
||||
====
|
||||
|
||||

|
||||
|
||||
>Image credits : [Lucarelli](http://commons.wikimedia.org/wiki/User:Lucarelli) via [Wikimedia Commons](http://commons.wikimedia.org/wiki/File:Containers_Livorno.jpg). CC-BY-SA 3.0
|
||||
|
||||
Linux containers are helping to change the way that IT operates. In place of large, monolithic virtual machines, organizations are finding effective ways to deploy their applications inside Linux containers, providing for faster speeds, greater density, and increased agility in their operations.
|
||||
|
||||
While containers can bring a number of advantages from a security perspective, they come with their own set of security challenges as well. Just as with traditional infrastructure, it is critical to ensure that the system libraries and components running within a container are regularly updated in order to avoid vulnerabilities. But how do you know what is running inside of your containers? To help manage the full set of security challenges facing container technologies, a startup named[Anchore](https://anchore.com/) is developing an [open source](https://github.com/anchore/anchore)[ project](https://github.com/anchore/anchore) of the same name to bring visibility inside of Linux containers.
|
||||
|
||||
To learn more about Anchore, I caught up with Andrew Cathrow, Anchore's vice president of products and marketing, to learn more about the open source project and the company behind it.
|
||||
|
||||

|
||||
|
||||
### In a nutshell, what is Anchore? How does the toolset work?
|
||||
|
||||
Anchore's goal is to provide a toolset that allows developers, operations, and security teams to maintain full visibility of the 'chain of custody' as containers move through the development lifecycle, while providing the visibility, predictability, and control needed for production deployment. The Anchore engine is comprised of pluggable modules that can perform analysis (extraction of data and metadata from an image), queries (allowing reporting against the container), and policy evaluation (where policies can be specified that govern the deployment of images).
|
||||
|
||||
While there are a number of scanning tools on the market, most are not open source. We believe that security and compliance products should be open source, otherwise, how could you trust them?
|
||||
|
||||
Anchore, in addition to being open source, has two other major differentiators that set it apart from the commercial offerings in the market.
|
||||
|
||||
First, we look beyond the operating system image. Scanning tools today concentrate on operating system packages, e.g. "Do you have any CVEs (security vulnerabilities) in your RPMs or DEB packages?" While that is certainly important, you don't want vulnerable packages in your image, the operating system packages are just the foundation on which the rest of the image is built. All layers need to be validated, including configuration files, language modules, middleware, etc. You can have all the latest packages, but with even one configuration file wrong, insecurity sets in. A second differentiator is the ability to extend the engine by adding users' own data, queries or policies.
|
||||
|
||||
### What is driving the need for an inspection and analytics tool for containers? What problems are operators facing that this helps to solve?
|
||||
|
||||
A primary concern for enterprises adopting Docker today is security, in particular, the governance and compliance of the containers they are deploying. It's almost too easy to pull an application image from a public registry, run it, and within seconds deploy an application in production without even knowing what's under the covers. End users must have confidence that when they deploy applications they will be secure, performant and easily maintained.
|
||||
|
||||
Containers are opaque in that they are deployable ‘black boxes' that contain applications. While it's easy to treat these images as "just packaged applications," they include operating system images with up to hundreds of packages and thousands of files. As with all operating systems on physical servers, virtual machines, or in the cloud, images need to be maintained. The images may contain unpatched security vulnerabilities, outdated software that contains bugs, or may be misconfigured.
|
||||
|
||||
To have confidence in your container deployments you need to know what's under the covers to analyze and make decisions based on the contents of your container images.
|
||||
|
||||
### The innovation around containers today is almost entirely happening in open source. Why do you think that is? What's driving the desire for openness?
|
||||
|
||||
Over the past 20 years organizations have experienced the advantages open source brings to cost savings, reduced lock-in, improved security and faster innovation. Containers, and Docker specifically, are great examples. The team at Docker Inc. would not have been able to create this innovative new software deployment paradigm on top of a proprietary system. They would not have been able to make the required modifications to the code in a proprietary system, nor be able to work cooperatively with industry leaders such as Google, IBM, Intel, and Red Hat—all working toward a common goal. Open source and Linux have always enabled innovation and positive industry disruption. In the past, delivering a big idea required a big team and lots of resources. In the open source world, a small company with big ideas can work in the wider community and benefit from shared intellectual horsepower to collaboratively deliver real enterprise IT innovation.
|
||||
|
||||
To illustrate the deep adoption of open source, the Anchore team recently returned from LinuxCon in Toronto, where it was incredible to see Microsoft as a diamond level sponsor presenting a growing portfolio of their products that work with or on Linux! Linus Torvalds once said, "If Microsoft ever does applications for Linux it means I've won." I'd amend that statement to read "Open has won."
|
||||
|
||||
### The days of common standards in the container space are still very young, and there are still many competing visions for nearly every part of the stack. What challenges does that create for a startup in this space?
|
||||
|
||||
It is important to remember that without open standards and open source we wouldn't have seen the innovation that is driving rapid container adoption and changing the industry landscape. The Open Container Initiative (OCI), comprised of industry leaders from the Linux and Container industries, is doing great work setting standards for both the runtime and image formats that will allow us to see even more innovation. Anchore is proud to be a new member of the OCI and we look forward to helping form the standards.
|
||||
|
||||
### How are you working to build an open source community around the Anchore project?
|
||||
|
||||
The Anchore team has a rich history of building and working within open source communities, with leaders from Ansible, Eucalyptus Systems, and Red Hat. From the start, Anchore began building a strong open source community and we are applying lessons learned in the open source world. The first lesson, of course, is to release early and often. We open sourced our inspection and analysis engine back in June, far in advance of our commercial offering, to ensure that the open source project can stand on its own with features that make it useful to many end-users without having to purchase Anchore's commercial offering. There will always be opportunities to add more value with support, services, and enhanced data feeds with a commercial offering, but if the open source engine is not useful in itself then we will not see an active community.
|
||||
|
||||
We built Anchore to be modular to allow analysis, reporting and policy plugins to be added without requiring changes to the core engine. We want to ensure that anyone can create plugins, so we chose Python as the base language for the project because it is widely used by developers and sysadmins alike. But even if you are not well versed in Python you can still create plugins using whatever language or scripting environment you prefer. If you can create a bash script then you can create an Anchore plugin. Our goal is to enable the broadest possible community to attract participation. While we encourage our users to pass these contributions back to the community we've architected and licensed the project to ensure that private plugins/modules can be created and maintained independently.
|
||||
|
||||
### The promise of containers is not just greater application density on servers or greater speed on the technical side, but a combination of different tools that together provide a different way of approaching the way developers and operators work together. As a company working in this space, how are you providing a message that resonates with both developers and operators?
|
||||
|
||||
The container ecosystem is evolving rapidly with a growing number of runtime, orchestration, monitoring and integration products. So the first consideration we had to factor into our architecture was to not be prescriptive about Anchore deployment and usage, we need to ensure that we can fit into any CI/CD pipeline whether it's on-premise or deployed in the cloud. A common question we are asked is if Anchore will provide a container registry that includes image scanning and analysis. While this would simplify our work considerably, it would force customers into specific deployment architectures and limit customers' ability to deploy their own best-of-breed stack. We've made sure that Anchore works with all leading registries, runtime platforms, CI/CD platforms and orchestration tools.
|
||||
|
||||
Some developers are adding operations skills and moving to DevOps roles, and we see sysadmin/operations teams that are learning more about development as they take DevOps roles. We also see teams with mixed skills. We designed Anchore to be used by development operations and security teams so they can work together to define rules and policies that can be evaluated at any point in the development cycle. Another example is the architecture of the plugins/module interface that enables anyone to easily create a module in their favorite environment—whether it is Python, Go, Perl, C or even a bash script.
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://opensource.com/business/16/10/interview-andy-cathrow-anchore
|
||||
|
||||
作者:[Jason Baker][a]
|
||||
|
||||
译者:[译者ID](https://github.com/译者ID)
|
||||
|
||||
校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: https://opensource.com/users/jason-baker
|
@ -0,0 +1,58 @@
|
||||
Solving the Linux kernel code reviewer shortage
|
||||
====
|
||||
|
||||
Operating system security is [top of mind right now](http://www.infoworld.com/article/3124432/linux/is-the-linux-kernel-a-security-problem.html), and Linux is a big part of that discussion. One of the questions to be solved is: How do we ensure that patches going upstream are properly reviewed?
|
||||
|
||||
Wolfram Sang has been a Linux kernel developer since 2008, and frequently talks at Linux conferences around the world, like[LinuxCon Berlin 2016](https://linuxconcontainerconeurope2016.sched.org/event/7oA4/kernel-development-i-still-think-we-have-a-scaling-problem-wolfram-sang-consultant), about ways to improve kernel development practices.
|
||||
|
||||
Let's get his point of view.
|
||||
|
||||

|
||||
|
||||
### In 2013, you warned the ELCE audience in Edinburgh about subsystem latencies and other issues that may arise if things don't change. Did things change? Did some of the things you warned about end up happening?
|
||||
|
||||
Yes, to some extent. Of course, the Linux kernel is a very heterogeneous project, so subsystems with more focus are in a slightly better position. However, there are enough subsystems which are "just a piece of the puzzle" and for them latency has not improved, generally speaking.
|
||||
|
||||
### You've pointed out that the number of reviewers is a problem. Why do you think the kernel development community doesn't have enough reviewers?
|
||||
|
||||
One thing is that some people prefer to actually write code and not so much read code. This is OK. It just shows that not everyone is a reviewer, so we should really encourage everyone who likes to do that.
|
||||
|
||||
Another thing I see is when we ask people to join our community, it is first mostly about contributing patches. This is natural, I think, and worked well in the beginning when contributions were fewer. But as more and more have joined, especially companies, we've hit this review resource problem. Don't get me wrong, having so many contributions is awesome! I think that we now need to point out that taking part in the community also means more, like to take over some responsibility as a next step. It happens in some parts, but it is not enough to scale yet.
|
||||
|
||||
### Do you think more reviewer training or incentivization of reviewing would help?
|
||||
|
||||
One key point for me is to speak out about there being a problem. Yes, we are doing great so far, but that doesn't mean all is well. We also have problems like this scalability issue. Let people know so maybe some parties get interested and join. I don't think we need special training, though. Most reviewers I know are pretty good or talented, they are just too few or have too little time.
|
||||
|
||||
What you should have is this intrinsic motivation. For the rest, learning-by-doing works great in this field. This is one of the advantages I like to point out: Reviewing patches makes you a better coder.
|
||||
|
||||
### In your opinion, are there large, popular projects that you think are doing a really great job at scaling that we might borrow some ideas from?
|
||||
|
||||
I don't know one, but am open to hearing about them if there are.
|
||||
|
||||
I am very focused on the Linux kernel, so it might be plain bias. However, in my opinion the kernel is indeed special in terms of size, number of contributions, and diversity. So while I think looking at other projects to get inspiration for workflow improvements is always healthy, our scalability problems are pretty unique currently. I find it most useful to look what other subsystems in the kernel are doing.
|
||||
|
||||
### You've mentioned security issues as something that could come up. What should users be doing to avoid or ameliorate the severity of security issues?
|
||||
|
||||
My talk at LinuxCon Berlin this year is targeted at the development level. The security implications could come from patches going in without proper review. I don't want to have users deal with that, I rather want such issues to never happen. This will never work perfectly, but it is still my preferred way to tackle things.
|
||||
|
||||
### I'm wondering how the wider community could help. Are there certain kinds of bug reports that you wish people would file more often? Particular areas that need regular attention but don't get it for some reason?
|
||||
|
||||
We are not short on bug reports. What I am more afraid of is that the shortage of reviewers will lead to more bug reports due to incomplete patches going in. So, we then we'll not only have to deal with the huge amount of contributions, but also with more bugs and regressions.
|
||||
|
||||
### Is there anything else you wish our readers knew about your work?
|
||||
|
||||
With all the specialities around the Linux kernel, it often helps me to remember that at the bottom, it is just code.
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://opensource.com/business/16/10/linux-kernel-review
|
||||
|
||||
作者:[Deb Nicholson][a]
|
||||
|
||||
译者:[译者ID](https://github.com/译者ID)
|
||||
|
||||
校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: https://opensource.com/users/eximious
|
@ -0,0 +1,83 @@
|
||||
Deploy containers with Atomic Host, Ansible, and Cockpit
|
||||
====
|
||||
|
||||

|
||||
|
||||
In the course of my job at [Red Hat](https://www.redhat.com/), I work with [Docker](https://www.docker.com/) containers on [Fedora Atomic host](https://getfedora.org/en/cloud/download/atomic.html) every day. The Atomic Host from [Project Atomic](http://www.projectatomic.io/) is a lightweight container OS that can run Linux containers in Docker format. It’s been modified for efficiency, making it optimal to use as a Docker run-time system for cloud environments.
|
||||
|
||||
Fortunately I’ve found a great way to manage containers running on the host: [Cockpit](http://cockpit-project.org/). Cockpit is a remote manager for GNU/Linux servers with a nice Web UI. It lets me manage servers and containers running on the host. You can read more about Cockpit in [this overview article](https://fedoramagazine.org/cockpit-overview/) previously published here. However, I also wanted to automate running containers on the host, which I’ve done using [Ansible](https://www.ansible.com/).
|
||||
|
||||
Note that we cannot use the dnf command on the Atomic Host. The host is designed not as a general purpose OS, but to be more fit for containers and other purposes. But it’s still very easy to set up applications and services on the Atomic Host. This post shows you how to automate and simplify this process.
|
||||
|
||||
### Setting up the components
|
||||
|
||||
Before getting started, make sure you have Ansible installed on your system.
|
||||
|
||||
```
|
||||
sudo dnf -y install ansible
|
||||
```
|
||||
|
||||
```
|
||||
$ git clone https://github.com/trishnaguha/fedora-cloud-ansible.git
|
||||
|
||||
```
|
||||
|
||||
```
|
||||
$ cd fedora-cloud-ansible
|
||||
$ cd cockpit
|
||||
$ vim inventory
|
||||
|
||||
```
|
||||
|
||||
1. Replace IP_ADDRESS_OF_HOST with the IP address of your Atomic host.
|
||||
2. Replace PRIVATE_KEY_FILE in the line ansible_ssh_private_key_file=’PRIVATE_KEY_FILE’ with your SSH private key file.
|
||||
|
||||
Now save and exit the inventory file.
|
||||
|
||||
Next, edit the ansible configuration file:
|
||||
|
||||
```
|
||||
$ vim ansible.cfg
|
||||
|
||||
```
|
||||
|
||||
### Putting it all together
|
||||
|
||||
Now it’s time to run the playbook. This command starts running the Cockpit container on the Atomic host:
|
||||
|
||||
```
|
||||
$ ansible-playbook cockpit.yml
|
||||
|
||||
```
|
||||
|
||||
[](https://i1.wp.com/cdn.fedoramagazine.org/wp-content/uploads/2016/09/Screenshot-from-2016-10-03-12-02-27.jpg?ssl=1)
|
||||
|
||||
### Managing your containers
|
||||
|
||||
Login with the credentials of your Atomic host or as root. Then visit the Containers section on the Cockpit manager to see the containers running on your Atomic host. In the example below, you’ll see I also set up others like [httpd](https://github.com/trishnaguha/fedora-cloud-ansible/tree/master/httpd) and [redis](https://github.com/trishnaguha/fedora-cloud-ansible/tree/master/redis):
|
||||
|
||||
[](https://i1.wp.com/cdn.fedoramagazine.org/wp-content/uploads/2016/09/Screenshot-from-2016-10-03-12-13-05.jpg?ssl=1)
|
||||
|
||||
Notice the interface lets you start and stop containers directly in the Cockpit manager using the Run and Stop buttons. You can also manage your Atomic host using the Cockpit manager. Go to Tools -> Terminals. There you can use the terminal of the Atomic host:
|
||||
|
||||
[](https://i1.wp.com/cdn.fedoramagazine.org/wp-content/uploads/2016/09/Screenshot-from-2016-10-03-12-10-19.jpg?ssl=1)
|
||||
|
||||
If you plan to deploy your containerized application on Atomic host, you can simply write a playbook for it. Then you can deploy using the ansible-playbook command and manage the containers using Cockpit.
|
||||
|
||||
[](https://i0.wp.com/cdn.fedoramagazine.org/wp-content/uploads/2016/09/FotoFlexer_Photo51.jpg?ssl=1)
|
||||
|
||||
Feel free to fork or add playbooks for containers in the repository [https://github.com/trishnaguha/fedora-cloud-ansible](https://github.com/trishnaguha/fedora-cloud-ansible).
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://fedoramagazine.org/deploy-containers-atomic-host-ansible-cockpit/
|
||||
|
||||
作者:[trishnag][a]
|
||||
|
||||
译者:[译者ID](https://github.com/译者ID)
|
||||
|
||||
校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: https://fedoramagazine.org/author/trishnag/
|
@ -0,0 +1,140 @@
|
||||
Antergos – Best Arch based distro for beginners, whoever want to taste arch, give a try
|
||||
=====
|
||||
|
||||
As we know Arch Linux is one of the best Linux Distribution ever because we can customize whatever we want. We can get all the latest software’s because of rolling release but its very difficult for freshers, installation & configuration. Today i’m going to show you, how to install Antergos – The Best Arch based distro for beginners, whoever want to taste arch Linux give a try, i can assure worth to try.
|
||||
|
||||
Antergos is a rolling release distribution and provide a modern, elegant, and powerful operating system based on Arch Linux with choice of Desktop Environment. Whoever having challenge to install Arch Linux, they are welcome to Antergos.
|
||||
|
||||
Due to the rolling release Your entire system (include base OS components & applications that you installed) will be upgrade to latest rolling release, when receive updates as they are released upstream, with only a minimal delay to ensure stability.
|
||||
|
||||
Antergos is available in many languages including English, Spanish, and more. You can choose the prepared language on language selection while installing Angergos. Its default configuration provides you with a ready-to-use system and no need to install additional software’s. Directly surf the web, listen to music, watch videos, and do anything else you like.
|
||||
|
||||
The Antergos Project was originally started under the name Cinnarch, and provided only one desktop environment. Now it’s offering multiple desktops (including Cinnamon, Gnome, KDE, MATE, Openbox & Xfce) allowing users to select their favorite desktop during installation. It’s included the famous GTK Theme & Icon Theme of Numix by default.
|
||||
|
||||
#### Download Antergos Linux
|
||||
|
||||
Visit [Antergos][1] download page, then download the latest Live ISO image. Antergos is available to everyone for free, burn it on a CD/DVD or write it to a USB, and enjoy.
|
||||
|
||||
#### Create bootable USB
|
||||
|
||||
After downloading the Antergos latest Live ISO image, you need to make it as a bootable media, either Command Line way or Graphical way.
|
||||
|
||||
#### Booting Computer with Antergos installation media
|
||||
|
||||
Boot your computer with Antergos USB installation media. If you successfully booted into live USB, you will get similar to below screen.
|
||||
|
||||

|
||||
|
||||
Hit `Install It` button to kick start the Angergos installation.
|
||||
|
||||

|
||||
|
||||
#### Choose your Language
|
||||
|
||||
Antergos easy-to-use graphical installer is pretty good. Here choose your preferred Language, then Hit `Next` button to move forward.
|
||||
|
||||

|
||||
|
||||
#### System Check
|
||||
|
||||
Make sure, you should have sufficient storage space, plugged into a power source & connected with internet, then Hit `Next` button to move forward.
|
||||
|
||||

|
||||
|
||||
#### Select your Location
|
||||
|
||||
The location you select will be used to help determine the system locale. It should normally be the country in which you reside. Here is a shortlist of locations based on the language you selected, then Hit `Next` button to move forward.
|
||||
|
||||

|
||||
|
||||
#### Select your Timezone
|
||||
|
||||
Select your Timezone based in which you reside, then Hit `Next` button to move forward.
|
||||
|
||||

|
||||
|
||||
#### Select your Keyboard Layout
|
||||
|
||||
Select your keyboard layout, then Hit `Next` button to move forward.
|
||||
|
||||

|
||||
|
||||
#### Choose your Desktop
|
||||
|
||||
Antergos offering multiple desktops (including Cinnamon, Gnome, KDE, MATE, Openbox & Xfce) allowing users to select their favorite desktop. Choose the one you want, then Hit `Next` button to move forward.
|
||||
|
||||

|
||||
|
||||
#### Gnome – Feature Selection
|
||||
|
||||
I have chose default option of Gnome Desktop, Here you have a option to choose the additional software’s & propriety drivers for installation. Then Hit `Next` button to move forward.
|
||||
|
||||

|
||||
|
||||
#### Installation Type
|
||||
|
||||
Newbies & Fresh installation, you can choose the first option, then Hit `Next` button to move forward.
|
||||
|
||||

|
||||
|
||||
#### Automatic Installation Mode
|
||||
|
||||
This will warning you about HDD erase, also choose the boot loader installation `Grub`, then Hit `Next` button to move forward.
|
||||
|
||||
>WARNING ! This will overwrite everything currently on your drive !
|
||||
|
||||

|
||||
|
||||
#### Installation Summary
|
||||
|
||||
Verify the installation summary, like Location, Timezone, Keyboard, Desktop Environment & Features, then Hit `Next` button to move forward.
|
||||
|
||||

|
||||
|
||||
#### Create Your User Account
|
||||
|
||||
Its time to create new user and password on your system, then Hit `Next` button to move forward.
|
||||
|
||||
- Your Name
|
||||
- Computer Name
|
||||
- Username
|
||||
- Choose a password
|
||||
- Confirm your password
|
||||
- Require my password to login
|
||||
|
||||

|
||||
|
||||
#### Installation process is on-going
|
||||
|
||||
Antergos Installation process is on-going and will take a while to complete the installation. Once installation got completed, Remove your installation media then hit Restart Now button.
|
||||
|
||||

|
||||
|
||||
#### Enter User Name & Password
|
||||
|
||||
This is the Welcome Screen, Enter your password to login.
|
||||
|
||||

|
||||
|
||||
Release information screenshot.
|
||||
|
||||

|
||||
|
||||
We are preparing all articles in-depth to understand by all level/stage Linux administrators. If the article is useful for you, then please spend less than a minute to share your valuable comments in our commenting section.
|
||||
|
||||
Please stay tune with us…Good Luck.
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.2daygeek.com/how-to-install-antergos-linux/
|
||||
|
||||
作者:[MAGESH MARUTHAMUTHU][a]
|
||||
|
||||
译者:[译者ID](https://github.com/译者ID)
|
||||
|
||||
校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: http://www.2daygeek.com/author/magesh/
|
||||
[1]: https://antergos.com/try-it/
|
@ -1,40 +0,0 @@
|
||||
OneNewLife Translating
|
||||
|
||||
React Native Ubuntu 简介
|
||||
=====================
|
||||
|
||||
|
||||
在 Canonical 的 Webapps 团队,我们总是想确保 web 和 web 边缘技术可以为开发者所用。我们想让所有人的生活更轻松,让 web 开发者更加熟悉工具的用法,并且在 Ubuntu 上提供一个简单的途径来使用这些工具。
|
||||
|
||||
我们提供对 web 应用以及创建和打包 Cordova 应用的支持,这使得在 Ubuntu 上使用任意 web 框架来创造美妙的应用体验成为可能。
|
||||
|
||||
其中一个可以在这些情景中使用的主流框架就是 React.js。React.js 是一个拥有声明式编程模型和强大的组件系统的 UI 框架,它主要侧重于 UI 的构建,所以你可以在你喜欢的任何地方用上它。
|
||||
|
||||
然而这些应用场景太广泛了,有时候你只需要更高的性能,或者能够直接用原生 UI 组件来开发,但是在一个不太熟悉的场景中使用它可能不合时宜。如果你熟悉 React.js,那么通过 React Native 来开发可以毫不费力地将你所有现有的知识和工具迁移到完全的 native 开发中。React Native 是 React.js 的好姐妹,你可以用同样的方式和代码来创建一个直接使用原生组件并且拥有原生级别性能的应用,而且这就和你期待的一样轻松快捷。
|
||||
|
||||
|
||||

|
||||
|
||||
我们很高兴地宣布随着我们对 HTML5 应用的支持,现在可以在 Ubuntu 上开发 React Native 应用了。你可以移植你现有的 iOS 或 Android 版本的 React Native 应用,或者利用你的 web 开发技能来创建一个新的应用。
|
||||
|
||||
你可以在 [这里][1] 找到 React Native Ubuntu 的源代码,要开始使用时,遵循 [README-ubuntu.md][2] 的说明并创建你的第一个应用吧。
|
||||
|
||||
Ubuntu 的支持包括生成包的功能。通过 React Native CLI 来管理,构建一个模块就像 “react-native package-ubuntu --snap” 这条命令一样简单。还可以为 Ubuntu 设备构建一个 click 包,这意味着 React Native Ubuntu 应用可以在启动那一瞬间就准备就绪了。
|
||||
|
||||
在不久的将来会有很多关于在 Ubuntu 上开发一个 React Native 应用你所需要了解的东西的博客,例如创建应用、开发流程以及打包并发布到商店等等。还会有一些关于怎样开发新型的可复用的模块的信息,这些模块可以给运行时增加额外的功能并且可以发布为 npm 模块。
|
||||
|
||||
赶快去实践一下吧,看看你能创造出些什么来。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://developer.ubuntu.com/en/blog/2016/08/05/introducing-react-native-ubuntu/?utm_source=javascriptweekly&utm_medium=email
|
||||
|
||||
作者:[Justin McPherson][a]
|
||||
译者:[Mars Wong](https://github.com/OneNewLife)
|
||||
校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: https://developer.ubuntu.com/en/blog/authors/justinmcp/
|
||||
[1]: https://github.com/CanonicalLtd/react-native
|
||||
[2]: https://github.com/CanonicalLtd/react-native/blob/ubuntu/README-ubuntu.md
|
@ -1,64 +0,0 @@
|
||||
|
||||
# 4 个需要了解的容器网络工具
|
||||

|
||||
|
||||
> [Creative Commons Zero][1]
|
||||
|
||||
有了这么多新的云计算技术、工具和技术要跟踪,知道从哪开始学习新的技能变得难了。这一系列[下一代云计算技术][2]的目的是为了帮助你在重要的项目和产品在信息和快速变化的领域速度更快,如软件定义网络(SDN)、容器,他们不谋而合:容器网络
|
||||
|
||||
对于企业容器部署,容器和网络之间的关系依然具有挑战性。容器需要网络功能来链接分布式应用程序。根据最新的[企业网络星球][3]文章,一部分的挑战是“将容器部署在自己的独立数据环境中,同时保持有效链接的有隔离的容器部署方式”。
|
||||
|
||||
[Docker][4],流行的容器平台,使用了软件定义虚拟网络来链接容器和本地网络。此外,它使用Linux的桥接功能和虚拟可扩展局域网(VXLAN)技术,可以在同一容器集群互相沟通。Docker的插件架构也允许其他网络管理工具,比如下面的提到的工具来管理容器网络。
|
||||
|
||||
容器网络上的创新使得容器可以链接到主机上的其他容器。这使开发人员可以在一个主机上部署一个容器运行一个应用,并过渡到整个测试环境,然后到一个生产环境,使应用可以持续集成,敏捷性和快速部署。
|
||||
|
||||
容器网络工具有助于实现容器网络的可扩展性,主要是通过:
|
||||
|
||||
1) 使复杂的,多主机系统被分发到多个容器主机。
|
||||
|
||||
2) 允许跨越多个公有云和私有云平台上的主机的容器系统的业务流程。
|
||||
|
||||

|
||||
|
||||
> John Willis speaking 在 Open Networking Summit 2016.
|
||||
|
||||
获取更多信息,查看 [Docker 网络教程][5] , 由 Brent Salisbury and John Willis 在最近的 [Open Networking Summit (ONS)][6]发布的. 更多关于ONS 的KeyNote可以 [这里][7]找到.
|
||||
|
||||
你应该知道的容器网络工具和项目包括下述:
|
||||
|
||||
[Calico][8] -- Calico 项目 (源自Metaswitch][9])利用边界网关协议(BGP)和集成的云编排系统来保证虚拟机和容器之间的IP通信安全。
|
||||
|
||||
[Flannel][10] -- Flannel (之前叫 rudder) 源自[CoreOS][11] 提供一个覆盖网络,可以作为一个现有的SDN解决方案的替代品。
|
||||
|
||||
[Weaveworks][12] -- Weaveworks 项目管理容器的工具包括 [Weave Net][13], Weave Scope, Weave Flux. Weave Net 是一种用于构建和部署Docker容器的网络工具。
|
||||
|
||||
[Canal][14] -- 就在本周, CoreOS 和Tigera 宣布了新项目 Canal 的信息 .根据声明,Canal项目旨在结合Calico和Flannel, “构造网络安全策略包括网络架构,云管理平台 ”.
|
||||
|
||||
你可以通过Linux基金会在EDX的大规模开放在线课程上的免费“云基础设施技术”课程来了解更多关于容器管理,软件定义网络,和其他下一代云技术。[课程注册目前已经开放][15], 课程内容将于6月开放。
|
||||
|
||||
------
|
||||
|
||||
via: https://www.linux.com/news/4-container-networking-tools-know
|
||||
|
||||
作者:[AMBER ANKERHOLZ][a]
|
||||
译者:[Bestony](https://github.com/Bestony)
|
||||
校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: https://www.linux.com/users/aankerholz
|
||||
[1]: https://www.linux.com/licenses/category/creative-commons-zero
|
||||
[2]: https://www.linux.com/news/5-next-gen-cloud-technologies-you-should-know
|
||||
[3]: http://www.enterprisenetworkingplanet.com/datacenter/datacenter-blog/container-networking-challenges-for-the-enterprise.html
|
||||
[4]: https://docs.docker.com/engine/userguide/networking/dockernetworks/
|
||||
[5]: https://youtu.be/Le0bEg4taak
|
||||
[6]: http://events.linuxfoundation.org/events/open-networking-summit
|
||||
[7]: https://www.linux.com/watch-videos-from-ons2016
|
||||
[8]: https://www.projectcalico.org/
|
||||
[9]: http://www.metaswitch.com/cloud-network-virtualization
|
||||
[10]: https://coreos.com/blog/introducing-rudder/
|
||||
[11]: https://coreos.com/
|
||||
[12]: https://www.weave.works/
|
||||
[13]: https://www.weave.works/products/weave-net/
|
||||
[14]: https://github.com/tigera/canal
|
||||
[15]: https://training.linuxfoundation.org/linux-courses/system-administration-training/introduction-to-cloud-infrastructure-technologies?utm_source=linuxcom&utm_medium=article&utm_campaign=cloud%20mooc%20article%201
|
@ -0,0 +1,145 @@
|
||||
如何使用 SSHFS 通过 SSH 挂载远程的 Linux 文件系统或者目录
|
||||
============================
|
||||
|
||||
写这篇文章的主要目的就是提供一步一步的指导,关于如何使用 SSHFS 通过 SSH 挂载远程的 Linux 文件系统或者目录。
|
||||
|
||||
这篇文章对于那些无论什么目的,希望在他们本地的系统中挂载远程的文件系统的用户或者系统管理员有帮助。我们实际上通过我们 Linux 系统中的一个安装了 SSHFS 客户端进行测试,并且成功的挂载了远程的文件系统。
|
||||
|
||||
在我们进一步安装之前,让我们了解一下 SSHFS 的相关内容,以及它是如何工作的。
|
||||
|
||||

|
||||
>Sshfs 挂载远程的 Linux 文件系统或者目录
|
||||
|
||||
### 什么是 SSHFS?
|
||||
|
||||
SSHFS(Secure SHell FileSystem)是一个客户端,让我们挂载远程的文件系统并且在本地机器上通过 SSH 文件传输协议(SFTP)和远程的目录和文件进行交互。
|
||||
|
||||
SFTP 是一种通过安全 shell 协议提供文件访问、文件传输和文件管理特性的安全文件传输协议。因为 SSH 在网络中从一台电脑到另一台电脑传输文件的时候使用加密,并且 SSHFS 内置在 FUSE(用户空间的文件系统)内核模块,允许任何非特权用户在不修改内核代码的情况下创建他们自己的文件系统。
|
||||
|
||||
在这篇文章中,我们将会向你展示在任意 Linux 发行版上如何安装并且使用 SSHFS 客户端,在本地 Linux 机器上挂载远程的 Linux 文件系统或者目录。
|
||||
|
||||
#### 步骤1:在 Linux 系统上安装 SSHFS
|
||||
|
||||
默认情况下,sshfs 包不存在所有的主流 Linux 发行版中,你需要在你的 Linux 系统中启用 [epel 仓库][1],在 Yum 命令行及其依赖的帮助下安装 SSHFS。
|
||||
|
||||
```
|
||||
# yum install sshfs
|
||||
# dnf install sshfs 【在 Fedora 22+ 发行版上】
|
||||
$ sudo apt-get install sshfs 【基于 Debian/Ubuntu 的系统】
|
||||
```
|
||||
|
||||
#### 步骤2:创建 SSHFS 挂载目录
|
||||
|
||||
一旦你安装 SSHFS 包之后,你需要创建一个挂载点目录,在这儿你将要挂载你的远程文件系统。例如,我们在 /mnt/tecmint 下创建挂载目录。
|
||||
|
||||
```
|
||||
# mkdir /mnt/tecmint
|
||||
$ sudo mkdir /mnt/tecmint 【基于 Debian/Ubuntu 的系统】
|
||||
```
|
||||
|
||||
### 步骤 3:使用 SSHFS 挂载远程的文件系统
|
||||
|
||||
一旦你已经创建你的挂载点目录之后,现在使用root用户运行下面的命令行,在 /mnt/tecmint 目录下挂载远程的文件系统。视你的情况挂载目录可以是任何目录。
|
||||
|
||||
下面的命令行将会在本地的 /mnt/tecmint 目录下挂载一个叫 /home/tecmint 的远程目录。(不要忘了使用你的 IP 地址和挂载点替换 x.x.x.x)。
|
||||
|
||||
```
|
||||
# sshfs tecmint@x.x.x.x:/home/tecmint/ /mnt/tecmint
|
||||
$ sudo sshfs -o allow_other tecmint@x.x.x.x:/home/tecmint/ /mnt/tecmint 【基于 Debian/Ubuntu 的系统】
|
||||
```
|
||||
|
||||
如果你的 Linux 服务器配置为基于 SSH 密钥授权,那么你将需要使用如图下面的命令行指定你的公共密钥的路径。
|
||||
|
||||
```
|
||||
# sshfs -o IdentityFile=~/.ssh/id_rsa tecmint@x.x.x.x:/home/tecmint/ /mnt/tecmint
|
||||
$ sudo sshfs -o allow_other,IdentityFile=~/.ssh/id_rsa tecmint@x.x.x.x:/home/tecmint/ /mnt/tecmint 【基于 Debian/Ubuntu 的系统】
|
||||
```
|
||||
|
||||
#### 步骤 4:验证远程的文件系统挂载完成
|
||||
|
||||
如果你已经成功的运行了上面的命令并且没有任何错误,你将会看到挂载在 /mnt/tecmint 目录下的远程的文件和目录的列表
|
||||
|
||||
```
|
||||
# cd /mnt/tecmint
|
||||
# ls
|
||||
[root@ tecmint]# ls
|
||||
12345.jpg ffmpeg-php-0.6.0.tbz2 Linux news-closeup.xsl s3.jpg
|
||||
cmslogs gmd-latest.sql.tar.bz2 Malware newsletter1.html sshdallow
|
||||
epel-release-6-5.noarch.rpm json-1.2.1 movies_list.php pollbeta.sql
|
||||
ffmpeg-php-0.6.0 json-1.2.1.tgz my_next_artical_v2.php pollbeta.tar.bz2
|
||||
```
|
||||
|
||||
#### 步骤 5:使用 df -hT 命令检查挂载点
|
||||
|
||||
如果你运行 df -hT命令,你将会看到远程文件系统的挂载点
|
||||
|
||||
```
|
||||
# df -hT
|
||||
```
|
||||
|
||||
样本输出
|
||||
|
||||
```
|
||||
Filesystem Type Size Used Avail Use% Mounted on
|
||||
udev devtmpfs 730M 0 730M 0% /dev
|
||||
tmpfs tmpfs 150M 4.9M 145M 4% /run
|
||||
/dev/sda1 ext4 31G 5.5G 24G 19% /
|
||||
tmpfs tmpfs 749M 216K 748M 1% /dev/shm
|
||||
tmpfs tmpfs 5.0M 4.0K 5.0M 1% /run/lock
|
||||
tmpfs tmpfs 749M 0 749M 0% /sys/fs/cgroup
|
||||
tmpfs tmpfs 150M 44K 150M 1% /run/user/1000
|
||||
tecmint@192.168.0.102:/home/tecmint fuse.sshfs 324G 55G 253G 18% /mnt/tecmint
|
||||
```
|
||||
|
||||
#### 步骤 6:永久挂载远程文件系统
|
||||
|
||||
为了永久的挂载远程的文件系统,你需要修改一个叫 /etc/fstab 的文件。照着做,使用你最喜欢的编辑器打开文件。
|
||||
|
||||
```
|
||||
# vi /etc/fstab
|
||||
$ sudo vi /etc/fstab 【基于 Debian/Ubuntu 的系统】
|
||||
```
|
||||
|
||||
移动文件的底部并且添加下面的一行,保存文件并退出。下面条目表示使用默认的设置挂载远程的文件系统。
|
||||
|
||||
```
|
||||
sshfs#tecmint@x.x.x.x:/home/tecmint/ /mnt/tecmint fuse.sshfs defaults 0 0
|
||||
```
|
||||
|
||||
确保服务器和自动挂载的文件系统在系统重启之后允许 [SSH 无密码登录][2]。
|
||||
|
||||
```
|
||||
sshfs#tecmint@x.x.x.x:/home/tecmint/ /mnt/tecmint fuse.sshfs IdentityFile=~/.ssh/id_rsa defaults 0 0
|
||||
```
|
||||
|
||||
接下来,你需要更新 fstab 文件使修改生效。
|
||||
|
||||
```
|
||||
# mount -a
|
||||
$ sudo mount -a 【基于 Debian/Ubuntu 的系统】
|
||||
```
|
||||
|
||||
#### 步骤 7:卸载远程的文件系统
|
||||
|
||||
为了卸载远程的文件系统,只需要发出以下的命令即可。
|
||||
|
||||
```
|
||||
# umount /mnt/tecmint
|
||||
```
|
||||
|
||||
目前为止就这样了,如果你在挂载远程文件系统的时候遇到任何问题或者需要任何帮助,请通过评论联系我们,如果你感觉这篇文章非常有用,请分享给你的朋友们。
|
||||
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
via: http://www.tecmint.com/sshfs-mount-remote-linux-filesystem-directory-using-ssh/?utm_source=feedburner&utm_medium=feed&utm_campaign=Feed%3A+tecmint+%28Tecmint%3A+Linux+Howto%27s+Guide%29
|
||||
|
||||
作者:[Ravi Saive][a]
|
||||
译者:[yangmingming](https://github.com/yangmingming)
|
||||
校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: http://www.tecmint.com/author/admin/
|
||||
[1]: http://www.tecmint.com/how-to-enable-epel-repository-for-rhel-centos-6-5/
|
||||
[2]: http://www.tecmint.com/ssh-passwordless-login-using-ssh-keygen-in-5-easy-steps/
|
Loading…
Reference in New Issue
Block a user