mirror of
https://github.com/LCTT/TranslateProject.git
synced 2025-01-04 22:00:34 +08:00
commit
3be29fc7ca
@ -1,87 +0,0 @@
|
||||
[#]: subject: "13 examples of how DevOps facilitated transformation in 2021"
|
||||
[#]: via: "https://opensource.com/article/22/1/devops-transformation"
|
||||
[#]: author: "Will Kelly https://opensource.com/users/willkelly"
|
||||
[#]: collector: "lujun9972"
|
||||
[#]: translator: "CN-QUAN "
|
||||
[#]: reviewer: " "
|
||||
[#]: publisher: " "
|
||||
[#]: url: " "
|
||||
|
||||
13 examples of how DevOps facilitated transformation in 2021
|
||||
======
|
||||
In 2021, Opensource.com's top DevOps articles focused on tools, best
|
||||
practices, and the most crucial part: transformation.
|
||||
![Tips and gears turning][1]
|
||||
|
||||
2021 has been an exciting year for DevOps as teams continue to adjust to remote and hybrid working models. The DevOps articles that made our most-read list this year show how our community focuses on tools, innovation, best practices, and transformation.
|
||||
|
||||
### DevOps tools and innovation
|
||||
|
||||
Tools of the trade continue to rank as a top read for Opensource.com readers. [Nimisha Mukherjee][2], an engineering manager with Red Hat, wrote [13 open source tools for developers][3]. She breaks tools down by _Inner loop_, the most common tasks developers do, and _Outer loop_, where the developers' code goes through continuous integration and delivery (CI/CD) for deployment to production.
|
||||
|
||||
Implementing a DevOps toolchain also ranked high on our reader's interests. A first-time contributor, [Tereza Denkova][4], Marketing Associate at Accedia, an IT professional services company, wrote [How to implement a DevOps toolchain][5] and eloquently tied it to innovation.
|
||||
|
||||
### DevOps practices
|
||||
|
||||
[Daniel Oh][6], a major champion for Opensource.com and a prolific content creator in his own right, wrote [3 serverless strategies to look for in 2021][7], giving an overview of how serverless application development and deployment approaches are accelerating the adoption of DevApps practices today.
|
||||
|
||||
[Evan "Hippy" Slatis][8] offers strategies for aligning deployment images and descriptors in his article [Solve the repository impedance mismatch in CI/CD][9]. He's a senior consultant for Red Hat, and the methodical approach he takes in his article testifies to his industry experience. Also, check out his article entitled [Processing modular and dynamic configuration files in shell][10].
|
||||
|
||||
In my article [A DevOps guide to documentation][11], I made a case for documentation to become part of the DevOps discussion. I got some insightful comments from readers that I'm in the process of following up on for a future article.
|
||||
|
||||
### DevOps transformation
|
||||
|
||||
We sometimes don't give DevOps credit for its ability to adapt to organizational needs. It's essential to understand the potential impact of other forms of Ops that may supplement or augment DevOps now or in the future. [Bryant Son][12], a self-described Octocat, makes the case that GitOps is an evolved form of DevOps in [GitOps vs. DevOps: What's the difference?][13]
|
||||
|
||||
[Mike Calizo][14], a Red Hat solutions architect based in Auckland, New Zealand, wrote [How to adopt DevSecOps successfully][15]. His experience as a solutions architect shines through in this article. He explains some of the adoption and security challenges you might face in your move to DevSecOps.
|
||||
|
||||
I wrote a series of articles about DevOps to DevSecOps transformation that made the list. Here they are:
|
||||
|
||||
* [Launching a DevOps to DevSecOps transformation][16]
|
||||
* [3 phases to start a DevSecOps transformation][17]
|
||||
* [Following a DevSecOps maturity model][18]
|
||||
* [3 more phases of DevSecOps transformation][19]
|
||||
* [4 steps to make DevSecOps adoption a team effort][20]
|
||||
|
||||
|
||||
|
||||
### 2022 and the future of DevOps
|
||||
|
||||
Seeing the DevOps articles that made the most-read list for 2021 speaks to an even more interesting 2022 for DevOps as organizations continue to master their tools, improve their strategies, and continue their [digital transformation][21] to compete effectively in an ever-changing marketplace.
|
||||
|
||||
Thank you to everyone who read our DevOps articles, liked them, and sent us comments via the site and social media.
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://opensource.com/article/22/1/devops-transformation
|
||||
|
||||
作者:[Will Kelly][a]
|
||||
选题:[lujun9972][b]
|
||||
译者:[译者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/willkelly
|
||||
[b]: https://github.com/lujun9972
|
||||
[1]: https://opensource.com/sites/default/files/styles/image-full-size/public/lead-images/gears_devops_learn_troubleshooting_lightbulb_tips_520.png?itok=HcN38NOk (Tips and gears turning)
|
||||
[2]: https://opensource.com/users/nimisha
|
||||
[3]: https://opensource.com/article/21/6/open-source-developer-tools
|
||||
[4]: https://opensource.com/users/tereza-denkova
|
||||
[5]: https://opensource.com/article/21/1/devops-tool-chain
|
||||
[6]: https://opensource.com/users/daniel-oh
|
||||
[7]: https://opensource.com/article/21/1/devapps-strategies
|
||||
[8]: https://opensource.com/users/hippyod
|
||||
[9]: https://opensource.com/article/21/8/impedance-mismatch-cicd
|
||||
[10]: https://opensource.com/article/21/5/processing-configuration-files-shell
|
||||
[11]: https://opensource.com/article/21/3/devops-documentation
|
||||
[12]: https://opensource.com/users/brson
|
||||
[13]: http://opensource.com/article/21/3/gitops
|
||||
[14]: https://opensource.com/users/mcalizo
|
||||
[15]: https://opensource.com/article/21/2/devsecops
|
||||
[16]: http://opensource.com/article/21/10/devops-to-devsecops
|
||||
[17]: https://opensource.com/article/21/10/first-phases-devsecops-transformation
|
||||
[18]: https://opensource.com/article/21/10/devsecops-maturity-model
|
||||
[19]: https://opensource.com/article/21/10/last-phases-devsecops-transformation
|
||||
[20]: https://opensource.com/article/21/10/devsecops-team-effort
|
||||
[21]: https://enterprisersproject.com/what-is-digital-transformation
|
@ -1,111 +0,0 @@
|
||||
[#]: subject: "Listen to your favorite music on Linux with Juk"
|
||||
[#]: via: "https://opensource.com/article/22/2/listen-music-linux-juk-kde"
|
||||
[#]: author: "Seth Kenlon https://opensource.com/users/seth"
|
||||
[#]: collector: "lujun9972"
|
||||
[#]: translator: "geekpi"
|
||||
[#]: reviewer: " "
|
||||
[#]: publisher: " "
|
||||
[#]: url: " "
|
||||
|
||||
Listen to your favorite music on Linux with Juk
|
||||
======
|
||||
Juk is the default open source music player for the KDE Plasma Desktop
|
||||
on Linux. Create playlists, use tagging, and play your favorite tunes on
|
||||
Linux.
|
||||
![Headphones on a yellow backdrop][1]
|
||||
|
||||
The KDE project doesn't just provide a famous desktop, it generates a lot of software, from tools for [video editng][2], [photography][3], and [illustration][4], to graphing calculators, email, and office work. Those are all productivity tools, but KDE is also good for relaxing. It has games and media players, and the music player I use is known simply as [Juk][5].
|
||||
|
||||
### Install Juk on Linux
|
||||
|
||||
As long as your Linux distribution offers KDE packages, you can install Juk using your package manager.
|
||||
|
||||
On Fedora, Mageia, and similar:
|
||||
|
||||
|
||||
```
|
||||
`$ sudo dnf install juk`
|
||||
```
|
||||
|
||||
On Elementary, Linux Mint, and other Debian-based distributions:
|
||||
|
||||
|
||||
```
|
||||
`$ sudo apt install juk`
|
||||
```
|
||||
|
||||
### Using Juk
|
||||
|
||||
When you first launch Juk, you're asked what directory or directories you want to use as the source of your music collection. Select the folders you want Juk to look in for music, and optionally exclude any subdirectories you want Juk to ignore.
|
||||
|
||||
![Adding music to Juk][6]
|
||||
|
||||
(Seth Kenlon, [CC BY-SA 4.0][7])
|
||||
|
||||
Depending on how much music you have, it may take a few moments for Juk to parse the filesystem and metadata. Once it has, the usual Juk window appears with all of your music in a central collection called **Collection List**.
|
||||
|
||||
![Juk music player][8]
|
||||
|
||||
(Seth Kenlon, [CC BY-SA 4.0][7])
|
||||
|
||||
In the top search bar, you can search for any string in any field. Double-click on the song to begin playback.
|
||||
|
||||
Juk defaults to continuous play, meaning that after it's finished playing your selection, it proceeds to the next song in the Collection List, even if you've filtered your list down to just one song. This keeps the music going no matter what, like a true Jukebox.
|
||||
|
||||
Personally, I prefer to listen to complete albums, with just enough of a break in between to meander into the kitchen to top off my coffee, so I use playlists.
|
||||
|
||||
### Playlists in Juk
|
||||
|
||||
A playlist in Juk can contain anything in your Collection List. Juk plays through the playlist once, and then stops.
|
||||
|
||||
To create a playlist, right-click in the left playlist column and select **New** from the contextual menu that appears. You can create an empty playlist or a playlist from a specific folder on your hard drive.
|
||||
|
||||
![Creating a new playlist][9]
|
||||
|
||||
(Seth Kenlon, [CC BY-SA 4.0][7])
|
||||
|
||||
### Automatic playlists
|
||||
|
||||
You can also create a special playlist bound to a specific search, which is useful for artists whose music you frequently purchase and add to your collection. With a search playlist, their new music gets added to their playlist without your manual intervention.
|
||||
|
||||
### Tagging
|
||||
|
||||
Let's face it, music players are pretty easy to come by, and they mostly all do the same thing. Juk, however, adds an important feature. It gives you the ability to modify metadata tags.
|
||||
|
||||
![Metadata editor][10]
|
||||
|
||||
(Seth Kenlon, [CC BY-SA 4.0][7])
|
||||
|
||||
A lot of music is tagged inconsistently, incompletely, or not at all, so it's a luxury to be able to correct them as you discover them when they come up in the play queue.
|
||||
|
||||
There's also a tag guesser feature, which tries to parse filenames and tag songs accordingly.
|
||||
|
||||
### The obvious choice
|
||||
|
||||
Juk is the easy and obvious choice when you're looking for a music player on KDE. There are, of course, lots of other very good choices, as Opensource.com's resident audiophile [Chris Hermansen][11] details in his [3 open source music players][12] article, but sometimes you just want to use whatever comes easiest to you. Juk is both intuitive to use and excellent at what it does. How lucky it is that it's the default player on the KDE Plasma Desktop.
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://opensource.com/article/22/2/listen-music-linux-juk-kde
|
||||
|
||||
作者:[Seth Kenlon][a]
|
||||
选题:[lujun9972][b]
|
||||
译者:[译者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/seth
|
||||
[b]: https://github.com/lujun9972
|
||||
[1]: https://opensource.com/sites/default/files/styles/image-full-size/public/lead-images/c-d-x-pdx_a_82obo-unsplash.jpg?itok=2txWDP31 (Headphones on a yellow backdrop)
|
||||
[2]: https://opensource.com/article/21/12/kdenlive-linux-creative-app
|
||||
[3]: https://opensource.com/life/16/5/how-use-digikam-photo-management
|
||||
[4]: https://opensource.com/article/21/12/krita-digital-paint
|
||||
[5]: https://juk.kde.org/
|
||||
[6]: https://opensource.com/sites/default/files/juk-import.jpg (Adding music to Juk)
|
||||
[7]: https://creativecommons.org/licenses/by-sa/4.0/
|
||||
[8]: https://opensource.com/sites/default/files/juk-player.jpg (Juk music player)
|
||||
[9]: https://opensource.com/sites/default/files/juk-playlist-new.jpg (Creating a new playlist)
|
||||
[10]: https://opensource.com/sites/default/files/juk-tagger.png (Metadata editor)
|
||||
[11]: https://opensource.com/users/clhermansen
|
||||
[12]: https://opensource.com/article/17/1/open-source-music-players
|
@ -1,69 +0,0 @@
|
||||
[#]: subject: "How to screen share with the Linux KDE Plasma Desktop"
|
||||
[#]: via: "https://opensource.com/article/22/2/screen-share-linux-kde"
|
||||
[#]: author: "Seth Kenlon https://opensource.com/users/seth"
|
||||
[#]: collector: "lujun9972"
|
||||
[#]: translator: "geekpi"
|
||||
[#]: reviewer: " "
|
||||
[#]: publisher: " "
|
||||
[#]: url: " "
|
||||
|
||||
How to screen share with the Linux KDE Plasma Desktop
|
||||
======
|
||||
The combination of krfb and krdc are valuable tools for making remote
|
||||
Linux support frustration-free.
|
||||
![Person using a laptop][1]
|
||||
|
||||
If you've ever done remote support professionally or out of familial obligation, then you've been on a call where solving problems are only secondary to the impossible task of visualizing what's actually on your user's screen. How many times have you described complex desktop tasks only to later realize that your user hasn't even turned their computer on yet? Support is important, but the frustration is real, and it's a shared experience for both the people in need of support and the people who graciously try to provide it. I believe it's important for people to perform tasks themselves as a way to learn a new skill, but there's also an argument for observing the way it's meant to be done by an expert. That's what screen sharing is for, and the KDE Plasma Desktop has it built-in.
|
||||
|
||||
### Network safety
|
||||
|
||||
The Plasma Desktop uses a point-to-point invitation model for screen sharing. The user launches an application, which starts a Virtual Network Connection (VNC) server, at which point the support person is able to view and even control the computer remotely. If it sounds like this is potentially unsafe, that's because it can be, but for the intervention of firewalls. If you're the support person for somebody who's not on the same network as you, then you must set up a safe pathway from your network to your user's network before screen sharing can work. Ideally, you would do this before emergency strikes:
|
||||
|
||||
1. [Configure the user's router][2] to route the VNC port (5900 by default, but you can use any port you like) to their computer.
|
||||
2. [Open a service in the user's local firewall][3] to permit VNC traffic (on the port you specified in the first step).
|
||||
|
||||
|
||||
|
||||
### Remote invitation
|
||||
|
||||
To start a screen sharing session, the user must start the **krfb** (that stands for _KDE remote frame buffer_) application. This starts a VNC server, and creates a temporary password.
|
||||
|
||||
![krfb][4]
|
||||
|
||||
(Seth Kenlon, [CC BY-SA 4.0][5])
|
||||
|
||||
The default port **krfb** uses is 5900, but you can change that if you need to in **krfb** settings. This is something you probably would want to do in advance, however, so you can avoid trying to explain to your user how to change a protocol's port.
|
||||
|
||||
### Viewing and controlling
|
||||
|
||||
While this window is open, you can log in over VNC using your favorite VNC client. KDE includes the **krdc** (that stands for _KDE remote desktop client_) application. On the support computer, launch it and provide it with the destination IP address. When you're prompted for a password, enter the one showing in the **krfb** session you're connecting to.
|
||||
|
||||
![Screen sharing with krdc][6]
|
||||
|
||||
(Seth Kenlon, [CC BY-SA 4.0][5])
|
||||
|
||||
Once you've connected, you can view your user's screen, and you can guide them as they follow your instructions. If they're having trouble following your directions, then you can take control of their mouse and demonstrate how something is done. By default, **krfb** (that's the application _they're_ running) asks them for permission before relinquishing control to you.
|
||||
|
||||
### Help is on the way
|
||||
|
||||
Having the ability to see what your user sees can speed up troubleshooting and lessen frustration on both sides of a support call. Provided that you set up the network for your support in advance, the combination of **krfb** and **krdc** are valuable tools for the Linux professional guiding new users through their journey of Linux desktop discovery.
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://opensource.com/article/22/2/screen-share-linux-kde
|
||||
|
||||
作者:[Seth Kenlon][a]
|
||||
选题:[lujun9972][b]
|
||||
译者:[译者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/seth
|
||||
[b]: https://github.com/lujun9972
|
||||
[1]: https://opensource.com/sites/default/files/styles/image-full-size/public/lead-images/laptop_screen_desk_work_chat_text.png?itok=UXqIDRDD (Person using a laptop)
|
||||
[2]: https://opensource.com/article/20/9/firewall
|
||||
[3]: https://opensource.com/article/19/7/make-linux-stronger-firewalls
|
||||
[4]: https://opensource.com/sites/default/files/kde-krfb.jpg (krfb)
|
||||
[5]: https://creativecommons.org/licenses/by-sa/4.0/
|
||||
[6]: https://opensource.com/sites/default/files/kde-krdc-session.jpg (Screen sharing with krdc)
|
@ -2,7 +2,7 @@
|
||||
[#]: via: "https://opensource.com/article/22/2/sticky-notes-linux-kde"
|
||||
[#]: author: "Seth Kenlon https://opensource.com/users/seth"
|
||||
[#]: collector: "lujun9972"
|
||||
[#]: translator: " "
|
||||
[#]: translator: "geekpi"
|
||||
[#]: reviewer: " "
|
||||
[#]: publisher: " "
|
||||
[#]: url: " "
|
||||
|
@ -0,0 +1,107 @@
|
||||
[#]: subject: "4 Vim features to use to improve productivity"
|
||||
[#]: via: "https://opensource.com/article/22/3/vim-features-productivity"
|
||||
[#]: author: "Hunter Coleman https://opensource.com/users/hunterc"
|
||||
[#]: collector: "lujun9972"
|
||||
[#]: translator: "geekpi"
|
||||
[#]: reviewer: " "
|
||||
[#]: publisher: " "
|
||||
[#]: url: " "
|
||||
|
||||
4 Vim features to use to improve productivity
|
||||
======
|
||||
Vim has so many tricks up its sleeve that even people who have used it
|
||||
for years can still learn new things.
|
||||
![Person using a laptop][1]
|
||||
|
||||
There's always Vim. Vim is one of the most popular text editors in use today. This is in large part because it's available everywhere. When you SSH into another system, you may not find [Emacs][2], [Nano][3], or [VSCodium][4] installed, but you can rest assured that Vim is there for you.
|
||||
|
||||
In this article, I cover some intermediate things that you can do with Vim to speed up your workflow and generally make your day easier. This article assumes that you have used Vim before, already know the editor's basics, and are looking to take your Vim skills up a notch. Vim is full of useful tricks, and no one ever truly masters it, but the five tips in this article can boost your skills and, hopefully, make you fall just a bit more in love with one of the most popular and loved text editors.
|
||||
|
||||
### Vim bookmarks
|
||||
|
||||
Vim provides an easy way to add bookmarks to your text. Suppose that you are editing a large file, and your current edit session requires you to jump back and forth between two sections of text in different locations within the file.
|
||||
|
||||
First, you set a bookmark to your current location by typing `m` (for mark) and then give it a name. For example, if the file I'm editing has a list of names in it that I will want to jump back to later, I could use `mn` (n for names) to add a bookmark to that part of the file.
|
||||
|
||||
Later, I have two options when editing another part of the file and wish to jump back to that list of names. I can type ``n` (backtick-n) to go to the bookmark's location, or I can type `'n` (single quote-n) to go to the beginning of the line that the bookmark is on.
|
||||
|
||||
When I no longer need the bookmark, I can delete it with `:delmarks n`. And `:marks` shows me all of my bookmarks.
|
||||
|
||||
Notice above that I use a lowercase letter to name my bookmark. This was deliberate. You use lowercase letters for local bookmarks and capital letters to make a bookmark global across several files.
|
||||
|
||||
### Vim user-defined abbreviations
|
||||
|
||||
If the text you are working on has a long word or phrase that appears several times, then typing it out in full each time could quickly grow irritating. Luckily, Vim provides a simple way to create abbreviations.
|
||||
|
||||
To set a user-defined abbreviation for _Acme Painted Fake Roadways, Inc._ to _apfr_, you type `:ab apfr Acme Painted Fake Roadways, Inc.` Now, when in edit mode, and you type the letters _apfr_ followed by a space, _apfr_ gets converted to _Acme Painted Fake Roadways, Inc._
|
||||
|
||||
Any abbreviations you set with `:ab` get lost when you close your Vim session. If you want to unset the abbreviation before then, you can simply type `:una apfr`.
|
||||
|
||||
### Vim autocomplete
|
||||
|
||||
Many people don't realize that Vim comes with an autocomplete feature. If you are typing a long word you used before in the file, this is a handy tool.
|
||||
|
||||
Suppose you are writing an article that uses the word _Antarctica_ multiple times. After you have used it once, the next time you can type just the first few letters. For example, you type _Ant_ and then use **Ctrl+P**. Vim either completes the word (if there is only one option that it could be) or provides you with a list of words that you can select with the arrow keys—keep typing to narrow down the search further and use the **Tab** key to select the word.
|
||||
|
||||
### Vim range selection
|
||||
|
||||
With Vim, you can easily perform an action on a range of lines in your file. You indicate ranges by a starting line number, a comma, and an ending line number (inclusive). In addition to literal line numbers, you can use a period (`.`) to represent the current line, a dollar sign (`$`) to represent the last line in the file buffer, and a percent sign (`%`) to represent the entire file.
|
||||
|
||||
Here are a few examples for clarification.
|
||||
|
||||
If you want to delete lines 2 through 10, then type (in command mode):
|
||||
|
||||
|
||||
```
|
||||
`:2,10d`
|
||||
```
|
||||
|
||||
To delete every line from line 25 to the end of the file:
|
||||
|
||||
|
||||
```
|
||||
`:25,$d`
|
||||
```
|
||||
|
||||
You can delete every line with:
|
||||
|
||||
|
||||
```
|
||||
`:%d`
|
||||
```
|
||||
|
||||
To copy (or transfer) lines 5 through 10 to just after line 15:
|
||||
|
||||
|
||||
```
|
||||
`:5,10t 15`
|
||||
```
|
||||
|
||||
To move lines 5 through 10 to just after line 15 (instead of copying):
|
||||
|
||||
|
||||
```
|
||||
`:5,10m 15`
|
||||
```
|
||||
|
||||
### Vim for productivity
|
||||
|
||||
I hope this article has taught you something new about the Vim text editor. Vim has so many tricks up its sleeve that even people who have used it for years can still learn new things. There is always something new and useful to learn.
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://opensource.com/article/22/3/vim-features-productivity
|
||||
|
||||
作者:[Hunter Coleman][a]
|
||||
选题:[lujun9972][b]
|
||||
译者:[译者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/hunterc
|
||||
[b]: https://github.com/lujun9972
|
||||
[1]: https://opensource.com/sites/default/files/styles/image-full-size/public/lead-images/laptop_screen_desk_work_chat_text.png?itok=UXqIDRDD (Person using a laptop)
|
||||
[2]: https://opensource.com/article/20/3/getting-started-emacs
|
||||
[3]: https://opensource.com/article/20/12/gnu-nano
|
||||
[4]: https://opensource.com/article/20/6/open-source-alternatives-vs-code
|
@ -0,0 +1,268 @@
|
||||
[#]: subject: "Boost your home network with DNS caching on the edge"
|
||||
[#]: via: "https://opensource.com/article/22/3/dns-caching-edge"
|
||||
[#]: author: "Seth Kenlon https://opensource.com/users/seth"
|
||||
[#]: collector: "lujun9972"
|
||||
[#]: translator: " "
|
||||
[#]: reviewer: " "
|
||||
[#]: publisher: " "
|
||||
[#]: url: " "
|
||||
|
||||
Boost your home network with DNS caching on the edge
|
||||
======
|
||||
Create your own edge by running a DNS caching service on your home or
|
||||
business network.
|
||||
![Mesh networking connected dots][1]
|
||||
|
||||
If you've been hearing a lot of talk about "the cloud" over the past several years, then you may also have heard rumblings about something called "the edge."
|
||||
|
||||
The term _edge computing_ reflects the recognition that the cloud has boundaries. To reach those boundaries, your data has to connect with one of the physical datacenters powering the cloud. Getting data from a user's computer to a cluster of servers might be quick in some settings, but it depends heavily on geographic location and network infrastructure. The cloud itself can be as fast and powerful as possible, but it can't do much to offset the time required for the roundtrip your data has to make.
|
||||
|
||||
**[ What's the latest in edge? See [Red Hat's news roundup][2] from Mobile World Congress 2022. ]**
|
||||
|
||||
The answer is to use the edge of the boundaries of regional networks and the cloud. When initial services or computation happen on servers at the edge, it speeds up a user's interactions with the cloud.
|
||||
|
||||
By the same principle, you can create your own edge by running some services on your home server to minimize roundtrip lag times. Don't let the special terminology intimidate you. Edge computing can be as simple as an IoT device or running a server connected to [federated services][3].
|
||||
|
||||
One particularly useful and easy change you can make to your home or business network to give it a boost is running a DNS caching service.
|
||||
|
||||
### What is DNS?
|
||||
|
||||
The Domain Name System (DNS) is what enables us to translate the IP addresses of servers, whether they're in the cloud or just across town, to friendly website names like `opensource.com`.
|
||||
|
||||
Behind every domain name is a number—names are simply a convenience for humans, who are more likely to remember a few words than a string of numerals. When you type `example.com` into a web browser, your web browser silently sends a request over port 53 to a DNS server to cross-reference the name `example.com` with its registry, then sends back the last known IP address assigned to that name.
|
||||
|
||||
That's one roundtrip from your computer to the internet.
|
||||
|
||||
Armed with the correct number, your web browser makes a second request, this time with the number instead of the name, directly to your destination.
|
||||
|
||||
That's another roundtrip.
|
||||
|
||||
To make matters worse, your computer (depending on your configuration) may also be sending requests to DNS servers for named devices on your local network.
|
||||
|
||||
You can cut out all of this extra traffic by using a local cache. With a DNS caching service running on your network, once any one device on your network obtains a number assigned to a website, that number is stored locally, so no request from your network need ask for that number again.
|
||||
|
||||
As a bonus, running your own DNS caching server also enables you to block ads and generally take control of how any device on your network interacts with some of the low-level technologies of the internet.
|
||||
|
||||
### Install Dnsmasq on Linux
|
||||
|
||||
Install Dnsmasq using your package manager.
|
||||
|
||||
On Fedora, CentOS, Mageia, and similar:
|
||||
|
||||
|
||||
```
|
||||
$ sudo dnf install dnsmasq dnsmasq-utils
|
||||
```
|
||||
|
||||
On Debian and Debian-based systems, use `apt` instead of `dnf`.
|
||||
|
||||
### Configure Dnsmasq
|
||||
|
||||
There are many options in Dnsmasq's default configuration file.
|
||||
|
||||
It's located at `/etc/dnsmasq.conf` by default, and it's well commented, so you can read through it and choose what you prefer for your network.
|
||||
|
||||
Here are some of the options I like.
|
||||
|
||||
Keep your local domains local:
|
||||
|
||||
|
||||
```
|
||||
|
||||
|
||||
# Never forward plain names (without a dot or domain part)
|
||||
domain-needed
|
||||
# Never forward addresses in the non-routed address spaces
|
||||
bogus-priv
|
||||
|
||||
```
|
||||
|
||||
Ignore content from common ad sites. This syntax replaces the string between the first forward-slashes with the trailing address:
|
||||
|
||||
|
||||
```
|
||||
|
||||
|
||||
# replace ad site domain names with an IP with no ads
|
||||
address=/double-click.net/127.0.0.1
|
||||
|
||||
```
|
||||
|
||||
Set the cache size. The default suggestion is 150, but I've never felt that 150 websites sounded like enough.
|
||||
|
||||
|
||||
```
|
||||
|
||||
|
||||
# Set the cachesize here
|
||||
cache-size=1500
|
||||
|
||||
```
|
||||
|
||||
### Finding resolv.conf
|
||||
|
||||
On most Linux systems, the systemd `resolved` service manages the `/etc/resolv.conf` file, which governs what DNS nameservers your computer contacts for name to IP address resolution.
|
||||
|
||||
You can disable `resolved` and run `dnsmasq` alone, or you can run them both, pointing `dnsmasq` to its own resolver file.
|
||||
|
||||
To disable `resolved`:
|
||||
|
||||
|
||||
```
|
||||
`$ sudo systemctl disable --now systemd-resolved`
|
||||
```
|
||||
|
||||
Alternately, to run them both:
|
||||
|
||||
|
||||
```
|
||||
|
||||
|
||||
$ cat << EOF >> /etc/resolvmasq.conf
|
||||
# my network name
|
||||
domain home.local
|
||||
# local hosts
|
||||
enterprise 10.0.170.1
|
||||
yorktown 10.0.170.4
|
||||
# nameservers
|
||||
nameserver 208.67.222.222
|
||||
nameserver 208.67.220.220
|
||||
EOF
|
||||
|
||||
```
|
||||
|
||||
In this example, `home.local` is a domain name I give, either over Dynamic Host Configuration Protocol (DHCP) or locally, to all devices on my network. The computers `enterprise` and `yorktown` are my home servers, and by listing them here along with their local IP addresses, I can contact them by name through `dnsmasq`. Finally, the `nameserver` entries point to known good nameservers on the internet. You can use the nameservers listed here, or you can use nameservers provided to you by your ISP or any public nameserver you prefer.
|
||||
|
||||
In your `dnsmasq.conf` file, set the `resolv-file` value to `resolvmasq.conf`:
|
||||
|
||||
|
||||
```
|
||||
resolv-file=/etc/resolvmasq.conf
|
||||
```
|
||||
|
||||
### Start dnsmasq
|
||||
|
||||
Some distributions may have already started `dnsmasq` automatically upon installation. Others let you start it yourself when you're ready. Either way, you can use systemd to start the service:
|
||||
|
||||
|
||||
```
|
||||
$ sudo systemd enable --now dnsmasq
|
||||
```
|
||||
|
||||
Test it with the `dig` command.
|
||||
|
||||
When you first contact a server, the query time might be anywhere from 50 to 500 milliseconds (hopefully not more than that):
|
||||
|
||||
|
||||
```
|
||||
|
||||
|
||||
$ dig example.com | grep Query\ time
|
||||
;; Query time: 56 msec
|
||||
|
||||
```
|
||||
|
||||
The next time you try it, however, the query time is drastically reduced:
|
||||
|
||||
|
||||
```
|
||||
|
||||
|
||||
$ dig example.com | grep Query\ time
|
||||
;; Query time: 0 msec
|
||||
|
||||
```
|
||||
|
||||
Much better!
|
||||
|
||||
### Enable dnsmasq for your whole network
|
||||
|
||||
Dnsmasq is a useful tool on one device, but it's even better when you let all the devices on your network benefit.
|
||||
|
||||
Here's how you open the `dnsmasq` service up to your whole local network:
|
||||
|
||||
#### 1\. Get the IP address of the server running the `dnsmasq` service
|
||||
|
||||
On the computer running `dnsmasq`, get the local IP address:
|
||||
|
||||
|
||||
```
|
||||
|
||||
|
||||
$ dig example.com | grep Query\ time
|
||||
;; Query time: 0 msec
|
||||
|
||||
```
|
||||
|
||||
In this example, the IP address of the Raspberry Pi I'm running `dnsmasq` on is 10.0.170.170. Because this Pi is now an important part of my network infrastructure, I have its address statically assigned by my DHCP router. Were I to allow it to get a dynamic IP address, it _probably_ would not change (DHCP is designed to be helpful that way) but if it did then my whole network would miss out on the benefit of `dnsmasq`.
|
||||
|
||||
#### 2\. Modify the server's firewall to allow traffic on port 53
|
||||
|
||||
Open a port in your server's firewall using [firewall-cmd][4] so it allows DNS requests and sends responses.
|
||||
|
||||
|
||||
```
|
||||
$ sudo firewall-cmd --add-service dns --permanent
|
||||
```
|
||||
|
||||
#### 3\. Add the IP address of the server to the `nameserver` entry of your home router
|
||||
|
||||
Knowing that my local DNS server's address is 10.0.170.170 (remember that it's almost certainly different on your own network), I can add it as the primary nameserver in my home router.
|
||||
|
||||
There are many routers out there, and there's no singular interface.
|
||||
|
||||
However, the task is the same, and the workflow is usually relatively similar from model to model.
|
||||
|
||||
In my [Turris Omnia router][5], the advanced interface allows DNS forwarding, which sends DNS requests to a server of my choosing.
|
||||
|
||||
Entering `10.0.170.170` (the IP of my `dnsmasq` server) here forces all DNS traffic to be routed through Dnsmasq for caching and resolution.
|
||||
|
||||
![Screenshot of fields for DNS server settings for Turris Omnia router][6]
|
||||
|
||||
(Seth Kenlon, [CC BY-SA 4.0][7])
|
||||
|
||||
|
||||
|
||||
In my TP-Link router, on the other hand, DNS settings are configured in the DHCP panel.
|
||||
|
||||
|
||||
|
||||
![Advanced DNS settings for tp-link router][8]
|
||||
|
||||
(Seth Kenlon, [CC BY-SA 4.0][7])
|
||||
|
||||
It may take some exploration, so don't be afraid to look around in your router's interface for DNS server settings. When you find it, enter your Dnsmasq server address and then save the changes.
|
||||
|
||||
Some models require the router to reboot when changes are made.
|
||||
|
||||
All devices on your network inherit settings from the router, so now all DNS traffic passing from a device to the internet gets passed through your Dnsmasq server.
|
||||
|
||||
### Close to the edge
|
||||
|
||||
As more and more websites get added to your server's DNS cache, DNS traffic will have to go farther than your local Dnsmasq server less and less often.
|
||||
|
||||
The principle of computing locally and quickly whenever possible drives edge computing. You can imagine how important it is, just by going through this exercise, that technologies use strategic geographic locations to speed up internet interactions.
|
||||
|
||||
Whether you're working on edge computing at home, at work, or as a cloud architect, the edge is an important component of the cloud, and it's one you can use to your advantage.
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://opensource.com/article/22/3/dns-caching-edge
|
||||
|
||||
作者:[Seth Kenlon][a]
|
||||
选题:[lujun9972][b]
|
||||
译者:[译者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/seth
|
||||
[b]: https://github.com/lujun9972
|
||||
[1]: https://opensource.com/sites/default/files/styles/image-full-size/public/lead-images/mesh_networking_dots_connected.png?itok=ovINTRR3 (Mesh networking connected dots)
|
||||
[2]: https://www.redhat.com/en/blog/red-hat-telecommunications-news?intcmp=7013a000002qLH8AAM
|
||||
[3]: https://opensource.com/article/17/4/guide-to-mastodon
|
||||
[4]: https://opensource.com/article/20/2/firewall-cheat-sheet
|
||||
[5]: https://opensource.com/article/22/1/turris-omnia-open-source-router
|
||||
[6]: https://opensource.com/sites/default/files/uploads/turris-dns.jpeg (Turris Omnia)
|
||||
[7]: https://creativecommons.org/licenses/by-sa/4.0/
|
||||
[8]: https://opensource.com/sites/default/files/uploads/tplink-dns.jpeg (tp-link)
|
@ -0,0 +1,85 @@
|
||||
[#]: subject: "13 examples of how DevOps facilitated transformation in 2021"
|
||||
[#]: via: "https://opensource.com/article/22/1/devops-transformation"
|
||||
[#]: author: "Will Kelly https://opensource.com/users/willkelly"
|
||||
[#]: collector: "lujun9972"
|
||||
[#]: translator: "CN-QUAN "
|
||||
[#]: reviewer: " "
|
||||
[#]: publisher: " "
|
||||
[#]: url: " "
|
||||
|
||||
13个例子说明DevOps如何促进2021年的转型
|
||||
======
|
||||
2021年,opensource.com的顶级DevOps文章聚焦于工具、最佳实践和最关键的部分:转型。
|
||||
![提示和令人兴奋的转型][1]
|
||||
|
||||
2021年对于DevOps来说是激动人心的一年,因为开发团队不断适应远程和混合工作模式。今年最受欢迎的DevOps文章展示了我们的社区如何关注工具、创新、最佳实践和转型。
|
||||
|
||||
### DevOps工具和创新
|
||||
|
||||
该行业的工具仍然是Opensource.com读者的首选读物。[Nimisha Mukherjee][2]是Red Hat的一名工程经理,她编写了[面向开发人员的13个开源工具][3]。她将工具分为_Inner loop_和_Outer loop_两个部分,_Inner loop_是开发人员最常见的任务,_Outer loop_是开发人员的代码通过持续集成和交付(CI/CD)部署到生产环境的地方。
|
||||
|
||||
我们的读者对实现DevOps工具链的兴趣也很高。首次撰稿的[Tereza Denkova][4]是一家IT专业服务公司Accedia的营销助理,他撰写了[如何实现DevOps工具链][5],并将其与创新紧密联系在一起。
|
||||
|
||||
### DevOps实践
|
||||
|
||||
[Daniel Oh][6]是opensource.com的主要倡导者,也是一位多产的内容创作者,他写了[2021年需要寻找的3个无服务器策略][7],概述了当今无服务器应用程序开发和部署方法是如何加速采用DevApps实践的。
|
||||
|
||||
[Evan“Hippy”Satis][8]在他的文章[解决CI/CD中的存储库阻抗不匹配][9]中提供了调整部署映像和描述符的策略。他是红帽公司(Red Hat)的高级顾问,他在文章中采用的有条不紊的方法证明了他的行业经验。另外,请参阅他的文章[在shell中处理模块化和动态配置文件][10]。
|
||||
|
||||
在我的文章[DevOps文档指南][11]中,我提出了让文档成为DevOps讨论的一部分的理由。我从读者那里得到了一些有见地的评论,因此我正在为未来的一篇文章跟进这些评论。
|
||||
|
||||
### DevOps转换
|
||||
|
||||
我们有时不相信DevOps能够适应组织需求。理解其他形式的Ops的潜在影响是非常必要的,这些Ops可能在现在或将来补充或增强DevOps。[布莱恩特·孙][12],一个自称是Occat的人,在《GitOps vs DevOps:What‘s Difference?][13]一书中提出GitOps是DevOps的进化形式。][13]
|
||||
|
||||
[Mike Calizo][14]是新西兰奥克兰的一位红帽公司(Red Hat)解决方案架构师,他撰写了[如何成功采用DevSecOps][15]。本文将介绍他作为解决方案架构师的经验。他解释了在你迁移到DevSecOps的过程中可能会遇到的一些安全挑战。
|
||||
|
||||
我写了一系列关于DevOps到DevSecOps转换的文章。它们是:
|
||||
|
||||
* [Launching a DevOps to DevSecOps transformation][16]
|
||||
* [3 phases to start a DevSecOps transformation][17]
|
||||
* [Following a DevSecOps maturity model][18]
|
||||
* [3 more phases of DevSecOps transformation][19]
|
||||
* [4 steps to make DevSecOps adoption a team effort][20]
|
||||
|
||||
### 2022年和DevOps的未来
|
||||
|
||||
看到DevOps的文章登上了2021年最受欢迎的名单,说明DevOps将迎来一个更加有趣的2022年,因为组织正在继续掌握他们的工具,改进他们的战略,并继续他们的[数字化转型][21],以便在不断变化的市场中有效地竞争。
|
||||
|
||||
感谢所有阅读我们的DevOps文章,喜欢这些文章,并通过网站和社交媒体给我们发送评论的人。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://opensource.com/article/22/1/devops-transformation
|
||||
|
||||
作者:[Will Kelly][a]
|
||||
选题:[lujun9972][b]
|
||||
译者:[CN-QUAN](https://github.com/CN-QUAN)
|
||||
校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: https://opensource.com/users/willkelly
|
||||
[b]: https://github.com/lujun9972
|
||||
[1]: https://opensource.com/sites/default/files/styles/image-full-size/public/lead-images/gears_devops_learn_troubleshooting_lightbulb_tips_520.png?itok=HcN38NOk (Tips and gears turning)
|
||||
[2]: https://opensource.com/users/nimisha
|
||||
[3]: https://opensource.com/article/21/6/open-source-developer-tools
|
||||
[4]: https://opensource.com/users/tereza-denkova
|
||||
[5]: https://opensource.com/article/21/1/devops-tool-chain
|
||||
[6]: https://opensource.com/users/daniel-oh
|
||||
[7]: https://opensource.com/article/21/1/devapps-strategies
|
||||
[8]: https://opensource.com/users/hippyod
|
||||
[9]: https://opensource.com/article/21/8/impedance-mismatch-cicd
|
||||
[10]: https://opensource.com/article/21/5/processing-configuration-files-shell
|
||||
[11]: https://opensource.com/article/21/3/devops-documentation
|
||||
[12]: https://opensource.com/users/brson
|
||||
[13]: http://opensource.com/article/21/3/gitops
|
||||
[14]: https://opensource.com/users/mcalizo
|
||||
[15]: https://opensource.com/article/21/2/devsecops
|
||||
[16]: http://opensource.com/article/21/10/devops-to-devsecops
|
||||
[17]: https://opensource.com/article/21/10/first-phases-devsecops-transformation
|
||||
[18]: https://opensource.com/article/21/10/devsecops-maturity-model
|
||||
[19]: https://opensource.com/article/21/10/last-phases-devsecops-transformation
|
||||
[20]: https://opensource.com/article/21/10/devsecops-team-effort
|
||||
[21]: https://enterprisersproject.com/what-is-digital-transformation
|
||||
|
@ -0,0 +1,109 @@
|
||||
[#]: subject: "Listen to your favorite music on Linux with Juk"
|
||||
[#]: via: "https://opensource.com/article/22/2/listen-music-linux-juk-kde"
|
||||
[#]: author: "Seth Kenlon https://opensource.com/users/seth"
|
||||
[#]: collector: "lujun9972"
|
||||
[#]: translator: "geekpi"
|
||||
[#]: reviewer: " "
|
||||
[#]: publisher: " "
|
||||
[#]: url: " "
|
||||
|
||||
用 Juk 在 Linux 上听你喜欢的音乐
|
||||
======
|
||||
Juk 是 Linux 上 KDE Plasma 桌面的默认开源音乐播放器。创建播放列表,使用标签,并在 Linux 上播放你最喜欢的曲子。
|
||||
![Headphones on a yellow backdrop][1]
|
||||
|
||||
KDE 项目不只是提供一个著名的桌面,它还产生了很多软件,从[视频编辑][2]、[摄影][3]和[插图][4]工具,到图形计算器、电子邮件和办公工作。这些都是生产力工具,但 KDE 也适合于放松。它有游戏和媒体播放器,而我使用的音乐播放器是 [Juk][5]。
|
||||
|
||||
### 在 Linux 上安装 Juk
|
||||
|
||||
只要你的 Linux 发行版提供 KDE 软件包,你就可以用你的包管理器安装 Juk。
|
||||
|
||||
在 Fedora、Mageia 和类似发行版上:
|
||||
|
||||
|
||||
```
|
||||
`$ sudo dnf install juk`
|
||||
```
|
||||
|
||||
在 Elementary、Linux Mint 和其他基于 Debian 的发行版上:
|
||||
|
||||
|
||||
```
|
||||
`$ sudo apt install juk`
|
||||
```
|
||||
|
||||
### 使用 Juk
|
||||
|
||||
当你第一次启动Juk时,你会被问到你想用什么目录作为你的音乐集的来源。选择你希望Juk寻找音乐的文件夹,并可选择排除你希望 Juk 忽略的任何子目录。
|
||||
|
||||
![Adding music to Juk][6]
|
||||
|
||||
(Seth Kenlon,[CC BY-SA 4.0][7])
|
||||
|
||||
取决于你有多少音乐,Juk 可能需要一些时间来解析文件系统和元数据。当它完成后,通常的 Juk 窗口就会出现,你所有的音乐都在一个叫做**收藏列表**的中央收藏中。
|
||||
|
||||
![Juk music player][8]
|
||||
|
||||
(Seth Kenlon,[CC BY-SA 4.0][7])
|
||||
|
||||
在顶部的搜索栏中,你可以在任何领域搜索任何字符串。双击歌曲,开始播放。
|
||||
|
||||
Juk 默认为连续播放,这意味着在它播放完你的选择后,它会继续播放收藏列表中的下一首歌曲,即使你已经将你的列表过滤到只有一首歌曲。这使音乐无论如何都会继续播放,就像一个真正的点唱机。
|
||||
|
||||
就我个人而言,我更喜欢听完整的专辑,中间有足够的休息时间去厨房喝咖啡,所以我使用播放列表。
|
||||
|
||||
### Juk 中的播放列表
|
||||
|
||||
Juk 中的播放列表可以包含你收藏列表中的任何内容。Juk 会在播放列表中播放一次,然后停止。
|
||||
|
||||
要创建一个播放列表,在左边的播放列表栏中点击右键,在出现的上下文菜单中选择 **New**。你可以创建一个空的播放列表,或者从你硬盘上的特定文件夹中创建一个播放列表。
|
||||
|
||||
![Creating a new playlist][9]
|
||||
|
||||
(Seth Kenlon,[CC BY-SA 4.0][7])
|
||||
|
||||
### 自动播放列表
|
||||
|
||||
你还可以创建一个与特定搜索绑定的特殊播放列表,这对那些你经常购买并添加到你的收藏中的艺术家很有用。有了搜索播放列表,他们的新音乐就会被添加到他们的播放列表中,而无需你的手动干预。
|
||||
|
||||
### 标签化
|
||||
|
||||
让我们面对现实吧,音乐播放器是很容易出现的,而且它们大多都做同样的事情。然而,Juk 增加了一个重要的功能。它让你有能力修改元数据标签。
|
||||
|
||||
![Metadata editor][10]
|
||||
|
||||
(Seth Kenlon,[CC BY-SA 4.0][7])
|
||||
|
||||
很多音乐的标签是不一致的、不完整的,或者根本就没有,所以当你发现它们出现在播放队列中时,能够纠正它们是一种奢侈。
|
||||
|
||||
它还有一个标签猜测器的功能,它试图解析文件名,并对歌曲进行相应的标记。
|
||||
|
||||
### 明显的选择
|
||||
|
||||
当你在 KDE 上寻找一个音乐播放器时,Juk 是一个简单而明显的选择。当然,还有很多其他非常好的选择,正如 Opensource.com 的常驻发烧友 [Chris Hermansen][11] 在他的 [3 个开源音乐播放器][12]文章中详细介绍的那样,但有时你只是想使用你最容易想到的东西。Juk 既能直观地使用,又能出色地完成它的任务。它是多么幸运啊,它是 KDE Plasma 桌面上的默认播放器。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://opensource.com/article/22/2/listen-music-linux-juk-kde
|
||||
|
||||
作者:[Seth Kenlon][a]
|
||||
选题:[lujun9972][b]
|
||||
译者:[geekpi](https://github.com/geekpi)
|
||||
校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: https://opensource.com/users/seth
|
||||
[b]: https://github.com/lujun9972
|
||||
[1]: https://opensource.com/sites/default/files/styles/image-full-size/public/lead-images/c-d-x-pdx_a_82obo-unsplash.jpg?itok=2txWDP31 (Headphones on a yellow backdrop)
|
||||
[2]: https://opensource.com/article/21/12/kdenlive-linux-creative-app
|
||||
[3]: https://opensource.com/life/16/5/how-use-digikam-photo-management
|
||||
[4]: https://opensource.com/article/21/12/krita-digital-paint
|
||||
[5]: https://juk.kde.org/
|
||||
[6]: https://opensource.com/sites/default/files/juk-import.jpg (Adding music to Juk)
|
||||
[7]: https://creativecommons.org/licenses/by-sa/4.0/
|
||||
[8]: https://opensource.com/sites/default/files/juk-player.jpg (Juk music player)
|
||||
[9]: https://opensource.com/sites/default/files/juk-playlist-new.jpg (Creating a new playlist)
|
||||
[10]: https://opensource.com/sites/default/files/juk-tagger.png (Metadata editor)
|
||||
[11]: https://opensource.com/users/clhermansen
|
||||
[12]: https://opensource.com/article/17/1/open-source-music-players
|
@ -0,0 +1,68 @@
|
||||
[#]: subject: "How to screen share with the Linux KDE Plasma Desktop"
|
||||
[#]: via: "https://opensource.com/article/22/2/screen-share-linux-kde"
|
||||
[#]: author: "Seth Kenlon https://opensource.com/users/seth"
|
||||
[#]: collector: "lujun9972"
|
||||
[#]: translator: "geekpi"
|
||||
[#]: reviewer: " "
|
||||
[#]: publisher: " "
|
||||
[#]: url: " "
|
||||
|
||||
如何用 Linux KDE Plasma 桌面进行屏幕共享
|
||||
======
|
||||
krfb 和 krdc 的组合是使远程 Linux 支持无挫折感的宝贵工具。
|
||||
![Person using a laptop][1]
|
||||
|
||||
如果你曾经做过专业的或出于家庭义务的远程支持,那么你曾经在一个电话中,解决问题只是次要的,你要把用户屏幕上的实际内容可视化。有多少次你描述了复杂的桌面任务,后来才发现你的用户甚至还没有打开他们的电脑?支持是重要的,但挫折是真实的,对于需要支持的人和慷慨地试图提供支持的人来说,这都是一种共同的经历。我相信,作为学习新技能的一种方式,人们自己执行任务是很重要的,但也有一种说法是观察专家应该如何做。这就是屏幕共享的作用,KDE Plasma 桌面已经内置了它。
|
||||
|
||||
### 网络安全
|
||||
|
||||
Plasma 桌面使用点对点的邀请模式进行屏幕共享。用户启动一个应用,启动一个虚拟网络连接(VNC)服务器,这时,支持人员就可以远程查看甚至控制计算机。如果这听起来像是潜在的不安全,那是因为它可能是,但有防火墙的干预。如果你是一个与你不在同一网络上的人的支持人员,那么你必须在屏幕共享工作之前建立一个从你的网络到你的用户的网络的安全通道。理想情况下,你会在紧急情况发生前完成这项工作。
|
||||
|
||||
1. [配置用户的路由器][2],将 VNC 端口(默认为 5900,但你可以使用任何你喜欢的端口)路由到他们的计算机。
|
||||
2. [在用户的本地防火墙中打开一个服务][3],允许 VNC 流量(在你在第一步中指定的端口)。
|
||||
|
||||
|
||||
|
||||
### 远程邀请
|
||||
|
||||
为了启动屏幕共享会话,用户必须启动 **krfb**(表示 _KDE remote frame buffer_)应用。这将启动一个 VNC 服务器,并创建一个临时密码。
|
||||
|
||||
![krfb][4]
|
||||
|
||||
(Seth Kenlon,[CC BY-SA 4.0][5])
|
||||
|
||||
**krfb** 使用的默认端口是 5900,但如果你需要,可以在 **krfb** 设置中改变。不过,这可能是你想提前做的事情,这样你就可以避免向你的用户解释如何改变协议的端口。
|
||||
|
||||
### 查看和控制
|
||||
|
||||
当这个窗口打开时,你可以使用你喜欢的 VNC 客户端通过 VNC 登录。KDE 有 **krdc**(表示 _KDE remote desktop client_)应用。在支持的计算机上,启动它并向它提供目标 IP 地址。当你被提示输入密码时,输入你正在连接的 **krfb** 会话中显示的密码。
|
||||
|
||||
![Screen sharing with krdc][6]
|
||||
|
||||
(Seth Kenlon,[CC BY-SA 4.0][5])
|
||||
|
||||
连接上后,你就可以看到你用户的屏幕,你可以在他们遵循你的指示时引导他们。如果他们在遵循你的指示方面有困难,那么你可以控制他们的鼠标,并演示如何做某事。默认情况下,**krfb**(即他们正在运行的应用)在将控制权交给你之前会征求他们的同意。
|
||||
|
||||
### 帮助进行中
|
||||
|
||||
能够看到你的用户所看到的东西可以加速故障排除,减少支持电话双方的挫折感。只要你事先为你的支持设置好网络,**krfb** 和 **krdc** 的组合对于指导新用户完成 Linux 桌面发现之旅的 Linux 专业人士来说是很有价值的工具。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://opensource.com/article/22/2/screen-share-linux-kde
|
||||
|
||||
作者:[Seth Kenlon][a]
|
||||
选题:[lujun9972][b]
|
||||
译者:[geekpi](https://github.com/geekpi)
|
||||
校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: https://opensource.com/users/seth
|
||||
[b]: https://github.com/lujun9972
|
||||
[1]: https://opensource.com/sites/default/files/styles/image-full-size/public/lead-images/laptop_screen_desk_work_chat_text.png?itok=UXqIDRDD (Person using a laptop)
|
||||
[2]: https://opensource.com/article/20/9/firewall
|
||||
[3]: https://opensource.com/article/19/7/make-linux-stronger-firewalls
|
||||
[4]: https://opensource.com/sites/default/files/kde-krfb.jpg (krfb)
|
||||
[5]: https://creativecommons.org/licenses/by-sa/4.0/
|
||||
[6]: https://opensource.com/sites/default/files/kde-krdc-session.jpg (Screen sharing with krdc)
|
Loading…
Reference in New Issue
Block a user