From 77a9ab66fae0847ed225f235decee27e056df3ad Mon Sep 17 00:00:00 2001 From: su-kaiyao <1250471161@qq.com> Date: Thu, 23 Oct 2014 09:23:51 +0800 Subject: [PATCH 001/108] su-kaiyao translating --- .../tech/20141021 How to create and use Python CGI scripts.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/sources/tech/20141021 How to create and use Python CGI scripts.md b/sources/tech/20141021 How to create and use Python CGI scripts.md index fa653aeec0..77dde7bad1 100644 --- a/sources/tech/20141021 How to create and use Python CGI scripts.md +++ b/sources/tech/20141021 How to create and use Python CGI scripts.md @@ -1,3 +1,5 @@ +su-kaiyao translating + How to create and use Python CGI scripts ================================================================================ Have you ever wanted to create a webpage or process user input from a web-based form using Python? These tasks can be accomplished through the use of Python CGI (Common Gateway Interface) scripts with an Apache web server. CGI scripts are called by a web server when a user requests a particular URL or interacts with the webpage (such as clicking a "Submit" button). After the CGI script is called and finishes executing, the output is used by the web server to create a webpage displayed to the user. @@ -154,4 +156,4 @@ via: http://xmodulo.com/create-use-python-cgi-scripts.html [a]:http://xmodulo.com/author/joshua [1]:http://httpd.apache.org/docs/2.2/howto/cgi.html -[2]:https://docs.python.org/2/library/cgi.html#module-cgi \ No newline at end of file +[2]:https://docs.python.org/2/library/cgi.html#module-cgi From 1f38daf7b4aa35fc35908daeefb6128867d4bf05 Mon Sep 17 00:00:00 2001 From: joeren Date: Thu, 23 Oct 2014 09:53:20 +0800 Subject: [PATCH 002/108] Update 20141022 Linux FAQs with Answers--How to fix sshd error--could not load host key.md --- ... Answers--How to fix sshd error--could not load host key.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sources/tech/20141022 Linux FAQs with Answers--How to fix sshd error--could not load host key.md b/sources/tech/20141022 Linux FAQs with Answers--How to fix sshd error--could not load host key.md index 78004f1426..fed51d202a 100644 --- a/sources/tech/20141022 Linux FAQs with Answers--How to fix sshd error--could not load host key.md +++ b/sources/tech/20141022 Linux FAQs with Answers--How to fix sshd error--could not load host key.md @@ -1,3 +1,4 @@ +Translating by GOLinux! Linux FAQs with Answers--How to fix “sshd error: could not load host key” ================================================================================ > **Question**: When I try to SSH to a remote server, SSH client fails with "Connection closed by X.X.X.X". On the SSH server side, I see error messages: "sshd error: could not load host key." What is going on, and how can I fix this error? @@ -60,4 +61,4 @@ via: http://ask.xmodulo.com/sshd-error-could-not-load-host-key.html 译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID) -本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 \ No newline at end of file +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 From cb4659887522db14f848121e8e13b20ac1dcf4f2 Mon Sep 17 00:00:00 2001 From: GOLinux Date: Thu, 23 Oct 2014 10:13:52 +0800 Subject: [PATCH 003/108] [Translated] 20141022 Linux FAQs with Answers--How to fix sshd error--could not load host key.md --- ...fix sshd error--could not load host key.md | 64 ------------------- ...fix sshd error--could not load host key.md | 63 ++++++++++++++++++ 2 files changed, 63 insertions(+), 64 deletions(-) delete mode 100644 sources/tech/20141022 Linux FAQs with Answers--How to fix sshd error--could not load host key.md create mode 100644 translated/tech/20141022 Linux FAQs with Answers--How to fix sshd error--could not load host key.md diff --git a/sources/tech/20141022 Linux FAQs with Answers--How to fix sshd error--could not load host key.md b/sources/tech/20141022 Linux FAQs with Answers--How to fix sshd error--could not load host key.md deleted file mode 100644 index fed51d202a..0000000000 --- a/sources/tech/20141022 Linux FAQs with Answers--How to fix sshd error--could not load host key.md +++ /dev/null @@ -1,64 +0,0 @@ -Translating by GOLinux! -Linux FAQs with Answers--How to fix “sshd error: could not load host key” -================================================================================ -> **Question**: When I try to SSH to a remote server, SSH client fails with "Connection closed by X.X.X.X". On the SSH server side, I see error messages: "sshd error: could not load host key." What is going on, and how can I fix this error? - -The detailed symptom of this SSH connection error is as follows. - -**SSH client side**: when you attempt to SSH to a remote host, you don't see login screen, and your SSH connection is closed right away with a message: "Connection closed by X.X.X.X" - -**SSH server side**: in a system log, you see the following error messages (e.g., /var/log/auth.log on Debian/Ubuntu). - - Oct 16 08:59:45 openstack sshd[1214]: error: Could not load host key: /etc/ssh/ssh_host_rsa_key - Oct 16 08:59:45 openstack sshd[1214]: error: Could not load host key: /etc/ssh/ssh_host_dsa_key - Oct 16 08:59:45 openstack sshd[1214]: error: Could not load host key: /etc/ssh/ssh_host_ecdsa_key - Oct 16 08:59:45 openstack sshd[1214]: fatal: No supported key exchange algorithms [preauth] - -The root cause of this problem is that sshd daemon somehow is not able to load SSH host keys. - -When OpenSSH server is first installed on Linux system, SSH host keys should automatically be generated for subsequent use. If, however, key generation was not finished successfully, that can cause SSH login problems like this. - -Let's check if SSH host keys are found where they should be. - - $ ls -al /etc/ssh/ssh*key - -![](https://farm4.staticflickr.com/3931/15367231099_61b9087256_z.jpg) - -If SSH host keys are not found there, or their size is all truncated to zero (like above), you need to regenerate SSH host keys from scratch. - -### Regenerate SSH Host Keys ### - -On Debian, Ubuntu or their derivatives, you can use dpkg-reconfigure tool to regenerate SSH host keys as follows. - - $ sudo rm -r /etc/ssh/ssh*key - $ sudo dpkg-reconfigure openssh-server - -![](https://farm4.staticflickr.com/3931/15551179631_363e6a9047_z.jpg) - -On CentOS, RHEL or Fedora, all you have to do is to restart sshd after removing existing (problematic) keys. - - $ sudo rm -r /etc/ssh/ssh*key - $ sudo systemctl restart sshd - -An alternative way to regenerate SSH host keys is to manually generate them using ssh-keygen command. - - $ sudo ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key - $ sudo ssh-keygen -t dsa -f /etc/ssh/ssh_host_dsa_key - $ sudo ssh-keygen -t ecdsa -f /etc/ssh/ssh_host_ecdsa_key - -![](https://farm6.staticflickr.com/5603/15367844767_cdfd9716c8_z.jpg) - -Once new SSH host keys are generated, make sure that they are found in /etc/ssh directory. There is no need to restart sshd at this point. - - $ ls -al /etc/ssh/ssh*key - -Now try to SSH again to the SSH server to see if the problem is gone. - --------------------------------------------------------------------------------- - -via: http://ask.xmodulo.com/sshd-error-could-not-load-host-key.html - -译者:[译者ID](https://github.com/译者ID) -校对:[校对者ID](https://github.com/校对者ID) - -本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 diff --git a/translated/tech/20141022 Linux FAQs with Answers--How to fix sshd error--could not load host key.md b/translated/tech/20141022 Linux FAQs with Answers--How to fix sshd error--could not load host key.md new file mode 100644 index 0000000000..83c2dba40e --- /dev/null +++ b/translated/tech/20141022 Linux FAQs with Answers--How to fix sshd error--could not load host key.md @@ -0,0 +1,63 @@ +Linux有问必答——如何修复“sshd error: could not load host key” +================================================================================ +> **问题**:当我尝试SSH到一台远程服务器时,SSH客户端登陆失败并提示“Connection closed by X.X.X.X”。在SSH服务器那端,我看到这样的错误消息:“sshd error: could not load host key.”。这发生了什么问题,我怎样才能修复该错误? + +该SSH连接错误的详细症状如下。 + +**SSH客户端方面**:当你尝试SSH到一台远程主机时,你没有看见登录屏幕,你的SSH连接就立即关闭,并提示此消息:“Connection closed by X.X.X.X”。 + +**SSH服务器方面**:在系统日志中,你看到如下错误消息(如,在Debian/Ubuntu上,/var/log/auth.log)。 + + Oct 16 08:59:45 openstack sshd[1214]: error: Could not load host key: /etc/ssh/ssh_host_rsa_key + Oct 16 08:59:45 openstack sshd[1214]: error: Could not load host key: /etc/ssh/ssh_host_dsa_key + Oct 16 08:59:45 openstack sshd[1214]: error: Could not load host key: /etc/ssh/ssh_host_ecdsa_key + Oct 16 08:59:45 openstack sshd[1214]: fatal: No supported key exchange algorithms [preauth] + +导致该问题的根源是,sshd守护进程不知怎么地不能加载SSH主机密钥了。 + +当OpenSSH服务器第一次安装到Linux系统时,SSH主机密钥应该会自动生成以供后续使用。如果,不管怎样,密钥生成过程没有成功完成,那就会导致这样的SSH登录问题。 + +让我们检查能否在相应的地方找到SSH主机密钥。 + + $ ls -al /etc/ssh/ssh*key + +![](https://farm4.staticflickr.com/3931/15367231099_61b9087256_z.jpg) + +如果SSH主机密钥在那里找不到,或者它们的大小被切短成为0(就像上面那样),你需要从头开始重新生成主机密钥。 + +### 重新生成SSH主机密钥 ### + +在Debian、Ubuntu或其衍生版上,你可以使用dpkg-reconfigure工具来重新生成SSH主机密钥,过程如下: + + $ sudo rm -r /etc/ssh/ssh*key + $ sudo dpkg-reconfigure openssh-server + +![](https://farm4.staticflickr.com/3931/15551179631_363e6a9047_z.jpg) + +在CentOS、RHEL或Fedora上,你所要做的是,删除现存(有问题的)密钥,然后重启sshd服务。 + + $ sudo rm -r /etc/ssh/ssh*key + $ sudo systemctl restart sshd + +另外一个重新生成SSH主机密钥的方式是,使用ssh-keygen命令来手动生成。 + + $ sudo ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key + $ sudo ssh-keygen -t dsa -f /etc/ssh/ssh_host_dsa_key + $ sudo ssh-keygen -t ecdsa -f /etc/ssh/ssh_host_ecdsa_key + +![](https://farm6.staticflickr.com/5603/15367844767_cdfd9716c8_z.jpg) + +在生成新的SSH主机密钥后,确保它们能在/etc/ssh目录中找到。此时,不必重启sshd服务。 + + $ ls -al /etc/ssh/ssh*key + +现在,再试试SSH到SSH服务器吧,看看问题是否已经离你而去了。 + +-------------------------------------------------------------------------------- + +via: http://ask.xmodulo.com/sshd-error-could-not-load-host-key.html + +译者:[GOLinux](https://github.com/GOLinux) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 From ede6104cf30b44a4a5d5117cfd0c286d0d596fbf Mon Sep 17 00:00:00 2001 From: carolinewuyan <309866211@qq.com> Date: Thu, 23 Oct 2014 10:25:34 +0800 Subject: [PATCH 004/108] =?UTF-8?q?=E6=A0=A1=E5=AF=B9=E4=B8=AD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...Cube--An Offline And Portable Package Management System.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/translated/tech/20140724 Camicri Cube--An Offline And Portable Package Management System.md b/translated/tech/20140724 Camicri Cube--An Offline And Portable Package Management System.md index 5c50f0d5b5..d861edf3f8 100644 --- a/translated/tech/20140724 Camicri Cube--An Offline And Portable Package Management System.md +++ b/translated/tech/20140724 Camicri Cube--An Offline And Portable Package Management System.md @@ -50,7 +50,7 @@ Cube 会收集您的离线电脑的完整的详细信息,如操作系统的详 ![](http://180016988.r.cdn77.net/wp-content/uploads/2014/07/Camicri-Systems-%C2%A9-Cube-Portable-Package-Manager-1.0.9.2-sk_0033.png) -就是这样。现在新的项目已经创建好了,它会保存在我们的主 cube 目录里面。进入 Cube 目录,您就会发现一个名叫 Projects 的目录。这个目录会保存有您的离线系统的必要完整详细信息。 +就是这样。现在新的项目已经创建好了,它会保存在我们的主 cube 目录里面。进入 Cube 目录,您就会发现一个名叫 Projects 的目录。这个目录会保存有您的离线系统的必要完整详细信息。 ![](http://180016988.r.cdn77.net/wp-content/uploads/2014/07/Selection_004.png) @@ -164,4 +164,4 @@ via: http://www.unixmen.com/camicri-cube-offline-portable-package-management-sys [a]:http://www.unixmen.com/author/sk/ [1]:https://launchpad.net/camicricube -[2]:http://sourceforge.net/projects/camicricube/ \ No newline at end of file +[2]:http://sourceforge.net/projects/camicricube/ From 8b350aed967186ef643d7b7620ac3c7a9c45685e Mon Sep 17 00:00:00 2001 From: DeadFire Date: Thu, 23 Oct 2014 11:00:29 +0800 Subject: [PATCH 005/108] =?UTF-8?q?20141023-1=20=E9=80=89=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...t are useful Bash aliases and functions.md | 255 ++++++++++++++++++ ...a good command-line calculator on Linux.md | 115 ++++++++ 2 files changed, 370 insertions(+) create mode 100644 sources/tech/20141023 What are useful Bash aliases and functions.md create mode 100644 sources/tech/20141023 What is a good command-line calculator on Linux.md diff --git a/sources/tech/20141023 What are useful Bash aliases and functions.md b/sources/tech/20141023 What are useful Bash aliases and functions.md new file mode 100644 index 0000000000..56a797dc8b --- /dev/null +++ b/sources/tech/20141023 What are useful Bash aliases and functions.md @@ -0,0 +1,255 @@ +What are useful Bash aliases and functions +================================================================================ +As a command line adventurer, you probably found yourself repeating the same lengthy commands over and over. If you always ssh into the same machine, if you always chain the same commands together, or if you constantly run a program with the same flags, you might want to save the precious seconds of your life that you spend repeating the same actions over and over. + +The solution to achieve that is to use an alias. As you may know, an alias is a way to tell your shell to remember a particular command and give it a new name: an alias. However, an alias is quickly limited as it is just a shortcut for a shell command, without the ability to pass or control the arguments. So to complement, bash also allows you create your own functions, which can be more lengthy and complex, and also accepts any number of arguments. + +Naturally, like with soup, when you have a good recipe you share it. So here is a list with some of the most useful bash aliases and functions. Note that "most useful" is loosely defined, and of course the usefulness of an alias is dependent on your everyday usage of the shell. + +Before you start experimenting with aliases, here is a handy tip: if you give an alias the same name as a regular command, you can choose to launch the original command and ignore the alias with the trick: + + \command + +For example, the first alias below replaces the ls command. If you wish to use the regular ls command and not the alias, call it via: + + \ls + +### Productivity ### + +So these aliases are really simple and really short, but they are mostly based on the idea that if you save yourself a fraction of a second every time, it might end up accumulating years at the end. Or maybe not. + + alias ls="ls --color=auto" + +Simple but vital. Make the ls command output in color. + + alias ll = "ls --color -al" + +Shortcut to display in color all the files from a directory in a list format. + + alias grep='grep --color=auto' + +Similarly, put some color in the grep output. + + mcd() { mkdir -p "$1"; cd "$1";} + +One of my favorite. Make a directory and cd into it in one command: mcd [name]. + + cls() { cd "$1"; ls;} + +Similar to the previous function, cd into a directory and list its content: cls [name]. + + backup() { cp "$1"{,.bak};} + +Simple way to make a backup of a file: backup [file] will create [file].bak in the same directory. + + md5check() { md5sum "$1" | grep "$2";} + +Because I hate comparing the md5sum of a file by hand, this function computes it and compares it using grep: md5check [file] [key]. + +![](https://farm6.staticflickr.com/5616/15412389280_8be57841ae_o.jpg) + + alias makescript="fc -rnl | head -1 >" + +Easily make a script out of the last command you ran: makescript [script.sh] + + alias genpasswd="strings /dev/urandom | grep -o '[[:alnum:]]' | head -n 30 | tr -d '\n'; echo" + +Just to generate a strong password instantly. + +![](https://farm4.staticflickr.com/3955/15574321206_dd365f0f0e.jpg) + + alias c="clear" + +Cannot do simpler to clean your terminal screen. + + alias histg="history | grep" + +To quickly search through your command history: histg [keyword] + + alias ..='cd ..' + +No need to write cd to go up a directory. + + alias ...='cd ../..' + +Similarly, go up two directories. + + extract() { + if [ -f $1 ] ; then + case $1 in + *.tar.bz2) tar xjf $1 ;; + *.tar.gz) tar xzf $1 ;; + *.bz2) bunzip2 $1 ;; + *.rar) unrar e $1 ;; + *.gz) gunzip $1 ;; + *.tar) tar xf $1 ;; + *.tbz2) tar xjf $1 ;; + *.tgz) tar xzf $1 ;; + *.zip) unzip $1 ;; + *.Z) uncompress $1 ;; + *.7z) 7z x $1 ;; + *) echo "'$1' cannot be extracted via extract()" ;; + esac + else + echo "'$1' is not a valid file" + fi + } + +Longest but also the most useful. Extract any kind of archive: extract [archive file] + +### System Info ### + +Want to know everything about your system as quickly as possible? + + alias cmount="mount | column -t" + +Format the output of mount into columns. + +![](https://farm6.staticflickr.com/5603/15598830622_587b77a363_z.jpg) + + alias tree="ls -R | grep ":$" | sed -e 's/:$//' -e 's/[^-][^\/]*\//--/g' -e 's/^/ /' -e 's/-/|/'" + +Display the directory structure recursively in a tree format. + + sbs() { du -b --max-depth 1 | sort -nr | perl -pe 's{([0-9]+)}{sprintf "%.1f%s", $1>=2**30? ($1/2**30, "G"): $1>=2**20? ($1/2**20, "M"): $1>=2**10? ($1/2**10, "K"): ($1, "")}e';} + +"Sort by size" to display in list the files in the current directory, sorted by their size on disk. + + alias intercept="sudo strace -ff -e trace=write -e write=1,2 -p" + +Intercept the stdout and stderr of a process: intercept [some PID]. Note that you will need strace installed. + + alias meminfo='free -m -l -t' + +See how much memory you have left. + +![](https://farm4.staticflickr.com/3955/15411891448_0b9d6450bd_z.jpg) + + alias ps? = "ps aux | grep" + +Easily find the PID of any process: ps? [name] + + alias volume="amixer get Master | sed '1,4 d' | cut -d [ -f 2 | cut -d ] -f 1" + +Displays the current sound volume. + +![](https://farm4.staticflickr.com/3939/15597995445_99ea7ffcd5_o.jpg) + +### Networking ### + +For all the commands that involve the Internet or your local network, there are fancy aliases for them. + + alias websiteget="wget --random-wait -r -p -e robots=off -U mozilla" + +Download entirely a website: websiteget [URL] + + alias listen="lsof -P -i -n" + +Show which applications are connecting to the network. + +![](https://farm4.staticflickr.com/3943/15598830552_c7e5eaaa0d_z.jpg) + + alias port='netstat -tulanp' + +Show the active ports + + gmail() { curl -u "$1" --silent "https://mail.google.com/mail/feed/atom" | sed -e 's/<\/fullcount.*/\n/' | sed -e 's/.*fullcount>//'} + +Rough function to display the number of unread emails in your gmail: gmail [user name] + + alias ipinfo="curl ifconfig.me && curl ifconfig.me/host" + +Get your public IP address and host. + + getlocation() { lynx -dump http://www.ip-adress.com/ip_tracer/?QRY=$1|grep address|egrep 'city|state|country'|awk '{print $3,$4,$5,$6,$7,$8}'|sed 's\ip address flag \\'|sed 's\My\\';} + +Returns your current location based on your IP address. + +### Useless ### + +So what if some aliases are not all that productive? They can still be fun. + + kernelgraph() { lsmod | perl -e 'print "digraph \"lsmod\" {";<>;while(<>){@_=split/\s+/; print "\"$_[0]\" -> \"$_\"\n" for split/,/,$_[3]}print "}"' | dot -Tpng | display -;} + +To draw the kernel module dependency graph. Requires image viewer. + + alias busy="cat /dev/urandom | hexdump -C | grep "ca fe"" + +Make you look all busy and fancy in the eyes of non-technical people. + +![](https://farm6.staticflickr.com/5599/15574321326_ab3fbc1ef9_z.jpg) + +To conclude, a good chunk of these aliases and functions come from my personal .bashrc, and the awesome websites [alias.sh][1] and [commandlinefu.com][2] which I already presented in my post on the [best online tools for Linux][3]. So definitely go check them out, make your own recipes, and if you are so inclined, share your wisdom in the comments. + +As a bonus, here is the plain text version of all the aliases and functions I mentioned, ready to be copy pasted in your bashrc. + + #Productivity + alias ls="ls --color=auto" + alias ll="ls --color -al" + alias grep='grep --color=auto' + mcd() { mkdir -p "$1"; cd "$1";} + cls() { cd "$1"; ls;} + backup() { cp "$1"{,.bak};} + md5check() { md5sum "$1" | grep "$2";} + alias makescript="fc -rnl | head -1 >" + alias genpasswd="strings /dev/urandom | grep -o '[[:alnum:]]' | head -n 30 | tr -d '\n'; echo" + alias c="clear" + alias histg="history | grep" + alias ..='cd ..' + alias ...='cd ../..' + extract() { + if [ -f $1 ] ; then + case $1 in + *.tar.bz2) tar xjf $1 ;; + *.tar.gz) tar xzf $1 ;; + *.bz2) bunzip2 $1 ;; + *.rar) unrar e $1 ;; + *.gz) gunzip $1 ;; + *.tar) tar xf $1 ;; + *.tbz2) tar xjf $1 ;; + *.tgz) tar xzf $1 ;; + *.zip) unzip $1 ;; + *.Z) uncompress $1 ;; + *.7z) 7z x $1 ;; + *) echo "'$1' cannot be extracted via extract()" ;; + esac + else + echo "'$1' is not a valid file" + fi + } + + #System info + alias cmount="mount | column -t" + alias tree="ls -R | grep ":$" | sed -e 's/:$//' -e 's/[^-][^\/]*\//--/g' -e 's/^/ /' -e 's/-/|/'" + sbs(){ du -b --max-depth 1 | sort -nr | perl -pe 's{([0-9]+)}{sprintf "%.1f%s", $1>=2**30? ($1/2**30, "G"): $1>=2**20? ($1/2**20, "M"): $1>=2**10? ($1/2**10, "K"): ($1, "")}e';} + alias intercept="sudo strace -ff -e trace=write -e write=1,2 -p" + alias meminfo='free -m -l -t' + alias ps?="ps aux | grep" + alias volume="amixer get Master | sed '1,4 d' | cut -d [ -f 2 | cut -d ] -f 1" + + #Network + alias websiteget="wget --random-wait -r -p -e robots=off -U mozilla" + alias listen="lsof -P -i -n" + alias port='netstat -tulanp' + gmail() { curl -u "$1" --silent "https://mail.google.com/mail/feed/atom" | sed -e 's/<\/fullcount.*/\n/' | sed -e 's/.*fullcount>//'} + alias ipinfo="curl ifconfig.me && curl ifconfig.me/host" + getlocation() { lynx -dump http://www.ip-adress.com/ip_tracer/?QRY=$1|grep address|egrep 'city|state|country'|awk '{print $3,$4,$5,$6,$7,$8}'|sed 's\ip address flag \\'|sed 's\My\\';} + + #Funny + kernelgraph() { lsmod | perl -e 'print "digraph \"lsmod\" {";<>;while(<>){@_=split/\s+/; print "\"$_[0]\" -> \"$_\"\n" for split/,/,$_[3]}print "}"' | dot -Tpng | display -;} + alias busy="cat /dev/urandom | hexdump -C | grep \"ca fe\"" + +-------------------------------------------------------------------------------- + +via: http://xmodulo.com/useful-bash-aliases-functions.html + +作者:[Adrien Brochard][a] +译者:[译者ID](https://github.com/译者ID) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[a]:http://xmodulo.com/author/adrien +[1]:http://alias.sh/ +[2]:http://www.commandlinefu.com/commands/browse +[3]:http://xmodulo.com/useful-online-tools-linux.html \ No newline at end of file diff --git a/sources/tech/20141023 What is a good command-line calculator on Linux.md b/sources/tech/20141023 What is a good command-line calculator on Linux.md new file mode 100644 index 0000000000..9ab87352ec --- /dev/null +++ b/sources/tech/20141023 What is a good command-line calculator on Linux.md @@ -0,0 +1,115 @@ +What is a good command-line calculator on Linux +================================================================================ +Every modern Linux desktop distribution comes with a default GUI-based calculator app. On the other hand, if your workspace is full of terminal windows, and you would rather crunch some numbers within one of those terminals quickly, you are probably looking for a **command-line calculator**. In this category, [GNU bc][1] (short for "basic calculator") is a hard to beat one. While there are many command-line calculators available on Linux, I think GNU bc is hands-down the most powerful and useful. + +Predating the GNU era, bc is actually a historically famous arbitrary precision calculator language, with its first implementation dating back to the old Unix days in 1970s. Initially bc was a better known as a programming language whose syntax is similar to C language. Over time the original bc evolved into POSIX bc, and then finally GNU bc of today. + +### Features of GNU bc ### + +Today's GNU bc is a result of many enhancements of earlier implementations of bc, and now it comes standard on all major GNU/Linux distros. It supports standard arithmetic operators with arbitrary precision numbers, and multiple numeric base (e.g., binary, decimal hexadecimal) of input and output. + +If you are familiar with C language, you will see that the same or similar mathematical operators are used in bc. Some of supported operators include arithmetic (+,-,*,/,%,++,--), comparison (<,>,==,!=,<=,>=), logical (!,&&,||), bitwise (&,|,^,~,<<,>>), compound assignment (+=,-=,*=,/=,%=,&=,|=,^=,&&=,||=,<<=,>>=) operators. bc comes with many useful built-in functions such as square root, sine, cosine, arctangent, natural logarithm, exponential, etc. + +### How to Use GNU bc ### + +As a command-line calculator, possible use cases of GNU bc are virtually limitless. In this tutorial, I am going to describe a few popular features of bc command. For a complete manual, refer to the [official source][2]. + +Unless you have a pre-written bc script, you typically run bc in interactive mode, where any typed statement or expression terminated with a newline is interpreted and executed on the spot. Simply type the following to enter an interactive bc session. To quit a session, type 'quit' and press Enter. + + $ bc + +![](https://farm4.staticflickr.com/3939/15403325480_d0db97d427_z.jpg) + +The examples presented in the rest of the tutorial are supposed to be typed inside a bc session. + +### Type expressions ### + +To calculate an arithmatic expression, simply type the expression at the blinking cursor, and press Enter. If you want, you can store an intermediate result to a variable, then access the variable in other expressions. + +![](https://farm6.staticflickr.com/5604/15403325460_b004b3f8da_o.png) + +Within a given session, bc maintains a unlimited history of previously typed lines. Simply use UP arrow key to retrieve previously typed lines. If you want to limit the number of lines to keep in the history, assign that number to a special variable named history. By default the variable is set to -1, meaning "unlimited." + +### Switch input/output base ### + +Often times you want to type input expressions and display results in binary or hexadecimal formats. For that, bc allows you switch the numeric base of input or output numbers. Input and output bases are stored in ibase and obase, respectively. The default value of these special variables is 10, and valid values are 2 through 16 (or the value of BC_BASE_MAX environment variable in case of obase). To switch numeric base, all you have to do is to change the values of ibase and obase. For example, here are examples of summing up two hexadecimal/binary numbers: + +![](https://farm6.staticflickr.com/5604/15402320019_f01325f199_z.jpg) + +Note that I specify obase=16 before ibase=16, not vice versa. That is because if I specified ibase=16 first, the subsequent obase=16 statement would be interpreted as assigning 16 in base 16 to obase (i.e., 22 in decimal), which is not what we want. + +### Adjust precision ### + +In bc, the precision of numbers is stored in a special variable named scale. This variable represents the number of decimal digits after the decimal point. By default, scale is set to 0, which means that all numbers and results and truncated/stored in integers. To adjust the default precision, all you have to do is to change the value of scale variable. + + scale=4 + +![](https://farm6.staticflickr.com/5597/15586279541_211312597b.jpg) + +### Use built-in functions ### + +Beyond simple arithmatic operations, GNU bc offers a wide range of advanced mathematical functions built-in, via an external math library. To use those functions, launch bc with "-l" option from the command line. + +Some of these built-in functions are illustrated here. + +Square root of N: + + sqrt(N) + +Sine of X (X is in radians): + + s(X) + +Cosine of X (X is in radian): + + c(X) + +Arctangent of X (The returned value is in radian): + + a(X) + +Natural logarithm of X: + + l(X) + +Exponential function of X: + + e(X) + +### Other goodies as a language ### + +As a full-blow calculator language, GNU bc supports simple statements (e.g., variable assignment, break, return), compound statements (e.g., if, while, for loop), and custom function definitions. I am not going to cover the details of these features, but you can easily learn how to use them from the [official manual][2]. Here is a very simple function definition example: + + define dummy(x){ + return(x * x); + } + dummy(9) + 81 + dummy(4) + 16 + +### Use GNU bc Non-interactively ### + +So far we have used bc within an interactive session. However, quite popular use cases of bc in fact involve running bc within a shell script non-interactively. In this case, you can send input to bc using echo through a pipe. For example: + + $ echo "40*5" | bc + $ echo "scale=4; 10/3" | bc + $ echo "obase=16; ibase=2; 11101101101100010" | bc + +![](https://farm4.staticflickr.com/3943/15565252976_f50f453c7f_z.jpg) + +To conclude, GNU bc is a powerful and versatile command-line calculator that really lives up to your expectation. Preloaded on all modern Linux distributions, bc can make your number crunching tasks much easy to handle without leaving your terminals. For that, GNU bc should definitely be in your productivity toolset. + +-------------------------------------------------------------------------------- + +via: http://xmodulo.com/command-line-calculator-linux.html + +作者:[Dan Nanni][a] +译者:[译者ID](https://github.com/译者ID) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[a]:http://xmodulo.com/author/nanni +[1]:http://www.gnu.org/software/bc/ +[2]:https://www.gnu.org/software/bc/manual/bc.html \ No newline at end of file From fa54c245dc8958e8702b7ba1bce7cc35465f0efa Mon Sep 17 00:00:00 2001 From: carolinewuyan <309866211@qq.com> Date: Thu, 23 Oct 2014 11:19:45 +0800 Subject: [PATCH 006/108] =?UTF-8?q?=E5=B7=B2=E6=A0=A1=E5=AF=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ... And Portable Package Management System.md | 27 ++++++++++--------- 1 file changed, 14 insertions(+), 13 deletions(-) diff --git a/translated/tech/20140724 Camicri Cube--An Offline And Portable Package Management System.md b/translated/tech/20140724 Camicri Cube--An Offline And Portable Package Management System.md index d861edf3f8..80a98b928e 100644 --- a/translated/tech/20140724 Camicri Cube--An Offline And Portable Package Management System.md +++ b/translated/tech/20140724 Camicri Cube--An Offline And Portable Package Management System.md @@ -2,11 +2,11 @@ Camicri Cube: 可离线的便携包管理系统 ================================================================================ ![](http://180016988.r.cdn77.net/wp-content/uploads/2014/07/camicri-cube-206x205.jpg) -众所周知,在系统中使用新立德包管理工具或软件中包管理工具来下载和安装应用程序的时候,我们必须得有互联网连接。但,如果您刚好没有网络或者是网络速度死慢死慢的呢?在您的 Linux 桌面系统中使用软件中心包管理工具来安装软件这绝对是一个头痛的问题。这种情况,您只能从相应的官网上手工下载应用程序包,并手工安装。但是,大多数的 Linux 用户并不知道他们希望安装的应用程序所需要的依赖关系包。如果您恰巧出现这种情况,应用怎么办呢?现在一切都不用担心了。今天,我们给您介绍一款非常棒的名叫 **Camicri Cube** 的离线包管理工具。 +众所周知,在系统中使用新立得包管理工具或软件中心下载和安装应用程序的时候,我们必须得有互联网连接。但,如果您刚好没有网络或者是网络速度死慢死慢的呢?在您的 Linux 桌面系统中使用软件中心包管理工具来安装软件绝对是一个头痛的问题。反而,您可以从相应的官网上手工下载应用程序包并手工安装。但是,大多数的 Linux 用户并不知道他们希望安装的应用程序所需要的依赖关系包。如果您恰巧出现这种情况,应用怎么办呢?现在一切都不用担心了。今天,我们给您介绍一款非常棒的名叫 **Camicri Cube** 的离线包管理工具。 -您可以把此包管理工具装在联网的系统上,下载您所需要安装的软件,然后把他们安装到没联网的机器上,就可以安装了。听起来很不错吧?是的,它就是这样操作的。Cube 是一款像新立德和 Ubuntu 软件中心这样的包管理工具,但是一款便携式的。它在任何平台(Windows 系统、基于 Apt 的 Linux 发布系统)、在线状态、离线状态、在闪存或任何可移动设备上都是可以使用和运行的。我们这个实验项目的主要目的是使处在离线状态的 Linux 用户能很容易的下载和安装 Linux 应用程序。 +您可以把此包管理工具装在任何联网的系统上,下载您所需要安装的软件列表,然后把它们安装到没联网的机器上,就可以安装了。听起来很不错吧?是的,它就是这样操作的。Cube 是一款像新立得和 Ubuntu 软件中心这样的包管理工具,但是一款便携式的。它在任何平台(Windows 系统、基于 Apt 的 Linux 发布系统)、在线状态、离线状态、在闪存或任何可移动设备上都是可以使用和运行的。我们这个实验项目的主要目的是使处在离线状态的 Linux 用户能很容易的下载和安装 Linux 应用程序。 -Cube 会收集您的离线电脑的完整的详细信息,如操作系统的详细信息、安装的应用程序等等。然后使用 USB 迷你盘对 cube 应用程序进行拷贝得到一副本,把其放在其它有网络连接的系统上使用,接着就可以下载您需要的应用程序包。下载完所有需要的软件包之后,回到您原来的计算机,并开始安装。Cube 是由 **Jake Capangpangan** 开发和维护的,是用 C++ 语言编写,而且已经集成了所有必须的包。因此,要使用它并不需要再安装其它额外的软件。 +Cube 会收集您的离线电脑的详细信息,如操作系统的详细信息、安装的应用程序等等。然后使用 USB 迷你盘对 cube 应用程序进行拷贝,得到一副本,把其放在其它有网络连接的系统上使用,接着就可以下载您需要的应用程序列表。下载完所有需要的软件包之后,回到您原来的计算机,并开始安装。Cube 是由 **Jake Capangpangan** 开发和维护的,是用 C++ 语言编写,而且已经集成了所有必须的包。因此,使用它并不需要再安装任何额外的软件。 ### 安装 ### @@ -22,7 +22,7 @@ Cube 会收集您的离线电脑的完整的详细信息,如操作系统的详 ### 使用 ### -这儿,我使用的的是两台装有 Ubuntu 系统的机器。原机器(离线-没有网络连接)上面跑着的是 **Ubuntu 14.04** 系统,有网络连接的机器跑着的是 **Lubuntu 14.04** 桌面系统。 +这儿,我使用的是两台装有 Ubuntu 系统的机器。原机器(离线-没有网络连接)上面跑着的是 **Ubuntu 14.04** 系统,有网络连接的机器跑着的是 **Lubuntu 14.04** 桌面系统。 #### 离线系统上的操作步骤: #### @@ -75,7 +75,7 @@ Cube 会收集您的离线电脑的完整的详细信息,如操作系统的详 ![](http://180016988.r.cdn77.net/wp-content/uploads/2014/07/Cube-Startup-Create-or-choose-a-project-to-be-managed_0014.png) -随后,cube 会询问这是否是您的项目所在的源机器。它并不是我们的源(离线)机器,所以我点击 **No**。 +随后,cube 会询问这是否是您的项目所在的源机器。它并不是我的源(离线)机器,所以我点击 **No**。 ![](http://180016988.r.cdn77.net/wp-content/uploads/2014/07/Camicri-Systems-%C2%A9-Cube-Portable-Package-Manager-1.0.9.2-sk_0024.png) @@ -95,7 +95,7 @@ Cube 会收集您的离线电脑的完整的详细信息,如操作系统的详 #### 下载新的应用程序 #### -例如,这儿我想下载 **apache2** 包。在**搜索**框里输入包的名字,点击搜索按纽。Cube 程序会获取您想查找的应用程序的详细信息。点击 “**Download this package now**”按纽,接着点击 **OK** 就开始下载了。 +例如,现在我想下载 **apache2** 包。在**搜索**框里输入包的名字,点击搜索按纽。Cube 程序会获取您想查找的应用程序的详细信息。点击 “**Download this package now**”按纽,接着点击 **OK** 就开始下载了。 ![](http://180016988.r.cdn77.net/wp-content/uploads/2014/07/Camicri-Systems-%C2%A9-Cube-Portable-Package-Manager-1.0.9.2-sk_008.png) @@ -136,7 +136,7 @@ Cube 将会下载 apache2 的安装包及所有的依赖包。 ![](http://180016988.r.cdn77.net/wp-content/uploads/2014/07/Camicri-Systems-%C2%A9-Cube-Portable-Package-Manager-1.0.9.2-sk_0035.png) -然后选中某个特定的包,点击 “Install this”按纽来安装或者如果想过后再安装它的话可以先点击 “Mark this” 按纽。 +然后双击某个特定的包,点击 “Install this”按纽来安装或者如果想过后再安装它的话可以先点击 “Mark this” 按纽。 ![](http://180016988.r.cdn77.net/wp-content/uploads/2014/07/Camicri-Systems-%C2%A9-Cube-Portable-Package-Manager-1.0.9.2-sk_0043.png) @@ -144,21 +144,22 @@ Cube 将会下载 apache2 的安装包及所有的依赖包。 ### 结论 ### -这是我曾经使用过的一款最好、最有用的软件工具。但我在用 Ubuntu 14.04 测试盒子测试的时候,遇到了很多依赖问题,还经常会出现闪退的情况。也仅仅是在最新 Ubuntu 14.04 离线系统上使用没有遇到任何问题。希望这些问题在老版本的 Ubuntu 上不会发生。除了这些小问题,这个小工具对作向外推荐以及本职工作这些方面显得魅力十足。 +这是我曾经使用过的最好、最有用的软件工具之一。但我在用 Ubuntu 14.04 测试盒子测试的时候,遇到了很多依赖问题,还经常会出现闪退的情况。也仅仅是在最新 Ubuntu 14.04 离线系统上使用没有遇到任何问题。希望这些问题在老版本的 Ubuntu 上不会发生。除了这些小问题,这个小工具就如同宣传的一样,像魔法一样神奇。 欢呼吧! --------------------------------------------------------------------------------- - -via: http://www.unixmen.com/camicri-cube-offline-portable-package-management-system/ 原文作者: ![](http://1.gravatar.com/avatar/1ba62ac2b395f541750b6b4f873eb37b?s=70&d=monsterid&r=G) -[SK][a](Senthilkumar,又名SK,来自于印度的泰米尔纳德邦,Linux 爱好者,FOSS 论坛支持者和 Linux 板块顾问。一个充满激情和活力的人,致力于提供高质量的 IT 专业文章,非常喜欢写作和对 Linux、开源、电脑和互联网等新事物的探索。) +[SK][a](Senthilkumar,又名SK,来自于印度的泰米尔纳德邦,Linux 爱好者,FOSS 论坛支持者和 Linux 板块顾问。一个充满激情和活力的人,致力于提供高质量的 IT 专业文章,非常喜欢写作以及探索 Linux、开源、电脑和互联网等新事物。) -译者:[runningwater](https://github.com/runningwater) 校对:[校对者ID](https://github.com/校对者ID) +-------------------------------------------------------------------------------- + +via: http://www.unixmen.com/camicri-cube-offline-portable-package-management-system/ + +译者:[runningwater](https://github.com/runningwater) 校对:[Caroline](https://github.com/carolinewuyan) 本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 From f82a7159a5f69a2beee7c779eb62b6267437be68 Mon Sep 17 00:00:00 2001 From: DeadFire Date: Thu, 23 Oct 2014 11:29:05 +0800 Subject: [PATCH 007/108] =?UTF-8?q?20141023-2=20=E9=80=89=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...20141023 6 Minesweeper Clones for Linux.md | 52 +++++++++++++++++++ 1 file changed, 52 insertions(+) create mode 100644 sources/share/20141023 6 Minesweeper Clones for Linux.md diff --git a/sources/share/20141023 6 Minesweeper Clones for Linux.md b/sources/share/20141023 6 Minesweeper Clones for Linux.md new file mode 100644 index 0000000000..7cd30dc51c --- /dev/null +++ b/sources/share/20141023 6 Minesweeper Clones for Linux.md @@ -0,0 +1,52 @@ +6 Minesweeper Clones for Linux +================================================================================ +### GNOME Mines ### + +This is the GNOME Minesweeper clone, allowing you to choose from three different pre-defined table sizes (8×8, 16×16, 30×16) or a custom number of rows and columns. It can be ran in fullscreen mode, comes with highscores, elapsed time and hints. The game can be paused and resumed. + +![](http://www.tuxarena.com/wp-content/uploads/2014/10/gnome-mines1.jpg) + +### ace-minesweeper ### + +This is part of a package that contains some other games too, like ace-freecel, ace-solitaire or ace-spider. It has a graphical interface featuring Tux, but doesn’t seem to come with different table sizes. The package is called ace-of-penguins in Ubuntu. + +![](http://www.tuxarena.com/wp-content/uploads/2014/10/ace-minesweeper.jpg) + +### XBomb ### + +XBomb is a mines game for the X Window System with three different table sizes and tiles which can take different shapes: hexagonal, rectangular (traditional) or triangular. Unfortunately the current version in Ubuntu 14.04 crashes with a segmentation fault, so you may need to install another version to make it work. +[Homepage][1] + +![](http://www.tuxarena.com/wp-content/uploads/2014/10/xbomb.png) + +([Image credit][1]) + +### KMines ### + +KMines is the a KDE game, and just like GNOME Mines, there are three built-in table sizes (easy, medium, hard) and custom, support for themes and highscores. + +![](http://www.tuxarena.com/wp-content/uploads/2014/10/kmines.jpg) + +### freesweep ### + +Freesweep is a Minesweeper clone for the terminal which allows you to configure settings such as table rows and columns, percentage of bombs, colors and also has a highscores table. + +![](http://www.tuxarena.com/wp-content/uploads/2014/10/freesweep.jpg) + +### xdemineur ### + +Another graphical Minesweeper clone for X, Xdemineur is very much alike Ace-Minesweeper, with one predefined table size. + +![](http://www.tuxarena.com/wp-content/uploads/2014/10/xdemineur.jpg) + +-------------------------------------------------------------------------------- + +via: http://www.tuxarena.com/2014/10/6-minesweeper-clones-for-linux/ + +作者:Craciun Dan +译者:[译者ID](https://github.com/译者ID) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[1]:http://www.gedanken.org.uk/software/xbomb/ \ No newline at end of file From af1e9608ffc68851fe7111abf3e25f77c769b116 Mon Sep 17 00:00:00 2001 From: carolinewuyan <309866211@qq.com> Date: Thu, 23 Oct 2014 13:38:19 +0800 Subject: [PATCH 008/108] =?UTF-8?q?=E5=B7=B2=E5=8F=91=E5=B8=83?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...cri Cube--An Offline And Portable Package Management System.md | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename {translated/tech => published}/20140724 Camicri Cube--An Offline And Portable Package Management System.md (100%) diff --git a/translated/tech/20140724 Camicri Cube--An Offline And Portable Package Management System.md b/published/20140724 Camicri Cube--An Offline And Portable Package Management System.md similarity index 100% rename from translated/tech/20140724 Camicri Cube--An Offline And Portable Package Management System.md rename to published/20140724 Camicri Cube--An Offline And Portable Package Management System.md From ce7258a4e9176a199f064b05b883b00f5e9f541a Mon Sep 17 00:00:00 2001 From: jabirus Date: Thu, 23 Oct 2014 14:01:48 +0800 Subject: [PATCH 009/108] Second para --- ...rt Linux--Hacking on Linux Since Age 16.md | 55 ++++++++++--------- 1 file changed, 28 insertions(+), 27 deletions(-) diff --git a/sources/talk/20140702 The People Who Support Linux--Hacking on Linux Since Age 16.md b/sources/talk/20140702 The People Who Support Linux--Hacking on Linux Since Age 16.md index 5fd7c8ad24..25e8f3803a 100644 --- a/sources/talk/20140702 The People Who Support Linux--Hacking on Linux Since Age 16.md +++ b/sources/talk/20140702 The People Who Support Linux--Hacking on Linux Since Age 16.md @@ -1,18 +1,18 @@ **Translating by jabirus...** -The People Who Support Linux: Hacking on Linux Since Age 16 -================================================================================ +# The People Who Support Linux: Hacking on Linux Since Age 16 -一个 Linux 支持者:从 16 岁开始在 Linux 上 hack -================================================================================ +# 一个 Linux 支持者:从 16 岁开始在 Linux 上 hacking -![](http://www.linux.com/images/stories/41373/Yitao-Li.png) +![][0] ->Pretty much all of the projects in software developer [Yitao Li's GitHub repository][1] were developed on his Linux machine. None of them are necessarily Linux-specific, he says, but he uses Linux for “everything.” +> Pretty much all of the projects in software developer [> Yitao Li's GitHub repository][1]> were developed on his Linux machine. None of them are necessarily Linux-specific, he says, but he uses Linux for “everything.” + +在软件开发者[李逸韬的 GitHub 仓库][1]中,有相当多的项目是在他的 Linux 机器上开发完成的。它们没有一个是必须特定需要 Linux 的,但李逸韬说他使用 Linux 来做”任何事情“。 + +>For example: “coding / scripting, web browsing, web hosting, anything cloud-related, sending / receiving PGP signed emails, tweaking IP table rules, flashing OpenWrt image into routers, running one version of Linux kernel while compiling another version, doing research, doing homework (e.g., typing math equations in Tex), and many others...” Li said via email. -在软件开发者[李逸韬的 GitHub 仓库][1]中,相当多的项目是在他的 Linux 机器上完成的。它们没有一个是必须特定需要 Linux 的,但李逸韬说他使用 Linux 来做”任何事情“。 -For example: “coding / scripting, web browsing, web hosting, anything cloud-related, sending / receiving PGP signed emails, tweaking IP table rules, flashing OpenWrt image into routers, running one version of Linux kernel while compiling another version, doing research, doing homework (e.g., typing math equations in Tex), and many others...” Li said via email. Of all the projects in his repository his favorite is a school project developed in C++ with libpthread and libfuse to understand and correctly implement PAXOS-based distributed locking, key-value service, and eventually a distributed filesystem. He tested it using a number of test scripts on both single-core and multi-core machines. @@ -22,33 +22,34 @@ Li first started using Linux at age 16, or about 7.47 years ago, he says, using “1. Linux is very hacker-friendly and I do not see any reason for not using it,” he writes. “2. The prefrontal cortex of the brain becoming well-developed at age 16 (?).” -[![](http://www.linux.com/images/stories/41373/ldc_peop_linux.png)][3] +[![](https://www.linuxfoundation.org/about/join/individual)](http://www.linux.com/images/stories/41373/ldc_peop_linux.png) -He now works for eBay, mostly coding in Java but working sometimes with Hadoop, Pig, Zookeeper, Cassandra, MongoDB, and other software that requires a POSIX-compliant platform. He supports the Linux community by contributing to Wikipedia pages and forums on Linux-related subjects. And by becoming an individual member of The Linux Foundation. +[He now works for eBay, mostly coding in Java but working sometimes with Hadoop, Pig, Zookeeper, Cassandra, MongoDB, and other software that requires a POSIX-compliant platform. He supports the Linux community by contributing to Wikipedia pages and forums on Linux-related subjects. And by becoming an individual member of The Linux Foundation. He keeps up with the latest Linux developments and has recently been impressed by the new "-fstack-protector-strong" option for GCC 4.9 and later. “It's not directly related to any of my projects, but it was important for both security and performance reasons,” he said. “It's much more efficient than "-fstack-protector-all" with little impact on security, while providing better stack-overflow protection coverage compared to that of the "-fstack-protector" option.” Welcome to the Linux Foundation Yitao!][3] -He keeps up with the latest Linux developments and has recently been impressed by the new "-fstack-protector-strong" option for GCC 4.9 and later. +[Learn more about becoming an][3][individual member of The Linux Foundation][4]. The foundation will donate $25 to Code.org for every new individual member who joins during June. -“It's not directly related to any of my projects, but it was important for both security and performance reasons,” he said. “It's much more efficient than "-fstack-protector-all" with little impact on security, while providing better stack-overflow protection coverage compared to that of the "-fstack-protector" option.” +- - - -Welcome to the Linux Foundation Yitao! +![][5] -Learn more about becoming an [individual member of The Linux Foundation][3]. The foundation will donate $25 to Code.org for every new individual member who joins during June. +[Libby Clark][6] ----------- - -![](http://www.linux.com/community/forums/avatar/41373/catid/200-libby-clark/thumbnail/large/cache/1331753338) - -[Libby Clark][4] - --------------------------------------------------------------------------------- +- - - via: http://www.linux.com/news/featured-blogs/200-libby-clark/778559-the-people-who-support-linux-hacking-on-linux-since-age-16 -译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID) +译者:[译者ID][7] 校对:[校对者ID][8] -本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 +本文由 [LCTT][9] 原创翻译,[Linux中国][10] 荣誉推出 -[1]:https://github.com/yl790 -[2]:http://linuxfromscratch.org/ -[3]:https://www.linuxfoundation.org/about/join/individual -[4]:http://www.linux.com/community/forums/person/41373/catid/200-libby-clark +[0]: http://www.linux.com/images/stories/41373/Yitao-Li.png +[1]: https://github.com/yl790 +[2]: http://linuxfromscratch.org/ +[3]: http://www.linux.com/images/stories/41373/ldc_peop_linux.png +[4]: https://www.linuxfoundation.org/about/join/individual +[5]: http://www.linux.com/community/forums/avatar/41373/catid/200-libby-clark/thumbnail/large/cache/1331753338 +[6]: http://www.linux.com/community/forums/person/41373/catid/200-libby-clark +[7]: https://github.com/译者ID +[8]: https://github.com/校对者ID +[9]: https://github.com/LCTT/TranslateProject +[10]: http://linux.cn/ \ No newline at end of file From 02420cdab1ab0a93109b2870444a348a5c440493 Mon Sep 17 00:00:00 2001 From: jabirus Date: Thu, 23 Oct 2014 14:15:43 +0800 Subject: [PATCH 010/108] rolling back --- ...rt Linux--Hacking on Linux Since Age 16.md | 55 +++++++++---------- 1 file changed, 27 insertions(+), 28 deletions(-) diff --git a/sources/talk/20140702 The People Who Support Linux--Hacking on Linux Since Age 16.md b/sources/talk/20140702 The People Who Support Linux--Hacking on Linux Since Age 16.md index 25e8f3803a..06a8eefc13 100644 --- a/sources/talk/20140702 The People Who Support Linux--Hacking on Linux Since Age 16.md +++ b/sources/talk/20140702 The People Who Support Linux--Hacking on Linux Since Age 16.md @@ -1,18 +1,18 @@ **Translating by jabirus...** -# The People Who Support Linux: Hacking on Linux Since Age 16 +The People Who Support Linux: Hacking on Linux Since Age 16 +================================================================================ -# 一个 Linux 支持者:从 16 岁开始在 Linux 上 hacking +一个 Linux 支持者:从 16 岁开始在 Linux 上 hack +================================================================================ -![][0] +![](http://www.linux.com/images/stories/41373/Yitao-Li.png) -> Pretty much all of the projects in software developer [> Yitao Li's GitHub repository][1]> were developed on his Linux machine. None of them are necessarily Linux-specific, he says, but he uses Linux for “everything.” - -在软件开发者[李逸韬的 GitHub 仓库][1]中,有相当多的项目是在他的 Linux 机器上开发完成的。它们没有一个是必须特定需要 Linux 的,但李逸韬说他使用 Linux 来做”任何事情“。 - ->For example: “coding / scripting, web browsing, web hosting, anything cloud-related, sending / receiving PGP signed emails, tweaking IP table rules, flashing OpenWrt image into routers, running one version of Linux kernel while compiling another version, doing research, doing homework (e.g., typing math equations in Tex), and many others...” Li said via email. +>Pretty much all of the projects in software developer [Yitao Li's GitHub repository][1] were developed on his Linux machine. None of them are necessarily Linux-specific, he says, but he uses Linux for “everything.” +在软件开发者[李逸韬的 GitHub 仓库][1]中,相当多的项目是在他的 Linux 机器上完成的。它们没有一个是必须特定需要 Linux 的,但李逸韬说他使用 Linux 来做”任何事情“。 +For example: “coding / scripting, web browsing, web hosting, anything cloud-related, sending / receiving PGP signed emails, tweaking IP table rules, flashing OpenWrt image into routers, running one version of Linux kernel while compiling another version, doing research, doing homework (e.g., typing math equations in Tex), and many others...” Li said via email. Of all the projects in his repository his favorite is a school project developed in C++ with libpthread and libfuse to understand and correctly implement PAXOS-based distributed locking, key-value service, and eventually a distributed filesystem. He tested it using a number of test scripts on both single-core and multi-core machines. @@ -22,34 +22,33 @@ Li first started using Linux at age 16, or about 7.47 years ago, he says, using “1. Linux is very hacker-friendly and I do not see any reason for not using it,” he writes. “2. The prefrontal cortex of the brain becoming well-developed at age 16 (?).” -[![](https://www.linuxfoundation.org/about/join/individual)](http://www.linux.com/images/stories/41373/ldc_peop_linux.png) +[![](http://www.linux.com/images/stories/41373/ldc_peop_linux.png)][3] -[He now works for eBay, mostly coding in Java but working sometimes with Hadoop, Pig, Zookeeper, Cassandra, MongoDB, and other software that requires a POSIX-compliant platform. He supports the Linux community by contributing to Wikipedia pages and forums on Linux-related subjects. And by becoming an individual member of The Linux Foundation. He keeps up with the latest Linux developments and has recently been impressed by the new "-fstack-protector-strong" option for GCC 4.9 and later. “It's not directly related to any of my projects, but it was important for both security and performance reasons,” he said. “It's much more efficient than "-fstack-protector-all" with little impact on security, while providing better stack-overflow protection coverage compared to that of the "-fstack-protector" option.” Welcome to the Linux Foundation Yitao!][3] +He now works for eBay, mostly coding in Java but working sometimes with Hadoop, Pig, Zookeeper, Cassandra, MongoDB, and other software that requires a POSIX-compliant platform. He supports the Linux community by contributing to Wikipedia pages and forums on Linux-related subjects. And by becoming an individual member of The Linux Foundation. -[Learn more about becoming an][3][individual member of The Linux Foundation][4]. The foundation will donate $25 to Code.org for every new individual member who joins during June. +He keeps up with the latest Linux developments and has recently been impressed by the new "-fstack-protector-strong" option for GCC 4.9 and later. -- - - +“It's not directly related to any of my projects, but it was important for both security and performance reasons,” he said. “It's much more efficient than "-fstack-protector-all" with little impact on security, while providing better stack-overflow protection coverage compared to that of the "-fstack-protector" option.” -![][5] +Welcome to the Linux Foundation Yitao! -[Libby Clark][6] +Learn more about becoming an [individual member of The Linux Foundation][3]. The foundation will donate $25 to Code.org for every new individual member who joins during June. -- - - +---------- + +![](http://www.linux.com/community/forums/avatar/41373/catid/200-libby-clark/thumbnail/large/cache/1331753338) + +[Libby Clark][4] + +-------------------------------------------------------------------------------- via: http://www.linux.com/news/featured-blogs/200-libby-clark/778559-the-people-who-support-linux-hacking-on-linux-since-age-16 -译者:[译者ID][7] 校对:[校对者ID][8] +译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID) -本文由 [LCTT][9] 原创翻译,[Linux中国][10] 荣誉推出 +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 -[0]: http://www.linux.com/images/stories/41373/Yitao-Li.png -[1]: https://github.com/yl790 -[2]: http://linuxfromscratch.org/ -[3]: http://www.linux.com/images/stories/41373/ldc_peop_linux.png -[4]: https://www.linuxfoundation.org/about/join/individual -[5]: http://www.linux.com/community/forums/avatar/41373/catid/200-libby-clark/thumbnail/large/cache/1331753338 -[6]: http://www.linux.com/community/forums/person/41373/catid/200-libby-clark -[7]: https://github.com/译者ID -[8]: https://github.com/校对者ID -[9]: https://github.com/LCTT/TranslateProject -[10]: http://linux.cn/ \ No newline at end of file +[1]:https://github.com/yl790 +[2]:http://linuxfromscratch.org/ +[3]:https://www.linuxfoundation.org/about/join/individual +[4]:http://www.linux.com/community/forums/person/41373/catid/200-libby-clark \ No newline at end of file From 2f5022e9a7030c6b662dcbf2b4407107236685c1 Mon Sep 17 00:00:00 2001 From: ZTinoZ Date: Thu, 23 Oct 2014 15:57:11 +0800 Subject: [PATCH 011/108] Update 20141017 Linus Torvalds Regrets Alienating Developers with Strong Language.md --- ...valds Regrets Alienating Developers with Strong Language.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sources/news/20141017 Linus Torvalds Regrets Alienating Developers with Strong Language.md b/sources/news/20141017 Linus Torvalds Regrets Alienating Developers with Strong Language.md index caee147917..b68395bf7e 100644 --- a/sources/news/20141017 Linus Torvalds Regrets Alienating Developers with Strong Language.md +++ b/sources/news/20141017 Linus Torvalds Regrets Alienating Developers with Strong Language.md @@ -1,3 +1,4 @@ +Translating by ZTinoZ Linus Torvalds Regrets Alienating Developers with Strong Language ================================================================================ > He didn't name anyone, but this sounds like an apology @@ -32,4 +33,4 @@ via: http://news.softpedia.com/news/Linus-Torvalds-Regrets-Alienating-Developers [a]:http://news.softpedia.com/editors/browse/silviu-stahie [1]:http://news.softpedia.com/news/Linus-Torvalds-Block-All-Code-from-Systemd-Developer-for-the-Linux-Kernel-435714.shtml -[2]:http://www.linux.com/news/featured-blogs/200-libby-clark/791788-linus-torvalds-best-quotes-from-linuxcon-europe-2014 \ No newline at end of file +[2]:http://www.linux.com/news/featured-blogs/200-libby-clark/791788-linus-torvalds-best-quotes-from-linuxcon-europe-2014 From f350673c854d335214f58bdf8da4a26584f91e3b Mon Sep 17 00:00:00 2001 From: DeadFire Date: Thu, 23 Oct 2014 16:25:29 +0800 Subject: [PATCH 012/108] =?UTF-8?q?20141023-3=20=E9=80=89=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...of Changes and Fixes for POODLE Exploit.md | 43 +++ ...ntOS box into a BGP router using Quagga.md | 312 ++++++++++++++++++ 2 files changed, 355 insertions(+) create mode 100644 sources/share/20141023 Claws Mail 3.11.0 Brings a Ton of Changes and Fixes for POODLE Exploit.md create mode 100644 sources/tech/20141023 How to turn your CentOS box into a BGP router using Quagga.md diff --git a/sources/share/20141023 Claws Mail 3.11.0 Brings a Ton of Changes and Fixes for POODLE Exploit.md b/sources/share/20141023 Claws Mail 3.11.0 Brings a Ton of Changes and Fixes for POODLE Exploit.md new file mode 100644 index 0000000000..dc041380b4 --- /dev/null +++ b/sources/share/20141023 Claws Mail 3.11.0 Brings a Ton of Changes and Fixes for POODLE Exploit.md @@ -0,0 +1,43 @@ +Claws Mail 3.11.0 Brings a Ton of Changes and Fixes for POODLE Exploit +================================================================================ +> This email client is getting better with each new release + +![](http://i1-news.softpedia-static.com/images/news2/Claws-Mail-3-11-0-Brings-a-Ton-of-Changes-and-Fix-for-POODLE-Exploit-462808-2.jpg) + +**Claws Mail is an open source email client that is fast, easy to use, and full of interesting features and that is gaining some traction in the Linux community. The developers have pushed another big update for this application and it would be a very good idea to upgrade.** + +Some users might not know this, but Claws Mail is actually a very old application. It's been around for more than 13 years, but it operated under the name of Sylpheed-Claws. It was forked a while back, and since then, the new project has managed to become a much better alternative. + +There are quite a few email clients for Linux right now and they are all fighting for supremacy, although it's been done in a very polite fashion. Claws Mail is now being integrated in quite a few Linux distros by default, and this is actually very good news for fans of the app. + +### What are some of the features in Claws Mail 3.11.0 ### + +Just like any other application that deals with online connections and online protocols, Claws Mail has also been affected by the recent vulnerabilities identified in the community, like POODLE for example. The developers had a very busy schedule and the changelog reflects this entirely. + +"A new version of the RSSyl plugin, completely redesigned and rewritten. Migration from the previous version is automatic, it has a new storage format in ~/.claws-mail/RSSyl/ (hierarchical directories instead of flat file format). It uses the expat library instead of libxml2 for parsing feed data." + +"Due to popular demand, use of the Up key in the message body in the Compose window stops at the top of the message body and does not continue up to the header fields. This reverts the behavior introduced in version 3.10.0," say the developers in the [announcement][1]. + +Also, users can relax now because the POODLE vulnerability has been closed in the email client, feat that has been achieved by disabling all the SSLv3 connections. + +The TAB address completion has also received some improvements and it should work much better, especially for New Messages, nagivation with the help of arrows has been tweaked, and numerous smaller enhancements have been made. + +The developers have repositories for most of the major distributions out there, but you can always install it from source. You can check the official announcement for more details about this release. + +Download the Claws Mail 3.11.0 source package, if you want to compile the software yourself. + +- [Claws Mail 3.11.0 tar.xz File size: 5.6 MB][2] + +-------------------------------------------------------------------------------- + +via: http://news.softpedia.com/news/Claws-Mail-3-11-0-Brings-a-Ton-of-Changes-and-Fix-for-POODLE-Exploit-462808.shtml + +作者:[Silviu Stahie][a] +译者:[译者ID](https://github.com/译者ID) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[a]:http://news.softpedia.com/editors/browse/silviu-stahie +[1]:http://www.claws-mail.org/news.php +[2]:http://sourceforge.net/projects/claws-mail/files/Claws%20Mail/3.11.0/claws-mail-3.11.0.tar.xz \ No newline at end of file diff --git a/sources/tech/20141023 How to turn your CentOS box into a BGP router using Quagga.md b/sources/tech/20141023 How to turn your CentOS box into a BGP router using Quagga.md new file mode 100644 index 0000000000..63bda4a215 --- /dev/null +++ b/sources/tech/20141023 How to turn your CentOS box into a BGP router using Quagga.md @@ -0,0 +1,312 @@ +How to turn your CentOS box into a BGP router using Quagga +================================================================================ +In a [previous tutorial][1](注:此文原文做过,文件名:“20140928 How to turn your CentOS box into an OSPF router using Quagga.md”,如果前面翻译发布了,可以修改此链接), I described how we can easily turn a Linux box into a fully-fledged OPSF router using Quagga, an open source routing software suite. In this tutorial, I will focus on **converting a Linux box into a BGP router, again using Quagga**, and demonstrate how to set up BGP peering with other BGP routers. + +Before we get into details, a little background on BGP may be useful. Border Gateway Protocol (or BGP) is the de-facto standard inter-domain routing protocol of the Internet. In BGP terminology, the global Internet is a collection of tens of thousands of interconnected Autonomous Systems (ASes), where each AS represents an administrative domain of networks managed by a particular provider. + +To make its networks globally routable, each AS needs to know how to reach all other ASes in the Internet. That is when BGP comes into play. BGP is the language used by an AS to exchange route information with other neighboring ASes. The route information, often called BGP routes or BGP prefixes, contains AS number (ASN; a globally unique number) and its associated IP address block(s). Once all BGP routes are learned and populated in local BGP routing tables, each AS will know how to reach any public IP addresses on the Internet. + +The ability to route across different domains (ASes) is the primary reason why BGP is called an Exterior Gateway Protocol (EGP) or inter-domain protocol. Whereas routing protocols such as OSPF, IS-IS, RIP and EIGRP are all Interior Gateway Protocols (IGPs) or intra-domain routing protocols. + +### Test Scenarios ### + +For this tutorial, let us consider the following topology. + +![](https://farm6.staticflickr.com/5598/15603223841_4c76343313_z.jpg) + +We assume that service provider A wants to establish a BGP peering with service provider B to exchange routes. The details of their AS and IP address spaces are like the following. + +- **Service provider A**: ASN (100), IP address space (100.100.0.0/22), IP address assigned to eth1 of a BGP router (100.100.1.1) +- **Service provider B**: ASN (200), IP address space (200.200.0.0/22), IP address assigned to eth1 of a BGP router (200.200.1.1) + +Router A and router B will be using the 100.100.0.0/30 subnet for connecting to each other. In theory, any subnet reachable from both service providers can be used for interconnection. In real life, it is advisable to use a /30 subnet from service provider A or service provider B's public IP address space. + +### Installing Quagga on CentOS ### + +If Quagga is not already installed, we install Quagga using yum. + + # yum install quagga + +If you are using CentOS 7, you need to apply the following policy change for SELinux. Otherwise, SELinux will prevent Zebra daemon from writing to its configuration directory. You can skip this step if you are using CentOS 6. + + # setsebool -P zebra_write_config 1 + +The Quagga software suite contains several daemons that work together. For BGP routing, we will focus on setting up the following two daemons. + +- **Zebra**: a core daemon responsible for kernel interfaces and static routes. +- **BGPd**: a BGP daemon. + +### Configuring Logging ### + +After Quagga is installed, the next step is to configure Zebra to manage network interfaces of BGP routers. We start by creating a Zebra configuration file and enabling logging. + + # cp /usr/share/doc/quagga-XXXXX/zebra.conf.sample /etc/quagga/zebra.conf + +On CentOS 6: + + # service zebra start + # chkconfig zebra on + +For CentOS 7: + + # systemctl start zebra + # systemctl enable zebra + +Quagga offers a dedicated command-line shell called vtysh, where you can type commands which are compatible with those supported by router vendors such as Cisco and Juniper. We will be using vtysh shell to configure BGP routers in the rest of the tutorial. + +To launch vtysh command shell, type: + + # vtysh + +The prompt will be changed to hostname, which indicates that you are inside vtysh shell. + + Router-A# + +Now we specify the log file for Zebra by using the following commands: + + Router-A# configure terminal + Router-A(config)# log file /var/log/quagga/quagga.log + Router-A(config)# exit + +Save Zebra configuration permanently: + + Router-A# write + +Repeat this process on Router-B as well. + +### Configuring Peering IP Addresses ### + +Next, we configure peering IP addresses on available interfaces. + + Router-A# show interface + +---------- + + Interface eth0 is up, line protocol detection is disabled + . . . . . + Interface eth1 is up, line protocol detection is disabled + . . . . . + +Configure eth0 interface's parameters: + + site-A-RTR# configure terminal + site-A-RTR(config)# interface eth0 + site-A-RTR(config-if)# ip address 100.100.0.1/30 + site-A-RTR(config-if)# description "to Router-B" + site-A-RTR(config-if)# no shutdown + site-A-RTR(config-if)# exit + +Go ahead and configure eth1 interface's parameters: + + site-A-RTR(config)# interface eth1 + site-A-RTR(config-if)# ip address 100.100.1.1/24 + site-A-RTR(config-if)# description "test ip from provider A network" + site-A-RTR(config-if)# no shutdown + site-A-RTR(config-if)# exit + +Now verify configuration: + + Router-A# show interface + +---------- + + Interface eth0 is up, line protocol detection is disabled + Description: "to Router-B" + inet 100.100.0.1/30 broadcast 100.100.0.3 + Interface eth1 is up, line protocol detection is disabled + Description: "test ip from provider A network" + inet 100.100.1.1/24 broadcast 100.100.1.255 + +---------- + + Router-A# show interface description + +---------- + + Interface Status Protocol Description + eth0 up unknown "to Router-B" + eth1 up unknown "test ip from provider A network" + +If everything looks alright, don't forget to save. + + Router-A# write + +Repeat to configure interfaces on Router-B as well. + +Before moving forward, verify that you can ping each other's IP address. + + Router-A# ping 100.100.0.2 + +---------- + + PING 100.100.0.2 (100.100.0.2) 56(84) bytes of data. + 64 bytes from 100.100.0.2: icmp_seq=1 ttl=64 time=0.616 ms + +Next, we will move on to configure BGP peering and prefix advertisement settings. + +### Configuring BGP Peering ### + +The Quagga daemon responsible for BGP is called bgpd. First, we will prepare its configuration file. + + # cp /usr/share/doc/quagga-XXXXXXX/bgpd.conf.sample /etc/quagga/bgpd.conf + +On CentOS 6: + + # service bgpd start + # chkconfig bgpd on + +For CentOS 7 + + # systemctl start bgpd + # systemctl enable bgpd + +Now, let's enter Quagga shell. + + # vtysh + +First verify that there are no configured BGP sessions. In some versions, you may find a BGP session with AS 7675. We will remove it as we don't need it. + + Router-A# show running-config + +---------- + + ... ... ... + router bgp 7675 + bgp router-id 200.200.1.1 + ... ... ... + +We will remove any pre-configured BPG session, and replace it with our own. + + Router-A# configure terminal + Router-A(config)# no router bgp 7675 + Router-A(config)# router bgp 100 + Router-A(config)# no auto-summary + Router-A(config)# no synchronizaiton + Router-A(config-router)# neighbor 100.100.0.2 remote-as 200 + Router-A(config-router)# neighbor 100.100.0.2 description "provider B" + Router-A(config-router)# exit + Router-A(config)# exit + Router-A# write + +Router-B should be configured in a similar way. The following configuration is provided as reference. + + Router-B# configure terminal + Router-B(config)# no router bgp 7675 + Router-B(config)# router bgp 200 + Router-B(config)# no auto-summary + Router-B(config)# no synchronizaiton + Router-B(config-router)# neighbor 100.100.0.1 remote-as 100 + Router-B(config-router)# neighbor 100.100.0.1 description "provider A" + Router-B(config-router)# exit + Router-B(config)# exit + Router-B# write + +When both routers are configured, a BGP peering between the two should be established. Let's verify that by running: + + Router-A# show ip bgp summary + +![](https://farm6.staticflickr.com/5614/15420135700_e3568d2e5f_z.jpg) + +In the output, we should look at the section "State/PfxRcd." If the peering is down, the output will show 'Idle' or 'Active'. Remember, the word 'Active' inside a router is always bad. It means that the router is actively seeking for a neighbor, prefix or route. When the peering is up, the output under "State/PfxRcd" should show the number of prefixes received from this particular neighbor. + +In this example output, the BGP peering is just up between AS 100 and AS 200. Thus no prefixes are being exchanged, and the number in the rightmost column is 0. + +### Configuring Prefix Advertisements ### + +As specified at the beginning, AS 100 will advertise a prefix 100.100.0.0/22, and AS 200 will advertise a prefix 200.200.0.0/22 in our example. Those prefixes need to be added to BGP configuration as follows. + +On Router-A: + + Router-A# configure terminal + Router-A(config)# router bgp 100 + Router-A(config)# network 100.100.0.0/22 + Router-A(config)# exit + Router-A# write + +On Router-B: + + Router-B# configure terminal + Router-B(config)# router bgp 200 + Router-B(config)# network 200.200.0.0/22 + Router-B(config)# exit + Router-B# write + +At this point, both routers should start advertising prefixes as required. + +### Testing Prefix Advertisements ### + +First of all, let's verify whether the number of prefixes has changed now. + + Router-A# show ip bgp summary + +![](https://farm6.staticflickr.com/5608/15419095659_0ebb384eee_z.jpg) + +To view more details on the prefixes being received, we can use the following command, which shows the total number of prefixes received from neighbor 100.100.0.2. + + Router-A# show ip bgp neighbors 100.100.0.2 advertised-routes + +![](https://farm6.staticflickr.com/5597/15419618208_4604e5639a_z.jpg) + +To check which prefixes we are receiving from that neighbor: + + Router-A# show ip bgp neighbors 100.100.0.2 routes + +![](https://farm4.staticflickr.com/3935/15606556462_e17eae7f49_z.jpg) + +We can also check all the BGP routes: + + Router-A# show ip bgp + +![](https://farm6.staticflickr.com/5609/15419618228_5c776423a5_z.jpg) + +These commands below can be used to check which routes in the routing table are learned via BGP. + + Router-A# show ip route + +---------- + + Codes: K - kernel route, C - connected, S - static, R - RIP, O - OSPF, + I - ISIS, B - BGP, > - selected route, * - FIB route + + C>* 100.100.0.0/30 is directly connected, eth0 + C>* 100.100.1.0/24 is directly connected, eth1 + B>* 200.200.0.0/22 [20/0] via 100.100.0.2, eth0, 00:06:45 + +---------- + + Router-A# show ip route bgp + +---------- + + B>* 200.200.0.0/22 [20/0] via 100.100.0.2, eth0, 00:08:13 + +The BGP-learned routes should also be present in the Linux routing table. + + [root@Router-A~]# ip route + +---------- + + 100.100.0.0/30 dev eth0 proto kernel scope link src 100.100.0.1 + 100.100.1.0/24 dev eth1 proto kernel scope link src 100.100.1.1 + 200.200.0.0/22 via 100.100.0.2 dev eth0 proto zebra + +Finally, we are going to test with ping command. ping should be successful. + + [root@Router-A~]# ping 200.200.1.1 -c 2 + +To sum up, this tutorial focused on how we can run basic BGP on a CentOS box. While this should get you started with BGP, there are other advanced settings such as prefix filters, BGP attribute tuning such as local preference and path prepend. I will be covering these topics in future tutorials. + +Hope this helps. + +-------------------------------------------------------------------------------- + +via: http://xmodulo.com/centos-bgp-router-quagga.html + +作者:[Sarmed Rahman][a] +译者:[译者ID](https://github.com/译者ID) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[a]:http://xmodulo.com/author/sarmed +[1]:http://xmodulo.com/turn-centos-box-into-ospf-router-quagga.html \ No newline at end of file From e80c4522a7ac735ded4307e8506f83ef4be83c83 Mon Sep 17 00:00:00 2001 From: jabirus Date: Thu, 23 Oct 2014 17:03:54 +0800 Subject: [PATCH 013/108] First Translation --- ...rt Linux--Hacking on Linux Since Age 16.md | 54 ++++++++++++++----- 1 file changed, 42 insertions(+), 12 deletions(-) diff --git a/sources/talk/20140702 The People Who Support Linux--Hacking on Linux Since Age 16.md b/sources/talk/20140702 The People Who Support Linux--Hacking on Linux Since Age 16.md index 06a8eefc13..3097d97047 100644 --- a/sources/talk/20140702 The People Who Support Linux--Hacking on Linux Since Age 16.md +++ b/sources/talk/20140702 The People Who Support Linux--Hacking on Linux Since Age 16.md @@ -10,29 +10,59 @@ The People Who Support Linux: Hacking on Linux Since Age 16 >Pretty much all of the projects in software developer [Yitao Li's GitHub repository][1] were developed on his Linux machine. None of them are necessarily Linux-specific, he says, but he uses Linux for “everything.” -在软件开发者[李逸韬的 GitHub 仓库][1]中,相当多的项目是在他的 Linux 机器上完成的。它们没有一个是必须特定需要 Linux 的,但李逸韬说他使用 Linux 来做”任何事情“。 +在软件开发者[Yitao Li (李逸韬) 的 GitHub 仓库][1]中,几乎所有的项目都是在他的 Linux 机器上完成的。它们没有一个是必须特定需要 Linux 的,但李逸韬说他使用 Linux 来做”任何事情“。 -For example: “coding / scripting, web browsing, web hosting, anything cloud-related, sending / receiving PGP signed emails, tweaking IP table rules, flashing OpenWrt image into routers, running one version of Linux kernel while compiling another version, doing research, doing homework (e.g., typing math equations in Tex), and many others...” Li said via email. +>For example: “coding / scripting, web browsing, web hosting, anything cloud-related, sending / receiving PGP signed emails, tweaking IP table rules, flashing OpenWrt image into routers, running one version of Linux kernel while compiling another version, doing research, doing homework (e.g., typing math equations in Tex), and many others...” Li said via email. -Of all the projects in his repository his favorite is a school project developed in C++ with libpthread and libfuse to understand and correctly implement PAXOS-based distributed locking, key-value service, and eventually a distributed filesystem. He tested it using a number of test scripts on both single-core and multi-core machines. +举些例子:“编码/脚本设计,网页浏览,网站托管,任何云相关的,发送/接受 PGP 签名的邮件,调整防火墙规则,把 OpenWrt 镜像刷入路由器,运行某版本的 Linux kernel 的同时编译另一个版本,从事研究,完成功课(例如,用 Tex 输入数学公式),以及其他许多......”Li 在邮件里如是说。 -“One can learn something about distributed consensus protocol by implementing the PAXOS protocol correctly (or at least mostly correctly) such that the implementation will pass all the tests,” he said. “And of course once that is accomplished, one can also earn some bragging rights. Besides, a distributed filesystem can be useful in many other programming projects.” +>Of all the projects in his repository his favorite is a school project developed in C++ with libpthread and libfuse to understand and correctly implement PAXOS-based distributed locking, key-value service, and eventually a distributed filesystem. He tested it using a number of test scripts on both single-core and multi-core machines. -Li first started using Linux at age 16, or about 7.47 years ago, he says, using the website [linuxfromscratch.org][2], with numerous hints from the free, downloadable Linux From Scratch book. Why? +他在他的 GitHub 仓库里所有项目中的最爱是一个学校项目,调用 libpthread 和 libfuse 库使用 C++ 开发,用来理解和正确执行基于 PAXOS 的分布式加锁,键值对服务,最终实现一个分布式文件系统。他使用若干测试脚本分别在单核和多核的机器上对这个项目进行测试。 -“1. Linux is very hacker-friendly and I do not see any reason for not using it,” he writes. “2. The prefrontal cortex of the brain becoming well-developed at age 16 (?).” + +>“One can learn something about distributed consensus protocol by implementing the PAXOS protocol correctly (or at least mostly correctly) such that the implementation will pass all the tests,” he said. “And of course once that is accomplished, one can also earn some bragging rights. Besides, a distributed filesystem can be useful in many other programming projects.” + +"一个人可以通过正确实现(或者至少大部分正确)PAXOS 协议来学习关于分布式共识协议的知识,这样这个工具就会通过所有测试,"他说,“当然一旦这实现了,他就可以获得一些炫耀的权利。除此之外,一个分布式文件系统在其他许多编程项目中也可以很有用。” + +>Li first started using Linux at age 16, or about 7.47 years ago, he says, using the website [linuxfromscratch.org][2], with numerous hints from the free, downloadable Linux From Scratch book. Why? + +Li 是在 16 岁的时候第一次开始使用 Linux,或者说是大约 7.47 年之前,他说,通过使用网站 [linuxfromscratch.org][2] 免费获得大量提示,从 Scratch book 获得可下载的 Linux。为什么? + +>“1. Linux is very hacker-friendly and I do not see any reason for not using it,” he writes. “2. The prefrontal cortex of the brain becoming well-developed at age 16 (?).” + + +"1. Linux 非常黑客友好所以我没有看到任何不用它的理由,"他写道。“2. 大脑的前额叶皮质在16岁时正变得发达。” [![](http://www.linux.com/images/stories/41373/ldc_peop_linux.png)][3] -He now works for eBay, mostly coding in Java but working sometimes with Hadoop, Pig, Zookeeper, Cassandra, MongoDB, and other software that requires a POSIX-compliant platform. He supports the Linux community by contributing to Wikipedia pages and forums on Linux-related subjects. And by becoming an individual member of The Linux Foundation. +>He now works for eBay, mostly coding in Java but working sometimes with Hadoop, Pig, Zookeeper, Cassandra, MongoDB, and other software that requires a POSIX-compliant platform. He supports the Linux community by contributing to Wikipedia pages and forums on Linux-related subjects. And by becoming an individual member of The Linux Foundation. -He keeps up with the latest Linux developments and has recently been impressed by the new "-fstack-protector-strong" option for GCC 4.9 and later. -“It's not directly related to any of my projects, but it was important for both security and performance reasons,” he said. “It's much more efficient than "-fstack-protector-all" with little impact on security, while providing better stack-overflow protection coverage compared to that of the "-fstack-protector" option.” +他现在为 eBay工作,主要进行 Java 编程但有时也使用 Hadoop,Pig,Zookeeper,Cassandra,MongoDB,以及其他一些需要 POSIX 兼容平台的软件来工作。他主要通过给 Wikipedia 页面和 Linux 相关的论坛做贡献来支持 Linux 社区,另外还通过成为 Linux 基金会的个人会员。 -Welcome to the Linux Foundation Yitao! +>He keeps up with the latest Linux developments and has recently been impressed by the new "-fstack-protector-strong" option for GCC 4.9 and later. + +他紧跟最新的 Linux 发展动态,最近还对 GCC 4.9 及之后版本新增的“-fstack-protector-strong”选项印象深刻。 + + +>“It's not directly related to any of my projects, but it was important for both security and performance reasons,” he said. “It's much more efficient than "-fstack-protector-all" with little impact on security, while providing better stack-overflow protection coverage compared to that of the "-fstack-protector" option.” + +"这并不与我的任何项目直接相关,但它对于安全和性能问题十分重要。"他说,“这比"-fstack-protector-all"更高效,却在安全上几乎没有影响,同时与"-fstack-protector"相比提供了更好的栈溢出防护覆盖范围。” + + + +>Welcome to the Linux Foundation Yitao! + + +欢迎来到 Linux 基金会,Yitao! + + +>Learn more about becoming an [individual member of The Linux Foundation][3]. The foundation will donate $25 to Code.org for every new individual member who joins during June. + + +了解更多关于成为[Linux 基金会个人会员][3]。基金会将为每位 6 月份期间的新个人会员捐赠 $25 给 Code.org。 -Learn more about becoming an [individual member of The Linux Foundation][3]. The foundation will donate $25 to Code.org for every new individual member who joins during June. ---------- @@ -44,7 +74,7 @@ Learn more about becoming an [individual member of The Linux Foundation][3]. The via: http://www.linux.com/news/featured-blogs/200-libby-clark/778559-the-people-who-support-linux-hacking-on-linux-since-age-16 -译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID) +译者:[jabirus](https://github.com/jabirus) 校对:[校对者ID](https://github.com/校对者ID) 本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 From 9ebed5da972cde21e79adfdbf7a80d548215458e Mon Sep 17 00:00:00 2001 From: barney-ro Date: Thu, 23 Oct 2014 22:31:16 +0800 Subject: [PATCH 014/108] [translating]20141023 Claws Mail 3.11.0 Brings a Ton of Changes and Fixes for POODLE Exploit --- ....0 Brings a Ton of Changes and Fixes for POODLE Exploit.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/sources/share/20141023 Claws Mail 3.11.0 Brings a Ton of Changes and Fixes for POODLE Exploit.md b/sources/share/20141023 Claws Mail 3.11.0 Brings a Ton of Changes and Fixes for POODLE Exploit.md index dc041380b4..41b5cca16a 100644 --- a/sources/share/20141023 Claws Mail 3.11.0 Brings a Ton of Changes and Fixes for POODLE Exploit.md +++ b/sources/share/20141023 Claws Mail 3.11.0 Brings a Ton of Changes and Fixes for POODLE Exploit.md @@ -1,3 +1,5 @@ +barney-ro translating + Claws Mail 3.11.0 Brings a Ton of Changes and Fixes for POODLE Exploit ================================================================================ > This email client is getting better with each new release @@ -33,7 +35,7 @@ Download the Claws Mail 3.11.0 source package, if you want to compile the softwa via: http://news.softpedia.com/news/Claws-Mail-3-11-0-Brings-a-Ton-of-Changes-and-Fix-for-POODLE-Exploit-462808.shtml 作者:[Silviu Stahie][a] -译者:[译者ID](https://github.com/译者ID) +译者:[barney-ro](https://github.com/barney-ro) 校对:[校对者ID](https://github.com/校对者ID) 本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 From 3db55f8c77396104f12bfb46fae76dd5a9aced38 Mon Sep 17 00:00:00 2001 From: jabirus Date: Thu, 23 Oct 2014 23:18:46 +0800 Subject: [PATCH 015/108] [Translated] 20140702 The People Who Support Linux--Hacking on Linux Since Age 16 &moved --- ...rt Linux--Hacking on Linux Since Age 16.md | 84 ------------------- ...rt Linux--Hacking on Linux Since Age 16.md | 62 ++++++++++++++ 2 files changed, 62 insertions(+), 84 deletions(-) delete mode 100644 sources/talk/20140702 The People Who Support Linux--Hacking on Linux Since Age 16.md create mode 100644 translated/talk/20140702 The People Who Support Linux--Hacking on Linux Since Age 16.md diff --git a/sources/talk/20140702 The People Who Support Linux--Hacking on Linux Since Age 16.md b/sources/talk/20140702 The People Who Support Linux--Hacking on Linux Since Age 16.md deleted file mode 100644 index 3097d97047..0000000000 --- a/sources/talk/20140702 The People Who Support Linux--Hacking on Linux Since Age 16.md +++ /dev/null @@ -1,84 +0,0 @@ -**Translating by jabirus...** - -The People Who Support Linux: Hacking on Linux Since Age 16 -================================================================================ - -一个 Linux 支持者:从 16 岁开始在 Linux 上 hack -================================================================================ - -![](http://www.linux.com/images/stories/41373/Yitao-Li.png) - ->Pretty much all of the projects in software developer [Yitao Li's GitHub repository][1] were developed on his Linux machine. None of them are necessarily Linux-specific, he says, but he uses Linux for “everything.” - -在软件开发者[Yitao Li (李逸韬) 的 GitHub 仓库][1]中,几乎所有的项目都是在他的 Linux 机器上完成的。它们没有一个是必须特定需要 Linux 的,但李逸韬说他使用 Linux 来做”任何事情“。 - ->For example: “coding / scripting, web browsing, web hosting, anything cloud-related, sending / receiving PGP signed emails, tweaking IP table rules, flashing OpenWrt image into routers, running one version of Linux kernel while compiling another version, doing research, doing homework (e.g., typing math equations in Tex), and many others...” Li said via email. - -举些例子:“编码/脚本设计,网页浏览,网站托管,任何云相关的,发送/接受 PGP 签名的邮件,调整防火墙规则,把 OpenWrt 镜像刷入路由器,运行某版本的 Linux kernel 的同时编译另一个版本,从事研究,完成功课(例如,用 Tex 输入数学公式),以及其他许多......”Li 在邮件里如是说。 - ->Of all the projects in his repository his favorite is a school project developed in C++ with libpthread and libfuse to understand and correctly implement PAXOS-based distributed locking, key-value service, and eventually a distributed filesystem. He tested it using a number of test scripts on both single-core and multi-core machines. - -他在他的 GitHub 仓库里所有项目中的最爱是一个学校项目,调用 libpthread 和 libfuse 库使用 C++ 开发,用来理解和正确执行基于 PAXOS 的分布式加锁,键值对服务,最终实现一个分布式文件系统。他使用若干测试脚本分别在单核和多核的机器上对这个项目进行测试。 - - ->“One can learn something about distributed consensus protocol by implementing the PAXOS protocol correctly (or at least mostly correctly) such that the implementation will pass all the tests,” he said. “And of course once that is accomplished, one can also earn some bragging rights. Besides, a distributed filesystem can be useful in many other programming projects.” - -"一个人可以通过正确实现(或者至少大部分正确)PAXOS 协议来学习关于分布式共识协议的知识,这样这个工具就会通过所有测试,"他说,“当然一旦这实现了,他就可以获得一些炫耀的权利。除此之外,一个分布式文件系统在其他许多编程项目中也可以很有用。” - ->Li first started using Linux at age 16, or about 7.47 years ago, he says, using the website [linuxfromscratch.org][2], with numerous hints from the free, downloadable Linux From Scratch book. Why? - -Li 是在 16 岁的时候第一次开始使用 Linux,或者说是大约 7.47 年之前,他说,通过使用网站 [linuxfromscratch.org][2] 免费获得大量提示,从 Scratch book 获得可下载的 Linux。为什么? - ->“1. Linux is very hacker-friendly and I do not see any reason for not using it,” he writes. “2. The prefrontal cortex of the brain becoming well-developed at age 16 (?).” - - -"1. Linux 非常黑客友好所以我没有看到任何不用它的理由,"他写道。“2. 大脑的前额叶皮质在16岁时正变得发达。” - -[![](http://www.linux.com/images/stories/41373/ldc_peop_linux.png)][3] - ->He now works for eBay, mostly coding in Java but working sometimes with Hadoop, Pig, Zookeeper, Cassandra, MongoDB, and other software that requires a POSIX-compliant platform. He supports the Linux community by contributing to Wikipedia pages and forums on Linux-related subjects. And by becoming an individual member of The Linux Foundation. - - -他现在为 eBay工作,主要进行 Java 编程但有时也使用 Hadoop,Pig,Zookeeper,Cassandra,MongoDB,以及其他一些需要 POSIX 兼容平台的软件来工作。他主要通过给 Wikipedia 页面和 Linux 相关的论坛做贡献来支持 Linux 社区,另外还通过成为 Linux 基金会的个人会员。 - ->He keeps up with the latest Linux developments and has recently been impressed by the new "-fstack-protector-strong" option for GCC 4.9 and later. - -他紧跟最新的 Linux 发展动态,最近还对 GCC 4.9 及之后版本新增的“-fstack-protector-strong”选项印象深刻。 - - ->“It's not directly related to any of my projects, but it was important for both security and performance reasons,” he said. “It's much more efficient than "-fstack-protector-all" with little impact on security, while providing better stack-overflow protection coverage compared to that of the "-fstack-protector" option.” - -"这并不与我的任何项目直接相关,但它对于安全和性能问题十分重要。"他说,“这比"-fstack-protector-all"更高效,却在安全上几乎没有影响,同时与"-fstack-protector"相比提供了更好的栈溢出防护覆盖范围。” - - - ->Welcome to the Linux Foundation Yitao! - - -欢迎来到 Linux 基金会,Yitao! - - ->Learn more about becoming an [individual member of The Linux Foundation][3]. The foundation will donate $25 to Code.org for every new individual member who joins during June. - - -了解更多关于成为[Linux 基金会个人会员][3]。基金会将为每位 6 月份期间的新个人会员捐赠 $25 给 Code.org。 - - ----------- - -![](http://www.linux.com/community/forums/avatar/41373/catid/200-libby-clark/thumbnail/large/cache/1331753338) - -[Libby Clark][4] - --------------------------------------------------------------------------------- - -via: http://www.linux.com/news/featured-blogs/200-libby-clark/778559-the-people-who-support-linux-hacking-on-linux-since-age-16 - -译者:[jabirus](https://github.com/jabirus) 校对:[校对者ID](https://github.com/校对者ID) - -本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 - -[1]:https://github.com/yl790 -[2]:http://linuxfromscratch.org/ -[3]:https://www.linuxfoundation.org/about/join/individual -[4]:http://www.linux.com/community/forums/person/41373/catid/200-libby-clark \ No newline at end of file diff --git a/translated/talk/20140702 The People Who Support Linux--Hacking on Linux Since Age 16.md b/translated/talk/20140702 The People Who Support Linux--Hacking on Linux Since Age 16.md new file mode 100644 index 0000000000..94ca2c688f --- /dev/null +++ b/translated/talk/20140702 The People Who Support Linux--Hacking on Linux Since Age 16.md @@ -0,0 +1,62 @@ +一个 Linux 支持者:从 16 岁开始在 Linux 上 hacking +================================================================================ + +![](http://www.linux.com/images/stories/41373/Yitao-Li.png) + +>翻译文章中是称主人公为 Yitao Li,还是李逸韬?他似乎是美国人,“李逸韬”是看的他的个人主页上的。 + +在软件开发者 [Yitao Li (李逸韬) 的 GitHub 仓库][1]中,几乎所有的项目都是在他的 Linux 机器上开发完成的。它们没有一个是必须特定需要 Linux 的,但李逸韬说他使用 Linux 来做“任何事情”。 + +举些例子:“编码/脚本设计,网页浏览,网站托管,任何云相关的,发送/接受 PGP 签名的邮件,调整防火墙规则,将 OpenWrt 镜像刷入路由器,运行某版本的 Linux kernel 的同时编译另一个版本,从事研究,完成功课(例如,用 Tex 输入数学公式),以及其他许多......” Li 在邮件里如是说。 + +在李逸韬的 GitHub 仓库里所有项目中他的最爱是一个学校项目,调用 libpthread 和 libfuse 库使用 C++ 开发,用来理解和正确执行基于 PAXOS 的分布式加锁,键值对服务,最终实现一个分布式文件系统。他使用若干测试脚本分别在单核和多核的机器上对这个项目进行测试。 + +“One can learn something about distributed consensus protocol by implementing the PAXOS protocol correctly (or at least mostly correctly) such that the implementation will pass all the tests,” he said. “And of course once that is accomplished, one can also earn some bragging rights. Besides, a distributed filesystem can be useful in many other programming projects.” + +>"One can learn something about distributed consensus protocol by implementing the PAXOS protocol correctly (or at least mostly correctly) such that the implementation will pass all the tests" 不知道翻译的是不是有点混乱 + +"一个人可以通过正确实现(或者至少大部分正确)PAXOS 协议,让它通过所有测试,来学习关于分布式共识协议的知识,"他说,“当然一旦这完成了,他就可以获得一些炫耀的权利。除此之外,一个分布式文件系统在其他许多编程项目中也可以很有用。” + +Li first started using Linux at age 16, or about 7.47 years ago, he says, using the website [linuxfromscratch.org][2], with numerous hints from the free, downloadable Linux From Scratch book. Why? + +>with numerous hints from the free, downloadable Linux From Scratch book. 讲的应该是从 Linuxfromscratch 学习 LFS 编译安装 Linux,不知道该怎么翻译。 + +Li 是在 16 岁的时候第一次开始使用 Linux,或是者说大约 7.47 年之前,他说,通过使用网站 [linuxfromscratch.org][2] ,从 Scratch book 中获得免费可下载的 Linux,以及大量 Hints。那么他为什么会使用 Linux? + +“1. Linux is very hacker-friendly and I do not see any reason for not using it,” he writes. “2. The prefrontal cortex of the brain becoming well-developed at age 16 (?).” + +>2. The prefrontal cortex of the brain becoming well-developed at age 16 (?). 原文里的 16 (?) 是啥意思? + +"1. Linux 非常黑客友好所以我没看到任何不用它的理由,"他写道,“2. 大脑的前额叶皮质在16岁时正变得发达。” + +[![](http://www.linux.com/images/stories/41373/ldc_peop_linux.png)][3] + +他现在为 eBay工作,主要进行 Java 编程但有时也使用 Hadoop, Pig, Zookeeper, Cassandra, MongoDB,以及其他一些需要 POSIX 兼容平台的软件来工作。他主要通过给 Wikipedia 页面和 Linux 相关的论坛做贡献来支持 Linux 社区,另外当然还通过成为 Linux 基金会的个人会员。 + +他紧跟最新的 Linux 发展动态,最近还对 GCC 4.9 及之后版本新增的 “-fstack-protector-strong” 选项印象深刻。 + + +"虽然这并不与我的任何项目直接相关,但它对于安全和性能问题十分重要。"他说,“这个选项比 ‘-fstack-protector-all’ 更高效的多,却在安全上几乎没有影响,同时比 ‘-fstack-protector’ 选项提供了更好的栈溢出防护覆盖。” + +欢迎来到 Linux 基金会,Yitao ! + +了解更多关于成为 [Linux 基金会个人会员][3]的内容。基金会将为每位 6 月份期间的新个人会员捐赠 $25 给 Code.org。 + +---------- + +![](http://www.linux.com/community/forums/avatar/41373/catid/200-libby-clark/thumbnail/large/cache/1331753338) + +[Libby Clark][4] + +-------------------------------------------------------------------------------- + +via: http://www.linux.com/news/featured-blogs/200-libby-clark/778559-the-people-who-support-linux-hacking-on-linux-since-age-16 + +译者:[jabirus](https://github.com/jabirus) 校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[1]:https://github.com/yl790 +[2]:http://linuxfromscratch.org/ +[3]:https://www.linuxfoundation.org/about/join/individual +[4]:http://www.linux.com/community/forums/person/41373/catid/200-libby-clark \ No newline at end of file From 5560b411caa507d2eafd11012d5aec261d5e1647 Mon Sep 17 00:00:00 2001 From: Frank Zhang Date: Fri, 24 Oct 2014 10:25:21 +0800 Subject: [PATCH 016/108] [translated] 20140818 Will Linux ever be able to give consumers what they want.md --- ...e able to give consumers what they want.md | 52 ------------------- ...e able to give consumers what they want.md | 51 ++++++++++++++++++ 2 files changed, 51 insertions(+), 52 deletions(-) delete mode 100644 sources/talk/20140818 Will Linux ever be able to give consumers what they want.md create mode 100644 translated/talk/20140818 Will Linux ever be able to give consumers what they want.md diff --git a/sources/talk/20140818 Will Linux ever be able to give consumers what they want.md b/sources/talk/20140818 Will Linux ever be able to give consumers what they want.md deleted file mode 100644 index a99641d45f..0000000000 --- a/sources/talk/20140818 Will Linux ever be able to give consumers what they want.md +++ /dev/null @@ -1,52 +0,0 @@ -zpl1025 -Will Linux ever be able to give consumers what they want? -================================================================================ -> Jack Wallen offers up the novel idea that giving the consumers what they want might well be the key to boundless success. - -![](http://tr2.cbsistatic.com/hub/i/r/2014/08/14/ce90a81e-d17b-4b8f-bd5b-053120e305e6/resize/620x485/f5f9e0798798172d4e41edbedeb6b7e5/whattheyneedhero.png) - -In the world of consumer electronics, if you don't give the buyer what they want, they'll go elsewhere. We've recently witnessed this with the Firefox browser. The consumer wanted a faster, less-bloated piece of software, and the developers went in the other direction. In the end, the users migrated to Chrome or Chromium. - -Linux needs to gaze deep into their crystal ball, watch carefully the final fallout of that browser war, and heed this bit of advice: - -If you don't give them what they want, they'll leave. - -Another great illustration of this backfiring is Windows 8. The consumer didn't want that interface. Microsoft, however, wanted it because it was necessary to begin the drive to all things Surface. This same scenario could have been applied to Canonical and Ubuntu Unity -- however, their goal wasn't geared singularly and specifically towards tablets (so, the interface was still highly functional and intuitive on the desktop). - -For the longest time, it seemed like Linux developers and designers were gearing everything they did toward themselves. They took the "eat your own dog food" too far. In that, they forgot one very important thing: - -Without new users, their "base" would only ever belong to them. - -In other words, the choir had not only been preached to, it was the one doing the preaching. Let me give you three examples to hit this point home. - -- For years, Linux has needed an equivalent of Active Directory. I would love to hand that title over to LDAP, but have you honestly tried to work with LDAP? It's a nightmare. Developers have tried to make LDAP easy, but none have succeeded. It amazes me that a platform that has thrived in multi-user situations still has nothing that can go toe-to-toe with AD. A team of developers needs to step up, start from scratch, and create the open-source equivalent to AD. This would be such a boon to mid-size companies looking to migrate away from Microsoft products. But until this product is created, the migration won't happen. -- Another Microsoft-driven need -Exchange/Outlook. Yes, I realize that many are going to the cloud. But the truth is that mediumto large-scale businesses will continue relying on the Exchange/Outlook combo until something better comes along. This could very well happen within the open-source community. One piece of this puzzle is already there (though it needs some work) -the groupware client, Evolution. If someone could take, say, a fork of Zimbra and re-tool it such a way that it would work with Evolution (and even Thunderbird) to serve as a drop-in replacement for Exchange, the game would change, and the trickle-down to consumers would be massive. -- Cheap, cheap, cheap. This one is a hard pill for most to swallow -but consumers (and businesses) want cheap. Look at the Chromebook sales over the last year. Now, do a search for a Linux laptop and see if you can find one for under $700.00 (USD). For a third of that cost, you can get a Chromebook (a platform running the Linux kernel) that will serve you well. But because Linux is still such a niche market, it's hard to get the cost down. A company like Red Hat Linux could change that. They already have the server hardware in place. Why not crank out a bunch of low-cost, mid-range laptops that work in similar fashion to the Chromebook but only run a full-blown Linux environment? (see "[Is the Cloudbook the future of Linux?][1]") The key is that these devices must be low-cost and meet the needs of the average consumer. Stop thinking with your gamer/developer hat on and remember what the average user really needs -a web browser and not much more. That's why the Chromebook is succeeding so handily. Google knew exactly what the consumer wanted, and they delivered. On the Linux front, companies still think the only way to attract buyers is to crank out high-end, expensive Linux hardware. There's a touch of irony there, considering one of the most-often shouted battle cries is that Linux runs on slower, older hardware. - -Finally, Linux needs to take a page from the good ol' Book Of Jobs and figure out how to convince the consumer that what they truly need is Linux. In their businesses and in their homes -- everyone can benefit from using Linux. Honestly, how can the open-source community not pull that off? Linux already has the perfect built-in buzzwords: Stability, reliability, security, cloud, free -- plus Linux is already in the hands of an overwhelming amount of users (they just don't know it). It's now time to let them know. If you use Android or Chromebooks, you use (in one form or another) Linux. - -Knowing just what the consumer wants has always been a bit of a stumbling block for the Linux community. And I get that -- so much of the development of Linux happens because a developer has a particular need. This means development is targeted to a "micro-niche." It's time, however, for the Linux development community to think globally. "What does the average user need, and how do we give it to them?" Let me offer up the most basic of primers. - -The average user needs: - -- Low cost -- Seamless integration with devices and services -- Intuitive and modern designs -- A 100% solid browser experience - -That's pretty much it. With those four points in mind, it should be easy to take a foundation of Linux and create exactly what the user wants. Google did it... certainly the Linux community can build on what Google has done and create something even better. Mix that in with AD integration, give it an Exchange/Outlook or cloud-based groupware set of tools, and something very special will happen -- people will buy it. - -Do you think the Linux community will ever be able to give the consumer what they want? Share your opinion in the discussion thread below. - --------------------------------------------------------------------------------- - -via: http://www.techrepublic.com/article/will-linux-ever-be-able-to-give-consumers-what-they-want/ - -作者:[Jack Wallen][a] -译者:[译者ID](https://github.com/译者ID) -校对:[校对者ID](https://github.com/校对者ID) - -本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 - -[a]:http://www.techrepublic.com/search/?a=jack+wallen -[1]:http://www.techrepublic.com/article/is-the-cloudbook-the-future-of-linux/ diff --git a/translated/talk/20140818 Will Linux ever be able to give consumers what they want.md b/translated/talk/20140818 Will Linux ever be able to give consumers what they want.md new file mode 100644 index 0000000000..5ddd861a86 --- /dev/null +++ b/translated/talk/20140818 Will Linux ever be able to give consumers what they want.md @@ -0,0 +1,51 @@ +Linux能够提供消费者想要的东西吗? +================================================================================ +> 由Jack Wallen提出的新观点,提供消费者想要的东西也许是收获无限成就的关键。 + +![](http://tr2.cbsistatic.com/hub/i/r/2014/08/14/ce90a81e-d17b-4b8f-bd5b-053120e305e6/resize/620x485/f5f9e0798798172d4e41edbedeb6b7e5/whattheyneedhero.png) + +在消费电子的世界里,如果你不能提供购买者想要的东西,那他们就会跑去别家。我们最近在Firefox浏览器上就看过类似的事情。消费者想要的是一个快速而不那么臃肿的软件,而开发者们却走到了另外的方向上。最后,用户都转移到Chrome或Chromium上去了。 + +Linux需要深深凝视自己的水晶球,仔细体会那场浏览器大战留下的尘埃,然后留意一下这点建议: + +如果你不能提供他们想要的,他们就会离开。 + +而这种事与愿违的另一个例子是Windows 8。消费者不喜欢那套界面。而微软却坚持使用,因为这是把所有东西搬到Surface平板上所必须的。相同的情况也可能发生在Canonical和Ubuntu Unity身上 -- 尽管它们的目标并不是单一独特地针对平板电脑来设计(所以,整套界面在桌面系统上仍然很实用而且直观)。 + +一直以来,Linux开发者和设计者们看上去都按照他们自己的想法来做事情。他们过分在意“吃你自家的狗粮”这句话了。以至于他们忘记了一件非常重要的事情: + +没有新用户,他们的“根基”也仅仅只属于他们自己。 + +换句话说,唱诗班不仅仅是被传道,他们也同时在宣传。让我给你看三个案例来完全掌握这一点。 + +- 多年以来,有在Linux系统中替代活动目录(Active Directory)的需求。我很想把这个名称换成LDAP,但是你真的用过LDAP吗?那就是个噩梦。开发者们也努力了想让LDAP能易用一点,但是没一个做到了。而让我很震惊的是这样一个从多用户环境下发展起来的平台居然没有一个能和AD正面较量的功能。这需要一组开发人员,从头开始建立一个AD的开源替代。这对那些寻求从微软产品迁移的中型企业来说是非常大的福利。但是在这个产品做好之前,他们还不能开始迁移。 +- 另一个从微软激发的需求是Exchange/Outlook。是,我也知道许多人都开始用云。但是,事实上中等和大型规模生意仍然依赖于Exchange/Outlook组合,直到能有更好的产品出现。而这将非常有希望发生在开源社区。整个拼图的一小块已经摆好了(虽然还需要一些工作)- 群件客户端,Evolution。如果有人能够从Zimbra拉出一个分支,然后重新设计成可以配合Evolution(甚至Thunderbird)来提供服务实现Exchange的简单替代,那这个游戏就不是这么玩了,而消费者获得的利益将是巨大的。 +- 便宜,便宜,还是便宜。这是大多数人都得咽下去的苦药片 - 但是消费者(和生意)就是希望便宜。看看去年一年Chromebook的销量吧。现在,搜索一下Linux笔记本看能不能找到700美元以下的。而只用三分之一的价格,就可以买到一个让你够用的Chromebook(一个使用了Linux内核的平台)。但是因为Linux仍然是一个细分市场,很难降低成本。像红帽那种公司也许可以改变现状。他们也已经推出了服务器硬件。为什么不推出一些和Chromebook有类似定位但是却运行完整Linux环境的低价中档笔记本呢?(请看“[Cloudbook是Linux的未来吗?][1]”)其中的关键是这种设备要低成本并且符合普通消费者的要求。不要站在游戏玩家/开发者的角度去思考了,记住普通消费者真正的需求 - 一个网页浏览器,不会有更多了。这是Chromebook为什么可以这么轻松地成功。Google精确地知道消费者想要什么,然后推出相应的产品。而面对Linux,一些公司仍然认为他们吸引买家的唯一途径是高端昂贵的硬件。而有一点讽刺的是,口水战中最经常听到的却是Linux只能在更慢更旧的硬件上运行。 + +最后,Linux需要看一看古老的《约伯记(Book Of Jobs)》,搞清楚如何说服消费者们他们真正要的就是Linux。在生意上和在家里 -- 每个人都可以享受到Linux带来的好处。说真的,开源社区怎么可能做不到这点呢?Linux本身就已经带有很多漂亮的时髦术语标签:稳定性,可靠性,安全性,云,免费 -- 再加上Linux实际已经进入到绝大多数人手中了(只是他们自己还不清楚罢了)。现在是时候让他们知道这一点了。如果你是用Android或者Chromebooks,那么你就在用(某种形式上的)Linux。 + +搞清楚消费者需求一直以来都是Linux社区的绊脚石。而且我知道 -- 太多的Linux开发都基于某个开发者有个特殊的想法。这意味着这些开发都针对的“微型市场”。是时候,无论如何,让Linux开发社区能够进行全球性思考了。“一般用户有什么需求,我们怎么满足他们?”让我提几个最基本的点。 + +一般用户想要: + +- 低价 +- 设备和服务能无缝衔接 +- 直观而现代的设计 +- 百分百可靠的浏览器体验 + +把这四点放在心中,应该可以轻松地以Linux为基础开发出用户实际需要的产品。Google做到了...当然Linux社区也可以参照Google的工作并开发出更好的产品。把这些应用到集成AD这件事上,能开发出Exchange/Outlook的替代或者基于云的群件工具,就会发生一件非常特殊的事 -- 人们会为它买单。 + +你觉得Linux社区能够提供消费者想要的东西吗?在下边的讨论区里分享一下你的看法。 + +-------------------------------------------------------------------------------- + +via: http://www.techrepublic.com/article/will-linux-ever-be-able-to-give-consumers-what-they-want/ + +作者:[Jack Wallen][a] +译者:[zpl1025](https://github.com/zpl1025) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[a]:http://www.techrepublic.com/search/?a=jack+wallen +[1]:http://www.techrepublic.com/article/is-the-cloudbook-the-future-of-linux/ From e103fe74fc3bd80856454fbe61e10b8916f615a3 Mon Sep 17 00:00:00 2001 From: luoyutiantang <304825802@qq.com> Date: Fri, 24 Oct 2014 10:26:11 +0800 Subject: [PATCH 017/108] Update 20141023 What are useful Bash aliases and functions.md --- .../20141023 What are useful Bash aliases and functions.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sources/tech/20141023 What are useful Bash aliases and functions.md b/sources/tech/20141023 What are useful Bash aliases and functions.md index 56a797dc8b..b5d6e3b6da 100644 --- a/sources/tech/20141023 What are useful Bash aliases and functions.md +++ b/sources/tech/20141023 What are useful Bash aliases and functions.md @@ -1,3 +1,4 @@ +luoyutiantang What are useful Bash aliases and functions ================================================================================ As a command line adventurer, you probably found yourself repeating the same lengthy commands over and over. If you always ssh into the same machine, if you always chain the same commands together, or if you constantly run a program with the same flags, you might want to save the precious seconds of your life that you spend repeating the same actions over and over. @@ -252,4 +253,4 @@ via: http://xmodulo.com/useful-bash-aliases-functions.html [a]:http://xmodulo.com/author/adrien [1]:http://alias.sh/ [2]:http://www.commandlinefu.com/commands/browse -[3]:http://xmodulo.com/useful-online-tools-linux.html \ No newline at end of file +[3]:http://xmodulo.com/useful-online-tools-linux.html From 5449057ba5813111e75b3043947bacd2f7d9fbeb Mon Sep 17 00:00:00 2001 From: Frank Zhang Date: Fri, 24 Oct 2014 10:51:59 +0800 Subject: [PATCH 018/108] =?UTF-8?q?Book=20Of=20Jobs=E8=B0=83=E6=95=B4?= =?UTF-8?q?=E6=88=90=E4=B9=94=E5=B8=83=E6=96=AF=E4=BC=A0=E3=80=82=E3=80=82?= =?UTF-8?q?=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ... Will Linux ever be able to give consumers what they want.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/translated/talk/20140818 Will Linux ever be able to give consumers what they want.md b/translated/talk/20140818 Will Linux ever be able to give consumers what they want.md index 5ddd861a86..6e5635b12f 100644 --- a/translated/talk/20140818 Will Linux ever be able to give consumers what they want.md +++ b/translated/talk/20140818 Will Linux ever be able to give consumers what they want.md @@ -22,7 +22,7 @@ Linux需要深深凝视自己的水晶球,仔细体会那场浏览器大战留 - 另一个从微软激发的需求是Exchange/Outlook。是,我也知道许多人都开始用云。但是,事实上中等和大型规模生意仍然依赖于Exchange/Outlook组合,直到能有更好的产品出现。而这将非常有希望发生在开源社区。整个拼图的一小块已经摆好了(虽然还需要一些工作)- 群件客户端,Evolution。如果有人能够从Zimbra拉出一个分支,然后重新设计成可以配合Evolution(甚至Thunderbird)来提供服务实现Exchange的简单替代,那这个游戏就不是这么玩了,而消费者获得的利益将是巨大的。 - 便宜,便宜,还是便宜。这是大多数人都得咽下去的苦药片 - 但是消费者(和生意)就是希望便宜。看看去年一年Chromebook的销量吧。现在,搜索一下Linux笔记本看能不能找到700美元以下的。而只用三分之一的价格,就可以买到一个让你够用的Chromebook(一个使用了Linux内核的平台)。但是因为Linux仍然是一个细分市场,很难降低成本。像红帽那种公司也许可以改变现状。他们也已经推出了服务器硬件。为什么不推出一些和Chromebook有类似定位但是却运行完整Linux环境的低价中档笔记本呢?(请看“[Cloudbook是Linux的未来吗?][1]”)其中的关键是这种设备要低成本并且符合普通消费者的要求。不要站在游戏玩家/开发者的角度去思考了,记住普通消费者真正的需求 - 一个网页浏览器,不会有更多了。这是Chromebook为什么可以这么轻松地成功。Google精确地知道消费者想要什么,然后推出相应的产品。而面对Linux,一些公司仍然认为他们吸引买家的唯一途径是高端昂贵的硬件。而有一点讽刺的是,口水战中最经常听到的却是Linux只能在更慢更旧的硬件上运行。 -最后,Linux需要看一看古老的《约伯记(Book Of Jobs)》,搞清楚如何说服消费者们他们真正要的就是Linux。在生意上和在家里 -- 每个人都可以享受到Linux带来的好处。说真的,开源社区怎么可能做不到这点呢?Linux本身就已经带有很多漂亮的时髦术语标签:稳定性,可靠性,安全性,云,免费 -- 再加上Linux实际已经进入到绝大多数人手中了(只是他们自己还不清楚罢了)。现在是时候让他们知道这一点了。如果你是用Android或者Chromebooks,那么你就在用(某种形式上的)Linux。 +最后,Linux需要看一看乔布斯传(Book Of Jobs),搞清楚如何说服消费者们他们真正要的就是Linux。在生意上和在家里 -- 每个人都可以享受到Linux带来的好处。说真的,开源社区怎么可能做不到这点呢?Linux本身就已经带有很多漂亮的时髦术语标签:稳定性,可靠性,安全性,云,免费 -- 再加上Linux实际已经进入到绝大多数人手中了(只是他们自己还不清楚罢了)。现在是时候让他们知道这一点了。如果你是用Android或者Chromebooks,那么你就在用(某种形式上的)Linux。 搞清楚消费者需求一直以来都是Linux社区的绊脚石。而且我知道 -- 太多的Linux开发都基于某个开发者有个特殊的想法。这意味着这些开发都针对的“微型市场”。是时候,无论如何,让Linux开发社区能够进行全球性思考了。“一般用户有什么需求,我们怎么满足他们?”让我提几个最基本的点。 From 9f6fd83b12fbec668729b007fa480a61a039c4fe Mon Sep 17 00:00:00 2001 From: DeadFire Date: Fri, 24 Oct 2014 14:51:55 +0800 Subject: [PATCH 019/108] =?UTF-8?q?20141024-1=20=E9=80=89=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...g 25 Linux Performance Monitoring Tools.md | 291 ++++++++++++++++++ ...024 SUSE Linux--Zypper Command Examples.md | 168 ++++++++++ 2 files changed, 459 insertions(+) create mode 100644 sources/tech/20141024 Amazing 25 Linux Performance Monitoring Tools.md create mode 100644 sources/tech/20141024 SUSE Linux--Zypper Command Examples.md diff --git a/sources/tech/20141024 Amazing 25 Linux Performance Monitoring Tools.md b/sources/tech/20141024 Amazing 25 Linux Performance Monitoring Tools.md new file mode 100644 index 0000000000..87c9d3ed92 --- /dev/null +++ b/sources/tech/20141024 Amazing 25 Linux Performance Monitoring Tools.md @@ -0,0 +1,291 @@ +Amazing ! 25 Linux Performance Monitoring Tools +================================================================================ +Over the time our website has shown you how to configure various performance tools for Linux and Unix-like operating systems. In this article we have made a list of the most used and most useful tools to monitor the performance for your box. We provided a link for each of them and split them into 2 categories: command lines one and the ones that offer a graphical interface. + +### Command line performance monitoring tools ### + +#### 1. dstat - Versatile resource statistics tool #### + +A versatile combination of **vmstat**, **iostat** and **ifstat**. It adds new features and functionality allowing you to view all the different resources instantly, allowing you to compare and combine the different resource usage. It uses colors and blocks to help you see the information clearly and easily. It also allows you to export the data in **CVS** format to review it in a spreadsheet application or import in a **database**. You can use this application to [monitor cpu, memory, eth0 activity related to time][1]. + +![](http://blog.linoxide.com/wp-content/uploads/2014/10/dstat.png) + +#### 2. atop - Improved top with ASCII #### + +A command line tool using **ASCII** to display a **performance monitor** that is capable of reporting the activity of all processes. It shows daily logging of system and process activity for long-term analysis and it highlights overloaded system resources by using colors. It includes metrics related to **CPU**, **memory**, **swap**, **disks** and **network layers**. All the functions of atop can be accessed by simply running: + + # atop + +And you will be able to [use the interactive interface to display][2] and order data. + +![](http://blog.linoxide.com/wp-content/uploads/2014/10/atop1.jpg) + +#### 3. Nmon - performance monitor for Unix-like systems #### + +Nmon stands for **Nigel's Monitor** and it's a system monitor tool originally developed for **AIX**. If features an **Online Mode** that uses curses for efficient screen handling, which updates the terminal frequently for real-time monitoring and a **Capture Mode** where the data is saved in a file in **CSV** format for later processing and graphing. + +![](http://blog.linoxide.com/wp-content/uploads/2014/10/nmon_interface.png) + +**More info** in our [nmon performance track article][3]. + +#### 4. slabtop - information on kernel slab cache #### + +This application will show you how the **caching memory allocator** manages in the Linux kernel caches various type of objects. The command is a top like command but is focused on showing real-time kernel slab cache information. It displays a listing of the top caches sorted by one of the listed sort criteria. It also displays a statistics header filled with slab layer information. Here are a few examples: + + # slabtop --sort=a + # slabtop -s b + # slabtop -s c + # slabtop -s l + # slabtop -s v + # slabtop -s n + # slabtop -s o + +**More info** is available [kernel slab cache article][4] + +#### 5. sar - performance monitoring and bottlenecks check #### + +The **sar** command writes to standard output the contents of selected cumulative activity counters in the operating system. The **accounting system**, based on the values in the count and interval parameters, writes information the specified number of times spaced at the specified intervals in seconds. If the interval parameter is set to zero, [the sar command displays the average statistics][5] for the time since the system was started. Useful commands: + + # sar -u 2 3 + # sar –u –f /var/log/sa/sa05 + # sar -P ALL 1 1 + # sar -r 1 3 + # sar -W 1 3 + +#### 6. Saidar - simple stats monitor #### + +Saidar is a **simple** and **lightweight** tool for system information. It doesn't have major performance reports but it does show the most useful system metrics in a short and nice way. You can easily see the [**up-time, average load, CPU, memory, processes, disk and network interfaces**][6] stats. + + Usage: saidar [-d delay] [-c] [-v] [-h] + + -d Sets the update time in seconds + -c Enables coloured output + -v Prints version number + -h Displays this help information. + +![](http://blog.linoxide.com/wp-content/uploads/2014/10/saidar-e1413370985588.png) + +#### 7. top - The classical Linux task manager #### + +top is one of the best known **Linux** utilities, it's a **task manager** found on most **Unix-like** operating systems. It shows the current list of running processes that the user can order using different criteria. It mainly shows how much **CPU** and **memory** is used by the **system processes**. top is a quick place to go a check what process or **processes** hangs your system. You can also find here a [list of examples of top usage][7] . You can access it by running the top command and entering the interactive mode: + + Quick cheat sheet for interactive mode: + + GLOBAL_Commands: ?, =, A, B, d, G, h, I, k, q, r, s, W, Z + SUMMARY_Area_Commands: l, m, t, 1 + TASK_Area_Commands Appearance: b, x, y, z Content: c, f, H, o, S, u Size: #, i, n Sorting: <, >, F, O, R + COLOR_Mapping: , a, B, b, H, M, q, S, T, w, z, 0 - 7 + COMMANDS_for_Windows: -, _, =, +, A, a, G, g, w + +![](http://blog.linoxide.com/wp-content/uploads/2014/10/top.png) + +#### 8. Sysdig - Advanced view of system processes #### + +**Sysdig** is a tool that gives admins and developers unprecedented visibility into the behavior of their systems. The team that develops it wants to improve the way system-level **monitoring** and **troubleshooting** is done by offering a unified, coherent, and granular visibility into the **storage**, **processing**, **network**, and **memory** subsystems making it possible to create trace files for system activity so you can easily analyze it at any time. + +Quick examples: + + # sysdig proc.name=vim + # sysdig -p"%proc.name %fd.name" "evt.type=accept and proc.name!=httpd" + # sysdig evt.type=chdir and user.name=root + # sysdig -l + # sysdig -L + # sysdig -c topprocs_net + # sysdig -c fdcount_by fd.sport "evt.type=accept" + # sysdig -p"%proc.name %fd.name" "evt.type=accept and proc.name!=httpd" + # sysdig -c topprocs_file + # sysdig -c fdcount_by proc.name "fd.type=file" + # sysdig -p "%12user.name %6proc.pid %12proc.name %3fd.num %fd.typechar %fd.name" evt.type=open + # sysdig -c topprocs_cpu + # sysdig -c topprocs_cpu evt.cpu=0 + # sysdig -p"%evt.arg.path" "evt.type=chdir and user.name=root" + # sysdig evt.type=open and fd.name contains /etc + +![](http://blog.linoxide.com/wp-content/uploads/2014/10/sysdig.jpg) + +**More info** is available in our article on [how to use sysdig for improved system-level monitoring and troubleshooting][8] + +#### 9. netstat - Shows open ports and connections #### + +Is the tool **Linux administrators** use to show various **network** information, like what ports are open and what network connections are established and what process runs that connection. It also shows various information about the **Unix sockets** that are open between various programs. It is part of most Linux distributions A lot of the commands are explained in the [article on netstat and its various outputs][9]. Most used commands are: + + $ netstat | head -20 + $ netstat -r + $ netstat -rC + $ netstat -i + $ netstat -ie + $ netstat -s + $ netstat -g + $ netstat -tapn + +### 10. tcpdump - insight on network packets ### + +**tcpdump** can be used to see the content of the **packets** on a **network connection**. It shows various information about the packet content that pass. To make the output useful, it allows you to use various filters to only get the information you wish. A few examples on how you can use it: + + # tcpdump -i eth0 not port 22 + # tcpdump -c 10 -i eth0 + # tcpdump -ni eth0 -c 10 not port 22 + # tcpdump -w aloft.cap -s 0 + # tcpdump -r aloft.cap + # tcpdump -i eth0 dst port 80 + +**You can find them described in** [detail in our article on tcpdump and capturing packets][10] + +#### 11. vmstat - virtual memory statistics #### + +**vmstat** stands for **virtual memory** statistics and it's a **memory monitoring** tool that collects and displays summary information about **memory**, **processes**, **interrupts**, **paging** and **block I/O**. It is an open source program available on most Linux distributions, Solaris and FreeBSD. It is used to diagnose most memory performance problems and much more. + +![](http://blog.linoxide.com/wp-content/uploads/2014/10/vmstat_delay_5.png) + +**More info** in [our article on vmstat commands][11]. + +#### 12. free - memory statistics #### + +Another **command line** tool that will show to standard output a few stats about **memory** usage and swap usage. Because it's a simple tool it can be used to either find **quick information** about memory usage or it can be used in different scripts and applications. You can see that [this small application has a lot of uses][12] and almost all system admin use this tool daily :-) + +![](http://blog.linoxide.com/wp-content/uploads/2014/10/free_hs3.png) + +#### 13. Htop - friendlier top #### + +**Htop** is basically an improved version of top showing more stats and in a more colorful way allowing you to sort them in different ways as you can see in our article. It provides a more a more **user-friendly** interface. + +![](http://blog.linoxide.com/wp-content/uploads/2014/10/htop.png) + +You can find **more info** in [our comparison of htop and top][13] + +#### 14. ss - the modern net-tools replacement #### + +**ss** is part of the **iproute2** package. iproute2 is intended to replace an entire suite of standard **Unix networking tools** that were previously used for the tasks of [configuring network interfaces, routing tables, and managing the ARP table][14]. The ss utility is used to dump socket statistics, it allows showing information similar to **netstat** and its able display more TCP and state information. A few examples: + + # ss -tnap + # ss -tnap6 + # ss -tnap + # ss -s + # ss -tn -o state established -p + +#### 15. lsof - list open files #### + +**lsof** is a command meaning "**list open files**", which is used in many Unix-like systems to report a list of all open files and the processes that opened them. It is used by most Linux distributions and other Unix-like operating systems by **system administrators** to check what files are open by various processes. + + # lsof +p process_id + # lsof | less + # lsof –u username + # lsof /etc/passwd + # lsof –i TCP:ftp + # lsof –i TCP:80 + +You can find **more examples** in the [lsof article][15] + +#### 16. iftop - top for your network connections #### + +**iftop** is yet another top like application that will is based on networking information. It shows various current **network connection** sorted by **bandwidth usage** or the amount of data uploaded or downloaded. It also provides various estimations of the time it will take to download them. + +![](http://blog.linoxide.com/wp-content/uploads/2014/10/iftop.png) + +For **more info** see [article on network traffic with iftop][16] + +#### 17. iperf - network performance tool #### + +**iperf** is a **network testing** tool that can create **TCP** and **UDP** data connections and measure the **performance** of a network that is carrying them. It supports tuning of various parameters related to timing, protocols, and buffers. For each test it reports the bandwidth, loss, and other parameters. + +![](http://blog.linoxide.com/wp-content/uploads/2014/10/iperf-e1413378331696.png) + +If you wish to use the tool check out our article on [how to install and use iperf][17] + +#### 18. Smem - advanced memory reporting #### + +**Smem** is one of the most advanced tools for **Linux** command line, it offers information about the actual **memory** that is used and shared in the system, attempting to provide a more realistic image of the actual **memory** being used. + + $ smem -m + $ smem -m -p | grep firefox + $ smem -u -p + $ smem -w -p + +Check out our [article on Smem for more examples][18] + +### GUI or Web based performance tools ### + +#### 19. Icinga - community fork of Nagios #### + +**Icinga** is **free** and **open source** system and network monitoring application. It’s a fork of Nagios retaining most of the existing features of its predecessor and building on them to add many long awaited patches and features requested by the user community. + +![](http://blog.linoxide.com/wp-content/uploads/2014/10/Icinga-e1413377995731.png) + +**More info** about installing and configuring [can be found in our Icinga article][19]. + +#### 20. Nagios - the most popular monitoring tool. #### + +The most used and popular **monitoring solution** found on Linux. It has a daemon that collects information about various process and has the ability to collect information from remote hosts. All the information is then provided via a nice and powerful **web interface**. + +![](http://blog.linoxide.com/wp-content/uploads/2014/10/nagios-e1413305858732.png) + +You can find **information** on [how to install Nagios in our article][20] + +#### 21. Linux process explorer - procexp for Linux #### + +**Linux process explorer** is a graphical process explorer for **Linux**. It shows various **process information** like the process tree, TCP/IP connections and performance figures for each process. It's a replica of procexp found in Windows and developed by **Sysinternals** and aims to be more user friendly then top and ps. + +Check our [linux process explorer article][21] for more info. + +#### 22. Collectl - performance monitoring tool #### + +This is a **performance monitoring** tool that you can use either in an **interactive mode** or you can have it **write reports** to disk and access them with a web server. It reports statistics on **CPU**, **disk**, **memory**, **network**, **nfs**, **process**, **slabs** and more in easy to read and manage format. + +![](http://blog.linoxide.com/wp-content/uploads/2014/10/collectl.png) + +**More info** in our [Collectl article][22] + +#### 23. MRTG - the classic graph tool #### + +This is a **network traffic** monitor that will provide you **graphs** using the **rrdtool**. It is one of the oldest tools that provides graphics and is one of the most used on Unix-like operating systems. Check our article on [how to use MRTG][23] for information on the installation and configuration process + +![](http://blog.linoxide.com/wp-content/uploads/2014/10/mrtg.png) + +#### 24. Monit - simple and easy to use monitor tool #### + +**Monit** is an **open source** small **Linux** utility designed to monitor **processes**, **system load**, **filesystems**, **directories** and **files**. You can have it run automatic maintenance and repair and can execute actions in error situations or send email reports to alert the system administrator. If you wish to use this tool you can check out our [how to use Monit article][24]. + +![](http://blog.linoxide.com/wp-content/uploads/2014/10/monit.png) + +#### 25. Munin - monitoring and alerting services for servers #### + +**Munin** is a **networked resource monitoring** tool that can help analyze **resource trends** and see what is the weak point and what caused **performance issues**. The team that develops it wishes it for it to be very easy to use and user-friendly. The application is written in Perl and uses the rrdtool to generate graphs, which are with the web interface. The developers advertise the application "plug and play" capabilities with about 500 monitoring plugins currently available. + +**More info** can be found in our [article on Munin][25] + +-------------------------------------------------------------------------------- + +via: http://linoxide.com/monitoring-2/linux-performance-monitoring-tools/ + +作者:[Adrian Dinu][a] +译者:[译者ID](https://github.com/译者ID) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[a]:http://linoxide.com/author/adriand/ +[1]:http://linoxide.com/monitoring-2/dstat-monitor-linux-performance/ +[2]:http://linoxide.com/monitoring-2/guide-using-linux-atop/ +[3]:http://linoxide.com/monitoring-2/install-nmon-monitor-linux-performance/ +[4]:http://linoxide.com/linux-command/kernel-slab-cache-information/ +[5]:http://linoxide.com/linux-command/linux-system-performance-monitoring-using-sar-command/ +[6]:http://linoxide.com/monitoring-2/monitor-linux-saidar-tool/ +[7]:http://linoxide.com/linux-command/linux-top-command-examples-screenshots/ +[8]:http://linoxide.com/tools/sysdig-performance-linux-tool/ +[9]:http://linoxide.com/linux-command/netstat-commad-with-all-variant-outputs/ +[10]:http://linoxide.com/linux-how-to/network-traffic-capture-tcp-dump-command/ +[11]:http://linoxide.com/linux-command/linux-vmstat-command-tool-report-virtual-memory-statistics/ +[12]:http://linoxide.com/linux-command/linux-free-command/ +[13]:http://linoxide.com/linux-command/linux-htop-command/ +[14]:http://linoxide.com/linux-command/ss-sockets-network-connection/ +[15]:http://linoxide.com/how-tos/lsof-command-list-process-id-information/ +[16]:http://linoxide.com/monitoring-2/iftop-network-traffic/ +[17]:http://linoxide.com/monitoring-2/install-iperf-test-network-speed-bandwidth/ +[18]:http://linoxide.com/tools/memory-usage-reporting-smem/ +[19]:http://linoxide.com/monitoring-2/install-configure-icinga-linux/ +[20]:http://linoxide.com/how-tos/install-configure-nagios-centos-7/ +[21]:http://sourceforge.net/projects/procexp/ +[22]:http://linoxide.com/monitoring-2/collectl-tool-install-examples/ +[23]:http://linoxide.com/tools/multi-router-traffic-grapher/ +[24]:http://linoxide.com/monitoring-2/monit-linux/ +[25]:http://linoxide.com/ubuntu-how-to/install-munin/ \ No newline at end of file diff --git a/sources/tech/20141024 SUSE Linux--Zypper Command Examples.md b/sources/tech/20141024 SUSE Linux--Zypper Command Examples.md new file mode 100644 index 0000000000..78f0bb2b9e --- /dev/null +++ b/sources/tech/20141024 SUSE Linux--Zypper Command Examples.md @@ -0,0 +1,168 @@ +SUSE Linux – Zypper Command Examples +================================================================================ +Zypper is command line interface in SuSE Linux which is used to install, update, remove software, manage repositories, perform various queries, and lot more. In this article we will discuss different examples of zypper command . + +Syntax : + + # zypper [--global-opts] [--command-opts] [command-arguments] + +The components mentioned in brackets are not required. The simplest way to execute zypper is to type its name followed by the command. + +### Example:1 List the available global options & commands. ### + +Open the Terminal , type the Zypper command and press enter , it will display all the global options and command that can be used within zypper. + + linux-xa3t:~ # zypper + +### Examples:2 Getting help for Specific zypper Command. ### + +Syntax : zypper help [command] + + linux-xa3t:~ # zypper help remove + remove (rm) [options] ... + + Remove packages with specified capabilities. + A capability is NAME[.ARCH][OP], where OP is one of <, <=, =, >=, >. + + Command options: + -r, --repo Load only the specified repository. + -t, --type Type of package (package, patch, pattern, product). + + Default: package. + -n, --name Select packages by plain name, not by capability. + -C, --capability Select packages by capability. + --debug-solver Create solver test case for debugging. + -R, --no-force-resolution Do not force the solver to find solution,let it ask. + --force-resolution Force the solver to find a solution (even an aggressive one). + -u, --clean-deps Automatically remove unneeded dependencies. + -U, --no-clean-deps No automatic removal of unneeded dependencies. + -D, --dry-run Test the removal, do not actually remove. + +### Example:3 Open Zypper Shell or session ### + + linux-xa3t:~ # zypper sh + zypper> + + or + + linux-xa3t:~ # zypper shell + zypper> + +### Example:4 Listing defined Repositories ### + + linux-xa3t:~ # zypper repos + +![](http://www.linuxtechi.com/wp-content/uploads/2014/10/zypper-repos.png) + +or + + linux-xa3t:~ # zypper lr + +#### 4.1) List Repos URI in Table. #### + +![](http://www.linuxtechi.com/wp-content/uploads/2014/10/zypper-repos-uri.png) + +#### 4.2) List Repos by priority #### + + linux-xa3t:~ # zypper lr -p + +![](http://www.linuxtechi.com/wp-content/uploads/2014/10/zypper-repos-priority.png) + +### Example:5 Refreshing Repositories. ### + + linux-xa3t:~ # zypper ref + Repository 'openSUSE-13.1-Non-Oss' is up to date. + Repository 'openSUSE-13.1-Oss' is up to date. + Repository 'openSUSE-13.1-Update' is up to date. + Repository 'openSUSE-13.1-Update-Non-Oss' is up to date. + All repositories have been refreshed. + +### Example:6 Modifying Zypper Repositories ### + +zypper repositories can be modified by alias, number, or URI, or by the ‘–all, –remote, –local, –medium-type’ aggregate options. + +linux-xa3t:~ # zypper mr -d 6 #disable repo #6 +linux-xa3t:~ # zypper mr -rk -p 70 upd #enable autorefresh and rpm files ‘caching’ for ‘upd’ repo and set its priority to 70 +linux-xa3t:~ # zypper mr -Ka #disable rpm files caching for all repos +linux-xa3t:~ # zypper mr -kt #enable rpm files caching for remote repos + +### Example:7 Adding Repository ### + +Syntax : zypper addrepo OR zypper ar + + linux-xa3t:~ # zypper ar http://download.opensuse.org/update/13.1/ update + Adding repository 'update' .............................................[done] + Repository 'update' successfully added + Enabled: Yes + Autorefresh: No + GPG check: Yes + URI: http://download.opensuse.org/update/13.1/ + +### Example:8 Removing Repository ### + +Syntax : zypper removerepo + +OR + +zypper rr + + linux-xa3t:~ # zypper rr openSUSE-13.1-1.10 openSUSE-13.1-1.10 + Removing repository 'openSUSE-13.1-1.10' ............................[done] + Repository 'openSUSE-13.1-1.10' has been removed. + +### Example:9 Installing Package ### + +syntax : zypper install OR zypper in + + linux-xa3t:~ # zypper install vlc + +### Example:10 Removing a Package ### + +Syntax : zypper remove OR zypper rm + + linux-xa3t:~ # zypper remove sqlite + +### Example:11 Exporting & importing Repository ### + +Syntax of Exporting Repos : zypper repos –export or zypper lr -e + + linux-xa3t:~ # zypper lr --export repo-backup/back.repo + Repositories have been successfully exported to repo-backup/back.repo. + +Syntax of Importing Repos : + + linux-xa3t:~ # zypper ar repo-backup/back.repo + +### Example:12 Updating a package ### + +Syntax : zypper update OR zypper up + + linux-xa3t:~ # zypper update bash + +### Example:13 Install source Package ### + +Syntax : zypper source-install OR zypper si + + linux-xa3t:~ # zypper source-install zypper + +### Example:14 Install only Build Dependency. ### + +command in example:13 will install & build dependencies of the specified package. If you want to install source package then use, the option -D. + + # zypper source-install -D package_name + +To install only the build dependencies use -d. + + # zypper source-install -d package_name + +-------------------------------------------------------------------------------- + +via: http://www.linuxtechi.com/suse-linux-zypper-command-examples/ + +作者:[Pradeep Kumar][a] +译者:[译者ID](https://github.com/译者ID) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[a]:http://www.linuxtechi.com/author/pradeep/ \ No newline at end of file From 3bab6f9a6b79c1e76365688c46ae4a010a963c9f Mon Sep 17 00:00:00 2001 From: wxy Date: Fri, 24 Oct 2014 15:20:42 +0800 Subject: [PATCH 020/108] PUB:20141014 Linux FAQs with Answers--How to detect DVD writer' s device name and its writing speed from the command line on Linux @geekpi --- ...writing speed from the command line on Linux.md | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) rename {translated/tech => published}/20141014 Linux FAQs with Answers--How to detect DVD writer' s device name and its writing speed from the command line on Linux.md (87%) diff --git a/translated/tech/20141014 Linux FAQs with Answers--How to detect DVD writer' s device name and its writing speed from the command line on Linux.md b/published/20141014 Linux FAQs with Answers--How to detect DVD writer' s device name and its writing speed from the command line on Linux.md similarity index 87% rename from translated/tech/20141014 Linux FAQs with Answers--How to detect DVD writer' s device name and its writing speed from the command line on Linux.md rename to published/20141014 Linux FAQs with Answers--How to detect DVD writer' s device name and its writing speed from the command line on Linux.md index 0a43f58336..904386b41f 100644 --- a/translated/tech/20141014 Linux FAQs with Answers--How to detect DVD writer' s device name and its writing speed from the command line on Linux.md +++ b/published/20141014 Linux FAQs with Answers--How to detect DVD writer' s device name and its writing speed from the command line on Linux.md @@ -1,14 +1,14 @@ -Linux 有问必答-- 如何使用Linux命令行检测DVD刻录机的名字和它的读写速度 +Linux有问必答:如何使用Linux命令行检测DVD刻录机的名字和读写速度 ================================================================================ > **提问**:我想要知道我的DVD刻录机的名字和在烧录时的速度。该使用什么Linux命令行工具来连测DVD刻录机的设备名和速度? -如今大多数消费PC和笔记本电脑都配备了DVD刻录机。在Linux中,光盘驱动器,如CD/ DVD驱动器的名字是在引导时内核基于udev规则来命名的。有几种方法来检测刻录机的设备名称和它的写入速度。 - +如今大多数消费PC和笔记本电脑都配备了DVD刻录机。在Linux中,光盘驱动器,如CD/DVD驱动器的名字是在引导时内核基于udev规则来命名的。有几种方法来检测刻录机的设备名称和它的写入速度。 ### 方法一 ### -找出与DVD刻录机相关的设备名称最简单的方法是使用dmesg命令行工具,它打印出内核的消息缓冲区。在dmesg的输出中,寻找一个潜在的DVD刻录机: -$ dmesg | egrep -i --color 'dvd|cd/rw|writer' +找出与DVD刻录机相关的设备名称最简单的方法是使用dmesg命令行工具,它打印出内核的消息缓冲区。在dmesg的输出中,寻找一个安装好的DVD刻录机: + + $ dmesg | egrep -i --color 'dvd|cd/rw|writer' ![](https://farm6.staticflickr.com/5603/15505432622_0bfec51a8f_z.jpg) @@ -98,13 +98,13 @@ $ dmesg | egrep -i --color 'dvd|cd/rw|writer' ![](https://farm6.staticflickr.com/5597/15324137650_91dbf458ef_z.jpg) -** dvd+rw-mediainfo**工具探测插入的媒体(本例中是“DVD-R”),以找出对媒体的实际写入速度。 +**dvd+rw-mediainfo**工具会探测插入的媒体(本例中是“DVD-R”),以找出对媒体的实际写入速度。 -------------------------------------------------------------------------------- via: http://ask.xmodulo.com/detect-dvd-writer-device-name-writing-speed-command-line-linux.html 译者:[geekpi](https://github.com/geekpi) -校对:[校对者ID](https://github.com/校对者ID) +校对:[wxy](https://github.com/wxy) 本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 \ No newline at end of file From b00302d38139236d300c86c9243b5eda1f586d24 Mon Sep 17 00:00:00 2001 From: wxy Date: Fri, 24 Oct 2014 15:25:59 +0800 Subject: [PATCH 021/108] PUB:20141014 Linux FAQs with Answers--How to burn an ISO or NRG image to a DVD from the command line on Linux @GOLinux --- ...to a DVD from the command line on Linux.md | 47 +++++++++---------- 1 file changed, 23 insertions(+), 24 deletions(-) rename {translated/tech => published}/20141014 Linux FAQs with Answers--How to burn an ISO or NRG image to a DVD from the command line on Linux.md (85%) diff --git a/translated/tech/20141014 Linux FAQs with Answers--How to burn an ISO or NRG image to a DVD from the command line on Linux.md b/published/20141014 Linux FAQs with Answers--How to burn an ISO or NRG image to a DVD from the command line on Linux.md similarity index 85% rename from translated/tech/20141014 Linux FAQs with Answers--How to burn an ISO or NRG image to a DVD from the command line on Linux.md rename to published/20141014 Linux FAQs with Answers--How to burn an ISO or NRG image to a DVD from the command line on Linux.md index c597d49886..f9ef00f3dc 100644 --- a/translated/tech/20141014 Linux FAQs with Answers--How to burn an ISO or NRG image to a DVD from the command line on Linux.md +++ b/published/20141014 Linux FAQs with Answers--How to burn an ISO or NRG image to a DVD from the command line on Linux.md @@ -1,11 +1,29 @@ -Linux有问必答——如何在Linux命令行中刻录ISO或NRG镜像到DVD +Linux有问必答:如何在Linux命令行中刻录ISO或NRG镜像到DVD ================================================================================ -> **问题**:我需要在Linux盒子上使用DVD刻录机刻录一个镜像文件(.iso或.nrg)到DVD,有没有一个既快捷又简易的方法,最好是使用命令行工具? +> **问题**:我需要在Linux机器上使用DVD刻录机刻录一个镜像文件(.iso或.nrg)到DVD,有没有一个既快捷又简易的方法,最好是使用命令行工具? -最常见的两种镜像文件格式是ISO(.iso为文件扩展名)和NRG(.nrg为文件扩展名)。ISO格式是一个由ISO(国际标准组织)创立的全球标准,因此被大多数操作系统所支持,它提供了很高的便携性。另一方面,NRG格式是由Nero AG开发的私有格式,Nero AG是一个很大众的磁盘镜像和刻录软件公司。 +最常见的两种镜像文件格式是ISO(.iso为文件扩展名)和NRG(.nrg为文件扩展名)。ISO格式是一个由ISO(国际标准组织)创立的全球标准,因此被大多数操作系统所支持,它提供了很高的便携性。另一方面,NRG格式是由Nero AG开发的私有格式,Nero AG是一个很流行的磁盘镜像和刻录软件公司。 下面来解答怎样从Linux命令行刻录.iso或.nrg镜像到DVD。 +### 刻录.ISO镜像文件到DVD + +要刻录.iso镜像文件到DVD,我们将使用**growisofs**这个工具: + + # growisofs -dvd-compat -speed=4 -Z /dev/dvd1=WindowsXPProfessionalSP3Original.iso + +在上面的命令行中,“-dvd-compat”选项提供了与DVD-ROM/-Video的最大介质兼容性。在一次写入式 DVD+R 或 DVD-R 上下文中,导致不可添加记录(关闭磁盘)。 + +“-Z /dev/dvd1=filename.iso”选项表示我们刻录.iso文件到设备选单(/dev/dvd1)中选择的介质中。 + +“-speed=N”参数指定了DVD刻录机的刻录速度,这与驱动自身的能力直接相关。“-speed=8”将以8x刻录,“-speed=16”将以16x刻录,以此类推。没有该参数,growisofs将默认以最低速刻录,在这里是4x。你可以根据你刻录机的可用速度和磁盘类型选择合适的刻录速度。 + +你可以根据[此教程][2]找出你的DVD刻录机的设备名称和它所支持的写入速度。 + +![](https://farm3.staticflickr.com/2947/15510172352_5c09c2f495_z.jpg) + +刻录进程完成后,磁盘会自动弹出。 + ### 把NRG镜像转换为ISO格式 ### 由于ISO被广为采用,刻录.iso镜像到CD/DVD就非常简单。但是,要刻录一个.nrg镜像则首先需要将它转换为.iso格式。 @@ -32,27 +50,8 @@ Linux有问必答——如何在Linux命令行中刻录ISO或NRG镜像到DVD ![](https://farm4.staticflickr.com/3945/15323823510_c933d7710f_z.jpg) -### 刻录.ISO镜像文件到DVD ### -为了刻录.iso镜像文件到DVD,我们将使用**growisofs**这个工具: - - # growisofs -dvd-compat -speed=4 -Z /dev/dvd1=WindowsXPProfessionalSP3Original.iso - -在上面的命令行中,“-dvd-compat”选项提供了与DVD-ROM/-Video的最大介质兼容性。在一次写入式 DVD+R 或 DVD-R 上下文中,导致不可添加记录(关闭磁盘)。 - -“-Z /dev/dvd1=filename.iso”选项表示我们刻录.iso文件到设备选单(/dev/dvd1)中选择的介质中。 - -“-speed=N”参数指定了DVD刻录机的刻录速度,这与驱动自身的能力直接相关。“-speed=8”将以8x刻录,“-speed=16”将以16x刻录,以此类推。没有该参数,growisofs将默认以最低速刻录,在这里是4x。你可以根据你刻录机的可用速度和磁盘类型选择合适的刻录速度。 - -你可以根据[此教程][2]找出你的DVD刻录机的设备名称和它所支持的写入速度。 -注:此文在另一篇原文中(20141014 Linux FAQs with Answers--How to detect DVD writer' s device name and its writing speed from the command line on Linux.md),如果也翻译发布了,可修改此链接. -校对注:这篇的原文还没翻译,翻译完一起发布 - -![](https://farm3.staticflickr.com/2947/15510172352_5c09c2f495_z.jpg) - -刻录进程完成后,磁盘会自动弹出。 - -### 检查已刻录介质的完整性 ### +###检查已刻录介质的完整性### 关于这一点,你可以通过将刻录的DVD的校验和与原始.iso文件的md5校验和进行对比,以检查所刻录介质的完整性。如果两者相同,你就可以放心了,因为刻录成功了。 @@ -78,4 +77,4 @@ via: http://ask.xmodulo.com/burn-iso-nrg-image-dvd-command-line.html 本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 [1]:http://xmodulo.com/how-to-set-up-rpmforge-repoforge-repository-on-centos.html -[2]:http://ask.xmodulo.com/detect-dvd-writer-device-name-writing-speed-command-line-linux.html +[2]:http://linux.cn/article-4081-1.html From cc8451637aae785e87c6893930d1fbd117e6a62e Mon Sep 17 00:00:00 2001 From: DeadFire Date: Fri, 24 Oct 2014 16:20:23 +0800 Subject: [PATCH 022/108] =?UTF-8?q?20141024-2=20=E9=80=89=E9=A2=98=20?= =?UTF-8?q?=E5=85=B6=E4=B8=AD=E6=98=AF=E4=B8=89=E4=B8=AA=20Upgrade=20?= =?UTF-8?q?=E7=9A=84=E6=96=87=E7=AB=A0=E9=80=89=E4=B8=80=E4=B8=AA=E5=8D=B3?= =?UTF-8?q?=E5=8F=AF=EF=BC=8C=E6=88=96=E8=80=85=E7=BB=BC=E5=90=88=E5=86=85?= =?UTF-8?q?=E5=AE=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ... Installing Ubuntu 14.10 Utopic Unicorn.md | 143 ++++++++++++++++++ ...To Upgrade Ubuntu 14.04 To Ubuntu 14.10.md | 51 +++++++ ...ntu 14.04 Trusty To Ubuntu 14.10 Utopic.md | 109 +++++++++++++ ...pgrade Ubuntu 14.04 LTS to Ubuntu 14.10.md | 32 ++++ 4 files changed, 335 insertions(+) create mode 100644 sources/tech/20141024 7 Things to Do After Installing Ubuntu 14.10 Utopic Unicorn.md create mode 100644 sources/tech/20141024 How To Upgrade Ubuntu 14.04 To Ubuntu 14.10.md create mode 100644 sources/tech/20141024 How To Upgrade Ubuntu 14.04 Trusty To Ubuntu 14.10 Utopic.md create mode 100644 sources/tech/20141024 How to Upgrade Ubuntu 14.04 LTS to Ubuntu 14.10.md diff --git a/sources/tech/20141024 7 Things to Do After Installing Ubuntu 14.10 Utopic Unicorn.md b/sources/tech/20141024 7 Things to Do After Installing Ubuntu 14.10 Utopic Unicorn.md new file mode 100644 index 0000000000..512259afa2 --- /dev/null +++ b/sources/tech/20141024 7 Things to Do After Installing Ubuntu 14.10 Utopic Unicorn.md @@ -0,0 +1,143 @@ +7 Things to Do After Installing Ubuntu 14.10 Utopic Unicorn +================================================================================ +After you’ve installed or [upgraded to Ubuntu 14.10][1], known by its codename ‘Utopic Unicorn’, there are a few things you should do to get it up and running in tip-top shape. + +Whether you’ve performed a fresh install or upgraded an existing version, here’s our biannual checklist of post-install tasks to get started with. + +### 1. Get Acquainted ### + +![The Ubuntu Browser](http://www.omgubuntu.co.uk/wp-content/uploads/2014/10/Screen-Shot-2014-10-23-at-20.02.54.png) + +The Ubuntu Browser + +The majority of changes rocking up in Ubuntu 14.10 aren’t immediately visible (save for some new wallpapers). That said, there are a bunch of freshly updated apps to get familiar with. + +Preinstalled are the latest versions of workhouse staples **Mozilla Firefox**, **Thunderbird**, and **LibreOffice**. Dig a little deeper and you’ll also find Evince 3.14, and a brand new version of the “Ubuntu Web Browser” app, used for handling web-apps. + +While you’re getting familiar, be sure to fire up the Software Updater tool to **check for any impromptu issues Ubuntu has found and fixed** post-release. Yes, I know: you only just upgraded. But, even so — bugs don’t adhere to deadlines like developers do! + +### 2. Personalise The Desktop ### + +![New wallpapers in 14.10](http://www.omgubuntu.co.uk/wp-content/uploads/2014/10/wallpapers-new-in-14.10.jpg) + +New wallpapers in 14.10 + +It’s your desktop PC, so don’t put off making it look, feel and behave how you like. + +Your first port of call might be changing the desktop wallpaper to one of the [twelve stunning new backgrounds][2] included in 14.10, ranging from retro record player to illustrated unicorn. + +Wallpapers and a host of other theme and layout options are accessible from the **Appearance Settings** pane of the System Settings app. From here you can: + +- Switch to a different theme +- Adjust launcher size & behaviour +- Enable workspaces & desktop icons +- Put app menus back into app windows + +For some nifty new themes be sure to check out our **‘themes & icons’ category** here on the site. + +### 3. Install Graphics Card Drivers ### + +![](http://www.omgubuntu.co.uk/wp-content/uploads/2014/10/additional-drivers.jpg) + +If you plan on playing the [latest Steam games][3], watching high-definition video or working with graphically intensive software you’ll want to enable the latest Linux graphics drivers available for your hardware. + +Ubuntu makes this easy: + +- Open up the Software & Updates tool from the Unity Dash +- Click the ‘Additional Drivers‘ tab +- Follow any on-screen prompts to check, install and apply changes + +### 4. Enable Music & Video Codecs ### + +![](http://www.omgubuntu.co.uk/wp-content/uploads/2014/10/msuci.jpg) + +Games sorted, now to make **music and video files work just as well**. + +Most popular formats, .mp3, .m4a, .mov, etc., will work fine in Ubuntu — after a little cajoling. Patent-encumbered codecs cannot ship in Ubuntu for legal reasons, leaving you unable to play popular audio and video formats out of the (invisible) box. + +Don’t panic. To play music or watch video you can install all of the codecs you need quickly, and through the Ubuntu Software Center. + +- [Install Third-Party Codecs][4] + +### 5. Pimp Your Privacy ### + +![](http://www.omgubuntu.co.uk/wp-content/uploads/2014/10/privacy-in-ubuntu-settingd.jpg) + +The Unity Dash is a great one-stop hub for finding stuff, be it a PDF file lurking on your computer or the current weather forecast in Stockholm, Sweden. + +But the diversity of data surfaced through the Dash in just a few keystrokes doesn’t suit everyone’s needs. So you may want to dial down the noise and restrict what shows up. + +To stop certain files and folders from searched in the Dash and/or to disable all ‘online’ results returned for a query, head to the **Privacy & Security** section in System Settings. + +Here you’ll find all the tools, options and configuration switches you need, including options to: + +- Choose what apps & files can be searched from the Dash +- Whether to require a password on waking from suspend +- Disable sending error reports to Canonical +- Turn off all ‘online’ features of the Dash + +### 6. Swap The Default Apps For Your Faves ### + +![Make it yours](http://www.omgubuntu.co.uk/wp-content/uploads/2014/10/more-apps.jpg) + +Make it yours + +Ubuntu comes preloaded with a tonne of apps, including a web browser (Mozilla Firefox), e-mail client (Thunderbird), music player (Rhythmbox), office suite (LibreOffice) and instant messenger (Empathy Instant Messenger). + +All well and good, they’re not everyone’s cup of tea. The Ubuntu Software Center is home to a slew of app alternatives, including: + +- VLC – Versatile media player +- Steam – Games distribution platform +- [Geary — Easy-to-use desktop e-mail app][5] +- GIMP – Advanced image editor similar to Photoshop +- Clementine — Stylish, fully-featured music player +- Chromium open-source version of Google Chrome (without Flash) + +The Ubuntu Software Center plays host to a huge range of other apps, many of which you might not have heard of before. Since most apps are free, don’t be scared to try things out! + +### 7. Grab The Essentials ### + +![Netflix in Chrome on Ubuntu](http://www.omgubuntu.co.uk/wp-content/uploads/2014/10/netflix-linux-working-in-chrome.jpg) + +Netflix in Chrome on Ubuntu + +Software Center apps aside, you may also wish to grab big-name apps like Skype, Spotify and Dropbox. + +Google Chrome is also a must if you wish to watch Netflix natively on Ubuntu or benefit from the latest, safest version of Flash. + +Most of these apps are available to download directly from their respective websites and can be installed on Ubuntu with a couple of clicks. + +- [Download Skype for Linux][6] +- [Download Google Chrome for Linux][7] +- [Download Dropbox for Linux][8] +- [How to Install Spotify in Ubuntu][9] + +Talking of Google Chrome — did you know you can (unofficially) [install and run Android apps through it?][9] Oh yes ;) + +#### Finally… #### + +The items above are not the only ones applicable post-upgrade. Read through and follow the ones that chime with you, and feel free to ignore those that don’t. + +Secondly, this is a list for those who’ve upgraded to or installed Ubuntu 14.10. We’re not going walk you through carving it up into something that isn’t Ubuntu. If Unity isn’t your thing that’s fine, but be logical about it; save yourself some time and install one of the official flavours or offshoots instead. + +-------------------------------------------------------------------------------- + +via: http://www.omgubuntu.co.uk/2014/10/7-things-to-do-after-installing-ubuntu-14-10-utopic-unicorn + +作者:[Joey-Elijah Sneddon][a] +译者:[译者ID](https://github.com/译者ID) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[a]:https://plus.google.com/117485690627814051450/?rel=author +[1]:http://www.omgubuntu.co.uk/2014/10/ubuntu-14-10-release-download-now +[2]:http://www.omgubuntu.co.uk/2014/09/ubuntu-14-10-wallpaper-contest-winners +[3]:http://www.omgubuntu.co.uk/category/gaming +[4]:https://apps.ubuntu.com/cat/applications/ubuntu-restricted-extras/ +[5]:http://www.omgubuntu.co.uk/2014/09/new-shotwell-geary-stable-release-available-to-downed +[6]:http://www.skype.com/en/download-skype/skype-for-linux/ +[7]:http://www.google.com/chrome +[8]:https://www.dropbox.com/install?os=lnx +[9]:http://www.omgubuntu.co.uk/2013/01/how-to-install-spotify-in-ubuntu-12-04-12-10 +[10]:http://www.omgubuntu.co.uk/2014/09/install-android-apps-ubuntu-archon \ No newline at end of file diff --git a/sources/tech/20141024 How To Upgrade Ubuntu 14.04 To Ubuntu 14.10.md b/sources/tech/20141024 How To Upgrade Ubuntu 14.04 To Ubuntu 14.10.md new file mode 100644 index 0000000000..ac64df2371 --- /dev/null +++ b/sources/tech/20141024 How To Upgrade Ubuntu 14.04 To Ubuntu 14.10.md @@ -0,0 +1,51 @@ +How To Upgrade Ubuntu 14.04 To Ubuntu 14.10 +================================================================================ +![](http://itsfoss.itsfoss.netdna-cdn.com/wp-content/uploads/2014/04/Ubuntu_Unicorn_Utopia.jpeg) + +Ubuntu 14.10 has been released yesterday. Wondering **how to upgrade to Ubuntu 14.10 from Ubuntu 14.04**? Don’t worry, it’s extremely easy to upgrade to Ubuntu 14.10. In fact, it is just a matter of few clicks and a good internet connection. + +### Do you need to switch to Ubuntu 14.10 from Ubuntu 14.04? ### + +Before you go on upgrading to Ubuntu 14.10, make sure that you really want to ditch Ubuntu 14.04 for 14.10. It is important for the reason that you won’t be able to downgrade Ubuntu 14.10 back to Ubuntu 14.04. You’ll have to go for a fresh install instead. + +Ubuntu 14.04 is long-term support (LTS) release. Which means more stability and support for greater period. If you upgrade to 14.10, you’ll be forced to further upgrade to Ubuntu 15.04 as the support for 14.10 will last for 9 months only while 14.04 will go on for more than 3 years. + +Moreover, there are not many new features in Ubuntu 14.10 that could compel many users to switch to it. But yes, you’ll get the cutting edge OS for sure. So, at the end of the day it is your call whether to upgrade to Ubuntu 14.10 or not. + +### Upgrade to Ubuntu 14.10 from Ubuntu 14.04 ### + +To upgrade Ubuntu 14.04 to Ubuntu 14.10, follow the steps below: + +#### Step 1: #### + +Open **Software & Updates**. + +![](http://itsfoss.itsfoss.netdna-cdn.com/wp-content/uploads/2014/08/Software_Update_Ubuntu.jpeg) + +Go to **Updates** tab. In here make sure that **Notify me of a new Ubuntu version** is set to **For any new version**. By default Ubuntu will notify you only when there is another LTS release available. You must change it to upgrade to any new interim release. + +![](http://itsfoss.itsfoss.netdna-cdn.com/wp-content/uploads/2014/08/Upgrade_Ubuntu.png) + +#### Step 2: #### + +Now run **Software Updater**. + +![](http://itsfoss.itsfoss.netdna-cdn.com/wp-content/uploads/2014/04/Ubuntu_Updater.jpg) + +After the updates, it should prompt for the availability of a newer version. Click on upgrade and follow the next few obvious steps. + +![](http://itsfoss.itsfoss.netdna-cdn.com/wp-content/uploads/2014/08/Upgrade_to_Ubuntu_1410.jpeg) + +I hope this quick tutorial helped you to **upgrade Ubuntu 14.04 to Ubuntu 14.10**. Though this tutorial was written for Ubuntu, you can use the exact same steps to upgrade to Xubuntu 14.10, Kubuntu 14.10 or Lubuntu 14.10. Stay tuned for more Ubuntu 14.10 related articles. + +-------------------------------------------------------------------------------- + +via: http://itsfoss.com/upgrade-ubuntu-14-04-to-14-10/ + +作者:[Abhishek][a] +译者:[译者ID](https://github.com/译者ID) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[a]:http://itsfoss.com/author/Abhishek/ \ No newline at end of file diff --git a/sources/tech/20141024 How To Upgrade Ubuntu 14.04 Trusty To Ubuntu 14.10 Utopic.md b/sources/tech/20141024 How To Upgrade Ubuntu 14.04 Trusty To Ubuntu 14.10 Utopic.md new file mode 100644 index 0000000000..78777b46a0 --- /dev/null +++ b/sources/tech/20141024 How To Upgrade Ubuntu 14.04 Trusty To Ubuntu 14.10 Utopic.md @@ -0,0 +1,109 @@ +How To Upgrade Ubuntu 14.04 Trusty To Ubuntu 14.10 Utopic +================================================================================ +Hello all! Greetings! Today, we will discuss about how to upgrade from Ubuntu 14.04 to 14.10 final beta. As you may know, Ubuntu 14.10 final beta has already been released. According to the [Ubuntu release schedule][1], the final stable version will be available today in a couple of hours. + +Do you want to upgrade to Ubuntu 14.10 from Ubuntu 14.04/13.10/13,04/12,10/12.04, or older version on your system? Just follow the simple steps given below. Please note that you can’t directly upgrade from 13.10 to 14.04. First, you should upgrade from 13.10 to 14.04, and then upgrade from 14.04 to 14.10. Clear? Good. Now, Let us start the upgrade process. + +Though, the steps provided below are compatible for Ubuntu 14.10, It might work for other Ubuntu derivatives such as Lubuntu 14.10, Kubuntu 14.10, and Xubuntu 14.10 as well. + +**Important**: Before upgrading, don’t forget to backup your important data to any external device like USB hdd or CD/DVD. + +### Desktop Upgrade ### + +Before going to upgrade, we need to update the system. Open up the Terminal and enter the following commands. + + sudo apt-get update && sudo apt-get dist-upgrade + +The above command will download and install the available latest packages. + +Reboot your system to finish installing updates. + +Now, enter the following command to upgrade to new available version. + + sudo update-manager -d + +Software Updater will show up and search for the new release. + +After a few seconds, you will see a screen like below that saying: “**However, Ubuntu 14.10 is available now (you have 14.04)**”. Click on the button Upgrade to start upgrading to Ubuntu 14.10. + +![](http://180016988.r.cdn77.net/wp-content/uploads/2014/10/Software-Updater_001.png) + +The Software Updater will ask you to confirm still you want to upgrade. Click Start Upgrade to begin installing Ubuntu 14.10. + +![](http://180016988.r.cdn77.net/wp-content/uploads/2014/10/Release-Notes_002.png) + +**Please Note**: This is a beta release. Do not install it on production systems. The final stable version will be released in a couple of hours. + +Now, the Software Updater will prepare to start setting up new software channels. + +![](http://180016988.r.cdn77.net/wp-content/uploads/2014/10/Distribution-Upgrade_003.png) + +After a few minutes, the software updater will notify you the details the number of packages are going to be removed, and number of packages are going to be installed. Click **Start upgrade** to continue. Make sure you have good and stable Internet connection. + +![](http://180016988.r.cdn77.net/wp-content/uploads/2014/10/Untitled-window_004.png) + +Now, the updater will start to getting new packages. It will take a while depending upon your Internet connection speed. + +![](http://180016988.r.cdn77.net/wp-content/uploads/2014/10/Distribution-Upgrade_005.png) + +![](http://180016988.r.cdn77.net/wp-content/uploads/2014/10/Distribution-Upgrade_001.png) + +After a while, you’ll be asked to remove unnecessary applications. Finally, click **Restart** to complete the upgrade. + +Congratulations! Now, you have successfully upgraded to Ubuntu 14.10. + +![](http://180016988.r.cdn77.net/wp-content/uploads/2014/10/Details_002.png) + +That’s it.. Start using the new Ubuntu version. + +### Server Upgrade ### + +To upgrade from Ubuntu 14.04 server to Ubuntu 14.10 server, do the following steps. + +Install the update-manager-core package if it is not already installed: + + sudo apt-get install update-manager-core + +Edit the file /etc/update-manager/release-upgrades, + + sudo nano /etc/update-manager/release-upgrades + +and set Prompt=normal or Prompt=lts as shown below. + + # Default behavior for the release upgrader. + + [DEFAULT] + # Default prompting behavior, valid options: + # + # never - Never check for a new release. + # normal - Check to see if a new release is available. If more than one new + # release is found, the release upgrader will attempt to upgrade to + # the release that immediately succeeds the currently-running + # release. + # lts - Check to see if a new LTS release is available. The upgrader + # will attempt to upgrade to the first LTS release available after + # the currently-running one. Note that this option should not be + # used if the currently-running release is not itself an LTS + # release, since in that case the upgrader won't be able to + # determine if a newer release is available. + Prompt=normal + +Now, it is time to upgrade your server system to latest version using the following command: + + sudo do-release-upgrade -d + +Follow the on-screen instructions. You’re done!!. + +Cheers!! + +-------------------------------------------------------------------------------- + +via: http://www.unixmen.com/upgrade-ubuntu-14-04-trusty-ubuntu-14-10-utopic/ + +作者:SK +译者:[译者ID](https://github.com/译者ID) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[1]:https://wiki.ubuntu.com/UtopicUnicorn/ReleaseSchedule \ No newline at end of file diff --git a/sources/tech/20141024 How to Upgrade Ubuntu 14.04 LTS to Ubuntu 14.10.md b/sources/tech/20141024 How to Upgrade Ubuntu 14.04 LTS to Ubuntu 14.10.md new file mode 100644 index 0000000000..8e04738806 --- /dev/null +++ b/sources/tech/20141024 How to Upgrade Ubuntu 14.04 LTS to Ubuntu 14.10.md @@ -0,0 +1,32 @@ +How to Upgrade Ubuntu 14.04 LTS to Ubuntu 14.10 +================================================================================ +![](http://www.omgubuntu.co.uk/wp-content/uploads/2014/10/software-and-updates.jpg) + +**Wondering how to upgrade Ubuntu 14.04 LTS to Ubuntu 14.10? Well, we’re here to help.** + +Canonical won’t be nudging users of 14.04 LTS to upgrade to the interim release of 14.10. + +But that doesn’t mean that **you** can’t upgrade your rock solid Trusty Tahr desktop to the (slightly underwhelming) Utopic Unicorn. + +To get notified of new non-LTS Ubuntu releases you need to “opt-in” via the Software & Updates tool. This is straightforward. + +- Open ‘**Software & Updates**’ +- Select the ‘**Updates**’ tab +- Locate section titled ‘**Notify me of a new Ubuntu version**’ +- In the dropdown menu switch from ‘**For long-term support versions**‘ to ‘**For any new version**’ + +After switching you’ll want to run a quick update. + +Now you’re all set! The moment Canonical send out the “upgrade” prompt to desktop users (often delayed compared to general ISO availability) you’ll be able to upgrade to 14.10 through the Software Updater tool. + +-------------------------------------------------------------------------------- + +via: http://www.omgubuntu.co.uk/2014/10/upgrade-ubuntu-14-04-to-14-10 + +作者:[Joey-Elijah Sneddon][a] +译者:[译者ID](https://github.com/译者ID) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[a]:https://plus.google.com/117485690627814051450/?rel=author \ No newline at end of file From b428b17c5a97d7f05970519a3d733a7b137eab51 Mon Sep 17 00:00:00 2001 From: DeadFire Date: Fri, 24 Oct 2014 16:38:44 +0800 Subject: [PATCH 023/108] =?UTF-8?q?20141024-3=20=E9=80=89=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...te Linux Provides Consistency by Design.md | 115 ++++++++++++++++++ 1 file changed, 115 insertions(+) create mode 100644 sources/talk/20141024 Calculate Linux Provides Consistency by Design.md diff --git a/sources/talk/20141024 Calculate Linux Provides Consistency by Design.md b/sources/talk/20141024 Calculate Linux Provides Consistency by Design.md new file mode 100644 index 0000000000..9d56c3b6cf --- /dev/null +++ b/sources/talk/20141024 Calculate Linux Provides Consistency by Design.md @@ -0,0 +1,115 @@ +Calculate Linux Provides Consistency by Design +================================================================================ +![](http://www.linuxinsider.com/ai/120560/linux-desktop-kde-xfce.jpg) + +> Calculate Linux has a rather interesting strategy for desktop environments. It is characterized by two flavors with the same look and feel. That does not mean that the inherent functionality of the KDE and Xfce desktops are compromised. Rather, the Calculate Linux developers did what you seldom see within a Linux distribution with more than one desktop option: They unified the design. + +Calculate Linux 14 is a distribution designed with home and SMB users in mind. It is optimized for rapid deployment in corporate environments as well. + +Calculate gives users something no other Linux distro makes possible. The Xfce desktop session is customized to imitate the look of the [KDE][1] desktop environment. + +This design approach goes a long way toward making Calculate Linux a one-distro-fits-all solution. Individual users or entire departments within an organization can fine-tune user preferences and features without changing the common appearance or performance. + +Calculate Linux 14, developed by Alexander Tratsevskiy in Russia, is not your typical cookie-cutter type of Linux OS. This latest version, released Sept. 5, is a rolling-release distribution that provides a number of preconfigured features. + +It uses a source-based approach to package management to optimize the software. This in part comes from its roots as a Gentoo Linux-based distribution. + +Calculate Linux comes in three more versions to expand its reach. Calculate Directory Server is for servers, and Calculate Linux Scratch for building customized systems. The Calculate Media Center is a distro to run a home multimedia center. + +### What's New ### + +This latest version of Calculate ships with a few new features, including notification of software updates and an improved administration panel. + +This release adds an improved graphical user interface for Calculate Utilities. It also provides various kernel and other software package updates. + +It comes in 32-bit or 64-bit builds that include two desktop options for personal/business use: KDE and Xfce. A boot menu lets users choose to run the Calculate live desktop environment from RAM for added performance or with a command line interface only. + +Why two choices? Users get better performance on low-end computers using the lightweight desktop environment that comes with Xfce. This is the second release containing this option. It solves the problem of not being able to run the KDE edition of Calculate Linux on underpowered hardware. + +### Designing Details ### + +Calculate Linux has a rather interesting strategy for desktop environments. It is characterized by two flavors with one common design. + +That does not mean that the inherent functionality of the KDE and Xfce desktops are compromised. Rather, the Calculate Linux developers did what you seldom see within a Linux distribution with more than one desktop option. + +Typically, KDE by design is much more animation based. By design, Xfce has fewer visual frills in keeping with its lightweight philosophy. Most KDE distributions place the panel bar at the bottom and do not have a Docky-style launcher anywhere in the desktop decor. + +In Calculate Linux, a classic style application menu, task switcher and system tray are configured at the top of the screen in both desktop versions. At the bottom of the display, there is a hidden quick-launch bar that pops up when the mouse pointer strays toward the lower edge of the screen. + +> ![](http://www.linuxinsider.com/article_images/2014/81242_990x557.jpg) +> Calculate Linux has a unified design that makes KDE and Xfce desktops look nearly the same. The panel and menu display are very nontraditional as seen in this KDE desktop view. + +This duality ties the two desktops together. Both the KDE and the Xfce versions have right-click access to some of the most commonly used system commands and features. + +### Look and Feel ### + +Whether you run the KDE or the Xfce desktops, the panel design is the same. The menu falls from the top left corner as a single box with the same categories in both versions. + +> ![](http://www.linuxinsider.com/article_images/2014/81242_990x540.jpg) +> The Xfce desktop in Calculate Linux is almost totally indistinguishable from its KDE counterpart. + +Hover the mouse over the right edge of the menu box to see the category contents slide out to the right of the box. Only then do you see a varying range of applications to launch with a click. + +The same operation governs the popup launcher bar hidden at the bottom of the screen. Some of the offerings are desktop-specific, however. + +> ![](http://www.linuxinsider.com/article_images/2014/81242_990x556.jpg) +> Calculate Linux embeds a popup launch dock in both the KDE and Xfce desktop editions. + +For example, the bottom dock in both desktop versions launches the Chromium Web browser, [LibreOffice][3], GIMP, SMPlayer and Leafpad (simple text editor). The KDE dock launches kcalc, digikam, Amarok and k3b disk burner. Xfce launches Galculator, Clementine and xfburn. + +### Designed to Differ ### + +One difference is the KDE version has an added button where expected along the upper right edge of the screen. It also has a Widgets button near the far right end of the top panel. + +These provide access to the activities layout where you choose the style of desktop typical of KDE. These are: Grid, Newspaper, Folder, Grouping and Search & Launch. + +A second style difference between the two desktop versions is the inclusion of widgets with the KDE version. These desktop widgets personalize the desktop items. + +### Feature Folly ### + +The Calculate Desktop edition, both KDE and Xfce, creates a user profile when it loads. This profile is fully integrated with Calculate Directory Server. Roaming profiles also are supported. Auto-tuning applications at logon are based on the server settings. + +The approach greatly simplifies the setup and maintenance roles for users with no IT department to support the computer system. The desktop version functions simply as a standalone operating system. No server is needed. However, enterprise and SMB environments can pair the desktop version with the server version for seamless integration. + +Either way, the common set of toolbars, desktop applications and basic settings are easier to configure for desktop and server use, regardless of the desktop environment choice. + +You can install Calculate Linux on a USB thumb drive or a USB hard drive with a choice of these volume formats: ext4, ext3, ext2, reiserfs, btrfs, xfs, jfs, nilfs2 or fat32. + +### Gentler Gentoo ### + +The Gentoo distro in its own right installs applications compiled from source. It uses a software packaging system called "Portage" to semi-automate this process. It also uses the command-line compiling system run by Emerge. + +Calculate's developers soften this Gentoo-based software compiling process somewhat, but it is still more complex than using a community-managed automated software binary repository. + +Calculate Linux is fully compatible with Gentoo repositories and support for binary repository updates. System files are updated via Portage throughout the distribution life cycle. + +### Bottom Line ### + +Calculate Linux is a well-tooled Linux distro that makes consistency in design job number one. It is highly configurable and is optimized for nearly every computing circumstance. + +It runs a full-blown KDE desktop on upper-end hardware, and provides the same look and feel with Xfce on low-end gear. Calculate Linux runs from a hard drive installation or by loading directly into RAM. + +It could offer home and SMB users an effective distro alternative. However, typical for Gentoo-based distros, Calculate Linux's weak point is the lack of a full-fledged binary software repository system. + +### Want to Suggest a Review? ### + +Is there a Linux software application or distro you'd like to suggest for review? Something you love or would like to get to know? + +Please [email your ideas to me][4], and I'll consider them for a future Linux Picks and Pans column. + +And use the Talkback feature below to add your comments! + +-------------------------------------------------------------------------------- + +via: http://www.linuxinsider.com/story/Calculate-Linux-Provides-Consistency-by-Design-81242.html + +作者:Jack M. Germain +译者:[译者ID](https://github.com/译者ID) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[1]:http://www.calculate-linux.org/ +[2]:http://www.kde.org/ +[3]:http://www.libreoffice.org/ +[4]:jack.germain@newsroom.ectnews.com \ No newline at end of file From 0278c0b3f8b2c0305ec7b22825a34cc9c330e117 Mon Sep 17 00:00:00 2001 From: zhengsihua Date: Fri, 24 Oct 2014 21:09:30 +0800 Subject: [PATCH 024/108] [Translating] How to Upgrade Ubuntu 14.04 LTS to Ubuntu 14.10 --- .../20141024 How to Upgrade Ubuntu 14.04 LTS to Ubuntu 14.10.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/sources/tech/20141024 How to Upgrade Ubuntu 14.04 LTS to Ubuntu 14.10.md b/sources/tech/20141024 How to Upgrade Ubuntu 14.04 LTS to Ubuntu 14.10.md index 8e04738806..d5a5d08b88 100644 --- a/sources/tech/20141024 How to Upgrade Ubuntu 14.04 LTS to Ubuntu 14.10.md +++ b/sources/tech/20141024 How to Upgrade Ubuntu 14.04 LTS to Ubuntu 14.10.md @@ -1,3 +1,5 @@ +Translating-----geekpi + How to Upgrade Ubuntu 14.04 LTS to Ubuntu 14.10 ================================================================================ ![](http://www.omgubuntu.co.uk/wp-content/uploads/2014/10/software-and-updates.jpg) From 39fccf93f35132a0f5a674e64e4f0845fd04be39 Mon Sep 17 00:00:00 2001 From: zhengsihua Date: Fri, 24 Oct 2014 21:29:55 +0800 Subject: [PATCH 025/108] [Translated] How to Upgrade Ubuntu 14.04 LTS to Ubuntu 14.10 --- ...pgrade Ubuntu 14.04 LTS to Ubuntu 14.10.md | 34 ------------------- ...pgrade Ubuntu 14.04 LTS to Ubuntu 14.10.md | 32 +++++++++++++++++ 2 files changed, 32 insertions(+), 34 deletions(-) delete mode 100644 sources/tech/20141024 How to Upgrade Ubuntu 14.04 LTS to Ubuntu 14.10.md create mode 100644 translated/tech/20141024 How to Upgrade Ubuntu 14.04 LTS to Ubuntu 14.10.md diff --git a/sources/tech/20141024 How to Upgrade Ubuntu 14.04 LTS to Ubuntu 14.10.md b/sources/tech/20141024 How to Upgrade Ubuntu 14.04 LTS to Ubuntu 14.10.md deleted file mode 100644 index d5a5d08b88..0000000000 --- a/sources/tech/20141024 How to Upgrade Ubuntu 14.04 LTS to Ubuntu 14.10.md +++ /dev/null @@ -1,34 +0,0 @@ -Translating-----geekpi - -How to Upgrade Ubuntu 14.04 LTS to Ubuntu 14.10 -================================================================================ -![](http://www.omgubuntu.co.uk/wp-content/uploads/2014/10/software-and-updates.jpg) - -**Wondering how to upgrade Ubuntu 14.04 LTS to Ubuntu 14.10? Well, we’re here to help.** - -Canonical won’t be nudging users of 14.04 LTS to upgrade to the interim release of 14.10. - -But that doesn’t mean that **you** can’t upgrade your rock solid Trusty Tahr desktop to the (slightly underwhelming) Utopic Unicorn. - -To get notified of new non-LTS Ubuntu releases you need to “opt-in” via the Software & Updates tool. This is straightforward. - -- Open ‘**Software & Updates**’ -- Select the ‘**Updates**’ tab -- Locate section titled ‘**Notify me of a new Ubuntu version**’ -- In the dropdown menu switch from ‘**For long-term support versions**‘ to ‘**For any new version**’ - -After switching you’ll want to run a quick update. - -Now you’re all set! The moment Canonical send out the “upgrade” prompt to desktop users (often delayed compared to general ISO availability) you’ll be able to upgrade to 14.10 through the Software Updater tool. - --------------------------------------------------------------------------------- - -via: http://www.omgubuntu.co.uk/2014/10/upgrade-ubuntu-14-04-to-14-10 - -作者:[Joey-Elijah Sneddon][a] -译者:[译者ID](https://github.com/译者ID) -校对:[校对者ID](https://github.com/校对者ID) - -本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 - -[a]:https://plus.google.com/117485690627814051450/?rel=author \ No newline at end of file diff --git a/translated/tech/20141024 How to Upgrade Ubuntu 14.04 LTS to Ubuntu 14.10.md b/translated/tech/20141024 How to Upgrade Ubuntu 14.04 LTS to Ubuntu 14.10.md new file mode 100644 index 0000000000..473bd5c72e --- /dev/null +++ b/translated/tech/20141024 How to Upgrade Ubuntu 14.04 LTS to Ubuntu 14.10.md @@ -0,0 +1,32 @@ +如何从Ubuntu 14.04 LTS 升级到Ubuntu 14.10 +================================================================================ +![](http://www.omgubuntu.co.uk/wp-content/uploads/2014/10/software-and-updates.jpg) + +**想知道怎样从Ubuntu 14.04 LTS 升级到Ubuntu 14.10么? 这就是我们要讲的** + +Canonical不会强迫14.04的用户升级到14.10这个中间版本 + +但这并不意味着 **你**不能将你的坚如磐石的Trusty Tahr升级到(有点让人印象深刻的)Utopic Unicorn。 + +要得到非LTS版本的Ubuntu发布通知,你需要在软件和更新工具中选择。这个很直接。 + +- 打开 ‘**软件和更新**’ +- 选择 ‘**更新**’ 选项 +- 进入‘**有新版本Ubuntu时通知我**’的选项 +- 在下拉菜单选项中将‘**对于长期支持版本**’改成‘**对于任何版本**’ + +切换后你会想快点更新。 + +现在准备就绪!Canonical此刻会弹出“升级”提示给用户(想比较普通的ISO镜像而言经常延迟)可以通过软件更新工具更新到14.10了。 + +-------------------------------------------------------------------------------- + +via: http://www.omgubuntu.co.uk/2014/10/upgrade-ubuntu-14-04-to-14-10 + +作者:[Joey-Elijah Sneddon][a] +译者:[geekpi](https://github.com/geekpi) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[a]:https://plus.google.com/117485690627814051450/?rel=author \ No newline at end of file From 29cca26d133f0c527ad4d14429e37fdaa13b035a Mon Sep 17 00:00:00 2001 From: DoubleC <450760206@qq.com> Date: Fri, 24 Oct 2014 22:11:58 +0800 Subject: [PATCH 026/108] SPccman translating MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 申领文章 --- ...n) Released – Install in RedHat and Debian Based Systems.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sources/tech/20141022 Wine 1.7.29 (Development Version) Released – Install in RedHat and Debian Based Systems.md b/sources/tech/20141022 Wine 1.7.29 (Development Version) Released – Install in RedHat and Debian Based Systems.md index 509a4cd35c..7e7c6c8f0c 100644 --- a/sources/tech/20141022 Wine 1.7.29 (Development Version) Released – Install in RedHat and Debian Based Systems.md +++ b/sources/tech/20141022 Wine 1.7.29 (Development Version) Released – Install in RedHat and Debian Based Systems.md @@ -1,3 +1,4 @@ +SPccman translating Wine 1.7.29 (Development Version) Released – Install in RedHat and Debian Based Systems ================================================================================ **Wine**, a most popular and powerful open source application for Linux, that used to run Windows based applications and games on Linux Platform without any trouble. @@ -93,4 +94,4 @@ via: http://www.tecmint.com/install-wine-in-linux/ [1]:http://www.winehq.org/announce/1.7.29 [2]:http://www.tecmint.com/install-wine-in-rhel-centos-and-fedora/ [3]:http://www.tecmint.com/install-wine-on-ubuntu-and-linux-mint/ -[4]:http://www.winehq.org/ \ No newline at end of file +[4]:http://www.winehq.org/ From 6b7bf4a778c093b109c1100a2c0ab008397ea2c2 Mon Sep 17 00:00:00 2001 From: zhengsihua Date: Sat, 25 Oct 2014 09:13:25 +0800 Subject: [PATCH 027/108] =?UTF-8?q?[Translating]=20SUSE=20Linux=20?= =?UTF-8?q?=E2=80=93=20Zypper=20Command=20Examples?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- sources/tech/20141024 SUSE Linux--Zypper Command Examples.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/sources/tech/20141024 SUSE Linux--Zypper Command Examples.md b/sources/tech/20141024 SUSE Linux--Zypper Command Examples.md index 78f0bb2b9e..c20f24c1ad 100644 --- a/sources/tech/20141024 SUSE Linux--Zypper Command Examples.md +++ b/sources/tech/20141024 SUSE Linux--Zypper Command Examples.md @@ -1,3 +1,5 @@ +Translating----geekpi + SUSE Linux – Zypper Command Examples ================================================================================ Zypper is command line interface in SuSE Linux which is used to install, update, remove software, manage repositories, perform various queries, and lot more. In this article we will discuss different examples of zypper command . From 3cead6ca660682d549863f2c330ba3fe28aadd2a Mon Sep 17 00:00:00 2001 From: zhengsihua Date: Sat, 25 Oct 2014 09:41:39 +0800 Subject: [PATCH 028/108] =?UTF-8?q?[Translated]=20SUSE=20Linux=20=E2=80=93?= =?UTF-8?q?=20Zypper=20Command=20Examples?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...024 SUSE Linux--Zypper Command Examples.md | 82 +++++++++---------- 1 file changed, 40 insertions(+), 42 deletions(-) rename {sources => translated}/tech/20141024 SUSE Linux--Zypper Command Examples.md (55%) diff --git a/sources/tech/20141024 SUSE Linux--Zypper Command Examples.md b/translated/tech/20141024 SUSE Linux--Zypper Command Examples.md similarity index 55% rename from sources/tech/20141024 SUSE Linux--Zypper Command Examples.md rename to translated/tech/20141024 SUSE Linux--Zypper Command Examples.md index c20f24c1ad..3fba3b6843 100644 --- a/sources/tech/20141024 SUSE Linux--Zypper Command Examples.md +++ b/translated/tech/20141024 SUSE Linux--Zypper Command Examples.md @@ -1,24 +1,22 @@ -Translating----geekpi - -SUSE Linux – Zypper Command Examples +SUSE Linux – Zypper 命令示例 ================================================================================ -Zypper is command line interface in SuSE Linux which is used to install, update, remove software, manage repositories, perform various queries, and lot more. In this article we will discuss different examples of zypper command . +Zypper是SUSE Linux中的命令行接口,可以用于安装,升级,卸载,管理仓库、执行不同的请求等等。本篇将会讨论zypper的几个不同命令的例子。 -Syntax : +语法: # zypper [--global-opts] [--command-opts] [command-arguments] -The components mentioned in brackets are not required. The simplest way to execute zypper is to type its name followed by the command. +中括号中的部分可以不需要。执行zypper最简单的方法是 后输入他的名字。 -### Example:1 List the available global options & commands. ### +### 例子:1 列出可用的全局选项和命令 ### -Open the Terminal , type the Zypper command and press enter , it will display all the global options and command that can be used within zypper. +打开终端,输入zypper并按回车,它会显示所有可用的全局选项和命令。 linux-xa3t:~ # zypper -### Examples:2 Getting help for Specific zypper Command. ### +### 例子:2 获得zypper的某个帮助 ### -Syntax : zypper help [command] +语法: zypper help [command] linux-xa3t:~ # zypper help remove remove (rm) [options] ... @@ -40,7 +38,7 @@ Syntax : zypper help [command] -U, --no-clean-deps No automatic removal of unneeded dependencies. -D, --dry-run Test the removal, do not actually remove. -### Example:3 Open Zypper Shell or session ### +### 例子:3 打开zypper shell或者会话 ### linux-xa3t:~ # zypper sh zypper> @@ -50,7 +48,7 @@ Syntax : zypper help [command] linux-xa3t:~ # zypper shell zypper> -### Example:4 Listing defined Repositories ### +### 例子:4 列出已定义的仓库 ### linux-xa3t:~ # zypper repos @@ -60,17 +58,17 @@ or linux-xa3t:~ # zypper lr -#### 4.1) List Repos URI in Table. #### +#### 4.1) 以表格的形式列出仓库的URI #### ![](http://www.linuxtechi.com/wp-content/uploads/2014/10/zypper-repos-uri.png) -#### 4.2) List Repos by priority #### +#### 4.2) 以优先级列出仓库 #### linux-xa3t:~ # zypper lr -p ![](http://www.linuxtechi.com/wp-content/uploads/2014/10/zypper-repos-priority.png) -### Example:5 Refreshing Repositories. ### +### 例子:5 刷新仓库 ### linux-xa3t:~ # zypper ref Repository 'openSUSE-13.1-Non-Oss' is up to date. @@ -79,18 +77,18 @@ or Repository 'openSUSE-13.1-Update-Non-Oss' is up to date. All repositories have been refreshed. -### Example:6 Modifying Zypper Repositories ### +### 例子:6 修改zypper仓库 ### -zypper repositories can be modified by alias, number, or URI, or by the ‘–all, –remote, –local, –medium-type’ aggregate options. +zypper仓库可以通过别名、数字或者URI或者通过‘–all、 –remote、 –local、 –medium-type’这些选项修改。 -linux-xa3t:~ # zypper mr -d 6 #disable repo #6 -linux-xa3t:~ # zypper mr -rk -p 70 upd #enable autorefresh and rpm files ‘caching’ for ‘upd’ repo and set its priority to 70 -linux-xa3t:~ # zypper mr -Ka #disable rpm files caching for all repos -linux-xa3t:~ # zypper mr -kt #enable rpm files caching for remote repos +linux-xa3t:~ # zypper mr -d 6 #禁用6号仓库 +linux-xa3t:~ # zypper mr -rk -p 70 upd #启用自动书信并为‘upd’仓库设置rpm文件‘缓存’,且设置它的优先级为70 +linux-xa3t:~ # zypper mr -Ka #为所有的仓库禁用rpm文件缓存 +linux-xa3t:~ # zypper mr -kt #为远程仓库设置rpm文件缓存 -### Example:7 Adding Repository ### +### 例子:7 添加仓库 ### -Syntax : zypper addrepo OR zypper ar +语法: zypper addrepo 或者 zypper ar linux-xa3t:~ # zypper ar http://download.opensuse.org/update/13.1/ update Adding repository 'update' .............................................[done] @@ -100,60 +98,60 @@ Syntax : zypper addrepo OR zypper ar GPG check: Yes URI: http://download.opensuse.org/update/13.1/ -### Example:8 Removing Repository ### +### 例子:8 移除仓库 ### -Syntax : zypper removerepo +语法: zypper removerepo <仓库名> <别名> -OR +或者 -zypper rr +zypper rr <仓库名> <别名> linux-xa3t:~ # zypper rr openSUSE-13.1-1.10 openSUSE-13.1-1.10 Removing repository 'openSUSE-13.1-1.10' ............................[done] Repository 'openSUSE-13.1-1.10' has been removed. -### Example:9 Installing Package ### +### 例子:9 安装包 ### -syntax : zypper install OR zypper in +语法: zypper install <包名> 或者 zypper in <包名> linux-xa3t:~ # zypper install vlc -### Example:10 Removing a Package ### +### 例子:10 卸载包 ### -Syntax : zypper remove OR zypper rm +语法: zypper remove <包名> OR zypper rm <包名> linux-xa3t:~ # zypper remove sqlite -### Example:11 Exporting & importing Repository ### +### 例子:11 导出和导入仓库 ### -Syntax of Exporting Repos : zypper repos –export or zypper lr -e +导出仓库语法 : zypper repos –export 或者 zypper lr -e linux-xa3t:~ # zypper lr --export repo-backup/back.repo Repositories have been successfully exported to repo-backup/back.repo. -Syntax of Importing Repos : +导入仓库语法 : linux-xa3t:~ # zypper ar repo-backup/back.repo -### Example:12 Updating a package ### +### 例子:12 Updating a package ### -Syntax : zypper update OR zypper up +语法: zypper update <包名> 或者 zypper up <包名> linux-xa3t:~ # zypper update bash -### Example:13 Install source Package ### +### 例子:13 安装源码包 ### -Syntax : zypper source-install OR zypper si +语法: zypper source-install <源码包> OR zypper si <源码包> linux-xa3t:~ # zypper source-install zypper -### Example:14 Install only Build Dependency. ### +### 例子:只安装以来 ### -command in example:13 will install & build dependencies of the specified package. If you want to install source package then use, the option -D. +例子13中的命令会安装和构建特定包的依赖。如果你想要安装源码包就用-D选项 # zypper source-install -D package_name -To install only the build dependencies use -d. +只安装依赖就使用-d # zypper source-install -d package_name @@ -162,7 +160,7 @@ To install only the build dependencies use -d. via: http://www.linuxtechi.com/suse-linux-zypper-command-examples/ 作者:[Pradeep Kumar][a] -译者:[译者ID](https://github.com/译者ID) +译者:[geekpi](https://github.com/geekpi) 校对:[校对者ID](https://github.com/校对者ID) 本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 From 219885d58b7850a1a07bfad75b19ec40f48c4ce2 Mon Sep 17 00:00:00 2001 From: Jonathan Kang Date: Sat, 25 Oct 2014 11:04:01 +0800 Subject: [PATCH 029/108] JonathanKang is translating --- ...20141023 What is a good command-line calculator on Linux.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sources/tech/20141023 What is a good command-line calculator on Linux.md b/sources/tech/20141023 What is a good command-line calculator on Linux.md index 9ab87352ec..b4da9dad5c 100644 --- a/sources/tech/20141023 What is a good command-line calculator on Linux.md +++ b/sources/tech/20141023 What is a good command-line calculator on Linux.md @@ -1,3 +1,4 @@ +JonathanKang is translating What is a good command-line calculator on Linux ================================================================================ Every modern Linux desktop distribution comes with a default GUI-based calculator app. On the other hand, if your workspace is full of terminal windows, and you would rather crunch some numbers within one of those terminals quickly, you are probably looking for a **command-line calculator**. In this category, [GNU bc][1] (short for "basic calculator") is a hard to beat one. While there are many command-line calculators available on Linux, I think GNU bc is hands-down the most powerful and useful. @@ -112,4 +113,4 @@ via: http://xmodulo.com/command-line-calculator-linux.html [a]:http://xmodulo.com/author/nanni [1]:http://www.gnu.org/software/bc/ -[2]:https://www.gnu.org/software/bc/manual/bc.html \ No newline at end of file +[2]:https://www.gnu.org/software/bc/manual/bc.html From c32f9205a10e5ba2e392794f407e00bc7c3fd0a5 Mon Sep 17 00:00:00 2001 From: su-kaiyao <1250471161@qq.com> Date: Sat, 25 Oct 2014 13:13:43 +0800 Subject: [PATCH 030/108] su-kaiyao translated --- ...ow to create and use Python CGI scripts.md | 159 ------------------ ...ow to create and use Python CGI scripts.md | 158 +++++++++++++++++ 2 files changed, 158 insertions(+), 159 deletions(-) delete mode 100644 sources/tech/20141021 How to create and use Python CGI scripts.md create mode 100644 translated/tech/20141021 How to create and use Python CGI scripts.md diff --git a/sources/tech/20141021 How to create and use Python CGI scripts.md b/sources/tech/20141021 How to create and use Python CGI scripts.md deleted file mode 100644 index 77dde7bad1..0000000000 --- a/sources/tech/20141021 How to create and use Python CGI scripts.md +++ /dev/null @@ -1,159 +0,0 @@ -su-kaiyao translating - -How to create and use Python CGI scripts -================================================================================ -Have you ever wanted to create a webpage or process user input from a web-based form using Python? These tasks can be accomplished through the use of Python CGI (Common Gateway Interface) scripts with an Apache web server. CGI scripts are called by a web server when a user requests a particular URL or interacts with the webpage (such as clicking a "Submit" button). After the CGI script is called and finishes executing, the output is used by the web server to create a webpage displayed to the user. - -### Configuring the Apache web server to run CGI scripts ### - -In this tutorial we assume that an Apache web server is already set up and running. This tutorial uses an Apache web server (version 2.2.15 on CentOS release 6.5) that is hosted at the localhost (127.0.0.1) and is listening on port 80, as specified by the following Apache directives: - - ServerName 127.0.0.1:80 - Listen 80 - -HTML files used in the upcoming examples are located in /var/www/html on the web server. This is specified via the DocumentRoot directive (specifies the directory that webpages are located in): - - DocumentRoot "/var/www/html" - -Consider a request for the URL: http://localhost/page1.html - -This will return the contents of the following file on the web server: - - /var/www/html/page1.html - -To enable use of CGI scripts, we must specify where CGI scripts are located on the web server. To do this, we use the ScriptAlias directive: - - ScriptAlias /cgi-bin/ "/var/www/cgi-bin/" - -The above directive indicates that CGI scripts are contained in the /var/www/cgi-bin directory on the web server and that inclusion of /cgi-bin/ in the requested URL will search this directory for the CGI script of interest. - -We must also explicitly permit the execution of CGI scripts in the /var/www/cgi-bin directory and specify the file extensions of CGI scripts. To do this, we use the following directives: - - - Options +ExecCGI - AddHandler cgi-script .py - - -Consider a request for the URL: http://localhost/cgi-bin/myscript-1.py - -This will call the following script on the web server: - - /var/www/cgi-bin/myscript-1.py - -### Creating a CGI script ### - -Before creating a Python CGI script, you will need to confirm that you have Python installed (this is generally installed by default, however the installed version may vary). Scripts in this tutorial are created using Python version 2.6.6. You can check your version of Python from the command line by entering either of the following commands (the -V and --version options display the version of Python that is installed): - - $ python -V - $ python --version - -If your Python CGI script will be used to process user-entered data (from a web-based input form), then you will need to import the Python cgi module. This module provides functionality for accessing data that users have entered into web-based input forms. You can import this module via the following statement in your script: - - import cgi - -You must also change the execute permissions for the Python CGI script so that it can be called by the web server. Add execute permissions for others via the following command: - - # chmod o+x myscript-1.py - -### Python CGI Examples ### - -Two scenarios involving Python CGI scripts will be considered in this tutorial: - -- Create a webpage using a Python script -- Read and display user-entered data and display results in a webpage - -Note that the Python cgi module is required for Scenario 2 because this involves accessing user-entered data from web-based input forms. - -### Example 1: Create a webpage using a Python script ### - -For this scenario, we will start by creating a webpage /var/www/html/page1.html with a single submit button: - - -

Test Page 1

-
- -
- - -When the "Submit" button is clicked, the /var/www/cgi-bin/myscript-1.py script is called (specified by the action parameter). A "GET" request is specified by setting the method parameter equal to "get". This requests that the web server return the specified webpage. An image of /var/www/html/page1.html as viewed from within a web browser is shown below: - -![](https://farm4.staticflickr.com/3933/14932853623_eff2df3260_z.jpg) - -The contents of /var/www/cgi-bin/myscript-1.py are: - - #!/usr/bin/python - print "Content-Type: text/html" - print "" - print "" - print "

CGI Script Output

" - print "

This page was generated by a Python CGI script.

" - print "" - -The first statement indicates that this is a Python script to be run with the /usr/bin/python command. The print "Content-Type: text/html" statement is required so that the web server knows what type of output it is receiving from the CGI script. The remaining statements are used to print the text of the webpage in HTML format. - -When the "Submit" button is clicked in the above webpage, the following webpage is returned: - -![](https://farm4.staticflickr.com/3933/15553035025_d70be04470_z.jpg) - -The take-home point with this example is that you have the freedom to decide what information is returned by the CGI script. This could include the contents of log files, a list of users currently logged on, or today's date. The possibilities are endless given that you have the entire Python library at your disposal. - -### Example 2: Read and display user-entered data and display results in a webpage ### - -For this scenario, we will start by creating a webpage /var/www/html/page2.html with three input fields and a submit button: - - -

Test Page 2

-
- First Name:
- Last Name:
- Position:
- -
- - -When the "Submit" button is clicked, the /var/www/cgi-bin/myscript-2.py script is called (specified by the action parameter). An image of /var/www/html/page2.html as viewed from within a web browser is shown below (note that the three input fields have already been filled in): - -![](https://farm4.staticflickr.com/3935/14932853603_ffc3bd330e_z.jpg) - -The contents of /var/www/cgi-bin/myscript-2.py are: - - #!/usr/bin/python - import cgi - form = cgi.FieldStorage() - print "Content-Type: text/html" - print "" - print "" - print "

CGI Script Output

" - print "

" - print "The user entered data are:
" - print "First Name: " + form["firstName"].value + "
" - print "Last Name: " + form["lastName"].value + "
" - print "Position: " + form["position"].value + "
" - print "

" - print "" - -As mentioned previously, the import cgi statement is needed to enable functionality for accessing user-entered data from web-based input forms. The web-based input form is encapsulated in the form object, which is a cgi.FieldStorage object. Once again, the "Content-Type: text/html" line is required so that the web server knows what type of output it is receiving from the CGI script. The data entered by the user are accessed in the statements that contain form["firstName"].value, form["lastName"].value, and form["position"].value. The names in the square brackets correspond to the values of the name parameters defined in the text input fields in **/var/www/html/page2.html**. - -When the "Submit" button is clicked in the above webpage, the following webpage is returned: - -![](https://farm4.staticflickr.com/3949/15367402150_946474dbb0_z.jpg) - -The take-home point with this example is that you can easily read and display user-entered data from web-based input forms. In addition to processing data as strings, you can also use Python to convert user-entered data to numbers that can be used in numerical calculations. - -### Summary ### - -This tutorial demonstrates how Python CGI scripts are useful for creating webpages and for processing user-entered data from web-based input forms. More information about Apache CGI scripts can be found [here][1] and more information about the Python cgi module can be found [here][2]. - --------------------------------------------------------------------------------- - -via: http://xmodulo.com/create-use-python-cgi-scripts.html - -作者:[Joshua Reed][a] -译者:[译者ID](https://github.com/译者ID) -校对:[校对者ID](https://github.com/校对者ID) - -本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 - -[a]:http://xmodulo.com/author/joshua -[1]:http://httpd.apache.org/docs/2.2/howto/cgi.html -[2]:https://docs.python.org/2/library/cgi.html#module-cgi diff --git a/translated/tech/20141021 How to create and use Python CGI scripts.md b/translated/tech/20141021 How to create and use Python CGI scripts.md new file mode 100644 index 0000000000..1604366d16 --- /dev/null +++ b/translated/tech/20141021 How to create and use Python CGI scripts.md @@ -0,0 +1,158 @@ +如何创建和使用Python CGI脚本 +=== + +你是否想使用Python语言创建一个网页,或者处理用户从web表单输入的数据?这些任务可以通过Python CGI(公用网关接口)脚本以及一个Apache web服务器实现。当用户请求一个指定URL或者和网页交互(比如点击""提交"按钮)的时候,CGI脚本就会被web服务器启用。CGI脚本调用执行完毕后,它的输出结果就会被web服务器用来创建显示给用户的网页。 + +### 配置Apache web服务器,让其能运行CGI脚本 ### + +在这个教程里,我们假设Apache web服务器已经安装好,并已运行。这篇教程使用的Apache web服务器(版本2.2.15,用于CentOS发行版6.5)运行在本地主机(127.0.0.1),并且监听80端口,如下面的Apache指令指定一样: + + ServerName 127.0.0.1:80 + Listen 80 + +下面举例中的HTML文件存放在web服务器上的/var/www/html目录下,并通过DocumentRoot指令指定(指定网页文件所在目录): + + DocumentRoot "/var/www/html" + +现在尝试请求URL:http://localhost/page1.html + +这将返回web服务器中下面文件的内容: + + /var/www/html/page1.html + +为了启用CGI脚本,我们必须指定CGI脚本在web服务器上的位置,需要用到ScriptAlias指令: + + ScriptAlias /cgi-bin/ "/var/www/cgi-bin/" + +以上指令表明CGI脚本保存在web服务器的/var/www/cgi-bin目录,请求URL里包含/cgi-bin/的将会搜索这个目录下的CGI脚本。 + +我们必须还要明确CGI脚本在/var/www/cgi-bin目录下有执行权限,还要指定CGI脚本的文件扩展名。使用下面的指令: + + + Options +ExecCGI + AddHandler cgi-script .py + + +下面访问URL:http://localhost/cgi-bin/myscript-1.py + +这将会调用web服务器中下面所示脚本: + + /var/www/cgi-bin/myscript-1.py + +### 创建一个CGI脚本 ### + +在创建一个Python CGI脚本之前,你需要确认你已经安装了Python(这通常是默认安装的,但是安装版本可能会有所不同)。本篇教程使用的脚本是使用Python版本2.6.6编写的。你可以通过下面任意一命令(-V和--version参数将显示所安装Python的版本号)检查Python的版本。 + + $ python -V + $ python --version + +如果你的Python CGI脚本要用来处理用户输入的数据(从一个web输入表单),然后你将需要导入Python cgi模块。这个模块可以处理用户通过web输入表单输入的数据。你可以在你的脚本中通过下面的语句导入该脚本: + + import cgi + +你也必须修改Python CGI脚本的执行权限,以防止web服务器不能调用。可以通过下面的命令增加执行权限: + + # chmod o+x myscript-1.py + +### Python CGI例子 ### + +涉及到Python CGI脚本的两个方案将会在下面讲述: + +- 使用Python脚本创建一个网页 +- 读取并显示用户输入的数据,并且在网页上显示结果 + +注意:Python cgi模块在方案2中是必需的,因为这涉及到用户从web表单输入数据。 + +### 例子1 :使用Python脚本创建一个网页 ### + +对于这个方案,我们将通过创建包含一个单一提交按钮的网页/var/www/html/page1.html开始。 + + +

Test Page 1

+
+ +
+ + +当"提交"按钮被点击,/var/www/cgi-bin/myscript-1.py脚本将被调用(通过action参数指定)。通过设置方法参数为"get"来指定一个"GET"请求,服务器将会返回指定的网页。/var/www/html/page1.html在浏览器中的显示情况如下: + +![](https://farm4.staticflickr.com/3933/14932853623_eff2df3260_z.jpg) + +/var/www/cgi-bin/myscript-1.py的内容如下: + + #!/usr/bin/python + print "Content-Type: text/html" + print "" + print "" + print "

CGI Script Output

" + print "

This page was generated by a Python CGI script.

" + print "" + +第一行声明表示这是使用 /usr/bin/python命令运行的Python脚本。"Content-Type: text/html"打印语句是必需的,这是为了让web服务器知道接受自CGI脚本的输出类型。其余的语句用来输出HTML格式的其余网页内容。 + +当"Submit"按钮点击,下面的网页将返回: + +![](https://farm4.staticflickr.com/3933/15553035025_d70be04470_z.jpg) + +这个例子的要点是你可以决定哪些信息可以被CGI脚本返回。这可能包括日志文件的内容,当前登陆用户的列表,或者今天的日期。在你处理时拥有所有python库的可能性是无穷无尽的。 + +### 例子2:读取并显示用户输入的数据,并将结果显示在网页上 ### + +对于这个方案,我们将通过创建一个含有三个输入域和一个提交按钮的网页/var/www/html/page2.html开始。 + + +

Test Page 2

+
+ First Name:
+ Last Name:
+ Position:
+ +
+ + +当"Submit"按钮点击,/var/www/cgi-bin/myscript-2.py脚本将被执行(通过action参数指定)。/var/www//html/page2.html显示在web浏览器中的图片如下所示(注意,三个输入域已经被填写了): + +![](https://farm4.staticflickr.com/3935/14932853603_ffc3bd330e_z.jpg) + +/var/www/cgi-bin/myscript-2.py的内容如下: + + #!/usr/bin/python + import cgi + form = cgi.FieldStorage() + print "Content-Type: text/html" + print "" + print "" + print "

CGI Script Output

" + print "

" + print "The user entered data are:
" + print "First Name: " + form["firstName"].value + "
" + print "Last Name: " + form["lastName"].value + "
" + print "Position: " + form["position"].value + "
" + print "

" + print "" + +正如前面提到,import cgi语句需要用来确保能够处理用户通过web输入表单输入的数据。web输入表单被封装在一个表单对象中,叫做cgi.FieldStorage对象。一旦开始,"Content-Type: text/html"是必需的,因为web服务器需要知道接受自CGI脚本的输出格式。用户输入的数据在包含form["firstName"].value,form["lastName"].value, and form["position"].value的语句中被接受。那些中括号中的名称和**/var/www/html/page2.html**文本输入域中定义的名称参数一致。 + +当网页上的"Submit"按钮被点击,下面的网页将被返回。 + +![](https://farm4.staticflickr.com/3949/15367402150_946474dbb0_z.jpg) + +这个例子的要点就是你可以很容易地读取并显示用户在web表单上输入的数据。除了以字符串的方式处理数据,你也可以用Python将用户输入的数据转化为可用于数值计算的数字。 + +### 结论 ### + +本教程演示了如何使用Python CGI脚本创建网页并处理用户在网页表单输入的数据。查阅更多关于Apache CGI脚本的信息,点击[这里][1]。查阅更多关于Python cgi模块的信息,点击[这里][2]。 + +--- + +via: http://xmodulo.com/create-use-python-cgi-scripts.html + +作者:[Joshua Reed][a] +译者:[su-kaiyao](https://github.com/su-kaiyao) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[a]:http://xmodulo.com/author/joshua +[1]:http://httpd.apache.org/docs/2.2/howto/cgi.html +[2]:https://docs.python.org/2/library/cgi.html#module-cgi From db32911468c4dd93f83aede593a269ee4bb3ca83 Mon Sep 17 00:00:00 2001 From: ZTinoZ Date: Sat, 25 Oct 2014 16:34:30 +0800 Subject: [PATCH 031/108] Updating by ZTinoZ --- ...ts Alienating Developers with Strong Language.md | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/sources/news/20141017 Linus Torvalds Regrets Alienating Developers with Strong Language.md b/sources/news/20141017 Linus Torvalds Regrets Alienating Developers with Strong Language.md index b68395bf7e..a538502451 100644 --- a/sources/news/20141017 Linus Torvalds Regrets Alienating Developers with Strong Language.md +++ b/sources/news/20141017 Linus Torvalds Regrets Alienating Developers with Strong Language.md @@ -1,15 +1,14 @@ -Translating by ZTinoZ -Linus Torvalds Regrets Alienating Developers with Strong Language +Linus Torvalds对于骂那些开发者感到后悔 ================================================================================ -> He didn't name anyone, but this sounds like an apology +> 他没有提到任何人的名字,但是这像一次道歉 -**Linus Torvalds talked today at LinuxCon and CloudOpen Europe, a conference organized by the Linux Foundation that reunites all the big names in the open source world. He answered a lot of questions and he also talked about the effects of the strong language he uses in the mailing list.** +**Linus Torvalds在前几天的欧洲LinuxCon和CloudOpen大会上做了讲话,这次大会由Linux基金会组织并且汇聚了开源世界的所有大佬。他回答了很多问题,也谈到了他在邮件发送清单里使用脏话的事情。** -Linus Torvalds is recognized as the creator of the Linux kernel and the maintainer of the latest development version. He makes sure that we get a new RC almost every week and he is very involved in the discussions that take place in the mailing list. He doesn't really choose his words and has been blamed for using strong language with some of the developers. +Linus Torvalds被认为是Linux内核的创造者和最新的Linux开发版的维护者。他确保我们几乎每个星期都会得到一个新的RC内核并且涉及发生在邮件发送清单中的对话里,他口不择言地用脏话大骂一些开发者们。 The latest problem of this kind, which surfaced in the news as well, was when [he decided to block code from a particular developer][1], after making some very harsh remarks. He is known to be very abrasive, especially when kernel developers break user space to fix something in the kernel. The same happened in this case and he basically went mental on the guy. -### This is the closest he's been to an apology ### +### 这是他最接近道歉的一次谈话 ### Linus Torvalds never really talked about that particular discussion since and people moved on, but recently a systemd developer talked about the strong language in the open source community and he mentioned Linus Torvalds by name. He's not known to apologize, so this admission of guilt during LinuxCon is a big step forward. The moderator asked him what single decision in the last 23 years he would change. @@ -26,7 +25,7 @@ It also looks like Linux kernel 3.18 RC1 will arrive later this week and we'll s via: http://news.softpedia.com/news/Linus-Torvalds-Regrets-Alienating-Developers-with-Strong-Language-462191.shtml 作者:[Silviu Stahie][a] -译者:[译者ID](https://github.com/译者ID) +译者:[ZTinoZ](https://github.com/ZTinoZ) 校对:[校对者ID](https://github.com/校对者ID) 本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 From fba0e40301bb0a876f9a8fef817f52fdbc13b5c0 Mon Sep 17 00:00:00 2001 From: DoubleC <450760206@qq.com> Date: Sat, 25 Oct 2014 17:33:58 +0800 Subject: [PATCH 032/108] =?UTF-8?q?Delete=2020141022=20Wine=201.7.29=20(De?= =?UTF-8?q?velopment=20Version)=20Released=20=E2=80=93=20Install=20in=20Re?= =?UTF-8?q?dHat=20and=20Debian=20Based=20Systems.md?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit translate complete and delete source file --- ...nstall in RedHat and Debian Based Systems.md | 97 ------------------- 1 file changed, 97 deletions(-) delete mode 100644 sources/tech/20141022 Wine 1.7.29 (Development Version) Released – Install in RedHat and Debian Based Systems.md diff --git a/sources/tech/20141022 Wine 1.7.29 (Development Version) Released – Install in RedHat and Debian Based Systems.md b/sources/tech/20141022 Wine 1.7.29 (Development Version) Released – Install in RedHat and Debian Based Systems.md deleted file mode 100644 index 7e7c6c8f0c..0000000000 --- a/sources/tech/20141022 Wine 1.7.29 (Development Version) Released – Install in RedHat and Debian Based Systems.md +++ /dev/null @@ -1,97 +0,0 @@ -SPccman translating -Wine 1.7.29 (Development Version) Released – Install in RedHat and Debian Based Systems -================================================================================ -**Wine**, a most popular and powerful open source application for Linux, that used to run Windows based applications and games on Linux Platform without any trouble. - -![Install Wine (Development Version) in Linux](http://www.tecmint.com/wp-content/uploads/2014/05/Install-Wine-Development-Version.png) - -Install Wine (Development Version) in Linux - -WineHQ team, recently announced a new development version of **Wine 1.7.29**. This new development build arrives with a number of new important features and **44** bug fixes. - -Wine team, keep releasing their development builds almost on weekly basis and adding numerous new features and fixes. Each new version brings support for new applications and games, making Wine a most popular and must have tool for every user, who want to run Windows based software in a Linux platform. - -According to the changelog, following key features are added in this release: - -- Added much improved shaping and BiDi mirroring in DirectWrite. -- Few page fault handling problems have been udpated. -- Included few more C runtime functions. -- Various bug fixes. - -For more in-depth details about this build can be found at the official [changelog][1] page. - -This article guides you how to install most recent development version of **Wine 1.7.29** on **Red Hat** and **Debian** based systems such as CentOS, Fedora, Ubuntu, Linux Mint and other supported distributions. - -### Installing Wine 1.7.29 Development Version in Linux ### - -Unfortunately, there are no official Wine repository available for the **Red Hat** based systems and the only way to install Wine, is to compile it from source. To do this, you need to install some dependency packages such as gcc, flex, bison, libX11-devel freetype-devel and Development Tools, etc. These packages are must required to compile Wine from source. Let’s install them using following **YUM** command. - -### On RedHat, Fedora and CentOS ### - - # yum -y groupinstall 'Development Tools' - # yum -y install flex bison libX11-devel freetype-devel - -Next, download the latest development version of Wine (i.e. **1.7.29**) and extract the source tallball package using the following commands. - - $ cd /tmp - $ wget http://citylan.dl.sourceforge.net/project/wine/Source/wine-1.7.29.tar.bz2 - $ tar -xvf wine-1.7.29.tar.bz2 -C /tmp/ - -Now, it’s time to compile and build Wine installer using the following commands as normal user. - -Note: The installation process might take up-to **15-20** minutes depending upon your internet and hardware speed, during installation it will ask you to enter **root** password. - -#### On 32-Bit Systems #### - - $ cd wine-1.7.29/ - $ ./tools/wineinstall - -#### On 64-Bit Systems #### - - $ cd wine-1.7.29/ - $ ./configure --enable-win64 - $ make - # make install - -### On Ubuntu, Debian and Linux Mint ### - -Under **Ubuntu** based systems, you can easily install the latest development build of Wine using the official **PPA**. Open a terminal and run the following commands with sudo privileges. - - $ sudo add-apt-repository ppa:ubuntu-wine/ppa - $ sudo apt-get update - $ sudo apt-get install wine 1.7 winetricks - -**Note**: At the time of writing this article, available version was **1.7.26** and the new build not yet updated in official Wine Repository, but the above instructions will install **1.7.29** when they made available. - -Once the installation completes successfully, you can install or run any windows based applications or games using wine as shown below. - - $ wine notepad - $ wine notepad.exe - $ wine c:\\windows\\notepad.exe - -**Note**: Please remember, this is a development build and cannot be installed or used on production systems. It is advised to use this version only for testing purpose. - -If you’re looking for a most recent stable version of Wine, you can go through our following articles, that describes how to install most latest version on almost all Linux environments. - -- [Install Wine 1.6.2 (Stable) in RHEL, CentOS and Fedora][2] -- [Install Wine 1.6.2 (Stable) in Debian, Ubuntu and Mint][3] - -### Reference Links ### - -- [WineHQ Homepage][4] - --------------------------------------------------------------------------------- - -via: http://www.tecmint.com/install-wine-in-linux/ - -作者:[Ravi Saive][a] -译者:[译者ID](https://github.com/译者ID) -校对:[校对者ID](https://github.com/校对者ID) - -本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 - -[a]:http://www.tecmint.com/author/admin/ -[1]:http://www.winehq.org/announce/1.7.29 -[2]:http://www.tecmint.com/install-wine-in-rhel-centos-and-fedora/ -[3]:http://www.tecmint.com/install-wine-on-ubuntu-and-linux-mint/ -[4]:http://www.winehq.org/ From a49d56a618cf088c965b8f203f2fc7beeac78201 Mon Sep 17 00:00:00 2001 From: DoubleC <450760206@qq.com> Date: Sat, 25 Oct 2014 17:40:48 +0800 Subject: [PATCH 033/108] =?UTF-8?q?Create=20Wine=201.7.29=20(Development?= =?UTF-8?q?=20Version)=20Released=20=E2=80=93=20Install=20in=20RedHat=20an?= =?UTF-8?q?d=20Debian=20Based=20Systems.md?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit create translated file --- ...nstall in RedHat and Debian Based Systems.md | 96 +++++++++++++++++++ 1 file changed, 96 insertions(+) create mode 100644 translated/tech/Wine 1.7.29 (Development Version) Released – Install in RedHat and Debian Based Systems.md diff --git a/translated/tech/Wine 1.7.29 (Development Version) Released – Install in RedHat and Debian Based Systems.md b/translated/tech/Wine 1.7.29 (Development Version) Released – Install in RedHat and Debian Based Systems.md new file mode 100644 index 0000000000..322ce30076 --- /dev/null +++ b/translated/tech/Wine 1.7.29 (Development Version) Released – Install in RedHat and Debian Based Systems.md @@ -0,0 +1,96 @@ +Wine 1.7.29(开发版本)已发布-在基于RedHat与Debian的系统上安装 +========================= +**Wine**,一个在Linux平台上非常受欢迎并且强大的开源应用,有了它,我们可以在Linux平台上完美运行Windows应用与游戏。 + +![Install Wine (Development Version) in Linux](http://www.tecmint.com/wp-content/uploads/2014/05/Install-Wine-Development-Version.png) + +在Linux上安装Wine(开发版本) + +WineHQ团队,近期宣布了一个新的开发版本**Wine1.7.29**。这个版本带来了诸多重要的特性,并且修复了**44**个bug。 + +Wine团队几乎每周都会发布新的开发版本,并且加入许多新特性以及修复漏洞。每个新版本都会支持新的应用与游戏(Windows),这使得Wine在那些想要在Linux下运行Windows应用的用户群体中很流行并且是不可缺少的。 + +根据变更日志,这个版本中添加了以下的关键特性: + +- 在DirectWrite中加入增强的外形塑造与BiDi(译者:bi-directional language)镜像。 +- 升级了一些页面错误处理方式。 +- 增加了更多的C运行时函数。 +- 修复了大量的bug。 + +在官方的 [变更日志][1] 中可以找到关于这个版本更多更深入的细节。 + +这篇文章指导你在基于**RedHat**与**Debian**的系统,如CentOS,Fedora,Ubuntu,Linux Mint以及其他的发型版中安装最新的开发版本**Wine 1.7.29**。 + +##在Linux中安装 Wine 1.7.29 开发版本## + +遗憾的是,目前还没有官方的Wine仓库可以获取基于**RedHat**系统的版本,只能通过编译源码来安装。如果要这么做的话,我们先要安装一些开发包如gcc,flex,bison,libX11-devel freetype-devel 以及开发工具,等等。这些工具都是编译Wine源码所必须的。我们可以通过**YUM**命令来安装这些包。 + +##RedHat,Fedora,CentOS## + + # yum -y groupinstall 'Development Tools' + # yum -y install flex bison libX11-devel freetype-devel + +然后,使用如下命令下载Wine最新的开发版本(**1.7.29**)以及解压源码包。 + + $cd /tmp + $wget http://citylan.dl.sourceforge.net/project/wine/Source/wine-1.7.29.tar.bz2 + $ tar -xvf wine-1.7.29.tar.bz2 -C /tmp/ + +接下来,使用下列命令编译及安装Wine。 + +注:安装过程大概需要**15-20**分钟,这个时间由你的网络速度以及电脑硬件配置决定,在安装过程中需要**root**密码。 + +####32位系统#### + + $cd wine-1.7.29/ + $./tools/wineinstall + +####64位系统#### + + $ cd wine-1.7.29/ + $ ./configure --enable-win64 + $ make + # make install + +###Ubuntu,Debian 与 Linux Mint### + +在**Ubuntu**系统下,你可以使用官方的**PPA**方便的安装最新的Wine开发版本。打开一个终端并使用sudo权限执行下列命令。 + + $ sudo add-apt-repository ppa:ubuntu-wine/ppa + $ sudo apt-get update + $ sudo apt-get install wine 1.7 winetricks + +**注**:在写这篇文章时,只能获取**1.7.26**,在官方的仓库中还没有更新到最新版本,但是当仓库更新到**1.7.29**后,使用上面的指令可以安装最新的版本。(译者:为毛我看了版本号是1.6.2......) + +安装成功后,你可以安装或运行任何windows应用或游戏了,示例如下: + + $ wine notepad + $ wine notepad.exe + $ wine c:\\windows\\notepad.exe + +**注**:切记,这是一个开发版本,请勿在生产系统上安装它。建议这个版本仅作测试用。 + +如果你需要最新的稳定版本,可以参考下列文章,它介绍了如何安装最新的稳定版本。 + +- [Install Wine 1.6.2 (Stable) in RHEL, CentOS and Fedora][2] +- [Install Wine 1.6.2 (Stable) in Debian, Ubuntu and Mint][3] + +###参考链接### + +- [WineHQ Homepage][4] + +------------------------------------------------- + +via: http://www.tecmint.com/install-wine-in-linux/ + +作者:[Ravi Saive][a] +译者:[SPccman](https://github.com/SPccman) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[a]:http://www.tecmint.com/author/admin/ +[1]:http://www.winehq.org/announce/1.7.29 +[2]:http://www.tecmint.com/install-wine-in-rhel-centos-and-fedora/ +[3]:http://www.tecmint.com/install-wine-on-ubuntu-and-linux-mint/ +[4]:http://www.winehq.org/ From 9439a8bf0695f16b9604aedc54563f4a957b7f29 Mon Sep 17 00:00:00 2001 From: wxy Date: Sat, 25 Oct 2014 21:15:52 +0800 Subject: [PATCH 034/108] PUB:20140811 Check how much do you type with WhatPulse on Linux @GOLinux --- ...k how much do you type with WhatPulse on Linux.md | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) rename {translated/tech => published}/20140811 Check how much do you type with WhatPulse on Linux.md (90%) diff --git a/translated/tech/20140811 Check how much do you type with WhatPulse on Linux.md b/published/20140811 Check how much do you type with WhatPulse on Linux.md similarity index 90% rename from translated/tech/20140811 Check how much do you type with WhatPulse on Linux.md rename to published/20140811 Check how much do you type with WhatPulse on Linux.md index 7be54ae2ca..853c195b23 100644 --- a/translated/tech/20140811 Check how much do you type with WhatPulse on Linux.md +++ b/published/20140811 Check how much do you type with WhatPulse on Linux.md @@ -2,11 +2,11 @@ Linux输入统计神器——WhatPulse ================================================================================ ![](http://cdn.linuxaria.com/wp-content/uploads/2014/08/whatpulse.png) -如果,你想我这样,是个对统计数据有着狂热癖好的人,那么你必须在你的计算机上安装这个小应用:[WhatPulse][1] +如果,你像我这样,是个对统计数据有着狂热癖好的人,那么你必须在你的计算机上安装这个小应用:[WhatPulse][1] 此软件会追踪用户的击键、鼠标点击以及使用的[带宽][2]和系统开机时间。用户可以周期性地,或者手动上传击键的数量到服务器上,这称之为“脉动”。 -用户可以看到他们在所有加入该程序的人的领先选手排名板的所处位置,并且与他们自己国家的人作比较。用户也可以加入团队,在团队中他们可以和有着相同爱好的人作对比(去吧,Linux用户们!!)。 +用户可以看到他们在所有加入该程序的人的领先选手排行板的所处位置,并且与他们自己国家的人作比较。用户也可以加入团队,在团队中他们可以和有着相同爱好的人作对比(去吧,Linux用户们!!)。 软件分为免费的基础版和高级版,在基础版中你可以查看并检查所有的基本统计数据,而在高级版中你可以看到更多。 @@ -16,11 +16,11 @@ Linux输入统计神器——WhatPulse 第一步,你必须在[WhatPulse网站][1]注册帐号,或者也可以在你第一次启动WhatPulse客户端时出现的实用向导中创建帐号,以用于上传自己的统计数据(你也可以使用Facebook的帐号登录)。 -你会被提示需要登录,登录之后,你必须搜索你的计算机名,这是因为你可以通过该帐号登录到多台计算机,而它们的数据都会上传到同一统计帐号。一旦你登入后,一个小小的W将出现在你的系统托盘中,那就对了,你已搞定! +你会被提示需要登录,登录之后,你必须找到你的计算机名,这是因为你可以通过该帐号登录到多台计算机,而它们的数据都会上传到同一统计帐号。一旦你登入后,一个小小的W将出现在你的系统托盘中,那就对了,你已搞定! ### 在Linux上安装WhatPulse ### -官方网站在[下载页][3]提供了一个通用版本.tar.gz归档压缩包(用于32位和64位)和一个debian包。 +官方网站在[下载页][3]提供了一个通用版本的.tar.gz归档压缩包(用于32位和64位)和一个debian包。 就我个人而言,我已经在我的Mint Qiana上安装了debian包,在我的Arch Linux[Aur包][4]一点问题都没有。 @@ -57,7 +57,7 @@ Linux输入统计神器——WhatPulse 在网站上,你会看到与客户端上相同的所有统计数据。 -免责声明:上面的WhatPulse网站链接包含了我的参考链接,注册时请使用该链接,这会让我的帐号在某天升级到高级帐号。 +免责声明:上面的WhatPulse网站链接包含了我的参考链接,注册时可以使用该链接,这会让我的帐号在某天升级到高级帐号。 -------------------------------------------------------------------------------- @@ -65,7 +65,7 @@ via: http://linuxaria.com/recensioni/check-how-much-do-you-type-with-whatpulse-o 作者:[linuxari][a] 译者:[GOLinux](https://github.com/GOLinux) -校对:[校对者ID](https://github.com/校对者ID) +校对:[wxy](https://github.com/wxy) 本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 From 82c41ab10e2a5474284952c8e8a3cbe521ff61ad Mon Sep 17 00:00:00 2001 From: wxy Date: Sat, 25 Oct 2014 21:40:27 +0800 Subject: [PATCH 035/108] PUB:20140922 How to Run Android Apps on Ubuntu using ARChon @GOLinux --- ...Run Android Apps on Ubuntu using ARChon.md | 37 +++++++++---------- 1 file changed, 18 insertions(+), 19 deletions(-) rename {translated/tech => published}/20140922 How to Run Android Apps on Ubuntu using ARChon.md (60%) diff --git a/translated/tech/20140922 How to Run Android Apps on Ubuntu using ARChon.md b/published/20140922 How to Run Android Apps on Ubuntu using ARChon.md similarity index 60% rename from translated/tech/20140922 How to Run Android Apps on Ubuntu using ARChon.md rename to published/20140922 How to Run Android Apps on Ubuntu using ARChon.md index 56d0e74b8d..11dbadf22f 100644 --- a/translated/tech/20140922 How to Run Android Apps on Ubuntu using ARChon.md +++ b/published/20140922 How to Run Android Apps on Ubuntu using ARChon.md @@ -2,9 +2,8 @@ ================================================================================ ![Android, Chrome, Ubuntu](http://www.omgubuntu.co.uk/wp-content/uploads/2014/09/android-ubuntu.jpg) -Android, Chrome, Ubuntu -**Google最近发布了首批[能在Chrome OS本地运行的安卓应用集][1],通过‘安卓运行时’扩展完成了该壮举。** +**Google最近发布了首批[能在Chrome OS本地运行的安卓应用集][1],通过‘安卓运行时’扩展完成了该壮举。** 现在,一位开发者已经[指明了将安卓应用带入桌面版Chrome的路][2]。 @@ -12,51 +11,51 @@ Android, Chrome, Ubuntu ![IMDB, Flipboard and Twitter Android Apps running on Ubuntu 14.04 LTS](http://www.omgubuntu.co.uk/wp-content/uploads/2014/09/android-apps-on-linux.jpg) -运行在Ubuntu 14.04 LTS上的安卓应用:IMDB,Flipboard和Twitter +*运行在Ubuntu 14.04 LTS上的安卓应用:IMDB,Flipboard和Twitter* -通过运行时运行的应用的性能不是很令人惊异,任何想要运行Dead Trigger 2或者其它图形密集型游戏的雄心壮志可以放到一边了。 +通过‘安卓运行时’运行的应用的性能不是很令人惊异,任何想要运行Dead Trigger 2或者其它图形密集型游戏的雄心壮志可以放到一边了。 -同样地,作为官方运行时的非官方重构包并在Chrome OS之外运行,系统整合(如网络摄像头,扬声器等)可能不完整或者根本不可能。 +同样地,要运行官方的‘安卓运行时’的非官方重构包,或者在Chrome OS之外运行的话,其系统完整性(如网络摄像头,扬声器等)可能不完整或者根本不可能。 -下面的指南只是提供原样,并不保证一定成功。它只能作为高度实验性进行,里面遍布漏洞,很不稳定——甚至平出恶魔。只能出于好奇而尝试,不去高度寄予厚望,那么你就不会深受其困扰。 +按照下面的指南一步步来,并不保证一定成功。它只能作为高度实验性进行,里面遍布漏洞,很不稳定——甚至白日见鬼。只能出于好奇而尝试,不要高度寄予厚望,这样你就不会深受其困扰。 ### 安卓应用转战Linux大法 ### -要通过Chrome在Linux上运行安卓应用,很明显,你需要安装Chrome,要求的版本是37,或者更高。坦率地讲,如果你打算玩玩潜在不稳定的版本,那么你也可以下载并[为Linux安装不稳定的Google Chrome版本][6]。 +要通过Chrome在Linux上运行安卓应用,很明显,你需要安装Chrome,要求的版本是37,或者更高。坦率地讲,如果你打算玩玩不稳定的Chrome版本,那么你也可以下载并[为Linux安装][6]。 -已经安装了Chrome的某个版本?你可以通过命令行来安装开发版,命令如下: +如果已经安装了Chrome的某个版本?你可以通过命令行来安装不稳定版,命令如下: sudo apt-get install google-chrome-unstable -接下来,你需要下载官方定制版,而不是Google或Chronium捐赠的版本——由弗拉德·菲利波夫创建的安卓运行时。这个版本和官方的有着诸多的不同,最突出的就是它可以运行在桌面版的浏览器上。 +有了 Chrome 之后,你需要下载定制版的‘安卓运行时’扩展,而不是Google或Chronium提供的版本——由弗拉德·菲利波夫创建的‘安卓运行时’。这个版本和官方的有着诸多的不同,最突出的不同就是它可以运行在桌面版的浏览器上。 - [从BitBucket下载ARChon v1.0][7] -下载好运行时后,你需要从.zip解压内容,并移动解压后的文件夹到你的Home文件夹。 +下载好‘安卓运行时’扩展后,你需要从.zip解压内容,并移动解压后的文件夹到你的Home文件夹。 -要安装,打开Google Chrome,点击汉堡式菜单按钮,然后导航到扩展页。检查‘启用开发者模式’并点击‘加载解包的扩展’按钮。 +要安装它,打开Google Chrome,点击汉堡式菜单按钮,然后导航到扩展页。检查‘启用开发者模式’并点击‘加载解包的扩展’按钮。 ![](http://www.omgubuntu.co.uk/wp-content/uploads/2014/09/chromeos-apk-extensions.jpg) -运行时本身不会做太多事情,所以你需要从安卓应用创建兼容包。要完成这项工作,你需要‘[chromeos-apk][8]’[命令行Javascript工具][9],它可以从节点封装模块管理器安装。 +‘安卓运行时’扩展本身不会做太多事情,所以你需要从安卓应用创建兼容包。要完成这项工作,你需要‘[chromeos-apk][8]’[命令行Javascript工具][9],它可以从“Node 封装模块管理器(npm )”安装。 首先运行: sudo apt-get install npm nodejs nodejs-legacy -Ubuntu 64位用户?你也需要攫取以下库: +Ubuntu 64位用户?你还需要获取以下库: sudo apt-get install lib32stdc++6 -现在,运行命令来暗转脚本吧: +现在,运行npm命令来安装该脚本吧: npm install -g chromeos-apk -根据你的配置,你可能需要过会儿使用sudo来运行。如果你不喜欢[通过sudo安装npm模块,你可以][10]玩玩鬼把戏。 +根据你的配置,你可能需要过会儿使用sudo来运行。如果你不喜欢[通过sudo安装npm模块,你可以][10]试着骗过它。 ![](http://www.omgubuntu.co.uk/wp-content/uploads/2014/09/chromeos-apk-npm.jpg) -现在,你直接回家了。去Google找找你想要试试的应用的APK吧,请牢记**不是所有的安卓应用都会工作**,而**那些可以工作的也未必工作得很好**,或者缺少功能。 +现在,搞定了。去Google找找你想要试试的应用的APK吧,请牢记**不是所有的安卓应用都会工作**,而**那些可以工作的也未必工作得很好**,或者缺少功能。 把你想要的安卓APK放到~/Home,然后回到终端中使用以下命令来转换,你可以将APK命名成任何你想要的名字: @@ -68,9 +67,9 @@ Ubuntu 64位用户?你也需要攫取以下库: 现在,在你的Home文件夹内有个ARChon生成的Chrome APK extension-y folder-y这样的东西。所有剩下来要做的事,就是安装并查看它是否正常工作! -回到chrome://extensions页面,再次轻敲‘加载解封装扩展’按钮,但这次选择上面脚本创建的文件夹。 +回到chrome://extensions页面,再次轻敲‘加载解封装扩展’按钮,但这次选择上面脚本创建出来的文件夹。 -应用应该会继续安装,不会有任何问题,但是它确实会没有问题吗?打开Chrome应用启动器或应用页面并启动它来看看是否有问题。 +应用应该会正确安装,但是它确实会没有问题吗?打开Chrome应用启动器或应用页面并启动它来看看是否有问题。 #### 深度探索 #### @@ -82,7 +81,7 @@ via: http://www.omgubuntu.co.uk/2014/09/install-android-apps-ubuntu-archon 作者:[Joey-Elijah Sneddon][a] 译者:[GOLinux](https://github.com/GOLinux) -校对:[校对者ID](https://github.com/校对者ID) +校对:[wxy](https://github.com/wxy) 本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 From d5a1747373c7ce6b491b5a55faaaadb04f91a406 Mon Sep 17 00:00:00 2001 From: wxy Date: Sat, 25 Oct 2014 22:26:16 +0800 Subject: [PATCH 036/108] PUB:20140910 How to download GOG games from the command line on Linux @geekpi --- ...o download GOG games from the command line on Linux.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) rename {translated/tech => published}/20140910 How to download GOG games from the command line on Linux.md (79%) diff --git a/translated/tech/20140910 How to download GOG games from the command line on Linux.md b/published/20140910 How to download GOG games from the command line on Linux.md similarity index 79% rename from translated/tech/20140910 How to download GOG games from the command line on Linux.md rename to published/20140910 How to download GOG games from the command line on Linux.md index 8ed3e8e792..b168d9365b 100644 --- a/translated/tech/20140910 How to download GOG games from the command line on Linux.md +++ b/published/20140910 How to download GOG games from the command line on Linux.md @@ -1,12 +1,12 @@ 如何在Linux命令行中下载GOG游戏 ================================================================================ -如果你是一个玩家同时也是一个Linux用户,你可能很高兴在[GOG][1]在几个月前宣布它会在你最喜欢的操作系统上推出游戏。如果你之前从来没有听说过GOG,我鼓励你看看他们的产品目录中的“很棒的老游戏”,价格合理,无DRM限制,而且充满了很棒的东西。然而现在的Windows上的GOG存在了很长的时间按,正式的Linux版本却是无处可见。因此,你不想等待官方的正式版本,一个名为LGOGDownloader非官方的开放源码计划能让你在命令行中访问你的库。 +如果你是一个游戏玩家同时也是一个Linux用户,你可能很高兴在[GOG][1]在几个月前宣布它会在你最喜欢的操作系统上推出游戏。如果你之前从来没有听说过GOG,我鼓励你看看他们的产品目录中的“很棒的老游戏”,价格合理,无DRM限制,而且充满了很棒的东西。虽然Windows上的GOG客户端已经存在了很长的时间,但是官方的Linux版本客户端却是无处可见。因此,如果你不想等待官方的正式版本,一个名为LGOGDownloader非官方的开放源码计划能让你在命令行中访问你的库。 ![](https://farm4.staticflickr.com/3843/15121593356_b13309c70f_z.jpg) ### 在Linux中安装 LGOGDownloader ### -对于Ubuntu用户来说,[官方页面][2]建议您下载源代码并执行: +对于Ubuntu用户来说,其[官方页面][2]建议您下载源代码并执行: $ sudo apt-get install build-essential libcurl4-openssl-dev liboauth-dev libjsoncpp-dev libhtmlcxx-dev libboost-system-dev libboost-filesystem-dev libboost-regex-dev libboost-program-options-dev libboost-date-time-dev libtinyxml-dev librhash-dev help2man $ tar -xvzf lgogdownloader-2.17.tar.gz @@ -14,7 +14,7 @@ $ make release $ sudo make install -如果你是ArchLinux用户。有一个[AUR 包][2]等着你 +如果你是ArchLinux用户。有一个[AUR 包][2]等着你: ### LGOGDownloader 的使用### @@ -65,7 +65,7 @@ via: http://xmodulo.com/2014/09/download-gog-games-command-line-linux.html 作者:[Adrien Brochard][a] 译者:[geekpi](https://github.com/geekpi) -校对:[校对者ID](https://github.com/校对者ID) +校对:[wxy](https://github.com/wxy) 本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 From 1e1598b71b535b1e4bed79cb0daf41945101eb26 Mon Sep 17 00:00:00 2001 From: johnhoow Date: Sat, 25 Oct 2014 22:32:50 +0800 Subject: [PATCH 037/108] translated --- ...and Find Statistics for Linux Procesess.md | 69 ++++++++++--------- 1 file changed, 35 insertions(+), 34 deletions(-) diff --git a/sources/tech/20141017 pidstat - Monitor and Find Statistics for Linux Procesess.md b/sources/tech/20141017 pidstat - Monitor and Find Statistics for Linux Procesess.md index 401e88b7ac..7709f77f11 100644 --- a/sources/tech/20141017 pidstat - Monitor and Find Statistics for Linux Procesess.md +++ b/sources/tech/20141017 pidstat - Monitor and Find Statistics for Linux Procesess.md @@ -1,78 +1,79 @@ -johnhoow translating... -pidstat - Monitor and Find Statistics for Linux Procesess +pidstat - 监控并统计Linux进程的数据 ================================================================================ -The **pidstat** command is used for monitoring individual tasks currently being managed by the Linux kernel. It writes to standard output activities for every task managed by the Linux kernel. The pidstat command can also be used for monitoring the child processes of selected tasks. The interval parameter specifies the amount of time in seconds between each report. A value of 0 (or no parameters at all) indicates that tasks statistics are to be reported for the time since system startup (boot). +**pidstat**命令用来监控被Linux内核管理的独立任务(进程)。它输出每个受内核管理的任务的相关信息。pidstat命令也可以用来监控特定进程的子进程。区间参数具体说明各个报告间的时间间隔。它的值为0(或者没有参数)说明进程的统计数据的时间是从系统启动开始计算的。 -### How to Install pidstat ### +### 如何安装pidstat ### -pidstat is part of the sysstat suite that contains various system performance tools for Linux, it's available on the repository of most Linux distributions. +pidstat 是sysstat软件套件的一部分,sysstat包含很多监控linux系统行为的工具,它能够从大多数linux发行版的软件源中获得。 -To install it on Debian / Ubuntu Linux systems you can use the following command: +在Debian/Ubuntu系统中可以使用下面的命令来安装 # apt-get install sysstat -If you are using CentOS / Fedora / RHEL Linux you can install the packages like this: +CentOS/Fedora/RHEL版本的linux中则使用下面的命令: # yum install sysstat -### Using pidstat ### +### 使用pidstat ### -Running pidstat without any argument is equivalent to specifying -p ALL but only active tasks (tasks with non-zero statistics values) will appear in the report. +使用pidstat不加任何参数等价于加上-p但是只有正在活动的任务会被显示出来。 # pidstat ![pidstat](http://blog.linoxide.com/wp-content/uploads/2014/09/pidstat.jpg) -In the output you can see: +在结果中你能看到如下内容: -- **PID** - The identification number of the task being monitored. -- **%usr** - Percentage of CPU used by the task while executing at the user level (application), with or without nice priority. Note that this field does NOT include time spent running a virtual processor. -- **%system** - Percentage of CPU used by the task while executing at the system level. -- **%guest** - Percentage of CPU spent by the task in virtual machine (running a virtual processor). -- **%CPU** - Total percentage of CPU time used by the task. In an SMP environment, the task's CPU usage will be divided by the total number of CPU's if option -I has been entered on the command line. -- **CPU** - Processor number to which the task is attached. -- **Command** - The command name of the task. +- **PID** - 被监控的进程的进程号 +- **%usr** - 当在用户层执行(应用程序)时这个进程的cpu使用率。注意这个字段计算的cpu时间不包括在虚拟处理器中使用花去的时间。 +- **%system** - 这个进程在系统级别使用时的cpu使用率。 +- **%guest** - 在虚拟机中的cpu使用率 +- **%CPU** - 进程总的cpu使用率。在SMP环境(多处理器)中,cpu使用率会根据cpu的数量进行划分当你在命令行中输入-I参数。 +- **CPU** - 这个进程能够使用的处理器数目 +- **Command** - 这个进程的命令名称。 -### I/O Statistics ### +### I/O 统计数据 ### -We can use pidstat to get I/O statistics about a process using the -d flag. For example: +通过使用-d参数来得到I/O的统计数据。比如: # pidstat -d -p 8472 ![pidstat io](http://blog.linoxide.com/wp-content/uploads/2014/09/pidstat-io.jpg) -The IO output will display a few new columns: +IO 输出会显示一些内的条目: -- **kB_rd/s** - Number of kilobytes the task has caused to be read from disk per second. -- **kB_wr/s** - Number of kilobytes the task has caused, or shall cause to be written to disk per second. -- **kB_ccwr/s** - Number of kilobytes whose writing to disk has been cancelled by the task. +- **kB_rd/s** - 进程从硬盘上的读取速度 +- **kB_wr/s** - 进程向硬盘中的写入速度 +- **kB_ccwr/s** - 进程写入磁盘被取消的速率 ### Page faults and memory usage ### +### Page faults和内存使用 ### -Using the -r flag you can get information about memory usage and page faults. +使用-r标记你能够得到内存使用情况的数据。 ![pidstat pf mem](http://blog.linoxide.com/wp-content/uploads/2014/09/pidstat-pfmem.jpg) -Important columns: +重要的条目: -- **minflt/s** - Total number of minor faults the task has made per second, those which have not required loading a memory page from disk. -- **majflt/s** - Total number of major faults the task has made per second, those which have required loading a memory page from disk. -- **VSZ** - Virtual Size: The virtual memory usage of entire task in kilobytes. -- **RSS** - Resident Set Size: The non-swapped physical memory used by the task in kilobytes. +- **minflt/s** - 从内存中加载数据时每秒钟出现的小的错误的数目 +- **majflt/s** - 从内存中加载数据时每秒出现的较大错误的数目 +- **VSZ** - 虚拟容量:整个进程的虚拟内存使用 +- **RSS** - 长期的内存使用:进程非交换物理内存的使用 -### Examples ### +### 举例 ### -**1.** You can use pidstat to find a memory leek using the following command: +**1.** 你可以通过使用下面的命令来监测内存使用 # pidstat -r 2 5 -This will give you 5 reports, one every 2 seconds, about the current page faults statistics, it should be easy to spot the problem process. +这会给你5份关于page faults的统计数据结果,间隔2s。这将会更容易的定位出现问题的进程。 -**2.** To show all children of the mysql server you can use the following command +**2.** 显示所有mysql server的子进程 # pidstat -T CHILD -C mysql **3.** To combine all statistics in a single report you can use: +**3.** 将所有的统计数据结合到一个简单的结果记录中: # pidstat -urd -h @@ -81,7 +82,7 @@ This will give you 5 reports, one every 2 seconds, about the current page faults via: http://linoxide.com/linux-command/linux-pidstat-monitor-statistics-procesess/ 作者:[Adrian Dinu][a] -译者:[译者ID](https://github.com/译者ID) +译者:[John](https://github.com/johnhoow) 校对:[校对者ID](https://github.com/校对者ID) 本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 From 286121b30480ee404d63a201ff0ca3c5138c83e3 Mon Sep 17 00:00:00 2001 From: wxy Date: Sat, 25 Oct 2014 22:41:43 +0800 Subject: [PATCH 038/108] PUB:20140829 Fun in Linux Terminal--Play with Word and Character Counts @MikeCoder --- ...rminal--Play with Word and Character Counts.md | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) rename {translated/tech => published}/20140829 Fun in Linux Terminal--Play with Word and Character Counts.md (89%) diff --git a/translated/tech/20140829 Fun in Linux Terminal--Play with Word and Character Counts.md b/published/20140829 Fun in Linux Terminal--Play with Word and Character Counts.md similarity index 89% rename from translated/tech/20140829 Fun in Linux Terminal--Play with Word and Character Counts.md rename to published/20140829 Fun in Linux Terminal--Play with Word and Character Counts.md index 679da192a0..5051c3c46d 100644 --- a/translated/tech/20140829 Fun in Linux Terminal--Play with Word and Character Counts.md +++ b/published/20140829 Fun in Linux Terminal--Play with Word and Character Counts.md @@ -1,6 +1,6 @@ -Linux终端的乐趣之把玩Word Counts +Linux终端的乐趣之把玩字词计数 ================================================================================ -Linux 命令行有很多的乐趣,我们可以很容易并且完善地执行很多繁琐的任务。比如,我们计算一个文本文件中字和字符的出现频率,则是我们打算在这篇文章中讲到的。 +Linux 命令行有很多的乐趣,我们可以很容易并且完善地执行很多繁琐的任务。比如,我们计算一个文本文件中字和字符的出现频率,这就是我们打算在这篇文章中讲到的。 立刻来到我们脑海的命令,计算字和字符在一个文本文件中出现频率的 Linux 命令是 [wc 命令] [1]。 @@ -49,7 +49,7 @@ Linux 命令行有很多的乐趣,我们可以很容易并且完善地执行 a m -**Note**: `-w1`只是设定了长度 +**注**: `-w1`只是设定了长度 现在我们将从那个文本文件中掰下来的每一个字母,对结果进行排序,得到所需的输出频率的十个最常见的字符。 @@ -68,7 +68,7 @@ Linux 命令行有很多的乐趣,我们可以很容易并且完善地执行 1224 r 1021 l -如何区分大小写呢?之前我们都是乎略大小写的。所以,用如下命令。 +如何区分大小写呢?之前我们都是忽略大小写的。所以,用如下命令。 $ fold -w1 < man.txt | sort | tr '[:lower:]' '[:upper:]' | uniq -c | sort -rn | head -20 @@ -154,18 +154,19 @@ Linux 命令行有很多的乐趣,我们可以很容易并且完善地执行 1 activate local mode format and display local manual files 1 acute accent -**Note**: 上面的.越来越多,其实,我们可以使用.{10} 得到同样的效果。 +**注**: 上面的.越来越多,其实,我们可以使用.{10} 得到同样的效果。 这些简单的脚本,让我们知道最频繁出现的单词和英语中的字符。 -这就是现在。我会在这里再一次提到另一个有趣的话题,你应该会喜欢读。还有别忘了向我们提供您的宝贵意见的评论部分。 +现在结束了。下次我会在这里讲到另一个有趣的话题,你应该会喜欢读。还有别忘了向我们提供您的宝贵意见。 + -------------------------------------------------------------------------------- via: http://www.tecmint.com/play-with-word-and-character-counts-in-linux/ 作者:[Avishek Kumar][a] 译者:[MikeCoder](https://github.com/MikeCoder) -校对:[校对者ID](https://github.com/校对者ID) +校对:[wxy](https://github.com/wxy) 本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 From ba97e594b1e58c9cfbb8261a7b9939dcc6c192f1 Mon Sep 17 00:00:00 2001 From: wxy Date: Sat, 25 Oct 2014 22:58:58 +0800 Subject: [PATCH 039/108] PUB:20140930 How to Boot Linux ISO Images Directly From Your Hard Drive @GOLinux --- ...SO Images Directly From Your Hard Drive.md | 28 +++++++++---------- 1 file changed, 14 insertions(+), 14 deletions(-) rename {translated/tech => published}/20140930 How to Boot Linux ISO Images Directly From Your Hard Drive.md (56%) diff --git a/translated/tech/20140930 How to Boot Linux ISO Images Directly From Your Hard Drive.md b/published/20140930 How to Boot Linux ISO Images Directly From Your Hard Drive.md similarity index 56% rename from translated/tech/20140930 How to Boot Linux ISO Images Directly From Your Hard Drive.md rename to published/20140930 How to Boot Linux ISO Images Directly From Your Hard Drive.md index 3dcc1a95c3..563bc89c50 100644 --- a/translated/tech/20140930 How to Boot Linux ISO Images Directly From Your Hard Drive.md +++ b/published/20140930 How to Boot Linux ISO Images Directly From Your Hard Drive.md @@ -1,8 +1,8 @@ 直接从硬盘启动Linux ISO镜像 ================================================================================ -![](data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAooAAAEsAgMAAAA5t3pxAAAABGdBTUEAALGPC/xhBQAAAAxQTFRFAAAALAAeqKio/v7+NGqafgAABflJREFUeNrt3L1u4zgQB/DU7q+/8qCnuJegBQcQVLlY98RWhoKrDu4V4LZaHCAgp/chUuYpWAY6DofUh6PdtXcVcZL8ZUSmaSf5mSKHY0rJzQ22RbbflPTtTxhhhBFGGGGEEUYYYYQRRhhhhBFGGGH8zrY9e/xpVycxHup6X+/pvnWltp4zHlztrdvfe+Mu1BzqtYz1vvFGkrJ27jVK7em9NNHI35HSWO8P9Zf6UFPbfamjiPZU29bU9qsa1T9sVGMjy7f+HbgKFrk91e5COYVx6I+hTdU2tN7WtyXvyah8+dCsZbxv7r3D3avYjvu6dT3vU2/kHsj7ttk53Y5GzIr98T72x3owuiPvWi8a9/51vK/VLpTXNLrROmtU+2isg24w1usam2BshjFz6xX1yHjr3f2YabjbrhbD9xRp4j2PGYo5tfs6NBxl2ubW1bUNx55tfdhT+YD5GkYYYYQRRhhhhBFGGGGEEUYYYfyhsewEbm/RKPAYlzDCCCOMML4zoxFvNJqNBYy/aHwy9NW5vVyj1fRVKMlGvsEIo5gxY73RSjVW5slUrh1zt8d8DSOM78Y4Hs99Oe+r8j7BNImM5ayxGBlj1rZOFjdndL941qhEGSmC+0hON81RvTMlR3dDJiqtlWl+Y762RnMWSWWeHelYc51SZLJ6rUzz2zmFor0vcw0b+egWo/rXzz7mjJ1rRXe8qS19eWo8RqNKaaTfqg23mVHnxtzIN9I4F2G0peJxcz5muB8OxjUyzXljpV2c8fFniD0um7SVoTqOPWa1TPPS+Trl6sp7MiI3+2DG2U6pkxin8bjo9/lZTWVKs8YK4K8Y3WykUhmti9XPluIz52EUyTvfYs/+mVhDc00+ys7XNRr9WMRcsQizNZWo9rGINSmNT5qN47n5hdH3x86kM3bWGxUbO3vsjfRMrKH30D3nicaMUWOjO6Kmb0fl29HX+GxSpTZqy0alz41KJzdyf1TlZMzkL8eMM6aKj5V5LHyGqGlNgiINfUIgIz0Ta6rwOTbxXKilzoXDVqVMG5GbwfgT+eOwXRIp9WKx55r8cWosZ346xfnOZUyle1ysbOT88XttmYefWfr1DkpSljJelz9yjKJX0/pk3j/ycd5Hr8/uZsIaR76Y8Zr8UYXZ02paa8n7Ryyin0DHmuasJY3X5Y88mMLvZ2NYpxwb3SvNssZr8kf6riOtUzpJZQfj0Rs7y8YhT0qRP/qxYWgVsD/WYZ3St6OKRv1KxkvyRw57L41KT41maeMV+WO/gk5Gm49WTidjht7xgrHnuvwxRhvjemOlKxse8dqlpVe4vbvv7JIx/Lr88bqjpxc3XpI/Js/DkZt9AKMRbvRnjUbjIfcPS7+nKLL2J7FLjKU/769DjORMI7VRm+l56c/KTYHOVggzjs9L5zTZ+jzaG5UEY3l2rtK5vNF44/ENGHMj5VhPjZSpunzW56tKyzQq345K0Jihc9bj89JkLDmNFWSs9Pi8tMsJ/ed3STEcOQWMMP6EUcs20nwyGFNEmwvi46QdU0TtS4x05VG81lGqka+A5PXHFBnjBf2xzyn8WkqCjPGSduz4ejiaqZNkjBcd634lNk3GeL1R8pgxIXuUHHvcvZYaw5FTLGDcttK2/2B8XWPWPog23kyMd5u77C6TZswyMsbtoc1O2UmWkUx32e/Z15b2Mo1//EumzYlsm5M3ttKMf58yf3P90bffQ/uXOOPXLDvdbMh4t2HjQyayHdvsFPthbE9x/XFiFDmuszBmNlKNFMMp6rjY7W0yYzhyigWMyMM/mHF8HUcu0mhGLr5qqEi6DvnN9cfeqFS8+jHVWsC8sVRPhkXWUrkz8oy5sjoaqRzaUcky8t/l0nWGVGbjUaCRr4UcjKnWIX9kNCOj0jKP9dho5BnDX9nLNHaW/hdAFf4rAZXpyh5ZMRw5BYwwwggjjDDCCCOMMMIII4wwwggjjDDCCCOMMMIII4wwwggjjDDCCCOMMMIII4wwwggjjDDCCCOMMMIII4wwwggjjDDCCCOMMMIIo3TjG9j+B4tUkGfI5p/jAAAAAElFTkSuQmCC) +![](http://cdn8.howtogeek.com/wp-content/uploads/2014/09/boot-iso-files-directly-from-hard-drive-in-grub2.png) -Linux的GRUB2启动加载器可以直接从硬盘启动Linux ISO文件,可以启动Live CD,甚至可以不用烧录到磁盘来安装Linux到另外一个硬盘分区或从USB驱动启动。 +Linux的GRUB2启动加载器可以直接从硬盘启动Linux ISO文件,可以启动Live CD的 ISO,而不用烧录到光盘来安装Linux到一个硬盘分区,或从USB驱动启动。 我们在Ubuntu 14.04上实施了该过程——Ubuntu及基于Ubuntu的Linux版本对此支持良好。[其它Linux发行版][1]上的工作原理也类似。 @@ -14,15 +14,15 @@ Linux的GRUB2启动加载器可以直接从硬盘启动Linux ISO文件,可以 ### 检查ISO文件内容 ### -你可能需要检查ISO文件来明确确定指定的文件在哪里。例如,你可以通过使用Ubuntu及其它基于GNOME的桌面环境中的归档管理器/File Roller文件管理器这些图形化应用程序来打开ISO文件来完成此项工作。在Nautilus文件管理器中,右击ISO文件并选择使用归档管理器打开。 +你可能需要查看ISO文件的内部来知道那些特定的的文件在哪里。例如,你可以通过使用Ubuntu及其它基于GNOME的桌面环境中的归档管理器/文件管理器这些图形化应用程序来打开ISO文件。在Nautilus文件管理器中,右击ISO文件并选择使用归档管理器打开。 -定位内核文件和initrd映像。如果你正在使用Ubuntu ISO文件,你会在卡斯帕文件夹中找到这些文件——vmlinuz文件时Linux内核,而initrd文件是initrd映像。后面,你需要知道它们在ISO文件中所处的位置。 +找到内核文件和initrd映像。如果你正在使用Ubuntu ISO文件,你会在casper文件夹中找到这些文件——vmlinuz文件是Linux内核,而initrd文件是initrd映像。后面,你需要知道它们在ISO文件中所处的位置。 ![](http://cdn8.howtogeek.com/wp-content/uploads/2014/09/650x350xvmlinuz-and-initrd-file-locations.png.pagespeed.ic.hB1yMlHMr2.png) ### 检查硬盘分区路径 ### -GRUB使用与Linux不同的“设备命名”结构。在Linux系统中,/dev/sda0是硬盘上的第一个分区——**a**是指第一个硬盘,而**0**是指第一个分区。在GRUB中,与/dev/sda0相对应的是(hd0,1)。**0**指第一个硬盘,而**1**则指它上面的第一个分区。换句话说,在GRUB设备名中,磁盘编号从0开始计数,而分区编号则从1开始计数——是啊,这真是突然令人困惑。例如,(hd3,6)是指第四磁盘上的第六分区。 +GRUB使用与Linux不同的“设备命名”方式。在Linux系统中,/dev/sda0是硬盘上的第一个分区——**a**是指第一个硬盘,而**0**是指第一个分区。在GRUB中,与/dev/sda0相对应的是(hd0,1)。**0**指第一个硬盘,而**1**则指它上面的第一个分区。换句话说,在GRUB设备名中,磁盘编号从0开始计数,而分区编号则从1开始计数——是啊,这真是突然令人困惑。例如,(hd3,6)是指第四磁盘上的第六分区。 你可以使用**fdisk -l**命令来查看该信息。在Ubuntu上,打开终端并运行以下命令: @@ -34,7 +34,7 @@ GRUB使用与Linux不同的“设备命名”结构。在Linux系统中,/dev/s ### 创建GRUB2启动条目 ### -添加自定义启动条目的最简单的方式是编辑/etc/grub.d/40_custom脚本,该文件设计用于用户自行添加启动条目。在编辑该文件后,/etc/defaults/grub文件和/etc/grub.d/脚本的内容将合成创建/boot/grub/grub.cfg文件——你不应该手工编辑该文件。它设计用于通过你在其它文件指定的设置自动生成。 +添加自定义启动条目的最简单的方式是编辑/etc/grub.d/40_custom脚本,该文件设计用于用户自行添加启动条目。在编辑该文件后,/etc/defaults/grub文件和/etc/grub.d/脚本的内容将合成创建/boot/grub/grub.cfg文件——你不应该手工编辑这个文件。它被设计为通过你在另外的文件中指定的设置自动生成。 你需要以root特权打开/etc/grub.d/40_custom文件来编辑。在Ubuntu上,你可以通过打开终端窗口,并运行以下命令来完成: @@ -48,22 +48,22 @@ GRUB使用与Linux不同的“设备命名”结构。在Linux系统中,/dev/s 这里为你展示了怎样来从ISO文件启动Ubuntu或基于Ubuntu的发行版,我们在Ubuntu 14.04下作了测试: - menuentry “Ubuntu 14.04 ISO” { - set isofile=”/home/name/Downloads/ubuntu-14.04.1-desktop-amd64.iso” + menuentry "Ubuntu 14.04 ISO" { + set isofile="/home/name/Downloads/ubuntu-14.04.1-desktop-amd64.iso" loopback loop (hd0,1)$isofile linux (loop)/casper/vmlinuz.efi boot=casper iso-scan/filename=${isofile} quiet splash initrd (loop)/casper/initrd.lz } -自定义启动条目以包含你期望的菜单的条目名称,计算机上到ISO文件的正确路径,以及包含ISO文件的硬盘和分区设备名。如果vmlinuz和initrd文件的名称或路径不同,请为这些文件指定正确的路径。 +自定义启动条目以包含你期望的菜单的条目名称,并指定计算机上该ISO文件的正确路径,以及包含ISO文件的硬盘和分区设备名。如果vmlinuz和initrd文件的名称或路径不同,请为这些文件指定正确的路径。 -(如果你有一个独立的/home/分区,忽略/home位,像这样:**set isofile=”/name/Downloads/${isoname}”**)。 +(如果你的/home/ 目录是一个分区,请忽略/home部分,像这样:**set isofile="/name/Downloads/${isoname}"**)。 -**重要说明**:不同的Linux版本要求带有不同启动选项的不同的启动条目,GRUB Live ISO多启动项目提供了[用于不同Linux发行版的菜单条目][6]的各种不同类型。你应当可以为你想要启动的ISO文件调整这些示例菜单条目。你也可以仅仅从网页搜索你想要启动的Linux发行版的名称和发行编号,并附带关键词“在GRUB中从ISO启动”,以获取更多信息。 +**重要说明**:不同的Linux版本要求带有不同启动选项的不同的启动条目,GRUB Live ISO多启动项目提供了[用于不同Linux发行版的菜单条目][6]的各种不同类型。你应当为你想要启动的ISO文件调整这些示例菜单条目。你也可以仅仅从网页搜索你想要启动的Linux发行版的名称和发行编号,并附带关键词“在GRUB中从ISO启动”,以获取更多信息。 ![](http://cdn8.howtogeek.com/wp-content/uploads/2014/09/650x392xadd-a-linux-iso-file-to-grub-boot-loader.png.pagespeed.ic.2FR0nOtugC.png) -如果你想要添加更多ISO启动选项,请为该文件添加额外章节。 +如果你想要添加更多ISO启动选项,请为该文件添加额外部分。 完成后保存文件,返回终端窗口并运行以下命令: @@ -73,7 +73,7 @@ GRUB使用与Linux不同的“设备命名”结构。在Linux系统中,/dev/s 再次启动计算机时,你将看到ISO启动条目,你可以选择它来启动ISO文件。在启动时,你可能需要按Shift键来显示GRUB菜单。 -如果在尝试启动ISO文件时你看见错误信息或黑屏,那么你的启动条目配置不管怎么说配置错误了。即使ISO文件路径和设备名是正确的,ISO文件上的vmlinuz和initrd文件的路径可能是不正确的,或者你启动Linux系统可能需要不同的选项。 +如果在尝试启动ISO文件时你看见错误信息或黑屏,那么你的启动条目配置肯定配置错误了。即使ISO文件路径和设备名是正确的,ISO文件上的vmlinuz和initrd文件的路径可能是不正确的,或者你启动Linux系统可能需要不同的选项。 -------------------------------------------------------------------------------- @@ -81,7 +81,7 @@ via: http://www.howtogeek.com/196933/how-to-boot-linux-iso-images-directly-from- 作者:[Chris Hoffman][a] 译者:[GOLinux](https://github.com/GOLinux) -校对:[校对者ID](https://github.com/校对者ID) +校对:[wxy](https://github.com/wxy) 本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 From 89fa4d19b5845fca6a0704707f645b783be2d761 Mon Sep 17 00:00:00 2001 From: runningwater Date: Sat, 25 Oct 2014 23:21:26 +0800 Subject: [PATCH 040/108] =?UTF-8?q?=E7=BF=BB=E8=AF=91=E5=AE=8C=E6=88=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- sources/share/20141013 UbuTricks 14.10.08.md | 56 ------------------- .../share/20141013 UbuTricks 14.10.08.md | 56 +++++++++++++++++++ 2 files changed, 56 insertions(+), 56 deletions(-) delete mode 100644 sources/share/20141013 UbuTricks 14.10.08.md create mode 100644 translated/share/20141013 UbuTricks 14.10.08.md diff --git a/sources/share/20141013 UbuTricks 14.10.08.md b/sources/share/20141013 UbuTricks 14.10.08.md deleted file mode 100644 index 2443845e5e..0000000000 --- a/sources/share/20141013 UbuTricks 14.10.08.md +++ /dev/null @@ -1,56 +0,0 @@ -(translating by runningwater) -UbuTricks 14.10.08 -================================================================================ -> An Ubuntu utility that allows you to install the latest versions of popular apps and games - -UbuTricks is a freely distributed script written in Bash and designed from the ground up to help you install the latest version of the most acclaimed games and graphical applications on your Ubuntu Linux operating system, as well as on various other Ubuntu derivatives. - -![](http://i1-linux.softpedia-static.com/screenshots/UbuTricks_1.png) - -### What apps can I install with UbuTricks? ### - -Currently, the latest versions of the Calibre, Fotoxx, Geary, GIMP, Google Earth, HexChat, jAlbum, Kdenlive, LibreOffice, PCManFM, Qmmp, QuiteRSS, QupZilla, Shutter, SMPlayer, Ubuntu Tweak, Wine and XBMC (Kodi), PlayOnLinux, Red Notebook, NeonView, Sunflower, Pale Moon, QupZilla Next, FrostWire and RSSOwl applications can be installed with UbuTricks. - -### What games can I install with UbuTricks? ### - -In addition, the latest versions of the 0 A.D., Battle for Wesnoth, Transmageddon, Unvanquished and VCMI (Heroes III Engine) games can be installed with the UbuTricks program. Users can also install the latest version of the Cinnamon and LXQt desktop environments. - -### Getting started with UbuTricks ### - -The program is distributed as a .sh file (shell script) that can be run from the command-line using the “sh ubutricks.sh” command (without quotes) or make it executable and double-click it from your Home folder or desktop. All you have to do is to select and app or game and click the OK button to install it. - -### How does it work? ### - -When accessed for the first time, the program will display a welcome screen from the get-to, notifying users about how it actually works. There are three methods to install an app or game, via PPA, DEB file or source tarball. Please note that apps and games will be automatically downloaded and installed. - -### What distributions are supported? ### - -Several versions of the Ubuntu Linux operating systems are supported, but if not specified, it will default to the current stable version, Ubuntu 14.04 LTS (Trusty Tahr). At the moment, the program will not work if you don’t have the gksu package installed on your Ubuntu box. It is based on Zenity, which should be installed too. - -![](http://i1-linux.softpedia-static.com/screenshots/UbuTricks_2.jpg) - -- last updated on:October 9th, 2014, 11:29 GMT -- price:FREE! -- developed by:Dan Craciun -- homepage:[www.tuxarena.com][1] -- license type:[GPL (GNU General Public License)][3] -- category:ROOT \ Desktop Environment \ Tools - -### Download for UbuTricks: ### - -- [ubutricks.sh][2] - --------------------------------------------------------------------------------- - -via: http://linux.softpedia.com/get/Desktop-Environment/Tools/UbuTricks-103626.shtml - -作者:[Marius Nestor][a] -译者:[runningwater](https://github.com/runningwater) -校对:[校对者ID](https://github.com/校对者ID) - -本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 - -[a]:http://www.softpedia.com/editors/browse/marius-nestor -[1]:http://www.tuxarena.com/apps/ubutricks/ -[2]:http://www.tuxarena.com/intro/files/ubutricks.sh -[3]:http://www.gnu.org/licenses/gpl-2.0.html \ No newline at end of file diff --git a/translated/share/20141013 UbuTricks 14.10.08.md b/translated/share/20141013 UbuTricks 14.10.08.md new file mode 100644 index 0000000000..6da65a3f3c --- /dev/null +++ b/translated/share/20141013 UbuTricks 14.10.08.md @@ -0,0 +1,56 @@ +UbuTricks 14.10.08 +================================================================================ +> 是一款 Ubuntu 系统上的实用工具软件,使用它可以让您安装上最新版本的流行应用程序和游戏。 + +UbuTricks 是一款免费发布的用 Bash 语言编写的脚本型应用程序。它被设计为从最初版本一直向上搜索的方式来帮助您在 Ubuntu Linux 操作系统以及其它 Ubuntu 衍生版本系统上安装最受好评的游戏和图形应用程序的最高版本软件。 + +![](http://i1-linux.softpedia-static.com/screenshots/UbuTricks_1.png) + +### 我能利用 UbuTricks 来安装哪些应用程序呢? ### + +目前,最新版本的 Calibre(译者注:calibre 是一款开源的电子书软体套装,可以用来组织、存放、以及管理电子书,支持大多数的电子书格式。 同时也支持与许多流行的电子书阅读器进行同步,并可能在DRM的限制下转换电子书的格式) 、Fotoxx(译者注:一款图像管理和图像编辑程序)、Geary(译者注:适配于GNOME3 桌面环境的 IMAP 邮件客户端)、GIMP、Google Earth、HexChat(译者注:一款基于 XChat 的 IRC 客户端)、jAlbum(译者注:网页在线相册)、Kdenlive、LibreOffice、PCManFM、Qmmp(译者注:基于 Qt 库的音频播放器)、QuiteRSS, QupZilla、Shutter(译者注:多功能屏发屏幕截屏工具)、SMPlayer、Ubuntu Tweak、Wine 和 [XBMC (Kodi)][4](译者注:开源免费的媒体播放器,13.2 “Gotham” 版本后改名为 Kodi)、PlayOnLinux、Red Notebook、NeonView、Sunflower、Pale Moon、 QupZilla Next、FrostWire 以及 RSSOwl 等这些应用程序都可以用 UbuTricks 来安装。 + +### 我能利用 UbuTricks 来安装哪些游戏呢? ### + +此外,最新版本 0 A.D.、 韦诺之战、 Transmageddon、Unvanquished 和 VCMI (英雄 III 引擎) 这些游戏都可以用 UbuTricks 程序来安装。用户也可以安装最新版本的 Cinnamon 和 LXQt 桌面环境。 + +### UbuTricks 使用起步 ### + +此程序是以 .sh 文件(shell 脚本)形式发布的,可以在命令行下面运行 “sh ubutricks.sh” 命令(不加引号)来运行,或者使它具有可执行权限,然后双击存入在 Home 目录或桌面的此文件来运行。您所需要做的就是选择应用程序或游戏,再点击 OK 按纽来安装。 + +### 它的工作原理? ### + +首次启动时,一开始会显示一个欢迎画面,来告知用户是怎么样使用的。有三种方法来安装应用程序或游戏:通过 PPA,DEB 格式文件或源代码 tar 包。请注意,应用程序或游戏会自动的下载和安装。 + +### 它支持哪些系统发布版本? ### + +它对 Ubuntu Linux 操作系统的多个版本都支持,但如果没有特别说明的话,默认指的当前稳定版本,即 Ubuntu 14.04 LTS(Trusty Tahr)版本。您的 Ubuntu 盒子上如果还没有安装 gksu 包的话,此程序是没法运行的,而 gksu 又基于 Zenity 包,所以您也应该安装它。 + +![](http://i1-linux.softpedia-static.com/screenshots/UbuTricks_2.jpg) + +- 最新版本:格林威治标准时间 2014 年 10 月 9 号 11:29 +- 价格:免费! +- 开发者:Dan Craciun +- 主页:[www.tuxarena.com][1] +- 许可证类型:[GPL (GNU General Public License)][3] +- 类别:ROOT \ 桌面操作环境 \ 工具 + +### UbuTricks 下载: ### + +- [ubutricks.sh][2] + +-------------------------------------------------------------------------------- + +via: http://linux.softpedia.com/get/Desktop-Environment/Tools/UbuTricks-103626.shtml + +作者:[Marius Nestor][a] +译者:[runningwater](https://github.com/runningwater) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[a]:http://www.softpedia.com/editors/browse/marius-nestor +[1]:http://www.tuxarena.com/apps/ubutricks/ +[2]:http://www.tuxarena.com/intro/files/ubutricks.sh +[3]:http://www.gnu.org/licenses/gpl-2.0.html +[4]:http://xbmc.org/about/ \ No newline at end of file From 7f2a1bb540c137bb6a64d978ea4bafeeb9cca77b Mon Sep 17 00:00:00 2001 From: wxy Date: Sat, 25 Oct 2014 23:26:53 +0800 Subject: [PATCH 041/108] PUB:Linux FAQs with Answers--How to build a RPM or DEB package from the source with CheckInstall @luoyutiantang --- ...ckage from the source with CheckInstall.md | 84 ++++++++++++++++++ ...ckage from the source with CheckInstall.md | 86 ------------------- 2 files changed, 84 insertions(+), 86 deletions(-) create mode 100644 published/Linux FAQs with Answers--How to build a RPM or DEB package from the source with CheckInstall.md delete mode 100644 translated/tech/Linux FAQs with Answers--How to build a RPM or DEB package from the source with CheckInstall.md diff --git a/published/Linux FAQs with Answers--How to build a RPM or DEB package from the source with CheckInstall.md b/published/Linux FAQs with Answers--How to build a RPM or DEB package from the source with CheckInstall.md new file mode 100644 index 0000000000..b7552db9ba --- /dev/null +++ b/published/Linux FAQs with Answers--How to build a RPM or DEB package from the source with CheckInstall.md @@ -0,0 +1,84 @@ +Linux有问必答:怎么用CheckInstall从源码创建一个RPM或DEB包 +================================================================================ +> **问题**:我想要从源码创建安装的软件包。有没有一种方式从源码来创建和安装软件包,而不是运行“make install”?这样的话,以后如果我想,我可以容易的卸载程序。 + +如果你已经从它的源码运行“make install”安装了linux程序。想完整移除它将变得真的很麻烦,除非程序的开发者在Makefile里提供了uninstall的目标设置。否则你必须在安装前后比较你系统里文件的完整列表,然后手工移除所有在安装过程中加入的文件。 + +这时候Checkinstall就可以派上使用。Checkinstall会跟踪install命令行所创建或修改的所有文件的路径(例如:“make install”、“make install_modules”等)并建立一个标准的二进制包,让你能用你发行版的标准包管理系统安装或卸载它,(例如Red Hat的yum或者Debian的apt-get命令)。已知它在 Slackware、SuSe、Mandrake 和 Gentoo 上也工作很好,请参考其[官方文档][1]。 + +在这篇文章中,我们只集中在红帽子和Debian为基础的发行版,并展示怎样从源码使用Checkinstall创建一个RPM和DEB软件包 + +### 在linux上安装Checkinstall ### + +在Debian及其衍生发行版上安装Checkinstall: + + # aptitude install checkinstall + +在红帽子的发行版上安装Checkinstall,你需要下载一个已经打包好的Checkinstall rpm包(例如:从 [http://rpm.pbone.net][2]找到),不过它已经从Repoforge库里删除了。这个包是针对Cent OS6的,不过也可在Cent OS7里工作。 + + # wget ftp://ftp.pbone.net/mirror/ftp5.gwdg.de/pub/opensuse/repositories/home:/ikoinoba/CentOS_CentOS-6/x86_64/checkinstall-1.6.2-3.el6.1.x86_64.rpm + # yum install checkinstall-1.6.2-3.el6.1.x86_64.rpm + +一旦checkinstall安装好,你就可以用下列格式创建一个特定的软件包 + + # checkinstall + +如果没有参数,默认安装命令“make install”将被使用 + +### 用Checkinstall创建一个RPM或DEB包 ### + +在这个例子里,我们将创建一个htop包,这是一个linux交互式文本模式进程查看器(类似 top)。 + +首先,让我们从项目的官方网站下载源代码,作为一个好的习惯,我们存储源码包到/usr/local/src下,并解压它。 + + # cd /usr/local/src + # wget http://hisham.hm/htop/releases/1.0.3/htop-1.0.3.tar.gz + # tar xzf htop-1.0.3.tar.gz + # cd htop-1.0.3 + +让我们看看htop的安装命令是什么,以便我们能用Checkinstall命令调用它,如下面所示,htop用“make install”命令安装。 + + # ./configure + # make install + +因此,要创建一个htop安装包,我们可以不带任何参数的调用checkinstall,这将使用“make install”命令创建一个包。在这个过程中, checkinstall命令会问你几个问题。 + +简而言之,如下命令会创建一个htop包: + + # ./configure + # checkinstall + +“Should I create a default set of package docs?(我会创建一个默认设置的包文件?)”,回答“Y”: + +![](https://farm6.staticflickr.com/5577/15118597217_1fdd0e0346_z.jpg) + +你可以输入一个包的简短描述,然后按两次回车: + +![](https://farm4.staticflickr.com/3898/15118442190_604b71d9af.jpg) + +输入一个数字以修改下面的任何值或ENTER继续: + +![](https://farm4.staticflickr.com/3898/15118442180_428de59d68_z.jpg) + +然后checkinstall将自动地创建一个.rpm或者.deb包,根据你的linux系统是什么: + +在CentOS7: + +![](https://farm4.staticflickr.com/3921/15282103066_5d688b2217_z.jpg) + +在Debian 7: + +![](https://farm4.staticflickr.com/3905/15118383009_4909a7c17b_z.jpg) + +-------------------------------------------------------------------------------- + +via: http://ask.xmodulo.com/build-rpm-deb-package-source-checkinstall.html + +译者:[luoyutiantang](https://github.com/luoyutiantang) +校对:[wxy](https://github.com/wxy) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[1]:http://checkinstall.izto.org/docs/README +[2]:http://rpm.pbone.net/ +[3]:http://ask.xmodulo.com/install-htop-centos-rhel.html diff --git a/translated/tech/Linux FAQs with Answers--How to build a RPM or DEB package from the source with CheckInstall.md b/translated/tech/Linux FAQs with Answers--How to build a RPM or DEB package from the source with CheckInstall.md deleted file mode 100644 index 372030e6d0..0000000000 --- a/translated/tech/Linux FAQs with Answers--How to build a RPM or DEB package from the source with CheckInstall.md +++ /dev/null @@ -1,86 +0,0 @@ -Linux 常见问题解答 --怎么用checkinstall从源码创建一个RPM或DEB包 -================================================================================ -> **问题**:我想要从源码创建安装的软件程序。有没有一种方式来创建并且从源码安装包,而不是运行“make install”?那样,以后如果我想,我可以容易的卸载程序。 - -如果你已经从从它的源码运行“make install”安装了linux程序。想完整移除它将变得真的很麻烦,除非程序的创造者在Makefile里提供卸载的目标。你会有在你系统里文件的完整列表来和从源码安装之后比较,然后手工移除所有在制作安装过程中加入的文件 - - -这时候Checkinstall就可以派上使用。Checkinstall保留命令行创建或修改的所有文件的路径(例如:“make install”“make install_modules”等)并建立一个标准的二进制包,让你能用你发行版的标准包管理系统安装或卸载它,(例子:Red Hat的yum或者Debian的apt-get命令) It has been also known to work with Slackware, SuSe, Mandrake and Gentoo as well, as per the official documentation. [official documentation][1]. - -在这篇文章中,我们只集中在红帽子和Debian为基础的发行版,并展示怎样从源码使用Checkinstall创建一个RPM和DEB软件包 - -### 在linux上安装Checkinstall ### - -在Debian衍生上安装Checkinstall: - - # aptitude install checkinstall - -在红帽子的发行版上安装Checkinstall,你需要下载一个预先建立的Checkinstall rpm(例如:从 [http://rpm.pbone.net][2]),他已经从Repoforge库里删除。对于Cent OS6这个rpm包也可在Cent OS7里工作。 - - # wget ftp://ftp.pbone.net/mirror/ftp5.gwdg.de/pub/opensuse/repositories/home:/ikoinoba/CentOS_CentOS-6/x86_64/checkinstall-1.6.2-3.el6.1.x86_64.rpm - # yum install checkinstall-1.6.2-3.el6.1.x86_64.rpm - -一旦checkinstall安装,你可以用下列格式创建一个特定的软件包 - - # checkinstall - -如果没有参数,默认安装命令“make install”将被使用 - -### 用Checkinstall创建一个RPM或DEB包 ### - -在这个例子里,我们将创建一个htop包,对于linux交互式文本模式进程查看器(就像上面的 steroids) - - -首先,让我们从项目的官方网站下载源代码,一个最佳的练习,我们存储源码到/usr/local/src,并解压它 - - # cd /usr/local/src - # wget http://hisham.hm/htop/releases/1.0.3/htop-1.0.3.tar.gz - # tar xzf htop-1.0.3.tar.gz - # cd htop-1.0.3 - -让我们找出htop安装命令,那样我们就能调用Checkinstall命令,下面展示了,htop用“make install”命令安装 - - # ./configure - # make install - -因此,创建一个htop包,我们可以调用checkinstall不带任何参数安装,这将使用“make install”命令创建一个包。随着这个过程 checkinstall命令会问你一个连串的问题。 - -总之,这个命令会创建一个htop包: **htop**: - - # ./configure - # checkinstall - -回答“Y”“我会创建一个默认设置的包文件?” - -![](https://farm6.staticflickr.com/5577/15118597217_1fdd0e0346_z.jpg) - -你可以输入一个包的简短描述,然后按两次ENTER - -![](https://farm4.staticflickr.com/3898/15118442190_604b71d9af.jpg) - -输入一个数值修改下面的任何值或ENTER前进 - -![](https://farm4.staticflickr.com/3898/15118442180_428de59d68_z.jpg) - -然后checkinstall将自动地创建一个.rpm或者.deb包,根据你的linux系统是什么: - -在CentOS7: - -![](https://farm4.staticflickr.com/3921/15282103066_5d688b2217_z.jpg) - -在Debian 7: - -![](https://farm4.staticflickr.com/3905/15118383009_4909a7c17b_z.jpg) - --------------------------------------------------------------------------------- - -via: http://ask.xmodulo.com/build-rpm-deb-package-source-checkinstall.html - -译者:[luoyutiantang](https://github.com/译者ID) -校对:[校对者ID](https://github.com/校对者ID) - -本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 - -[1]:http://checkinstall.izto.org/docs/README -[2]:http://rpm.pbone.net/ -[3]:http://ask.xmodulo.com/install-htop-centos-rhel.html From b8699338d1817c0defba00d4a0d18c750116d007 Mon Sep 17 00:00:00 2001 From: runningwater Date: Sat, 25 Oct 2014 23:46:18 +0800 Subject: [PATCH 042/108] translating by runningwater --- ...0141021 How to monitor a log file on Linux with logwatch.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sources/tech/20141021 How to monitor a log file on Linux with logwatch.md b/sources/tech/20141021 How to monitor a log file on Linux with logwatch.md index 5f00ff77df..28b9f5bfde 100644 --- a/sources/tech/20141021 How to monitor a log file on Linux with logwatch.md +++ b/sources/tech/20141021 How to monitor a log file on Linux with logwatch.md @@ -1,3 +1,4 @@ +(translating by runningwater) How to monitor a log file on Linux with logwatch ================================================================================ Linux operating system and many applications create special files commonly referred to as "logs" to record their operational events. These system logs or application-specific log files are an essential tool when it comes to understanding and troubleshooting the behavior of the operating system and third-party applications. However, log files are not precisely what you would call "light" or "easy" reading, and analyzing raw log files by hand is often time-consuming and tedious. For that reason, any utility that can convert raw log files into a more user-friendly log digest is a great boon for sysadmins. @@ -122,7 +123,7 @@ Hope this helps. Feel free to comment to share your own tips and ideas with the via: http://xmodulo.com/monitor-log-file-linux-logwatch.html 作者:[Gabriel Cánepa][a] -译者:[译者ID](https://github.com/译者ID) +译者:[runningwater](https://github.com/runningwater) 校对:[校对者ID](https://github.com/校对者ID) 本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 From 5895acb58da02e854bf08cf741df8712bc8e3ccc Mon Sep 17 00:00:00 2001 From: barney-ro Date: Sun, 26 Oct 2014 11:02:08 +0800 Subject: [PATCH 043/108] [translated]20141023 Claws Mail 3.11.0 Brings a Ton of Changes and Fixes for POODLE Exploit --- ...of Changes and Fixes for POODLE Exploit.md | 45 ------------------- ...of Changes and Fixes for POODLE Exploit.md | 43 ++++++++++++++++++ 2 files changed, 43 insertions(+), 45 deletions(-) delete mode 100644 sources/share/20141023 Claws Mail 3.11.0 Brings a Ton of Changes and Fixes for POODLE Exploit.md create mode 100644 translated/share/20141023 Claws Mail 3.11.0 Brings a Ton of Changes and Fixes for POODLE Exploit.md diff --git a/sources/share/20141023 Claws Mail 3.11.0 Brings a Ton of Changes and Fixes for POODLE Exploit.md b/sources/share/20141023 Claws Mail 3.11.0 Brings a Ton of Changes and Fixes for POODLE Exploit.md deleted file mode 100644 index 41b5cca16a..0000000000 --- a/sources/share/20141023 Claws Mail 3.11.0 Brings a Ton of Changes and Fixes for POODLE Exploit.md +++ /dev/null @@ -1,45 +0,0 @@ -barney-ro translating - -Claws Mail 3.11.0 Brings a Ton of Changes and Fixes for POODLE Exploit -================================================================================ -> This email client is getting better with each new release - -![](http://i1-news.softpedia-static.com/images/news2/Claws-Mail-3-11-0-Brings-a-Ton-of-Changes-and-Fix-for-POODLE-Exploit-462808-2.jpg) - -**Claws Mail is an open source email client that is fast, easy to use, and full of interesting features and that is gaining some traction in the Linux community. The developers have pushed another big update for this application and it would be a very good idea to upgrade.** - -Some users might not know this, but Claws Mail is actually a very old application. It's been around for more than 13 years, but it operated under the name of Sylpheed-Claws. It was forked a while back, and since then, the new project has managed to become a much better alternative. - -There are quite a few email clients for Linux right now and they are all fighting for supremacy, although it's been done in a very polite fashion. Claws Mail is now being integrated in quite a few Linux distros by default, and this is actually very good news for fans of the app. - -### What are some of the features in Claws Mail 3.11.0 ### - -Just like any other application that deals with online connections and online protocols, Claws Mail has also been affected by the recent vulnerabilities identified in the community, like POODLE for example. The developers had a very busy schedule and the changelog reflects this entirely. - -"A new version of the RSSyl plugin, completely redesigned and rewritten. Migration from the previous version is automatic, it has a new storage format in ~/.claws-mail/RSSyl/ (hierarchical directories instead of flat file format). It uses the expat library instead of libxml2 for parsing feed data." - -"Due to popular demand, use of the Up key in the message body in the Compose window stops at the top of the message body and does not continue up to the header fields. This reverts the behavior introduced in version 3.10.0," say the developers in the [announcement][1]. - -Also, users can relax now because the POODLE vulnerability has been closed in the email client, feat that has been achieved by disabling all the SSLv3 connections. - -The TAB address completion has also received some improvements and it should work much better, especially for New Messages, nagivation with the help of arrows has been tweaked, and numerous smaller enhancements have been made. - -The developers have repositories for most of the major distributions out there, but you can always install it from source. You can check the official announcement for more details about this release. - -Download the Claws Mail 3.11.0 source package, if you want to compile the software yourself. - -- [Claws Mail 3.11.0 tar.xz File size: 5.6 MB][2] - --------------------------------------------------------------------------------- - -via: http://news.softpedia.com/news/Claws-Mail-3-11-0-Brings-a-Ton-of-Changes-and-Fix-for-POODLE-Exploit-462808.shtml - -作者:[Silviu Stahie][a] -译者:[barney-ro](https://github.com/barney-ro) -校对:[校对者ID](https://github.com/校对者ID) - -本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 - -[a]:http://news.softpedia.com/editors/browse/silviu-stahie -[1]:http://www.claws-mail.org/news.php -[2]:http://sourceforge.net/projects/claws-mail/files/Claws%20Mail/3.11.0/claws-mail-3.11.0.tar.xz \ No newline at end of file diff --git a/translated/share/20141023 Claws Mail 3.11.0 Brings a Ton of Changes and Fixes for POODLE Exploit.md b/translated/share/20141023 Claws Mail 3.11.0 Brings a Ton of Changes and Fixes for POODLE Exploit.md new file mode 100644 index 0000000000..49da5b82bd --- /dev/null +++ b/translated/share/20141023 Claws Mail 3.11.0 Brings a Ton of Changes and Fixes for POODLE Exploit.md @@ -0,0 +1,43 @@ +针对POODLE 漏洞,Claws Mail 3.11.0 给我们带来了很多的变化和更新。 +================================================================================ +> 随着每一个新版本的推出,Claws Mail 将会越来越好。 + +![](http://i1-news.softpedia-static.com/images/news2/Claws-Mail-3-11-0-Brings-a-Ton-of-Changes-and-Fix-for-POODLE-Exploit-462808-2.jpg) + +**Claws Mail 发起于Linux 社区,是一款快速、简单易用,并且充满了很多有趣的特性的开源邮件客户端。开发者们推送了一次大的更新和升级,这是一个非常好的主意。** + +有些人可能不知道这个邮件客户端,但Claws Mail 实际上是一个非常老的软件。它以前名称是Sylpheed-Claws ,已经走过了13个年头。Claws Mail 不久以前分支(forked)了出来,从此,新分支变成了很好的可能替代Sylpheed-Claws 产品。 + +现在还有很多针对Linux 的邮件客户端正在进行着霸权地位的争夺战,尽管这是在很礼貌的方式下完成的。很多的Linux发行版都默认集成了Claws Mail,对于Claws Mail 的粉丝,这将是一个好消息。 + +### Claws Mail 3.11.0 给我们带来了哪些新的特性呢 ### + +就像其他的应用程序一样,在处理网络连接和网络协议时,Claws Mail 也一直受到漏洞识别社区的关注,比如说POODLE 漏洞。开发者很紧张的时间表和大量的更新日志就很好的反应了这个。 + +“新版本的RSSyl 插件已经完全被重新设计和重写。从先前版本的迁移是自动完成的,它拥有一个新的存储格式在~/.claws-mail/RSSyl/ (用分级目录代替了平面文件的格式)。并且用expat 库代替了libxml2 库来解析提要数据。” + +“应广大朋友的要求,当消息的编辑窗口停留着消息体的上部,在消息体中使用上键(UP key)时,不再会回到头文字段了。这是在3.10.0版本中引入的。详见开发者的[宣告][1]” + +当然,大家也可以放心了,因为POODLE 漏洞,在新的邮件客户端中已经被关闭,是通过禁用了所有的SSLv3 连接实现的。 + +标签地址也收到了一些改进,并变得更好,特别是对于新邮件,导航箭头的帮助已经做了调整,有很多较小的改进。 + +开发者为大多数发行版创建了很多仓库,但是你也依然可以使用源来安装。想要进一步的了解,你可以关注官方关于每个版本的公告。 + +去下载Claws Mail 3.11.0 的源码包吧,如果你想要自己编译软件。 + +- [Claws Mail 3.11.0 tar.xz File size: 5.6 MB][2] + +-------------------------------------------------------------------------------- + +via: http://news.softpedia.com/news/Claws-Mail-3-11-0-Brings-a-Ton-of-Changes-and-Fix-for-POODLE-Exploit-462808.shtml + +作者:[Silviu Stahie][a] +译者:[barney-ro](https://github.com/barney-ro) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[a]:http://news.softpedia.com/editors/browse/silviu-stahie +[1]:http://www.claws-mail.org/news.php +[2]:http://sourceforge.net/projects/claws-mail/files/Claws%20Mail/3.11.0/claws-mail-3.11.0.tar.xz \ No newline at end of file From b1b8fb6f6edf04857436f393d9f5b63833d57360 Mon Sep 17 00:00:00 2001 From: johnhoow Date: Sun, 26 Oct 2014 19:43:37 +0800 Subject: [PATCH 044/108] =?UTF-8?q?=E5=B0=86=E7=BF=BB=E8=AF=91=E5=A5=BD?= =?UTF-8?q?=E7=9A=84=E6=96=87=E7=AB=A0=E7=A7=BB=E5=8A=A8=E5=88=B0translate?= =?UTF-8?q?d=E5=91=BD=E4=BB=A4=EF=BC=8C=E4=B9=8B=E5=89=8D=E5=BF=98?= =?UTF-8?q?=E8=AE=B0mv=E4=BA=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...7 pidstat - Monitor and Find Statistics for Linux Procesess.md | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename {sources => translated}/tech/20141017 pidstat - Monitor and Find Statistics for Linux Procesess.md (100%) diff --git a/sources/tech/20141017 pidstat - Monitor and Find Statistics for Linux Procesess.md b/translated/tech/20141017 pidstat - Monitor and Find Statistics for Linux Procesess.md similarity index 100% rename from sources/tech/20141017 pidstat - Monitor and Find Statistics for Linux Procesess.md rename to translated/tech/20141017 pidstat - Monitor and Find Statistics for Linux Procesess.md From 93cb1c725cad61884fa410794a92461af12c5bdb Mon Sep 17 00:00:00 2001 From: alim0x Date: Sun, 26 Oct 2014 20:02:38 +0800 Subject: [PATCH 045/108] 08 translated, add 09 --- .../08 - The history of Android.md | 130 ------------------ .../09 - The history of Android.md | 4 +- .../08 - The history of Android.md | 128 +++++++++++++++++ 3 files changed, 131 insertions(+), 131 deletions(-) delete mode 100644 sources/talk/The history of Android/08 - The history of Android.md create mode 100644 translated/talk/The history of Android/08 - The history of Android.md diff --git a/sources/talk/The history of Android/08 - The history of Android.md b/sources/talk/The history of Android/08 - The history of Android.md deleted file mode 100644 index 589822dbc7..0000000000 --- a/sources/talk/The history of Android/08 - The history of Android.md +++ /dev/null @@ -1,130 +0,0 @@ -alim0x translating - -The history of Android -================================================================================ -![Android 1.5’s on-screen keyboard showing the suggestion bar while typing, the capital letters keyboard, the number and symbols screen, and an additional key popup.](http://cdn.arstechnica.net/wp-content/uploads/2013/12/kb5.png) -Android 1.5’s on-screen keyboard showing the suggestion bar while typing, the capital letters keyboard, the number and symbols screen, and an additional key popup. -Photo by Ron Amadeo - -### Android 1.5, Cupcake—a virtual keyboard opens up device design ### - -In April 2009, almost three months after the release of 1.1, Android 1.5 was released. It was the first Android version to have a public, marketed code name: Cupcake. From here on out, Android releases would have alphabetical, snack-themed names. - -The most important Cupcake addition was easily the on-screen keyboard. For the first time, it was possible for OEMs to build a slate-style Android device without a thousand hardware keyboard keys and a complicated slide mechanism. - -Android's key labels could switch between uppercase and lowercase, depending on if caps lock was on or not. While it was off by default, there was an option to turn on the suggestion bar, which appeared along the top edge of the keyboard. Keys with ellipses in the popup, like the "u," above, could be held down to input [diacritical marks][1], which would display in a popup. The keyboard could switch to numbers and alternate characters, and long pressing on the period key would bring up even more punctuation. - -![Composite images of the app lineup in 1.5 and 1.1 and the notification panels from each version.](http://cdn.arstechnica.net/wp-content/uploads/2013/12/abweave.png) -Composite images of the app lineup in 1.5 and 1.1 and the notification panels from each version. -Photo by Ron Amadeo - -New icons were added for the new "Camcorder" functionality, and Google Talk was broken out from IM into its own separate app. The Amazon MP3 and Browser icons were redesigned, too. The Amazon MP3 icon was changed primarily because Amazon was planning on launching other Android apps soon, and the "A" icon was far too generic. The browser icon was easily the worst in Android 1.1, so it was changed and no longer resembled a desktop OS dialog box. The last app drawer change was to "Pictures," which was renamed to "Gallery." - -The notification panel was redesigned again as well. The panel background got a weave texture, and the gradients on notifications were smoothed out. Android 1.5 had a lot of little design changes to core OS pieces that affected all apps. On the "Clear notifications" button, you could see the new system-wide button style, which had a gradient, a thinner outline, and less shadowing than the old version. - -![The “Add to Home" dialog boxes in 1.5 and 1.1.](http://cdn.arstechnica.net/wp-content/uploads/2013/12/widget.png) -The “Add to Home" dialog boxes in 1.5 and 1.1. -Photo by Ron Amadeo - -Third-party widgets were another headline feature of Cupcake, and they still remain one of Android's defining features. Developers could bundle a home screen widget along with their apps that would either control or display information from that app. Google showed off a few new widgets of its own, too, with the Calendar and Music apps. - -![Left: a screenshot of the calendar widget, music widget, and a row of live folders. Center: the folder list. Right: an open view of the “contacts with phone numbers" live folder.](http://cdn.arstechnica.net/wp-content/uploads/2013/12/folders-and-widgets-and-stuff.png) -Left: a screenshot of the calendar widget, music widget, and a row of live folders. Center: the folder list. Right: an open view of the “contacts with phone numbers" live folder. -Photo by Ron Amadeo - -On the left screenshot, above, you can see the new Calendar and Music icons. The Calendar widget could only show a single event for the day, and tapping it would open the calendar. It wouldn't let you choose what calendars to display, and widgets weren't resizable—it only ever looked like this. The music widget was blue—despite the music app not having a drop of blue in it—and showed the song and artist name, along with play and next buttons. - -Also in the left shot, the first three folders on the bottom row were a new feature called "Live Folders." These were accessible under the new top-level "Folders" section in the "Add to Home" menu, which you can see in the center picture. Live Folders showed the content of an application without having to open that application. The ones that came with Cupcake were all contacts-related, showing all of the user's contacts, contacts with phone numbers, or starred contacts. - -Rather than icons, Live Folders used a simple list view that popped up over the home screen. Contacts were just for starters, Live Folders was a whole API that developers could use. Google demoed a folder of books from the Google Books app, and it was possible to have an RSS feed or top stories from a website as a live folder. Live folders were one of the few Android ideas that didn't work out, and the feature was shut down in Honeycomb. - -![The camcorder and camera UI, with on-screen shutter buttons.](http://cdn.arstechnica.net/wp-content/uploads/2013/12/device-2013-12-26-11016071.png) -The camcorder and camera UI, with on-screen shutter buttons. -Photo by Ron Amadeo - -If you couldn't tell from the new "Camcorder" icon, video recording was added to Android in 1.5. The two icons, camera and camcorder, were actually the same app, and you could jump between the two of them with an option in the menu labeled "Switch to camera" and "Switch to camcorder." Video quality on the T-Mobile G1 was not that great. A test video on "High" quality output; a .3GP video file with a resolution of 352 x 288 and a lagtastic frame rate of 4 FPS. - -Along with the new video feature, the Camera app saw a few much-needed UI tweaks. A thumbnail in the top left showed the last picture that was taken, and tapping on it would jump to the camera roll in the Gallery. The circle icon on the top right of both screens was an on-screen shutter button, meaning that, post 1.5, Android devices no longer required a hardware camera button. - -This interface was actually much closer to the Android 4.2 design than many of the subsequent camera apps. While later designs would add silly leather textures and more controls to the camera, Android went back to basics with later designs, and that 4.2 redesign shares a lot in common with this. What was a primitive layout in Android 1.5 became a minimal, full-screen viewfinder in Android 4.2. - -![Google Talk running in the Google Talk app versus Google Talk running in the IM app.](http://cdn.arstechnica.net/wp-content/uploads/2013/12/gtalk-im.png) -Google Talk running in the Google Talk app versus Google Talk running in the IM app. -Photo by Ron Amadeo - -Android 1.0's IM app was used for Google Talk functionality, but in Android 1.5, Google Talk was broken off into its own app. Support for it in the IM app was removed. Google Talk (above, left) was clearly based on the IM app (above, right), but as soon as the stand alone app was released in 1.5, work on the IM app was abandoned. - -The new Google Talk app had a redesigned status bar, presence lights on the right side, and a redesigned mobile icon, which was a gray monogram of the bugdroid. The blue compose bar switched to a more sensible gray in the chat view, and the message backgrounds changed from light green and white to light green and green. With a stand alone app, Google could add Gtalk-only features like chatting "off the record," which would stop Gmail from saving a copy of every chat. - -![The calendar in Android 1.5 got a lot lighter.](http://cdn.arstechnica.net/wp-content/uploads/2013/12/cal15.png) -The calendar in Android 1.5 got a lot lighter. -Photo by Ron Amadeo - -The calendar dumped the ugly white squares on a black background and changed to an all-light app. The background of everything became white, and day-of-the-week headers were changed to blue. The individual appointment blocks switched from a small color strip to entirely colored, and the text changed to white. This will be the last time the calendar is touched for a long time. - -![From left to right: the browser’s new controls, the zoomed-out magnifying view, and highlighting text for copy/pasting.](http://cdn.arstechnica.net/wp-content/uploads/2013/12/browser-craziness.png) -From left to right: the browser’s new controls, the zoomed-out magnifying view, and highlighting text for copy/pasting. -Photo by Ron Amadeo - -Android 1.5 changed the zoom controls system-wide. Instead of two big circles, the zoom controls became two halves of a rectangle with rounded corners. These new controls applied to the browser, Google Maps, and the gallery. - -The browser had lots of work done on the zoom functionality. After zooming in or out, the "1x" button would return you to the standard zoom level. The button in the bottom right corner would zoom all the way out of the page and display a magnifying rectangle over the page, which you can see in the center image. Grabbing the rectangle and releasing it would zoom that part of the page to a "1x" view. Android didn't have acceleratable scrolling, which made the max scrolling speed pretty slow—this was Google's solution for navigating a long webpage. - -Another addition to the browser was the ability to copy text on a webpage—previously you could only copy text from an input box. Selecting "copy text" from the menu would activate highlight mode, and dragging your finger over text in a Web page would highlight it. The G1’s trackball was very handy for super-precise movement like this and could control the mouse cursor. There were no draggable handles, and as soon as you lifted your finger off the screen, Android would copy the text and remove the highlight, so you had to be ridiculously precise to get any use out of the copy feature. - -The browser in Android 1.5 would crash a lot—much more than in previous versions. Just viewing Ars Technica in desktop mode would crash the browser, as did many other sites. - -![](http://cdn.arstechnica.net/wp-content/uploads/2013/12/lockscreen.png) -Photo by Ron Amadeo - -The default lock screen and pattern lock screen both changed their empty, black backgrounds to the same wallpaper as the home screen. - -The lighter background on the pattern unlock screen revealed the sloppy job Google did on the alignment of the circles. The white circles were nowhere near centered inside the black circles—basic alignment issues like this continued to be a frequent problem for Android in these early days. - -![The YouTube uploader, contacts thumbnails, the auto rotate setting, and the new music design.](http://cdn.arstechnica.net/wp-content/uploads/2013/12/TWEAKS2.png) -The YouTube uploader, contacts thumbnails, the auto rotate setting, and the new music design. -Photo by Ron Amadeo - -![The HTC Magic, the second Android device, and the first without a hardware keyboard.](http://cdn.arstechnica.net/wp-content/uploads/2014/04/htc-magic-white.jpg) -The HTC Magic, the second Android device, and the first without a hardware keyboard. -Photo by HTC - -> #### Google Maps is the first built-in app to hit the Android Market #### -> -> While this article is (mostly) organizing app updates by Android version for simplicity's sake, there are a few outliers that deserve special recognition. On June 14, 2009, Google Maps was the first packed-in Android app to be updated via the Android Market. While every other app required a full system release to be updated, Maps was broken out of the OS, free to receive out-of-cycle updates whenever a new feature was ready. -> -> Moving apps out of the core OS and onto the Android Market would be a big focus for Google going forward. In general, OTA updates were a big initiative—they required the cooperation of the OEM and the carrier, both of which could drag their feet. Updates also didn’t make it to every device. Today, the Android Market gives Google a direct line to every Android phone with no such interference from outside parties. -> -> These were problems for a later date, though. In 2009, Google had only two unskinned phones to support, and the early Android carriers were seemingly responsive to Google’s update needs. This early move would prove to be a very proactive decision on Google’s part. At first, the company went this route only with its most important properties—Maps and Gmail—but later it would port the majority of the packed-in apps to the Android Market. Later initiatives like Google Play Services even brought app APIs out of the OS and into Google’s store. -> -> As for the new Maps at the time, it gained a new directions interface, along with the ability to give mass transit and walking directions. For now, directions were given on a plain black list—turn-by-turn-style navigation would come later. -> -> June 2009 was also the time Apple launched the third iPhone—the 3GS—and the third version of iPhone OS. iPhone OS 3's headline features were mostly catch-up items like copy/paste and MMS support. Apple's hardware was still nicer, and the software was smoother, more cohesive, and better designed. Google's insane pace of development was putting it on a path to parity though. iPhone OS 2 launched just before the Milestone 5 build of Android 0.5, which makes five Android releases in the span of the yearly iOS release cycle. - -Android 1.5 gave the YouTube app the ability to upload videos to the site. Uploading was accomplished by sharing a video from the Gallery to the YouTube app, or by opening a video directly from the YouTube app. This would bring up an upload screen, where the user would set things like the video title, tags, and access rights. Photos could be uploaded to Picasa, Google's original photo site, in a similar fashion. - -There were little tweaks all over the OS. Favorite contacts now showed a picture in the contacts list (although regular contacts were still pictureless). The third picture shows the new auto-rotate option in the settings—this was also the first version to support automatically switching orientations based on readings from the devices’ internal sensors. - -Cupcake did a great job of improving Android, particularly in terms of hardware options. The on-screen keyboard meant a hardware keyboard was no longer necessary. Auto rotate brought the OS a little closer to the iPhone, and an on-screen camera shutter button meant that hardware camera buttons were now optional, too. Shortly after the release of 1.5, a second Android device came out that would show the future direction of the platform: the HTC Magic. The Magic (right) didn’t have a hardware keyboard or a camera button. It was a solid, slider-less slate device that relied on Android’s on-screen buttons to get the job done. - -Android flagships started with the most buttons possible—a hardware qwerty phone—and slowly began whittling the button count down over time. While the Magic was a big step, eliminating an entire keyboard and a camera button, it still used start and end call buttons, four system buttons, and a trackball. - ----------- - -![Ron Amadeo](http://cdn.arstechnica.net/wp-content//uploads/authors/ron-amadeo-sq.jpg) - -[Ron Amadeo][a] / Ron is the Reviews Editor at Ars Technica, where he specializes in Android OS and Google products. He is always on the hunt for a new gadget and loves to rip things apart to see how they work. - -[@RonAmadeo][t] - --------------------------------------------------------------------------------- - -via: http://arstechnica.com/gadgets/2014/06/building-android-a-40000-word-history-of-googles-mobile-os/8/ - -译者:[译者ID](https://github.com/译者ID) 校对:[校对者ID](https://github.com/校对者ID) - -本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 - -[1]:http://en.wikipedia.org/wiki/Diacritic -[a]:http://arstechnica.com/author/ronamadeo -[t]:https://twitter.com/RonAmadeo diff --git a/sources/talk/The history of Android/09 - The history of Android.md b/sources/talk/The history of Android/09 - The history of Android.md index c629e9cc75..8a30a320b9 100644 --- a/sources/talk/The history of Android/09 - The history of Android.md +++ b/sources/talk/The history of Android/09 - The history of Android.md @@ -1,3 +1,5 @@ +alim0x translating + The history of Android ================================================================================ ![The new Android Market—less black, more white and green.](http://cdn.arstechnica.net/wp-content/uploads/2013/12/marketab2.png) @@ -73,4 +75,4 @@ via: http://arstechnica.com/gadgets/2014/06/building-android-a-40000-word-histor 本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 [a]:http://arstechnica.com/author/ronamadeo -[t]:https://twitter.com/RonAmadeo \ No newline at end of file +[t]:https://twitter.com/RonAmadeo diff --git a/translated/talk/The history of Android/08 - The history of Android.md b/translated/talk/The history of Android/08 - The history of Android.md new file mode 100644 index 0000000000..15dc0515d6 --- /dev/null +++ b/translated/talk/The history of Android/08 - The history of Android.md @@ -0,0 +1,128 @@ +安卓编年史 +================================================================================ +![安卓1.5的屏幕软键盘输入时的输入建议栏,大写状态键盘,数字与符号界面,更多符号弹窗。](http://cdn.arstechnica.net/wp-content/uploads/2013/12/kb5.png) +安卓1.5的虚拟键盘输入时的输入建议栏,大写状态键盘,数字与符号界面,更多符号弹窗。 +Ron Amadeo供图 + +### Android 1.5 Cupcake——虚拟键盘打开设备设计的大门 ### + +在2009年4月,安卓1.1发布后将近三个月后,安卓1.5发布了。这是第一个拥有公开的,市场化代号的安卓版本:纸杯蛋糕(Cupcake)。从这个版本开始,每个版本的安卓将会拥有一个按字母表排序,以小吃为主题的代号。 + +纸杯蛋糕新增功能中最重要的明显当属虚拟键盘。这是OEM厂商第一次有可能抛开数不清按键的实体键盘以及复杂的滑动结构,创造出平板风格的安卓设备。 + +安卓的按键标识可以在大小写之间切换,这取决于大写锁定是否开启。尽管默认情况下它是关闭的,显示在键盘顶部的建议栏有个选项可以打开它。在按键的弹框中带有省略号的,就像“u”,上面图那样的,可以在按住的情况下可以输入弹框中的[发音符号][1]。键盘可以切换到数字和符号,长按句号键可以打开更多符号。 + +![1.5和1.1中的应用程序界面和通知面板的对比。](http://cdn.arstechnica.net/wp-content/uploads/2013/12/abweave.png) +1.5和1.1中的应用程序界面和通知面板的对比。 +Ron Amadeo供图 + +“摄像机”功能加入了新图标,Google Talk从IM中分离出来成为了一个独立的应用。亚马逊MP3和浏览器的图标同样经过了重新设计。亚马逊MP3图标更改的主要原因是亚马逊即将计划推出其它的安卓应用,而“A”图标所指范围太泛了。浏览器图标无疑是安卓1.1中最糟糕的设计,所以它被重新设计了,并且不再像是一个桌面操作系统的对话框。应用抽屉的最后一个改变是“图片”,它被重新命名为了“相册”。 + +通知面板同样经过了重新设计。面板背景加上了布纹纹理,通知的渐变效果也被平滑化了。安卓1.5在系统核心部分有许多设计上的微小改变,这些改变影响到所有的应用。在“清除通知”按钮上,你可以看到全新的系统按钮风格,相比与旧版本的按钮有了渐变,更细的边框线以及更少的阴影。 + +![安卓1.5和1.1中的“添加到主屏幕”对话框。](http://cdn.arstechnica.net/wp-content/uploads/2013/12/widget.png) +安卓1.5和1.1中的“添加到主屏幕”对话框。 +Ron Amadeo供图 + +第三方小部件是纸杯蛋糕的另一个头等特性,它们现在仍然是安卓的本质特征之一。无论是用来控制应用还是显示应用的信息,开发者们都可以为他们的应用捆绑一个主屏幕小部件。谷歌同样展示了一些它们自己的新的小部件,分别来自日历和音乐这两个应用。 + +![左:日历小部件,音乐小部件以及一排实时文件夹的截图。中:文件夹列表。右:“带电话号码的联系人”实时文件夹的打开视图。](http://cdn.arstechnica.net/wp-content/uploads/2013/12/folders-and-widgets-and-stuff.png) +左:日历小部件,音乐小部件以及一排实时文件夹的截图。中:文件夹列表。右:“带电话号码的联系人”实时文件夹的打开视图。 +Ron Amadeo供图 + +在上方左边的截图里你可以看到新的日历和音乐图标。日历小部件只能显示当天的一个事件,点击它会打开日历。你不能够选择日历所显示的内容,小部件也不能够重新设置大小——它就是上面看起来的那个样子。音乐小部件是蓝色的——尽管音乐应用里没有一丁点的蓝色——它展示了歌曲名和歌手名,此外还有播放和下一曲按钮。 + +同样在左侧截图里,底部一排的头三个文件夹是一个叫做“实时文件夹”的新特性。它们可以在“添加到主屏幕”菜单中的新顶层选项“文件夹”中被找到,就像你在中间那张图看到的那样。实时文件夹可以展示一个应用的内容而不用打开这个应用。纸杯蛋糕带来的都是和联系人相关的实时文件夹,能够显示所有联系人,带有电话号码的联系人和加星标的联系人。 + +实时文件夹在主屏的弹窗使用了一个简单的列表视图,而不是图标。联系人只是实时文件夹的一个初级应用,它是给开发者使用的一个完整API。谷歌用Google Books应用做了个图书文件夹的演示,它可以显示RSS订阅或是一个网站的热门故事。实时文件夹是安卓没有成功实现的想法之一,这个特性最终在蜂巢(3.x)中被取消。 + +![摄像机和相机界面,屏幕上有触摸快门。](http://cdn.arstechnica.net/wp-content/uploads/2013/12/device-2013-12-26-11016071.png) +摄像机和相机界面,屏幕上有触摸快门。 +Ron Amadeo供图 + +如果你不能认出新的“摄像机”图标,这不奇怪,视频录制是在安卓1.5中才被添加进来的。相机和摄像机两个图标其实是同一个应用,你可用过菜单中的“切换至相机”和“切换至摄像机”选项在它们之间切换。T-Mobile G1上录制的视频质量并不高。一个“高”质量的测试视频输出一个.3GP格式的视频文件,其分辨率仅为352 x 288,帧率只有4FPS。 + +除了新的视频特性,相机应用中还可以看到一些急需的UI调整。上方左侧的快照展示了最近拍摄的那张照片,点击它会跳转到相册中的相机胶卷。各个界面上方右侧的圆形图标是触摸快门,这意味着,从1.5开始,安卓设备不再需要一个实体相机按钮。 + +这个界面相比于之后版本的相机应用实际上更加接近于安卓4.2的设计。尽管后续的设计会向相机加入愚蠢的皮革纹理毅力更多的控制设置,安卓最终还是回到了基本的设计,安卓4.2的重新设计和这里有很多共同之处。安卓1.5中的原始布局演变成了安卓4.2中的最小化的,全屏的取景器。 + +![Google Talk运行在Google Talk中vs运行在IM应用中。](http://cdn.arstechnica.net/wp-content/uploads/2013/12/gtalk-im.png) +Google Talk运行在Google Talk中vs运行在IM应用中。 +Ron Amadeo供图 + +安卓1.0的IM即时通讯应用功能上支持Google Talk,但在安卓1.5中,Google Talk从中分离出来成为独立应用。IM应用中对其的支持已经被移除。Google Talk(上图左侧)明显是基于IM应用(上图右侧)的,但随着独立应用在1.5中的发布,在IM应用的工作被放弃了。 + +新的Google Talk应用拥有重新设计过的状态栏,右侧状态指示灯,重新设计过的移动设备标识,是个灰色的安卓小绿人图案。聊天界面的蓝色的输入框变成了更加合理的灰色,消息的背景从淡绿和白色变成了淡绿和绿色。有了独立的应用,谷歌可以向其中添加Gtalk独有的特性,比如“不保存聊天记录”聊天,该特性可以阻止Gmail保存每个聊天记录。 + +![安卓1.5的日历更加明亮。](http://cdn.arstechnica.net/wp-content/uploads/2013/12/cal15.png) +安卓1.5的日历更加明亮。 +Ron Amadeo供图 + +日历抛弃了丑陋的黑色背景上白色方块的设计,转变为全浅色主题。所有东西的背景都变成了白色,顶部的星期日变成了蓝色。单独的约会方块从带有颜色的细条变成了拥有整个颜色背景,文字也变为白色。这将是很长一段时间内日历的最后一次改动。 + +![从左到右:新的浏览器控件,缩放视图,复制/粘贴文本高亮。](http://cdn.arstechnica.net/wp-content/uploads/2013/12/browser-craziness.png) +从左到右:新的浏览器控件,缩放视图,复制/粘贴文本高亮。 +Ron Amadeo供图 + +安卓1.5从系统全局修改了缩放控件。缩放控件不再是两个大圆形,取而代之的是一个圆角的椭圆形从中间分开为左右两个按钮。这些新的控件被用在了浏览器,谷歌地图和相册之中。 + +浏览器在缩放功能上做了很多工作。在放大或缩小之后,点击“1x”按钮可以回到正常缩放状态。底部右侧的按钮会将页面缩放整个页面并在页面上显示一个放大矩形框,就像你能在上面中间截图看到的那样。抓住矩形框并且释放会将页面的那一部分显示回“1x”视图。安卓并没有加速滚动,这使得最大滚动速度着实很慢——这就是谷歌对长网页页面导航的解决方案。 + +浏览器的另一个新增功能就是从网页上复制文本——之前你只能从输入框中复制文本。在菜单中选择“复制文本”会激活高亮模式,在网页文本上拖动你的手指会使它们高亮。G1的轨迹球对于这种精准的移动十分的方便,并且能够控制鼠标指针。这里并没有可以拖动的光标,当你的手指离开屏幕的时候,安卓就会复制文本并且移除高亮。所以你必须做到荒谬般的精确来使用复制功能。 + +安卓1.5中的浏览器很容易崩溃——比之前的版本经常多了。仅仅是以桌面模式浏览Ars Technica就会导致崩溃,许多其它的站点也是一样。 + +![](http://cdn.arstechnica.net/wp-content/uploads/2013/12/lockscreen.png) +Ron Amadeo供图 + +默认的锁屏界面和图形锁屏都不再是空荡荡的黑色背景,而是和主屏幕一致的壁纸。 + +图形解锁界面的浅色背景显示出了谷歌在圆圈对齐工作上的草率和马虎。白色圆圈在黑圆圈里从来都不是在正中心的位置——像这样基本的对齐问题对于这一时期的安卓是个频繁出现的问题。 + +![Youtube上传工具,内容快照,自动旋转设置,全新的音乐应用设计。](http://cdn.arstechnica.net/wp-content/uploads/2013/12/TWEAKS2.png) +Youtube上传工具,内容快照,自动旋转设置,全新的音乐应用设计。 +Ron Amadeo供图 + +安卓1.5给予了YouTube应用向其网站上传视频的能力。上传通过从相册中分享视频到YouTube应用来完成,或从YouTube应用中直接打开一个视频。这将会打开一个上传界面,用户在这里可以设置像视频标题,标签和权限这样的选项。照片可以以类似的方式上传到Picasa,一个谷歌建立的图片网站。 + +整个系统的调整没有多少。现在喜爱的联系人在联系人列表中可以显示图片(尽管常规联系人还是没有图片)。第三张截图展示了设置中全新的自动旋转选项——这个版本同样也是第一个支持基于从设备内部传感器读取的数据自动切换方向的版本。 + +> #### 谷歌地图是第一个登陆谷歌市场的内置应用 #### +> +> 尽管这篇文章为了简单起见,(主要)以安卓版本顺序来组织应用更新,但还是有一些在这时间线之外的东西值得我们特别注意一下。2009年6月14日,谷歌地图成为第一个通过谷歌市场更新的预置应用。尽管其它的所有应用更新还是要求一个完整的系统更新,地图从系统中脱离了出来,只要新特性已经就绪就可以随时接收升级周期之外的更新。 +> +> 将应用从核心系统分离发布到安卓市场上将成为谷歌前进的主要关注点。总的来说,OTA更新是个重大的主动改进——这需要OEM厂商和运营商的合作,二者都是拖着后退的角色。更新同样没有做到到达每个设备。今天,谷歌市场给了谷歌一个与每个安卓手机之间的联系,而没有了这样的外界干扰。 +> +> 然而,这是后来才需要考虑的问题。在2009年,谷歌只有两部裸机需要支持,而且早期的安卓运营商似乎对谷歌的升级需要反应积极。这些早期的行动对谷歌部分来说将被证明是非常积极的决定。一开始,公司只在最重要的应用——地图和Gmail上——走这条路线,但后来它将大部分预置应用导入安卓市场。后来的举措比如Google Play服务甚至将应用API从系统移除加入了谷歌商店。 +> +> 至于这时的新地图应用,得到了一个新的路线界面,此外还有提供公共交通和步行方向的能力。现在,路线只有个朴素的黑色列表界面——逐向风格的导航很快就会登场。 +> +> 2009年6月同时还是苹果发布第三代iPhone——3GS——以及第三版iPhone OS的时候。iPhone OS 3的主要特性大多是追赶上来的项目,比如复制/粘贴和对彩信的支持。苹果的硬件依然是更好的,软件更流畅,更整合,还有更好的设计。尽管谷歌疯狂的开发步伐使得它不得不走上追赶的道路。iPhone OS 2是在安卓0.5的Milestone 5版本之前发布的,在iOS一年的发布周期里安卓发布了五个版本。 + +![HTC Magic,第二部安卓设备,第一个不带实体键盘的设备。](http://cdn.arstechnica.net/wp-content/uploads/2014/04/htc-magic-white.jpg) +HTC Magic,第二部安卓设备,第一个不带实体键盘的设备。 +HTC供图 + +纸杯蛋糕在改进安卓上做了巨大的工作,特别是从硬件方面。虚拟键盘意味着不再需要实体键盘。自动旋转使得系统更加接近iPhone,屏幕上的虚拟快门按键同样也意味着实体相机按键变成了可选选项。1.5发布后不久,第二部安卓设备的出现将会展示出这个平台未来的方向:HTC Magic。Magic(上图)没有实体键盘或相机按钮。它是没有间隙,没有滑动结构的平板状设备,依赖于安卓的虚拟按键来完成任务。 + +安卓旗舰机开始可能有着最多按键——一个实体qwerty键盘——后来随着时间流逝开始慢慢减少按键数量。而Magic是重大的一步,去除了整个键盘和相机按钮,它仍然使用通话和挂断键,四个系统键以及轨迹球。 + +---------- + +![Ron Amadeo](http://cdn.arstechnica.net/wp-content//uploads/authors/ron-amadeo-sq.jpg) + +[Ron Amadeo][a] / Ron是Ars Technica的评论编缉,专注于安卓系统和谷歌产品。他总是在追寻新鲜事物,还喜欢拆解事物看看它们到底是怎么运作的。 + +[@RonAmadeo][t] + +-------------------------------------------------------------------------------- + +via: http://arstechnica.com/gadgets/2014/06/building-android-a-40000-word-history-of-googles-mobile-os/8/ + +译者:[alim0x](https://github.com/alim0x) 校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[1]:http://en.wikipedia.org/wiki/Diacritic +[a]:http://arstechnica.com/author/ronamadeo +[t]:https://twitter.com/RonAmadeo From 53c5c07a8ee97bd6703fda77ccb055929d54c207 Mon Sep 17 00:00:00 2001 From: ZTinoZ Date: Sun, 26 Oct 2014 21:06:45 +0800 Subject: [PATCH 046/108] Translating by ZTinoZ --- ...alds Regrets Alienating Developers with Strong Language.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sources/news/20141017 Linus Torvalds Regrets Alienating Developers with Strong Language.md b/sources/news/20141017 Linus Torvalds Regrets Alienating Developers with Strong Language.md index a538502451..ff0eb8e822 100644 --- a/sources/news/20141017 Linus Torvalds Regrets Alienating Developers with Strong Language.md +++ b/sources/news/20141017 Linus Torvalds Regrets Alienating Developers with Strong Language.md @@ -6,9 +6,9 @@ Linus Torvalds对于骂那些开发者感到后悔 Linus Torvalds被认为是Linux内核的创造者和最新的Linux开发版的维护者。他确保我们几乎每个星期都会得到一个新的RC内核并且涉及发生在邮件发送清单中的对话里,他口不择言地用脏话大骂一些开发者们。 -The latest problem of this kind, which surfaced in the news as well, was when [he decided to block code from a particular developer][1], after making some very harsh remarks. He is known to be very abrasive, especially when kernel developers break user space to fix something in the kernel. The same happened in this case and he basically went mental on the guy. +最近出现了一个问题,就是他在做了一些苛刻的评论之后[决定从指定的开发者的手中阉割掉一些代码][1],这种事件在新闻里也报道过。大家都知道Linus很招人厌烦,尤其是当内核开发者为了修复内核中的一些问题而破坏了用户空间。同样的事情就发生在这种情况下,他基本上已经把那个家伙给气疯了。 -### 这是他最接近道歉的一次谈话 ### +### 这是他最接近道歉意味的一次谈话 ### Linus Torvalds never really talked about that particular discussion since and people moved on, but recently a systemd developer talked about the strong language in the open source community and he mentioned Linus Torvalds by name. He's not known to apologize, so this admission of guilt during LinuxCon is a big step forward. The moderator asked him what single decision in the last 23 years he would change. From 073906bcd5f1e56646d41c3b074cad0570ef5420 Mon Sep 17 00:00:00 2001 From: andyxue Date: Sun, 26 Oct 2014 22:40:24 +0800 Subject: [PATCH 047/108] AndyXue translating --- .../20141024 Amazing 25 Linux Performance Monitoring Tools.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sources/tech/20141024 Amazing 25 Linux Performance Monitoring Tools.md b/sources/tech/20141024 Amazing 25 Linux Performance Monitoring Tools.md index 87c9d3ed92..9f6f386f33 100644 --- a/sources/tech/20141024 Amazing 25 Linux Performance Monitoring Tools.md +++ b/sources/tech/20141024 Amazing 25 Linux Performance Monitoring Tools.md @@ -1,3 +1,4 @@ +andyxue translating Amazing ! 25 Linux Performance Monitoring Tools ================================================================================ Over the time our website has shown you how to configure various performance tools for Linux and Unix-like operating systems. In this article we have made a list of the most used and most useful tools to monitor the performance for your box. We provided a link for each of them and split them into 2 categories: command lines one and the ones that offer a graphical interface. @@ -288,4 +289,4 @@ via: http://linoxide.com/monitoring-2/linux-performance-monitoring-tools/ [22]:http://linoxide.com/monitoring-2/collectl-tool-install-examples/ [23]:http://linoxide.com/tools/multi-router-traffic-grapher/ [24]:http://linoxide.com/monitoring-2/monit-linux/ -[25]:http://linoxide.com/ubuntu-how-to/install-munin/ \ No newline at end of file +[25]:http://linoxide.com/ubuntu-how-to/install-munin/ From 7670b986958ef5093eb1f687b1a85280d53bafa2 Mon Sep 17 00:00:00 2001 From: Jonathan Kang Date: Mon, 27 Oct 2014 07:01:18 +0800 Subject: [PATCH 048/108] translated --- ...a good command-line calculator on Linux.md | 116 ------------------ ...a good command-line calculator on Linux.md | 115 +++++++++++++++++ 2 files changed, 115 insertions(+), 116 deletions(-) delete mode 100644 sources/tech/20141023 What is a good command-line calculator on Linux.md create mode 100644 translated/tech/20141023 What is a good command-line calculator on Linux.md diff --git a/sources/tech/20141023 What is a good command-line calculator on Linux.md b/sources/tech/20141023 What is a good command-line calculator on Linux.md deleted file mode 100644 index b4da9dad5c..0000000000 --- a/sources/tech/20141023 What is a good command-line calculator on Linux.md +++ /dev/null @@ -1,116 +0,0 @@ -JonathanKang is translating -What is a good command-line calculator on Linux -================================================================================ -Every modern Linux desktop distribution comes with a default GUI-based calculator app. On the other hand, if your workspace is full of terminal windows, and you would rather crunch some numbers within one of those terminals quickly, you are probably looking for a **command-line calculator**. In this category, [GNU bc][1] (short for "basic calculator") is a hard to beat one. While there are many command-line calculators available on Linux, I think GNU bc is hands-down the most powerful and useful. - -Predating the GNU era, bc is actually a historically famous arbitrary precision calculator language, with its first implementation dating back to the old Unix days in 1970s. Initially bc was a better known as a programming language whose syntax is similar to C language. Over time the original bc evolved into POSIX bc, and then finally GNU bc of today. - -### Features of GNU bc ### - -Today's GNU bc is a result of many enhancements of earlier implementations of bc, and now it comes standard on all major GNU/Linux distros. It supports standard arithmetic operators with arbitrary precision numbers, and multiple numeric base (e.g., binary, decimal hexadecimal) of input and output. - -If you are familiar with C language, you will see that the same or similar mathematical operators are used in bc. Some of supported operators include arithmetic (+,-,*,/,%,++,--), comparison (<,>,==,!=,<=,>=), logical (!,&&,||), bitwise (&,|,^,~,<<,>>), compound assignment (+=,-=,*=,/=,%=,&=,|=,^=,&&=,||=,<<=,>>=) operators. bc comes with many useful built-in functions such as square root, sine, cosine, arctangent, natural logarithm, exponential, etc. - -### How to Use GNU bc ### - -As a command-line calculator, possible use cases of GNU bc are virtually limitless. In this tutorial, I am going to describe a few popular features of bc command. For a complete manual, refer to the [official source][2]. - -Unless you have a pre-written bc script, you typically run bc in interactive mode, where any typed statement or expression terminated with a newline is interpreted and executed on the spot. Simply type the following to enter an interactive bc session. To quit a session, type 'quit' and press Enter. - - $ bc - -![](https://farm4.staticflickr.com/3939/15403325480_d0db97d427_z.jpg) - -The examples presented in the rest of the tutorial are supposed to be typed inside a bc session. - -### Type expressions ### - -To calculate an arithmatic expression, simply type the expression at the blinking cursor, and press Enter. If you want, you can store an intermediate result to a variable, then access the variable in other expressions. - -![](https://farm6.staticflickr.com/5604/15403325460_b004b3f8da_o.png) - -Within a given session, bc maintains a unlimited history of previously typed lines. Simply use UP arrow key to retrieve previously typed lines. If you want to limit the number of lines to keep in the history, assign that number to a special variable named history. By default the variable is set to -1, meaning "unlimited." - -### Switch input/output base ### - -Often times you want to type input expressions and display results in binary or hexadecimal formats. For that, bc allows you switch the numeric base of input or output numbers. Input and output bases are stored in ibase and obase, respectively. The default value of these special variables is 10, and valid values are 2 through 16 (or the value of BC_BASE_MAX environment variable in case of obase). To switch numeric base, all you have to do is to change the values of ibase and obase. For example, here are examples of summing up two hexadecimal/binary numbers: - -![](https://farm6.staticflickr.com/5604/15402320019_f01325f199_z.jpg) - -Note that I specify obase=16 before ibase=16, not vice versa. That is because if I specified ibase=16 first, the subsequent obase=16 statement would be interpreted as assigning 16 in base 16 to obase (i.e., 22 in decimal), which is not what we want. - -### Adjust precision ### - -In bc, the precision of numbers is stored in a special variable named scale. This variable represents the number of decimal digits after the decimal point. By default, scale is set to 0, which means that all numbers and results and truncated/stored in integers. To adjust the default precision, all you have to do is to change the value of scale variable. - - scale=4 - -![](https://farm6.staticflickr.com/5597/15586279541_211312597b.jpg) - -### Use built-in functions ### - -Beyond simple arithmatic operations, GNU bc offers a wide range of advanced mathematical functions built-in, via an external math library. To use those functions, launch bc with "-l" option from the command line. - -Some of these built-in functions are illustrated here. - -Square root of N: - - sqrt(N) - -Sine of X (X is in radians): - - s(X) - -Cosine of X (X is in radian): - - c(X) - -Arctangent of X (The returned value is in radian): - - a(X) - -Natural logarithm of X: - - l(X) - -Exponential function of X: - - e(X) - -### Other goodies as a language ### - -As a full-blow calculator language, GNU bc supports simple statements (e.g., variable assignment, break, return), compound statements (e.g., if, while, for loop), and custom function definitions. I am not going to cover the details of these features, but you can easily learn how to use them from the [official manual][2]. Here is a very simple function definition example: - - define dummy(x){ - return(x * x); - } - dummy(9) - 81 - dummy(4) - 16 - -### Use GNU bc Non-interactively ### - -So far we have used bc within an interactive session. However, quite popular use cases of bc in fact involve running bc within a shell script non-interactively. In this case, you can send input to bc using echo through a pipe. For example: - - $ echo "40*5" | bc - $ echo "scale=4; 10/3" | bc - $ echo "obase=16; ibase=2; 11101101101100010" | bc - -![](https://farm4.staticflickr.com/3943/15565252976_f50f453c7f_z.jpg) - -To conclude, GNU bc is a powerful and versatile command-line calculator that really lives up to your expectation. Preloaded on all modern Linux distributions, bc can make your number crunching tasks much easy to handle without leaving your terminals. For that, GNU bc should definitely be in your productivity toolset. - --------------------------------------------------------------------------------- - -via: http://xmodulo.com/command-line-calculator-linux.html - -作者:[Dan Nanni][a] -译者:[译者ID](https://github.com/译者ID) -校对:[校对者ID](https://github.com/校对者ID) - -本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 - -[a]:http://xmodulo.com/author/nanni -[1]:http://www.gnu.org/software/bc/ -[2]:https://www.gnu.org/software/bc/manual/bc.html diff --git a/translated/tech/20141023 What is a good command-line calculator on Linux.md b/translated/tech/20141023 What is a good command-line calculator on Linux.md new file mode 100644 index 0000000000..e86cb16ebd --- /dev/null +++ b/translated/tech/20141023 What is a good command-line calculator on Linux.md @@ -0,0 +1,115 @@ +怎么样称得上是Linux下优秀的命令行计算器 +================================================================================ +每个现代的Linux桌面发行版都预装着一个带有图形界面的计算器程序。不过如果你的工作区中全是命令行窗口,那么你一定会在其中的一个命令行窗口中处理一些数字相关的问题。或许你在寻找一款基于命令行的计算器程序。如果是这样的话,[GNU bc][1](“basic calculator”的缩写)会是你不二的选择。当然Linux下又很多基于命令行的计算器应用,我认为GNU bc是功能最强大和最有用的。 + +在GNU时代之前,bc实际上是一个著名的精密计算语言。它的诞生要追溯到70年代的Unix时期了。最初bc作为一个语法和C语言相似的编程语言而著名。随着时间的改变,最开始的bc演化成POSIX bc,最后变成了今天的GNU bc。 + +### GNU bc的特性 ### + +现在的GNU bc是早期bc经过若干次改进和功能增强的结果。目前它被所有的主流GNU/Linux发行版所收纳。GNU bc支持高精度数字和多种数值类型(例如二进制、十进制、十六进制)的输入输出。 + +如果你对C语言很熟悉的话,你会发现bc使用了和C语言一样或相似的算术操作符。受支持的操作符包括算术运算符(+,-,*,/,%,++,--)、比较运算符(<,>,==,!=,<=,>=)、逻辑运算符(!,&&,||)、位运算符(&,|,^,~,<<,>>)和复合赋值运算符(+=,-=,*=,/=,%=,&=,|=,^=,&&=,||=,<<=,>>=)。bc内置了很多有用的函数,像是平方根、正弦、余弦、反正弦、自然对数、指数等。 + +### 如何使用GNU bc ### + +作为一个基于命令行的计算器,GNU bc的使用是没有限制的。在本文中,我会向大家介绍bc命令的几个常用的特性。如果你想要更加详细的指导,你可以查阅[官方指南][2]。 + +如果你没有一个预先写好的bc脚本,那么你需要在交互模式下运行bc。在这种模式下,你输入的以回车结束的任何声明或者表达式会被立刻计算出结果。你需要输入以下命令来进入bc的交互界面。如果向退出bc,你可以输入'quit'并且按回车。 + + $ bc + +![](https://farm4.staticflickr.com/3939/15403325480_d0db97d427_z.jpg) + +本文下面展示的例子应该在bc交互界面中输入。 + +### 输入表达式 ### + +如果想要计算一个算术表达式,我们可以在闪烁的光标处输入该表达式,然后按回车确认。你也可以将该结果存储到一个变量中,然后在其他表达式中使用该变量。 + +![](https://farm6.staticflickr.com/5604/15403325460_b004b3f8da_o.png) + +在一个bc的交互界面中,存在没有个数限制的命令历史记录。使用上方向键来查看之前输入的命令。如果你想限制历史记录保存的命令数量,你可以将一个名为history的特殊变量设置成你希望的数值。该变量默认为-1,也就是“历史记录数量没有限制”。 + +### 输入输出进制切换 ### + +经常会发生的是,你输入一个表达式并且想使用二进制或者十六进制来显示结果。bc允许你在输入输出数字的进制间转换。输入和输出的数系基分别存储在ibase和obase变量中,默认值为10,有效的数值是2到16(或者环境变量BC_BASE_MAX的值).你只需要更改ibase和obase的值就可以在不同进制之间转换了。下面是一个求两个十六进制/二进制数和的例子: + +![](https://farm6.staticflickr.com/5604/15402320019_f01325f199_z.jpg) + +需要注意的是,我有意地将obase=16放到了ibase=16前面,反过来则是不可以的。这个是因为如果我先输入ibase=16,那么随后输入的obase=16中的16会被认为是16进制的数字,也就是十进制的22。当然这个不是我们所期望的。 + +### 调整精度 ### + +在bc中,数字的精度存储在一个名为scale的特殊变量中。该变量表示小数点后数字的个数。scale默认为0,意味着所有的数字和结果以整数形式储存。你可以通过改变scale这个特殊变量的值,来调整数值的精度。 + + scale=4 + +![](https://farm6.staticflickr.com/5597/15586279541_211312597b.jpg) + +### 使用内置函数 ### + +除了简单的算术操作符,GNU bc还通过外部的数学函数库来提供许多高级的数学函数。你可以在命令行界面使用“-l”选项来打开bc。 + +这里描述了一些内置的函数。 + +N的二次方根: + + sqrt(N) + +X的正弦(X是弧度): + + s(X) + +X的余弦(X是弧度): + + c(X) + +X的反正弦(返回值是弧度): + + a(X) + +X的自然对数: + + l(X) + +X的指数对数: + + e(X) + +### Other goodies as a language ### + +作为一个计算语言,GNU bc支持简单的声明(变量赋值、中断、返回等)、复合语句(if、while、for loop等)和自定义函数。在这里我不会涉及到这些特性的细节,不过你可以通过[官方指南][2]来学习如何使用这些特性。下面是一个简单的函数示例: + + define dummy(x){ + return(x * x); + } + dummy(9) + 81 + dummy(4) + 16 + +### 在非交互界面下使用GNU bc ### + +到目前为止,我们一直在交互界面下使用bc。不过更加流行的使用bc的方法是在没有交互界面的脚本中运行bc。这种情况下,你可以使用echo命令并且借助管道来向bc发送输入内容。例如: + + $ echo "40*5" | bc + $ echo "scale=4; 10/3" | bc + $ echo "obase=16; ibase=2; 11101101101100010" | bc + +![](https://farm4.staticflickr.com/3943/15565252976_f50f453c7f_z.jpg) + +总结以下,GNU bc是一款强大并且通用的基于命令行的计算器应用,因此它绝对不会让你失望。它预装在所有的现代Linux发行版中,bc可以让你不用离开命令行就可以进行高效的数学计算。所以,GNU bc一定会是你的最爱。 + +-------------------------------------------------------------------------------- + +via: http://xmodulo.com/command-line-calculator-linux.html + +作者:[Dan Nanni][a] +译者:[JonathanKang](https://github.com/JonathanKang) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[a]:http://xmodulo.com/author/nanni +[1]:http://www.gnu.org/software/bc/ +[2]:https://www.gnu.org/software/bc/manual/bc.html From eb28b512ed319b47959434013954aff774942b98 Mon Sep 17 00:00:00 2001 From: Frank Zhang Date: Mon, 27 Oct 2014 09:11:29 +0800 Subject: [PATCH 049/108] [translating] 20140729 Don't Fear The Command Line.md --- sources/talk/20140729 Don't Fear The Command Line.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sources/talk/20140729 Don't Fear The Command Line.md b/sources/talk/20140729 Don't Fear The Command Line.md index 660fecbe74..e84704f6e4 100644 --- a/sources/talk/20140729 Don't Fear The Command Line.md +++ b/sources/talk/20140729 Don't Fear The Command Line.md @@ -1,3 +1,4 @@ +zpl1025 Don't Fear The Command Line ================================================================================ ![](http://a4.files.readwrite.com/image/upload/c_fill,h_900,q_70,w_1600/MTE5NTU2MzIyNTM0NTg5OTYz.jpg) @@ -134,4 +135,4 @@ via: http://readwrite.com/2014/07/18/command-line-tutorial-intro [9]:http://lifehacker.com/5633909/who-needs-a-mouse-learn-to-use-the-command-line-for-almost-anything [10]:http://blog.teamtreehouse.com/introduction-to-the-mac-os-x-command-line [11]:http://readwrite.com/2013/09/30/understanding-github-a-journey-for-beginners-part-1 -[12]:http://en.wikipedia.org/wiki/Computer_terminal#mediaviewer/File:DEC_VT100_terminal.jpg \ No newline at end of file +[12]:http://en.wikipedia.org/wiki/Computer_terminal#mediaviewer/File:DEC_VT100_terminal.jpg From acfd111b4db923ebc8e388ee886b53a8c1ad7d42 Mon Sep 17 00:00:00 2001 From: wxy Date: Mon, 27 Oct 2014 14:41:22 +0800 Subject: [PATCH 050/108] PUB:20141013 UbuTricks 14.10.08 @runningwater --- .../share => published}/20141013 UbuTricks 14.10.08.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) rename {translated/share => published}/20141013 UbuTricks 14.10.08.md (95%) diff --git a/translated/share/20141013 UbuTricks 14.10.08.md b/published/20141013 UbuTricks 14.10.08.md similarity index 95% rename from translated/share/20141013 UbuTricks 14.10.08.md rename to published/20141013 UbuTricks 14.10.08.md index 6da65a3f3c..322eacf5fa 100644 --- a/translated/share/20141013 UbuTricks 14.10.08.md +++ b/published/20141013 UbuTricks 14.10.08.md @@ -1,6 +1,6 @@ UbuTricks 14.10.08 ================================================================================ -> 是一款 Ubuntu 系统上的实用工具软件,使用它可以让您安装上最新版本的流行应用程序和游戏。 +> 这是一款 Ubuntu 系统上的实用工具软件,使用它可以让您安装上最新版本的流行应用程序和游戏。 UbuTricks 是一款免费发布的用 Bash 语言编写的脚本型应用程序。它被设计为从最初版本一直向上搜索的方式来帮助您在 Ubuntu Linux 操作系统以及其它 Ubuntu 衍生版本系统上安装最受好评的游戏和图形应用程序的最高版本软件。 @@ -45,7 +45,7 @@ via: http://linux.softpedia.com/get/Desktop-Environment/Tools/UbuTricks-103626.s 作者:[Marius Nestor][a] 译者:[runningwater](https://github.com/runningwater) -校对:[校对者ID](https://github.com/校对者ID) +校对:[wxy](https://github.com/wxy) 本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 From a3cca0ad54f60ed3bc01fe49e55d0f7b6ab26ba3 Mon Sep 17 00:00:00 2001 From: wxy Date: Mon, 27 Oct 2014 15:03:14 +0800 Subject: [PATCH 051/108] PUB:20141023 Claws Mail 3.11.0 Brings a Ton of Changes and Fixes for POODLE Exploit @barney-ro --- ...of Changes and Fixes for POODLE Exploit.md | 43 +++++++++++++++++++ ...of Changes and Fixes for POODLE Exploit.md | 43 ------------------- 2 files changed, 43 insertions(+), 43 deletions(-) create mode 100644 published/20141023 Claws Mail 3.11.0 Brings a Ton of Changes and Fixes for POODLE Exploit.md delete mode 100644 translated/share/20141023 Claws Mail 3.11.0 Brings a Ton of Changes and Fixes for POODLE Exploit.md diff --git a/published/20141023 Claws Mail 3.11.0 Brings a Ton of Changes and Fixes for POODLE Exploit.md b/published/20141023 Claws Mail 3.11.0 Brings a Ton of Changes and Fixes for POODLE Exploit.md new file mode 100644 index 0000000000..44c550cb42 --- /dev/null +++ b/published/20141023 Claws Mail 3.11.0 Brings a Ton of Changes and Fixes for POODLE Exploit.md @@ -0,0 +1,43 @@ +Claws Mail 3.11.0 修复了POODLE 漏洞 +================================================================================ +> 随着每一个新版本的推出,Claws Mail 将会越来越好。 + +![](http://i1-news.softpedia-static.com/images/news2/Claws-Mail-3-11-0-Brings-a-Ton-of-Changes-and-Fix-for-POODLE-Exploit-462808-2.jpg) + +**Claws Mail 发起于Linux 社区,是一款快速、简单易用,并且充满了很多有趣的特性的开源邮件客户端。开发者们推送了一次大的更新和升级,建议使用者进行升级。** + +有些人可能不知道这个邮件客户端,但Claws Mail 实际上是一个非常老的软件。它以前名称是Sylpheed-Claws ,已经走过了13个年头。Claws Mail 不久以前从其分支(forked)了出来,新分支的目的是成为Sylpheed-Claws更好的替代产品。 + +现在还有很多针对Linux 的邮件客户端正在进行着霸权地位的争夺战,尽管并没有打的硝烟四起。很多的Linux发行版都默认集成了Claws Mail,对于Claws Mail 的粉丝而言,这将是一个好消息。 + +### Claws Mail 3.11.0 给我们带来了哪些新的特性呢 ### + +就像其他的采用网络连接和网络协议的应用程序一样,Claws Mail 被发现也受到了安全漏洞的影响,比如说POODLE 漏洞。开发者的反应很迅速,可以从其更新日志中看出。 + +“新版本的RSSyl 插件已经完全被重新设计和重写。从先前版本的迁移是自动完成的,采用新的存储格式,存储在~/.claws-mail/RSSyl/ (用分级目录代替了普通文件的格式)。并且用expat 库代替了libxml2 库来解析提要数据。” + +“应广大朋友的要求,在邮件的编辑窗口里,在邮件内容中使用向上光标键时,会停留在邮件的内容的最上一行,而不再会跳到信头字段了。这是在3.10.0版本中引入的。详见开发者的[公告][1]。” + +当然,大家也可以放心了,因为在新的邮件客户端中已经解决了POODLE 漏洞,这是通过禁用了所有的SSLv3 连接实现的。 + +使用制表符进行地址补完的功能也进行了一些改进,并变得更好,特别是对于撰写新邮件,通过光标箭头帮助导航的功能已经做了调整,有很多较小的改进。 + +开发者为大多数发行版创建了很多仓库,但是你也依然可以使用源代码来安装。想要进一步的了解,你可以关注官方关于每个版本的公告。 + +去下载Claws Mail 3.11.0 的源码包吧,如果你想要自己编译软件的话。 + +- [Claws Mail 3.11.0 tar.xz File size: 5.6 MB][2] + +-------------------------------------------------------------------------------- + +via: http://news.softpedia.com/news/Claws-Mail-3-11-0-Brings-a-Ton-of-Changes-and-Fix-for-POODLE-Exploit-462808.shtml + +作者:[Silviu Stahie][a] +译者:[barney-ro](https://github.com/barney-ro) +校对:[wxy](https://github.com/wxy) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[a]:http://news.softpedia.com/editors/browse/silviu-stahie +[1]:http://www.claws-mail.org/news.php +[2]:http://sourceforge.net/projects/claws-mail/files/Claws%20Mail/3.11.0/claws-mail-3.11.0.tar.xz \ No newline at end of file diff --git a/translated/share/20141023 Claws Mail 3.11.0 Brings a Ton of Changes and Fixes for POODLE Exploit.md b/translated/share/20141023 Claws Mail 3.11.0 Brings a Ton of Changes and Fixes for POODLE Exploit.md deleted file mode 100644 index 49da5b82bd..0000000000 --- a/translated/share/20141023 Claws Mail 3.11.0 Brings a Ton of Changes and Fixes for POODLE Exploit.md +++ /dev/null @@ -1,43 +0,0 @@ -针对POODLE 漏洞,Claws Mail 3.11.0 给我们带来了很多的变化和更新。 -================================================================================ -> 随着每一个新版本的推出,Claws Mail 将会越来越好。 - -![](http://i1-news.softpedia-static.com/images/news2/Claws-Mail-3-11-0-Brings-a-Ton-of-Changes-and-Fix-for-POODLE-Exploit-462808-2.jpg) - -**Claws Mail 发起于Linux 社区,是一款快速、简单易用,并且充满了很多有趣的特性的开源邮件客户端。开发者们推送了一次大的更新和升级,这是一个非常好的主意。** - -有些人可能不知道这个邮件客户端,但Claws Mail 实际上是一个非常老的软件。它以前名称是Sylpheed-Claws ,已经走过了13个年头。Claws Mail 不久以前分支(forked)了出来,从此,新分支变成了很好的可能替代Sylpheed-Claws 产品。 - -现在还有很多针对Linux 的邮件客户端正在进行着霸权地位的争夺战,尽管这是在很礼貌的方式下完成的。很多的Linux发行版都默认集成了Claws Mail,对于Claws Mail 的粉丝,这将是一个好消息。 - -### Claws Mail 3.11.0 给我们带来了哪些新的特性呢 ### - -就像其他的应用程序一样,在处理网络连接和网络协议时,Claws Mail 也一直受到漏洞识别社区的关注,比如说POODLE 漏洞。开发者很紧张的时间表和大量的更新日志就很好的反应了这个。 - -“新版本的RSSyl 插件已经完全被重新设计和重写。从先前版本的迁移是自动完成的,它拥有一个新的存储格式在~/.claws-mail/RSSyl/ (用分级目录代替了平面文件的格式)。并且用expat 库代替了libxml2 库来解析提要数据。” - -“应广大朋友的要求,当消息的编辑窗口停留着消息体的上部,在消息体中使用上键(UP key)时,不再会回到头文字段了。这是在3.10.0版本中引入的。详见开发者的[宣告][1]” - -当然,大家也可以放心了,因为POODLE 漏洞,在新的邮件客户端中已经被关闭,是通过禁用了所有的SSLv3 连接实现的。 - -标签地址也收到了一些改进,并变得更好,特别是对于新邮件,导航箭头的帮助已经做了调整,有很多较小的改进。 - -开发者为大多数发行版创建了很多仓库,但是你也依然可以使用源来安装。想要进一步的了解,你可以关注官方关于每个版本的公告。 - -去下载Claws Mail 3.11.0 的源码包吧,如果你想要自己编译软件。 - -- [Claws Mail 3.11.0 tar.xz File size: 5.6 MB][2] - --------------------------------------------------------------------------------- - -via: http://news.softpedia.com/news/Claws-Mail-3-11-0-Brings-a-Ton-of-Changes-and-Fix-for-POODLE-Exploit-462808.shtml - -作者:[Silviu Stahie][a] -译者:[barney-ro](https://github.com/barney-ro) -校对:[校对者ID](https://github.com/校对者ID) - -本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 - -[a]:http://news.softpedia.com/editors/browse/silviu-stahie -[1]:http://www.claws-mail.org/news.php -[2]:http://sourceforge.net/projects/claws-mail/files/Claws%20Mail/3.11.0/claws-mail-3.11.0.tar.xz \ No newline at end of file From 358f2f3be6703362276371e230017fb2c6fec2c2 Mon Sep 17 00:00:00 2001 From: wxy Date: Mon, 27 Oct 2014 15:17:57 +0800 Subject: [PATCH 052/108] PUB:How to configure SNMPv3 on ubuntu 14.04 server @SPccman --- ... configure SNMPv3 on ubuntu 14.04 server.md | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) rename {translated/tech => published}/How to configure SNMPv3 on ubuntu 14.04 server.md (73%) diff --git a/translated/tech/How to configure SNMPv3 on ubuntu 14.04 server.md b/published/How to configure SNMPv3 on ubuntu 14.04 server.md similarity index 73% rename from translated/tech/How to configure SNMPv3 on ubuntu 14.04 server.md rename to published/How to configure SNMPv3 on ubuntu 14.04 server.md index 946e866977..4c09ea3636 100644 --- a/translated/tech/How to configure SNMPv3 on ubuntu 14.04 server.md +++ b/published/How to configure SNMPv3 on ubuntu 14.04 server.md @@ -1,8 +1,8 @@ 在ubuntu14.04上配置SNMPv3 ============================================ -简单网络管理协议(SNMP)是用于IP网络设备管理的标准协议。典型的支持SNMP协议的设备有路由器、交换机、服务器、工作站、打印机及数据机柜等等。SNMP一般被网络管理系统用于监视网络附加设备,以确保行政监管。SNMP是因特网协议套件中的一个组成部分,它由IETF机构定义。它包含一系列的网络管理标准,其中有一个应用层协议,一个数据库架构以及一组数据对象。 +简单网络管理协议(SNMP)是用于IP网络设备管理的标准协议。典型的支持SNMP协议的设备有路由器、交换机、服务器、工作站、打印机及数据机柜等等。SNMP一般被网络管理系统用于按照管理员设定的条件来监视网络附加设备。SNMP是因特网协议套件中的一个组成部分,它由IETF机构定义。它包含一系列的网络管理标准,其中有一个应用层协议,一个数据库架构以及一组数据对象。 -SNMP将管理数据以变量的形式暴露出来,这些变量描述了系统配置。同时这些变量可以被管理应用查询(或者被设置)。 +SNMP将管理数据以变量的形式展示出来,这些变量描述了系统配置。同时这些变量可以被用于管理的应用查询(或者被设置)。 ### 为什么需要使用SNMPv3 ### @@ -14,11 +14,11 @@ SNMPv3在SNMP的基础之上增强了安全性以及远程配置功能。 SNMPv3提供了重要的安全特性: -保密性 —— 加密数据包以防止未经授权的源监听。 +- 保密性 —— 加密数据包以防止未经授权的源监听。 -完整性 —— 数据的完整性特性确保数据在传输的时候没有被干扰,并且包含了课选的数据响应保护机制。 +- 完整性 —— 数据的完整性特性确保数据在传输的时候没有被干扰,并且包含了可选的数据响应保护机制。 -身份验证 —— 检查数据是否来自一个合法的源 +- 身份验证 —— 检查数据是否来自一个合法的源。 ### 在ubuntu中安装SNMP服务器及客户端 ### @@ -30,7 +30,7 @@ SNMPv3提供了重要的安全特性: ###配置SNMPv3### -获得从外部守护进程的权限 +获得从外部守护进程访问的权限 默认的安装仅提供本地的访问权限,如果想要获得外部访问权限,打开文件 /etc/default/snmpd。 @@ -54,11 +54,11 @@ SNMPv3提供了重要的安全特性: “securityLevel”参数使得SNMPv3有多种不同的用途。 -noAuthNoPriv —— 没有授权,加密以及任何安全保护! +- noAuthNoPriv —— 没有授权,加密以及任何安全保护! -authNoPriv —— 需要身份认证,但是不对通过网络发送的数据进行加密。 +- authNoPriv —— 需要身份认证,但是不对通过网络发送的数据进行加密。 -autoPriv —— 最健模式。需要身份认证而且数据会被加密。 +- autoPriv —— 最可靠模式。需要身份认证而且数据会被加密。 snmpd 的配置以及设置都保存在文件 /etc/snmp/snmpd.conf。使用编辑器编辑文件: From 54e758983f87c6ad4323b09779ed6c49ac24486e Mon Sep 17 00:00:00 2001 From: DeadFire Date: Mon, 27 Oct 2014 15:49:11 +0800 Subject: [PATCH 053/108] =?UTF-8?q?20141027-1=20=E9=80=89=E9=A2=98=20felix?= =?UTF-8?q?onmars=20=E6=8E=A8=E8=8D=90=E9=80=89=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- sources/tech/20141027 ntpq -p output.md | 301 ++++++++++++++++++++++++ 1 file changed, 301 insertions(+) create mode 100644 sources/tech/20141027 ntpq -p output.md diff --git a/sources/tech/20141027 ntpq -p output.md b/sources/tech/20141027 ntpq -p output.md new file mode 100644 index 0000000000..c834e43585 --- /dev/null +++ b/sources/tech/20141027 ntpq -p output.md @@ -0,0 +1,301 @@ +“ntpq -p” output +================================================================================ +The [Gentoo][1] (and others?) [incomplete man pages for “ntpq -p”][2] merely give the description: “*Print a list of the peers known to the server as well as a summary of their state.*” + +I had not seen this documented, hence here is a summary that can be used in addition to the brief version of the man page “[man ntpq][3]“. More complete details are given on: “[ntpq – standard NTP query program][4]” (source author), and [other examples of the man ntpq pages][5]. + +[NTP][6] is a protocol designed to synchronize the clocks of computers over a ([WAN][7] or [LAN][8]) [udp][9] network. From [Wikipedia – NTP][10]: + +> The Network Time Protocol (NTP) is a protocol and software implementation for synchronizing the clocks of computer systems over packet-switched, variable-latency data networks. Originally designed by David L. Mills of the University of Delaware and still maintained by him and a team of volunteers, it was first used before 1985 and is one of the oldest Internet protocols. + +For an awful lot more than you might ever want to know about time and NTP, see “[The NTP FAQ, Time, what Time?][11]” and the current [RFCs for NTP][12]. The earlier “Network Time Protocol (Version 3) RFC” ([txt][13], or [pdf][14], Appendix E, The NTP Timescale and its Chronometry, p70) includes an interesting explanation of the changes in, and relations between, our timekeeping systems over the past 5000 years or so. Wikipedia gives a broader view in the articles [Time][15] and [Calendar][16]. + +The command “ntpq -p” outputs a table such as for example: + + remote refid st t when poll reach delay offset jitter + ============================================================================== + LOCAL(0) .LOCL. 10 l 96h 64 0 0.000 0.000 0.000 + *ns2.example.com 10.193.2.20 2 u 936 1024 377 31.234 3.353 3.096 + +### Further detail: ### + +#### Table headings: #### + + +- **remote** – The remote peer or server being synced to. “LOCAL” is this local host (included in case there are no remote peers or servers available); +- **refid** – Where or what the remote peer or server is itself synchronised to; +- **st** – The remote peer or server [Stratum][17] +- **t** – Type (u: [unicast][18] or [manycast][19] client, b: [broadcast][20] or [multicast][21] client, l: local reference clock, s: symmetric peer, A: manycast server, B: broadcast server, M: multicast server, see “[Automatic Server Discovery][22]“); +- **when** – When last polled (seconds ago, “h” hours ago, or “d” days ago); +- **poll** – Polling frequency: [rfc5905][23] suggests this ranges in NTPv4 from 4 (16s) to 17 (36h) (log2 seconds), however observation suggests the actual displayed value is seconds for a much smaller range of 64 (26) to 1024 (210) seconds; +- **reach** – An 8-bit left-shift shift register value recording polls (bit set = successful, bit reset = fail) displayed in [octal][24]; +- **delay** – Round trip communication delay to the remote peer or server (milliseconds); +- **offset** – Mean offset (phase) in the times reported between this local host and the remote peer or server ([RMS][25], milliseconds); +- **jitter** – Mean deviation (jitter) in the time reported for that remote peer or server (RMS of difference of multiple time samples, milliseconds); + +#### Select Field tally code: #### + +The first character displayed in the table (Select Field tally code) is a state flag (see [Peer Status Word][26]) that follows the sequence ” “, “x”, “-“, “#”, “+”, “*”, “o”: + + +- ”** **” – No state indicated for: + - non-communicating remote machines, + - “LOCAL” for this local host, + - (unutilised) high stratum servers, + - remote machines that are themselves using this host as their synchronisation reference; +- “**x**” – Out of tolerance, do not use (discarded by intersection algorithm); +- “**-**” – Out of tolerance, do not use (discarded by the cluster algorithm); +- “**#**” – Good remote peer or server but not utilised (not among the first six peers sorted by synchronization distance, ready as a backup source); +- “**+**” – Good and a preferred remote peer or server (included by the combine algorithm); +- “*****” – The remote peer or server presently used as the primary reference; +- “**o**” – PPS peer (when the prefer peer is valid). The actual system synchronization is derived from a pulse-per-second (PPS) signal, either indirectly via the PPS reference clock driver or directly via kernel interface. + +See the [Clock Select Algorithm][27]. + +#### “refid”: #### + +The **refid** can have the status values: + + +- An IP address – The [IP address][28] of a remote peer or server; +- **.LOCL.** – This local host (a place marker at the lowest stratum included in case there are no remote peers or servers available); +- **.PPS.** – “[Pulse Per Second][29]” from a time standard; +- **.IRIG.** – [Inter-Range Instrumentation Group][30] time code; +- **.ACTS.** – American [NIST time standard][31] telephone modem; +- **.NIST.** – American NIST time standard telephone modem; +- **.PTB.** – German [PTB][32] time standard telephone modem; +- **.USNO.** – American [USNO time standard][33] telephone modem; +- **.CHU.** – [CHU][34] ([HF][35], Ottawa, ON, Canada) time standard radio receiver; +- **.DCFa.** – [DCF77][36] ([LF][37], Mainflingen, Germany) time standard radio receiver; +- **.HBG.** – [HBG][38] (LF Prangins, Switzerland) time standard radio receiver; +- **.JJY.** – [JJY][39] (LF Fukushima, Japan) time standard radio receiver; +- **.LORC.** – [LORAN][40]-C station ([MF][41]) time standard radio receiver. Note, [no longer operational][42] (superseded by [eLORAN][43]); +- **.MSF.** – [MSF][44] (LF, Anthorn, Great Britain) time standard radio receiver; +- **.TDF.** – [TDF][45] (MF, Allouis, France) time standard radio receiver; +- **.WWV.** – [WWV][46] (HF, Ft. Collins, CO, America) time standard radio receiver; +- **.WWVB.** – [WWVB][47] (LF, Ft. Collins, CO, America) time standard radio receiver; +- **.WWVH.** – [WWVH][48] (HF, Kauai, HI, America) time standard radio receiver; +- **.GOES.** – American [Geosynchronous Orbit Environment Satellite][49]; +- **.GPS.** – American [GPS][50]; +- **.GAL.** – [Galileo][51] European [GNSS][52]; +- **.ACST.** – manycast server; +- **.AUTH.** – authentication error; +- **.AUTO.** – Autokey sequence error; +- **.BCST.** – broadcast server; +- **.CRYPT.** – Autokey protocol error; +- **.DENY.** – access denied by server; +- **.INIT.** – association initialized; +- **.MCST.** – multicast server; +- **.RATE.** – (polling) rate exceeded; +- **.TIME.** – association timeout; +- **.STEP.** – step time change, the offset is less than the panic threshold (1000ms) but greater than the step threshold (125ms). + +#### Operation notes #### + +A time server will report time information with no time updates from clients (unidirectional updates), whereas a peer can update fellow participating peers to converge upon a mutually agreed time (bidirectional updates). + +During [initial startup][53]: + +> Unless using the iburst option, the client normally takes a few minutes to synchronize to a server. If the client time at startup happens to be more than 1000s distant from NTP time, the daemon exits with a message to the system log directing the operator to manually set the time within 1000s and restart. If the time is less than 1000s but more than 128s distant, a step correction occurs and the daemon restarts automatically. + +> When started for the first time and a frequency file is not present, the daemon enters a special mode in order to calibrate the frequency. This takes 900s during which the time is not [disciplined][54]. When calibration is complete, the daemon creates the frequency file and enters normal mode to amortize whatever residual offset remains. + +Stratum 0 devices are such as atomic (caesium, rubidium) clocks, GPS clocks, or other time standard radio clocks providing a time signal to the Stratum 1 time servers. NTP reports [UTC][55] (Coordinated Universal Time) only. Client programs/utilities then use [time zone][56] data to report local time from the synchronised UTC. + +The protocol is highly accurate, using a resolution of less than a nanosecond (about 2-32 seconds). The time resolution achieved and other parameters for a host (host hardware and operating system limited) is reported by the command “ntpq -c rl” (see [rfc1305][57] Common Variables and [rfc5905][58]). + +#### “ntpq -c rl” output parameters: #### + +- **precision** is rounded to give the next larger integer power of two. The achieved resolution is thus 2precision (seconds) +- **rootdelay** – total roundtrip delay to the primary reference source at the root of the synchronization subnet. Note that this variable can take on both positive and negative values, depending on clock precision and skew (seconds) +- **rootdisp** – maximum error relative to the primary reference source at the root of the synchronization subnet (seconds) +- **tc** – NTP algorithm [PLL][59] (phase locked loop) or [FLL][60] (frequency locked loop) time constant (log2) +- **mintc** – NTP algorithm PLL/FLL minimum time constant or ‘fastest response’ (log2) +- **offset** – best and final offset determined by the combine algorithm used to discipline the system clock (ms) +- **frequency** – system clock period (log2 seconds) +- **sys_jitter** – best and final jitter determined by the combine algorithm used to discipline the system clock (ms) +- **clk_jitter** – host hardware(?) system clock jitter (ms) +- **clk_wander** – host hardware(?) system clock wander ([PPM][61] – parts per million) + +Jitter (also called timing jitter) refers to short-term variations in frequency with components greater than 10Hz, while wander refers to long-term variations in frequency with components less than 10Hz. (Stability refers to the systematic variation of frequency with time and is synonymous with aging, drift, trends, etc.) + +#### Operation notes (continued) #### + +The NTP software maintains a continuously updated drift correction. For a correctly configured and stable system, a reasonable expectation for modern hardware synchronising over an uncongested internet connection is for network client devices to be synchronised to within a few milliseconds of UTC at the time of synchronising to the NTP service. (What accuracy can be expected between peers on an uncongested Gigabit LAN?) + +Note that for UTC, a [leap second][62] can be inserted into the reported time up to twice a year to allow for variations in the Earth’s rotation. Also beware of the one hour time shifts for when local times are reported for “[daylight savings][63]” times. Also, the clock for a client device will run independently of UTC until resynchronised oncemore, unless that device is calibrated or a drift correction is applied. + +#### [What happens during a Leap Second?][64] #### + +> During a leap second, either one second is removed from the current day, or a second is added. In both cases this happens at the end of the UTC day. If a leap second is inserted, the time in UTC is specified as 23:59:60. In other words, it takes two seconds from 23:59:59 to 0:00:00 instead of one. If a leap second is deleted, time will jump from 23:59:58 to 0:00:00 in one second instead of two. See also [The Kernel Discipline][65]. + +So… What actually is the value for the step threshold: 125ms or 128ms? And what are the PLL/FLL tc units (log2 s? ms?)? And what accuracy can be expected between peers on an uncongested Gigabit LAN? + + + +Thanks for comments from Camilo M and Chris B. Corrections and further details welcomed. + +Cheers, +Martin + +### Apocrypha: ### + +- The [epoch for NTP][66] starts in year 1900 while the epoch in UNIX starts in 1970. +- [Time corrections][67] are applied gradually, so it may take up to three hours until the frequency error is compensated. +- [Peerstats and loopstats][68] can be logged to [summarise/plot time offsets and errors][69] +- [RMS][70] – Root Mean Square +- [PLL][71] – Phase locked loop +- [FLL][72] – Frequency locked loop +- [PPM][73] – Parts per million, used here to describe rate of time drift +- [man ntpq (Gentoo brief version)][74] +- [man ntpq (long version)][75] +- [man ntpq (Gentoo long version)][76] + +### See: ### + +- [ntpq – standard NTP query program][77] +- [The Network Time Protocol (NTP) Distribution][78] +- A very brief [history][79] of NTP +- A more detailed brief history: “Mills, D.L., A brief history of NTP time: confessions of an Internet timekeeper. Submitted for publication; please do not cite or redistribute” ([pdf][80]) +- [NTP RFC][81] standards documents +- Network Time Protocol (Version 3) RFC – [txt][82], or [pdf][83]. Appendix E, The NTP Timescale and its Chronometry, p70, includes an interesting explanation of the changes in, and relations between, our timekeeping systems over the past 5000 years or so +- Wikipedia: [Time][84] and [Calendar][85] +- [John Harrison and the Longitude problem][86] +- [Clock of the Long Now][87] – The 10,000 Year Clock +- John C Taylor – [Chronophage][88] +- [Orders of magnitude of time][89] +- The [Greenwich Time Signal][90] + +### Others: ### + +SNTP (Simple Network Time Protocol, [RFC 4330][91]) is basically also NTP, but lacks some internal algorithms for servers where the ultimate performance of a full NTP implementation based on [RFC 1305][92] is neither needed nor justified. + +The W32Time [Windows Time Service][93] is a non-standard implementation of SNTP, with no accuracy guarantees, and an assumed accuracy of no better than about a 1 to 2 second range. (Is that due to there being no system clock drift correction and a time update applied only once every 24 hours assumed for a [PC][94] with typical clock drift?) + +There is also the [PTP (IEEE 1588)][95] Precision Time Protocol. See Wikipedia: [Precision Time Protocol][96]. A software demon is [PTPd][97]. The significant features are that it is intended as a [LAN][98] high precision master-slave synchronisation system synchronising at the microsecond scale to a master clock for [International Atomic Time][99] (TAI, [monotonic][100], no leap seconds). Data packet timestamping can be appended by hardware at the physical layer by a network interface card or switch for example. Network kit supporting PTP can timestamp data packets in and out in a way that removes the delay effect of processing within the switch/router. You can run PTP without hardware timestamping but it might not synchronise if the time errors introduced are too great. Also it will struggle to work through a router (large delays) for the same reason. + +### Older time synchronization protocols: ### + +- DTSS – Digital Time Synchronisation Service by Digital Equipment Corporation, superseded by NTP. See an example of [DTSS VMS C code c2000][101]. (Any DTSS articles/documentation anywhere?) +- [DAYTIME protocol][102], synchronization protocol using [TCP][103] or [UDP][104] port 13 +- [ICMP Timestamp][105] and [ICMP Timestamp Reply][106], synchronization protocol using [ICMP][107] +- [Time Protocol][108], synchronization protocol using TCP or UDP port 37 + +-------------------------------------------------------------------------------- + +via: http://nlug.ml1.co.uk/2012/01/ntpq-p-output/831 + +作者:Martin L +译者:[译者ID](https://github.com/译者ID) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[1]:http://www.gentoo.org/ +[2]:http://nlug.ml1.co.uk/2012/01/man-ntpq-gentoo-brief-version/853 +[3]:http://www.thelinuxblog.com/linux-man-pages/1/ntpq +[4]:http://www.eecis.udel.edu/~mills/ntp/html/ntpq.html +[5]:http://linux.die.net/man/8/ntpq +[6]:http://www.ntp.org/ +[7]:http://en.wikipedia.org/wiki/Wide_area_network +[8]:http://en.wikipedia.org/wiki/Local_area_network +[9]:http://en.wikipedia.org/wiki/User_Datagram_Protocol +[10]:http://en.wikipedia.org/wiki/Network_Time_Protocol +[11]:http://www.ntp.org/ntpfaq/NTP-s-time.htm +[12]:http://www.ntp.org/rfc.html +[13]:http://www.ietf.org/rfc/rfc1305.txt +[14]:http://www.rfc-editor.org/rfc/rfc1305.pdf +[15]:http://en.wikipedia.org/wiki/Time +[16]:http://en.wikipedia.org/wiki/Calendar +[17]:http://en.wikipedia.org/wiki/Network_Time_Protocol#Clock_strata +[18]:http://en.wikipedia.org/wiki/Unicast +[19]:http://www.eecis.udel.edu/~mills/ntp/html/manyopt.html#mcst +[20]:http://en.wikipedia.org/wiki/Broadcasting_%28computing%29 +[21]:http://en.wikipedia.org/wiki/Multicast +[22]:http://www.eecis.udel.edu/~mills/ntp/html/manyopt.html +[23]:http://www.ietf.org/rfc/rfc5905.txt +[24]:http://en.wikipedia.org/wiki/Octal#In_computers +[25]:http://en.wikipedia.org/wiki/Root_mean_square +[26]:http://www.eecis.udel.edu/~mills/ntp/html/decode.html#peer +[27]:http://www.eecis.udel.edu/~mills/ntp/html/select.html +[28]:http://en.wikipedia.org/wiki/Ip_address +[29]:http://en.wikipedia.org/wiki/Pulse_per_second +[30]:http://en.wikipedia.org/wiki/Inter-Range_Instrumentation_Group +[31]:http://en.wikipedia.org/wiki/Standard_time_and_frequency_signal_service +[32]:http://www.ptb.de/index_en.html +[33]:http://en.wikipedia.org/wiki/United_States_Naval_Observatory#Time_service +[34]:http://en.wikipedia.org/wiki/CHU_%28radio_station%29 +[35]:http://en.wikipedia.org/wiki/High_frequency +[36]:http://en.wikipedia.org/wiki/DCF77 +[37]:http://en.wikipedia.org/wiki/Low_frequency +[38]:http://en.wikipedia.org/wiki/HBG_%28time_signal%29 +[39]:http://en.wikipedia.org/wiki/JJY#Time_standards +[40]:http://en.wikipedia.org/wiki/LORAN#Timing_and_synchronization +[41]:http://en.wikipedia.org/wiki/Medium_frequency +[42]:http://en.wikipedia.org/wiki/LORAN#The_future_of_LORAN +[43]:http://en.wikipedia.org/wiki/LORAN#eLORAN +[44]:http://en.wikipedia.org/wiki/Time_from_NPL#The_.27MSF_signal.27_and_the_.27Rugby_clock.27 +[45]:http://en.wikipedia.org/wiki/T%C3%A9l%C3%A9_Distribution_Fran%C3%A7aise +[46]:http://en.wikipedia.org/wiki/WWV_%28radio_station%29#Time_signals +[47]:http://en.wikipedia.org/wiki/WWVB +[48]:http://en.wikipedia.org/wiki/WWVH +[49]:http://en.wikipedia.org/wiki/GOES#Further_reading +[50]:http://en.wikipedia.org/wiki/Gps#Timekeeping +[51]:http://en.wikipedia.org/wiki/Galileo_%28satellite_navigation%29#The_concept +[52]:http://en.wikipedia.org/wiki/Gnss +[53]:http://www.eecis.udel.edu/~mills/ntp/html/debug.html +[54]:http://www.ntp.org/ntpfaq/NTP-s-algo-kernel.htm +[55]:http://en.wikipedia.org/wiki/Coordinated_Universal_Time +[56]:http://en.wikipedia.org/wiki/Time_zone +[57]:http://www.ietf.org/rfc/rfc1305.txt +[58]:http://www.ietf.org/rfc/rfc5905.txt +[59]:http://en.wikipedia.org/wiki/PLL +[60]:http://en.wikipedia.org/wiki/Frequency-locked_loop +[61]:http://en.wikipedia.org/wiki/Parts_per_million +[62]:http://en.wikipedia.org/wiki/Leap_second +[63]:http://en.wikipedia.org/wiki/Daylight_saving_time +[64]:http://www.ntp.org/ntpfaq/NTP-s-time.htm#Q-TIME-LEAP-SECOND +[65]:http://www.ntp.org/ntpfaq/NTP-s-algo-kernel.htm +[66]:http://www.ntp.org/ntpfaq/NTP-s-algo.htm#AEN1895 +[67]:http://www.ntp.org/ntpfaq/NTP-s-algo.htm#Q-ACCURATE-CLOCK +[68]:http://www.ntp.org/ntpfaq/NTP-s-trouble.htm#Q-TRB-MON-STATFIL +[69]:http://www.ntp.org/ntpfaq/NTP-s-trouble.htm#AEN5086 +[70]:http://en.wikipedia.org/wiki/Root_mean_square +[71]:http://en.wikipedia.org/wiki/PLL +[72]:http://en.wikipedia.org/wiki/Frequency-locked_loop +[73]:http://en.wikipedia.org/wiki/Parts_per_million +[74]:http://nlug.ml1.co.uk/2012/01/man-ntpq-gentoo-brief-version/853 +[75]:http://nlug.ml1.co.uk/2012/01/man-ntpq-long-version/855 +[76]:http://nlug.ml1.co.uk/2012/01/man-ntpq-gentoo-long-version/856 +[77]:http://www.eecis.udel.edu/~mills/ntp/html/ntpq.html +[78]:http://www.eecis.udel.edu/~mills/ntp/html/index.html +[79]:http://www.ntp.org/ntpfaq/NTP-s-def-hist.htm +[80]:http://www.eecis.udel.edu/~mills/database/papers/history.pdf +[81]:http://www.ntp.org/rfc.html +[82]:http://www.ietf.org/rfc/rfc1305.txt +[83]:http://www.rfc-editor.org/rfc/rfc1305.pdf +[84]:http://en.wikipedia.org/wiki/Time +[85]:http://en.wikipedia.org/wiki/Calendar +[86]:http://www.rmg.co.uk/harrison +[87]:http://longnow.org/clock/ +[88]:http://johnctaylor.com/ +[89]:http://en.wikipedia.org/wiki/Orders_of_magnitude_%28time%29 +[90]:http://en.wikipedia.org/wiki/Greenwich_Time_Signal +[91]:http://tools.ietf.org/html/rfc4330 +[92]:http://tools.ietf.org/html/rfc1305 +[93]:http://en.wikipedia.org/wiki/Network_Time_Protocol#Microsoft_Windows +[94]:http://en.wikipedia.org/wiki/Personal_computer +[95]:http://www.nist.gov/el/isd/ieee/ieee1588.cfm +[96]:http://en.wikipedia.org/wiki/IEEE_1588 +[97]:http://ptpd.sourceforge.net/ +[98]:http://en.wikipedia.org/wiki/Local_area_network +[99]:http://en.wikipedia.org/wiki/International_Atomic_Time +[100]:http://en.wikipedia.org/wiki/Monotonic_function +[101]:http://antinode.info/ftp/dtss_ntp/ +[102]:http://en.wikipedia.org/wiki/DAYTIME +[103]:http://en.wikipedia.org/wiki/Transmission_Control_Protocol +[104]:http://en.wikipedia.org/wiki/User_Datagram_Protocol +[105]:http://en.wikipedia.org/wiki/ICMP_Timestamp +[106]:http://en.wikipedia.org/wiki/ICMP_Timestamp_Reply +[107]:http://en.wikipedia.org/wiki/Internet_Control_Message_Protocol +[108]:http://en.wikipedia.org/wiki/Time_Protocol \ No newline at end of file From c0707b66d5ec46c4eff7ee043b11aa0e210c5122 Mon Sep 17 00:00:00 2001 From: wxy Date: Mon, 27 Oct 2014 16:02:14 +0800 Subject: [PATCH 054/108] PUB:20141009 Linux Terminal--An lsof Primer @GOLinux --- ...20141009 Linux Terminal--An lsof Primer.md | 123 +++++++++--------- 1 file changed, 62 insertions(+), 61 deletions(-) rename {translated/tech => published}/20141009 Linux Terminal--An lsof Primer.md (67%) diff --git a/translated/tech/20141009 Linux Terminal--An lsof Primer.md b/published/20141009 Linux Terminal--An lsof Primer.md similarity index 67% rename from translated/tech/20141009 Linux Terminal--An lsof Primer.md rename to published/20141009 Linux Terminal--An lsof Primer.md index 2485801eb3..76266736b9 100644 --- a/translated/tech/20141009 Linux Terminal--An lsof Primer.md +++ b/published/20141009 Linux Terminal--An lsof Primer.md @@ -1,12 +1,10 @@ -Linux终端:lsof入门 +Linux 命令神器:lsof 入门 ================================================================================ ![](http://cdn.linuxaria.com/wp-content/uploads/2011/06/tux-terminal.jpg) -Daniel Miessler撰写,首次在他[博客][1]上贴出 +**lsof**是系统管理/[安全][2]的尤伯工具。我大多数时候用它来从系统获得与[网络][3]连接相关的信息,但那只是这个强大而又鲜为人知的应用的第一步。将这个工具称之为lsof真实名副其实,因为它是指“**列出打开文件(lists openfiles)**”。而有一点要切记,在Unix中一切(包括网络套接口)都是文件。 -**lsof**是系统管理/[安全][2]尤伯工具。我大多数时候用它来从系统获得与[网络][3]连接相关的信息,但那只是这个强大而又鲜为人知的应用的第一步。将这个工具称之为lsof真实名副其实,因为它是指“**列出打开文件(lists openfiles)**”。而有一点要切记,在Unix中一切(包括网络套接口)都是文件。 - -有趣的是,lsof也是有着最多开关的Linux/Unix命令。它有那么多的开关,它必须同时使用-和+。 +有趣的是,lsof也是有着最多开关的Linux/Unix命令之一。它有那么多的开关,它有许多选项支持使用-和+前缀。 usage: [-?abhlnNoOPRstUvV] [+|-c c] [+|-d s] [+D D] [+|-f[cgG]] [-F [f]] [-g [s]] [-i [i]] [+|-L [l]] [+|-M] [-o [o]] @@ -18,105 +16,105 @@ Daniel Miessler撰写,首次在他[博客][1]上贴出 ### 关键选项 ### -理解一些关于lsof如何工作的关键性东西是很重要的。最重要的是,当你给它传递选项时,默认行为是对结果进行或运算。因此,如果你正是用-i来拉出一个端口列表,同时又用-p来拉出一个进程列表,那么默认情况下你会获得两者的结果。 +理解一些关于lsof如何工作的关键性东西是很重要的。最重要的是,当你给它传递选项时,**默认行为**是对结果进行“或”运算。因此,如果你正是用-i来拉出一个端口列表,同时又用-p来拉出一个进程列表,那么默认情况下你会获得两者的结果。 下面的一些其它东西需要牢记: -- **default** : 没有选项,lsof列出活跃进程的所有打开文件 -- **grouping** : 可以分组选项,如-abc,但要当心哪些选项需要参数 -- **-a** : 结果进行与运算(而不是或) +- **默认** : 没有选项,lsof列出活跃进程的所有打开文件 +- **组合** : 可以将选项组合到一起,如-abc,但要当心哪些选项需要参数 +- **-a** : 结果进行“与”运算(而不是“或”) - **-l** : 在输出显示用户ID而不是用户名 - **-h** : 获得帮助 - **-t** : 仅获取进程ID - **-U** : 获取UNIX套接口地址 -- **-F** : 输出结果为其它命令准备好,可以通过多种方式格式化,如-F pcfn(用于进程id、命令名、文件描述符、文件名,并以空终止) +- **-F** : 格式化输出结果,用于其它命令。可以通过多种方式格式化,如-F pcfn(用于进程id、命令名、文件描述符、文件名,并以空终止) -#### 获取网络信息 #### +### 获取网络信息 ### 正如我所说的,我主要将lsof用于获取关于系统怎么和网络交互的信息。这里提供了关于此信息的一些主题: -### 使用-i显示所有连接 ### +#### 使用-i显示所有连接 #### -有些人喜欢用netstat来获取网络连接,但是我更喜欢使用lsof来进行此项工作。结果以对我来说很直观的方式呈现,而我了解到,我仅仅只需改变我的语法,就可以通过同样的命令来获取更多信息。 +有些人喜欢用netstat来获取网络连接,但是我更喜欢使用lsof来进行此项工作。结果以对我来说很直观的方式呈现,我仅仅只需改变我的语法,就可以通过同样的命令来获取更多信息。 -# lsof -i + # lsof -i COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME dhcpcd 6061 root 4u IPv4 4510 UDP *:bootpc sshd 7703 root 3u IPv6 6499 TCP *:ssh (LISTEN) sshd 7892 root 3u IPv6 6757 TCP 10.10.1.5:ssh->192.168.1.5:49901 (ESTABLISHED) -### 使用-i 6仅获取IPv6流量 ### +#### 使用-i 6仅获取IPv6流量 #### -# lsof -i 6 + # lsof -i 6 -### 仅显示TCP连接(同理可获得UDP连接) ### +#### 仅显示TCP连接(同理可获得UDP连接) #### 你也可以通过在-i后提供对应的协议来仅仅显示TCP或者UDP连接信息。 -# lsof -iTCP + # lsof -iTCP COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME sshd 7703 root 3u IPv6 6499 TCP *:ssh (LISTEN) sshd 7892 root 3u IPv6 6757 TCP 10.10.1.5:ssh->192.168.1.5:49901 (ESTABLISHED) -### 使用-i:port来显示与指定端口相关的网络信息 ### +#### 使用-i:port来显示与指定端口相关的网络信息 #### 或者,你也可以通过端口搜索,这对于要找出什么阻止了另外一个应用绑定到指定端口实在是太棒了。 -# lsof -i :22 + # lsof -i :22 COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME sshd 7703 root 3u IPv6 6499 TCP *:ssh (LISTEN) sshd 7892 root 3u IPv6 6757 TCP 10.10.1.5:ssh->192.168.1.5:49901 (ESTABLISHED) -### 使用@host来显示指定到指定主机的连接 ### +#### 使用@host来显示指定到指定主机的连接 #### 这对于你在检查是否开放连接到网络中或互联网上某个指定主机的连接时十分有用。 -# lsof -i@172.16.12.5 + # lsof -i@172.16.12.5 sshd 7892 root 3u IPv6 6757 TCP 10.10.1.5:ssh->172.16.12.5:49901 (ESTABLISHED) -### 使用@host:port显示基于主机与端口的连接 ### +#### 使用@host:port显示基于主机与端口的连接 #### 你也可以组合主机与端口的显示信息。 -# lsof -i@172.16.12.5:22 + # lsof -i@172.16.12.5:22 - sshd 7892 root 3u IPv6 6757 TCP 10.10.1.5:ssh->192.168.1.5:49901 (ESTABLISHED) + sshd 7892 root 3u IPv6 6757 TCP 10.10.1.5:ssh->172.16.12.5:49901 (ESTABLISHED) -### 找出监听端口 ### +#### 找出监听端口 #### 找出正等候连接的端口。 -# lsof -i -sTCP:LISTEN + # lsof -i -sTCP:LISTEN 你也可以grep “LISTEN”来完成该任务。 -# lsof -i | grep -i LISTEN + # lsof -i | grep -i LISTEN iTunes 400 daniel 16u IPv4 0x4575228 0t0 TCP *:daap (LISTEN) -### 找出已建立的连接 ### +#### 找出已建立的连接 #### 你也可以显示任何已经连接的连接。 -# lsof -i -sTCP:ESTABLISHED + # lsof -i -sTCP:ESTABLISHED 你也可以通过grep搜索“ESTABLISHED”来完成该任务。 -# lsof -i | grep -i ESTABLISHED + # lsof -i | grep -i ESTABLISHED firefox-b 169 daniel 49u IPv4 0t0 TCP 1.2.3.3:1863->1.2.3.4:http (ESTABLISHED) -#### 用户信息 #### +### 用户信息 ### 你也可以获取各种用户的信息,以及它们在系统上正干着的事情,包括它们的网络活动、对文件的操作等。 -### 使用-u显示指定用户打开了什么 ### +#### 使用-u显示指定用户打开了什么 #### -# lsof -u daniel + # lsof -u daniel -- snipped -- Dock 155 daniel txt REG 14,2 2798436 823208 /usr/lib/libicucore.A.dylib @@ -126,9 +124,9 @@ Daniel Miessler撰写,首次在他[博客][1]上贴出 Dock 155 daniel txt REG 14,2 212160 823214 /usr/lib/libauto.dylib -- snipped -- -### 使用-u ^user来显示除指定用户以外的其它所有用户所做的事情 ### +#### 使用-u ^user来显示除指定用户以外的其它所有用户所做的事情 #### -# lsof -u ^daniel + # lsof -u ^daniel -- snipped -- Dock 155 jim txt REG 14,2 2798436 823208 /usr/lib/libicucore.A.dylib @@ -138,19 +136,19 @@ Daniel Miessler撰写,首次在他[博客][1]上贴出 Dock 155 jim txt REG 14,2 212160 823214 /usr/lib/libauto.dylib -- snipped -- -### 杀死指定用户所做的一切事情 ### +#### 杀死指定用户所做的一切事情 #### 可以消灭指定用户运行的所有东西,这真不错。 -# kill -9 `lsof -t -u daniel` + # kill -9 `lsof -t -u daniel` -#### 命令和进程 #### +### 命令和进程 ### -可以查看指定程序或进程由什么决定,这通常会很有用,而你可以使用lsof通过名称或进程ID过滤来完成这个任务。下面列出了一些选项: +可以查看指定程序或进程由什么启动,这通常会很有用,而你可以使用lsof通过名称或进程ID过滤来完成这个任务。下面列出了一些选项: -### 使用-c查看指定的命令正在使用的文件和网络连接 ### +#### 使用-c查看指定的命令正在使用的文件和网络连接 #### -# lsof -c syslog-ng + # lsof -c syslog-ng COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME syslog-ng 7547 root cwd DIR 3,3 4096 2 / @@ -158,9 +156,9 @@ Daniel Miessler撰写,首次在他[博客][1]上贴出 syslog-ng 7547 root txt REG 3,3 113524 1064970 /usr/sbin/syslog-ng -- snipped -- -### 使用-p查看指定进程ID已打开的内容 ### +#### 使用-p查看指定进程ID已打开的内容 #### -# lsof -p 10075 + # lsof -p 10075 -- snipped -- sshd 10068 root mem REG 3,3 34808 850407 /lib/libnss_files-2.4.so @@ -176,69 +174,72 @@ Daniel Miessler撰写,首次在他[博客][1]上贴出 sshd 10068 root mem REG 3,3 9992 850416 /lib/libutil-2.4.so -- snipped -- -### -t选项只返回PID ### +#### -t选项只返回PID #### -# lsof -t -c Mail + # lsof -t -c Mail 350 -#### 文件和目录 #### +### 文件和目录 ### 通过查看指定文件或目录,你可以看到系统上所有正与其交互的资源——包括用户、进程等。 #### 显示与指定目录交互的所有一切 #### -# lsof /var/log/messages/ + # lsof /var/log/messages/ COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME syslog-ng 7547 root 4w REG 3,3 217309 834024 /var/log/messages ### 显示与指定文件交互的所有一切 ### -# lsof /home/daniel/firewall_whitelist.txt + # lsof /home/daniel/firewall_whitelist.txt -#### 高级用法 #### +### 高级用法 ### 与[tcpdump][4]类似,当你开始组合查询时,它就显示了它强大的功能。 -### 显示daniel连接到1.1.1.1所做的一切 ### +#### 显示daniel连接到1.1.1.1所做的一切 #### -# lsof -u daniel -i @1.1.1.1 + # lsof -u daniel -i @1.1.1.1 bkdr 1893 daniel 3u IPv6 3456 TCP 10.10.1.10:1234->1.1.1.1:31337 (ESTABLISHED) -### 同时使用-t和-c选项以挂起进程 ### +#### 同时使用-t和-c选项以给进程发送 HUP 信号 #### -# kill -HUP `lsof -t -c sshd` + # kill -HUP `lsof -t -c sshd` -### lsof +L1显示所有打开的链接数小于1的文件 ### +#### lsof +L1显示所有打开的链接数小于1的文件 #### -这通常(当不总是)表示某个攻击者正尝试通过取消文件链接来隐藏文件。 +这通常(当不总是)表示某个攻击者正尝试通过删除文件入口来隐藏文件内容。 -# lsof +L1 + # lsof +L1 (hopefully nothing) -### 显示某个端口范围的开放连接 ### +#### 显示某个端口范围的打开的连接 #### # lsof -i @fw.google.com:2150=2180 -#### 结尾 #### +### 结尾 ### -This primer just scratches the surface of lsof‘s functionality. For a full reference, run man lsof or check out [the online version][5]. I hope this has been useful to you, and as always,[comments and corrections are welcomed][6]. 本入门教程只是管窥了lsof功能的一斑,要查看完整参考,运行man lsof命令或查看[在线版本][5]。希望本文对你有所助益,也随时[欢迎你的评论和指正][6]。 ### 资源 ### - lsof手册页:[http://www.netadmintools.com/html/lsof.man.html][7] + +本文由 Daniel Miessler撰写,首次在他[博客][1]上贴出 + + -------------------------------------------------------------------------------- via: http://linuxaria.com/howto/linux-terminal-an-lsof-primer 作者:[Daniel Miessler][a] 译者:[GOLinux](https://github.com/GOLinux) -校对:[校对者ID](https://github.com/校对者ID) +校对:[wxy](https://github.com/wxy) 本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 From d046d387e43b98dbe75c16cce79164eb949f4792 Mon Sep 17 00:00:00 2001 From: ZTinoZ Date: Mon, 27 Oct 2014 16:27:31 +0800 Subject: [PATCH 055/108] Finish the translation by ZTinoZ --- ...s Alienating Developers with Strong Language.md | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) rename {sources => translated}/news/20141017 Linus Torvalds Regrets Alienating Developers with Strong Language.md (55%) diff --git a/sources/news/20141017 Linus Torvalds Regrets Alienating Developers with Strong Language.md b/translated/news/20141017 Linus Torvalds Regrets Alienating Developers with Strong Language.md similarity index 55% rename from sources/news/20141017 Linus Torvalds Regrets Alienating Developers with Strong Language.md rename to translated/news/20141017 Linus Torvalds Regrets Alienating Developers with Strong Language.md index ff0eb8e822..09d4a7d831 100644 --- a/sources/news/20141017 Linus Torvalds Regrets Alienating Developers with Strong Language.md +++ b/translated/news/20141017 Linus Torvalds Regrets Alienating Developers with Strong Language.md @@ -2,23 +2,23 @@ Linus Torvalds对于骂那些开发者感到后悔 ================================================================================ > 他没有提到任何人的名字,但是这像一次道歉 -**Linus Torvalds在前几天的欧洲LinuxCon和CloudOpen大会上做了讲话,这次大会由Linux基金会组织并且汇聚了开源世界的所有大佬。他回答了很多问题,也谈到了他在邮件发送清单里使用脏话的事情。** +**Linus Torvalds在前几天的欧洲LinuxCon和CloudOpen大会上做了讲话,这次大会由Linux基金会组织并且汇聚了开源世界的所有大佬。他回答了很多问题,也谈到了他在邮件发送清单里使用粗话的事情。** -Linus Torvalds被认为是Linux内核的创造者和最新的Linux开发版的维护者。他确保我们几乎每个星期都会得到一个新的RC内核并且涉及发生在邮件发送清单中的对话里,他口不择言地用脏话大骂一些开发者们。 +Linus Torvalds被认为是Linux内核的创造者和最新的Linux开发版的维护者。他确保我们几乎每个星期都会得到一个新的RC内核并且涉及发生在邮件发送清单中的对话里,他口不择言地用粗话大骂一些开发者们。 最近出现了一个问题,就是他在做了一些苛刻的评论之后[决定从指定的开发者的手中阉割掉一些代码][1],这种事件在新闻里也报道过。大家都知道Linus很招人厌烦,尤其是当内核开发者为了修复内核中的一些问题而破坏了用户空间。同样的事情就发生在这种情况下,他基本上已经把那个家伙给气疯了。 ### 这是他最接近道歉意味的一次谈话 ### -Linus Torvalds never really talked about that particular discussion since and people moved on, but recently a systemd developer talked about the strong language in the open source community and he mentioned Linus Torvalds by name. He's not known to apologize, so this admission of guilt during LinuxCon is a big step forward. The moderator asked him what single decision in the last 23 years he would change. +以前Linus Torvalds从不真正去特地谈论一些事情,大家也在稳步地前进。但是最近一个systemd开发者谈到了在开源社区充斥着粗话并且点名提到了Linus Torvalds。他不太知道去道歉,所以这次在LinuxCon大会上的这次“认错”是他跨出的一大步。主持人询问他在过去的23年里所做过的单一的决定。 -"From a technical standpoint, no single decision has ever been that important... The problems tend to be around alienating users or developers and I'm pretty good at that. I use strong language. But again there's not a single instance I'd like to fix. There's a metric [expletive]load of those." +"从技术角度来看,没有一个单一的决定向来就是重要的...这个问题慢慢地疏远用户和开发者而我却恰恰很擅长这个。我说了粗话。但是我不想再修复单独实例了,都是一坨坨狗X一样的东西。" -"One of the reasons we have this culture of strong language, that admittedly many people find off-putting, is that when it comes to technical people with strong opinions and with a strong drive to do something technically superior, you end up having these opinions show up as sometimes pretty strong language," [said][2] Linus Torvalds. +"其中一个原因是我们有说粗话的传统,很多人觉得倒胃口,当有强烈提议欲的技术人员和在技术上拥有巨大推动力的上级时,你就会把这些建议想成了一堆堆粗话了。" Linus Torvalds [如是说][2] 。 -He didn't mention anyone by name or any specific incident, but the proximity to the complaints issued by Leonart Pottering, the systemd developer, seems to point towards that issue. +他没提到任何人或者任何事件的名字,但很像是对于一位名为Leonart Pottering的systemd开发者挑起事端的回应,看上去就是针对这起事件。 -It also looks like Linux kernel 3.18 RC1 will arrive later this week and we'll soon have something new to play with. +Linux内核3.18 RC1也在上周发布了,我们又有新东西玩了。 -------------------------------------------------------------------------------- From 777a0b601408daff5584f49b44f1a325603b6ab2 Mon Sep 17 00:00:00 2001 From: DeadFire Date: Mon, 27 Oct 2014 16:33:44 +0800 Subject: [PATCH 056/108] =?UTF-8?q?20141027-2=20=E9=80=89=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../share/20141027 Handy Disk Image Tools.md | 170 ++++++++++++++++++ ...t fast and safely from the command line.md | 125 +++++++++++++ ... and directories with eCryptFS on Linux.md | 107 +++++++++++ 3 files changed, 402 insertions(+) create mode 100644 sources/share/20141027 Handy Disk Image Tools.md create mode 100644 sources/tech/20141027 How to download an ISO image with BitTorrent fast and safely from the command line.md create mode 100644 sources/tech/20141027 How to encrypt files and directories with eCryptFS on Linux.md diff --git a/sources/share/20141027 Handy Disk Image Tools.md b/sources/share/20141027 Handy Disk Image Tools.md new file mode 100644 index 0000000000..b69a0962b0 --- /dev/null +++ b/sources/share/20141027 Handy Disk Image Tools.md @@ -0,0 +1,170 @@ +Handy Disk Image Tools +================================================================================ +Disk images are computer files of a disk volume or an entire data storage device, such as a hard drive, optical disk (e.g. DVD, CD, Blu-ray), tape drive, USB flash drive, or floppy disk. A disk image represents the content exactly as it is on the original storage device, including both data and structure information. + +Disk image file formats can be open standards, such as the ISO image format for optical disk images, or proprietary to particular software applications. The name "ISO" is taken from the ISO 9660 file system used with CD-ROM media. Converting from a proprietary image format to an open format often crops up as an issue when users migrate to Linux. + +Disk images have many different uses such as burning optical media, system backup, data recovery, disk cloning, computer forensics, and operating systems (as Live CD/DVDs). + +There are a number of different ways of mounting an ISO image under Linux. The venerable mount command offers an easy solution. But if you need tools that offer more functionality for working with disk images, try some of the following excellent open source tools. + +Most of the tools have not seen a recent release, so if you are looking to get involved with a good open source tool, you could pitch in. + +---------- + +![](http://www.linuxlinks.com/portal/content2/png/FuriusISOMount.png) + +![](http://www.linuxlinks.com/portal/content/reviews/Utilities/Screenshot-FuriusISOMountTool.png) + +Furius ISO Mount is a simple open source application for mounting .iso, .img, .bin, .mdf and .nrg image files without burning them to disk. + +Features include: + +- Automatically mounts ISO, IMG, BIN, MDF and NRG image files +- Supports mounting UDF images through loop +- Automatically creates a mount point in your home directory +- Automatically unmounts the Image files +- Automatically removes the mount directory to return your home directory to its previous state +- Automatically saves the history of the last 10 images mounted +- Mounts multiple images +- Burn ISO and IMG Files to optical disk +- Generate MD5 and SHA1 checksums +- Automatically retrieves any previously unmounted images +- Automatically generates a log file of all commands needed to mount and unmount images manually +- Language support (currently Bulgarian, Chinese (Simplified), Czech, Dutch, French, German, Hungarian, Italian, Greek, Italian, Japanese, Polish, Portuguese, Russian, Slovenian, Spanish, Swedish and Turkish) + +- Website: [launchpad.net/furiusisomount/][1] +- Developer: Dean Harris (Marcus Furius) +- License: GNU GPL v3 +- Version Number: 0.11.3.1 + + +---------- + +![](http://www.linuxlinks.com/portal/content2/png/fuseiso.png) + +![](http://www.linuxlinks.com/portal/content/reviews/Utilities/Screenshot-fuseiso.png) + +fuseiso is an open source FUSE module to mount ISO filesystem images. + +With FUSE it is possible to implement a fully functional filesystem in a userspace program. + +Features include: + +- Read ISO, BIN and NRG images containing ISO9660 filesystems +- Supports plain ISO9660 Level 1 and 2 +- Supports some common extensions, like Joliet, RockRidge and zisofs +- Supports non-standard images, like CloneCD's IMGs and Alcohol 120%'s MDFs, as their format looks exactly like BIN images + +- Website: [sourceforge.net/projects/fuseiso][2] +- Developer: Dmitry Morozhnikov +- License: GNU GPL v2 +- Version Number: 20070708 + +---------- + +![](http://www.linuxlinks.com/portal/content2/png/iat.png) + +![](http://www.linuxlinks.com/portal/content/reviews/Utilities/Screenshot-iat.png) + +iat (Iso9660 Analyzer Tool) is a versatile, open source tool for detecting the structure of many types of image file formats, such as BIN, MDF, PDI, CDI, NRG, and B5I, and converting them into ISO-9660. + +Features include: + +- Supports reading (input) NRG, MDF, PDI, CDI, BIN, CUE and B5I images +- Burn disc images directly using cdrecord +- Outputs information including a progress-bar, Block size, ECC sector (size), header sector (size), image offset start and more + +- Website: [sourceforge.net/projects/iat.berlios][3] +- Developer: Salvatore Santagati +- License: GNU GPL v2 +- Version Number: 0.1.3 + +---------- + +![](http://www.linuxlinks.com/portal/content2/png/AcetoneISO.png) + +![](http://www.linuxlinks.com/portal/content/reviews/Utilities/Screenshot-AcetoneISO.png) + +AcetoneISO is a feature-rich open source graphical application to mount and manage CD/DVD images. + +The utility opens a graphical file manager to mount image formats, including proprietary image formats, including ISO, BIN, NRG, MDF, IMG etc, and lets you perform a number of actions. + +AcetoneISO is written with Qt 4, which means that it integrates well in Qt-based desktop environments like KDE, LXQt or Razor-qt. + +This software is meant for all those people looking for a "Daemon Tools for Linux". + +Features include: + +- Mount most common Windows images in a clean and easy GUI +- Convert all known images to ISO or extract the contents to a folder +- Encrypt, compress, split any type of image +- Convert DVD video to xvid avi and any generic video to xvid avi +- Extract audio from a video +- Extract images content to a folder: bin mdf nrg img daa dmg cdi b5i bwi pdi +- Play a DVD Movie Image with Kaffeine / VLC / SMplayer with auto-cover download from Amazon +- Generate an ISO from a Folder or CD/DVD +- Check MD5 file of an image and/or generate it to a text file +- Calculate ShaSums of images in 128, 256, and 384 bit +- Encrypt / Decrypt an image +- Split / Merge image in X megabyte +- Compress with high ratio an image in 7z format +- Rip a PSX CD to *.bin to make it work with ePSXe/pSX emulators +- Restore a lost CUE file of *.bin *.img +- Convert Mac OS *.dmg to a mountable image +- Mount an image in a specified folder from the user +- Create a database of images to manage big collections +- Extract the Boot Image file of a CD/DVD or ISO +- Backup a CD-Audio to a *.bin image +- Quick and simple utility to rip a DVD to Xvid AVI +- Quick and simple utility to convert a generic video (avi, mpeg, mov, wmv, asf) to Xvid AVI +- Quick and simple utility to convert a FLV video to AVI +- Utility to download videos from YouTube and Metacafe +- Extract audio from a video file +- Extract a *.rar archive that has a password +- Utility to convert any video for Sony PSP PlayStation Portable +- Internationalization support English, Italian, Polish, Spanish, Romanian, Hungarian, German, Czech, and Russian + +- Website: [sourceforge.net/projects/acetoneiso][4] +- Developer: Marco Di Antonio +- License: GNU GPL v3 +- Version Number: 2.3 + +---------- + +![](http://www.linuxlinks.com/portal/content2/png/ISOMaster.png) + +![](http://www.linuxlinks.com/portal/content/reviews/Utilities/Screenshot-ISOMaster.png) + +ISO Master is an open-source, easy to use, graphical CD image editor for Linux and BSD. This tool extracts files from an ISO, add files to an ISO, and create bootable ISOs - all in a graphical user interface. It can open ISO, NRG, and some MDF files but can only save as ISO. + +ISO Master is based on bkisofs, a simple and stable library for reading, modifying and writing ISO images which supports the Joliet, RockRidge, and EL Torito extensions. + +Features include: + +- Reads .ISO files (ISO9660, Joliet, RockRidge, and El Torito), most .NRG files, and some single-track .MDF files; it can save only as .ISO +- Create or customise CD/DVD images +- Add or remove files and directories to/from a CD image +- Make bootable CDs/DVDs +- Internationalization support + +- Website: [www.littlesvr.ca/isomaster/][5] +- Developer: Andrew Smith +- License: GNU GPL v2 +- Version Number: 1.3.11 + +-------------------------------------------------------------------------------- + +via: http://www.linuxlinks.com/article/20141025082352476/DiskImageTools.html + +作者:Frazer Kline +译者:[译者ID](https://github.com/译者ID) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[1]:https://launchpad.net/furiusisomount/ +[2]:http://sourceforge.net/projects/fuseiso/ +[3]:http://sourceforge.net/projects/iat.berlios/ +[4]:http://sourceforge.net/projects/acetoneiso/ +[5]:http://www.littlesvr.ca/isomaster/ \ No newline at end of file diff --git a/sources/tech/20141027 How to download an ISO image with BitTorrent fast and safely from the command line.md b/sources/tech/20141027 How to download an ISO image with BitTorrent fast and safely from the command line.md new file mode 100644 index 0000000000..e42f1c363b --- /dev/null +++ b/sources/tech/20141027 How to download an ISO image with BitTorrent fast and safely from the command line.md @@ -0,0 +1,125 @@ +How to download an ISO image with BitTorrent fast and safely from the command line +================================================================================ +If you are one of those guys who have urge to try out every new (or even beta) release of Linux distribution to satisfy your curiosity and stay up-to-date, you will need to deal with the hassle of downloading big ISO images every now and then. ISO providers typically put up .torrent file of their ISO images to ease up on the bandwidth consumption of their servers. The benefit of peer-to-peer download is obvious for users as well (in terms of speed), especially when a new release of a popular Linux distribution is up for grab, and everyone is downloading and seeding the release at the same time. + +Ubuntu 14.10 (Utopic Unicorn) was just released this week. So there should be plenty of seeds to download the release from in the BitTorrent network at the moment. While there are many GUI-based BitTorrent clients out there, I am going to show you **how to download ISO images via a simple command-line interface (CLI) BitTorrent client**, which can be handy if you are on a remote headless server. Later in this tutorial, I will also demonstrate **how to verify the integrity of a downloaded ISO image**. + +The CLI BitTorrent client I am going to use today is transmission-cli. As you may know, [Transmission][1] is one of the most popular GUI-based BitTorrent client. transmission-cli is its stripped-down CLI version. + +### Install Transmission-cli on Linux ### + +To install **transmission-cli**, you don't need to install a full-blown GUI-based Transmission, which is nice. + +On Debian, Ubuntu or their derivatives: + + $ sudo apt-get install transmission-cli + +On Fedora: + + $ sudo yum install transmission-cli + +On CentOS or RHEL (after enabling [EPEL repository][2]): + + $ sudo yum install transmission-cli + +### Download an ISO Image Fast with transmission-cli ### + +**transmission-cli** is really simple to use. If you are too lazy to study its command line options, all you have to do is to download .torrent file, and launch the command with the torrent file. It will automatically look for available peers, and download an ISO file from them. + + $ wget http://releases.ubuntu.com/14.10/ubuntu-14.10-desktop-amd64.iso.torrent + $ transmission-cli ubuntu-14.10-desktop-amd64.iso.torrent + +![](https://farm4.staticflickr.com/3933/14999528344_9af3ea5d2e_z.jpg) + +Once an ISO image is fully downloaded, it will be stored in ~/Downloads directory by default. It took me only 5 minutes to download 1GB Ubuntu ISO image. + +![](https://farm6.staticflickr.com/5605/15433651319_745df6633a_z.jpg) + +Once it finishes downloading an ISO image, you will see the message "State changed from Incomplete to Complete" in the console. Note that transmission-cli will continue to run afterwards, becoming a seed for other downloaders. Press Ctrl+C to quit. + +### Customize Download Options for Repeat Use ### + +If you are a repeat user of **transmission-cli**, it may be worth your time to be familiar with some of its command line options. + +The "-w /path/to/download-directory" option specifies the directory where a downloaded file will be saved. + +The "-f /path/to/finish-script" option sets a script to run when current download is completed. Recall that transmission-cli, by default, continues running even after a file is fully downloaded. If you want to auto-terminate transmission-cli upon successful download, you can use this option. The following simple finish script will do. + + #!/bin/sh + sleep 10 + killall transmission-cli + +If you want to allocate limited upload/download bandwidth to transmission-cli, you can use "-d and "-u options. If you want to allow unlimited bandwidth instead, simply specify "-D" or "-U" option without any value. + +Here is a more advanced usage example of transmission-cli. In this example, the CLI client will automatically exit upon successful download. Download rate is unlimited while upload rate is capped at 50KB/s. + + $ transmission-cli -w ~/iso -D -u 50 -f ~/finish.sh ubuntu-14.10-desktop-amd64.iso.torrent + +![](https://farm6.staticflickr.com/5599/15434697690_e9a19f0d97_z.jpg) + +### Verify the Integrity of a Downloaded ISO Image ### + +When you download an ISO image, especially from many unknown peers in the BitTorrent network, it is always recommended to verify the integrity of the downloaded image. + +In case of Ubuntu releases, Canonical provides several checksum files (e.g., MD5SUM, SHA1SUMS and SHA256SUMS) for verification purpose. Let's use SHA256SUMS in this example. + +![](https://farm4.staticflickr.com/3943/15434697700_3b3e6077ee_z.jpg) + +First, download the following two files. + + $ wget http://releases.ubuntu.com/14.10/SHA256SUMS + $ wget http://releases.ubuntu.com/14.10/SHA256SUMS.gpg + +The first file is a SHA256 checksum file for ISO images, while the second file (*.gpg) is a signature of the checksum file. The purpose of the second file is to verify the validity of the checksum file itself. + +Let's verify the validity of SHA256SUMS file by running this command: + + $ gpg --verify SHA256SUMS.gpg SHA256SUMS + +---------- + + gpg: Signature made Thu 23 Oct 2014 09:36:00 AM EDT using DSA key ID FBB75451 + gpg: Can't check signature: public key not found + +If you are getting the above error, this is because you have not imported the public key used to generate the signature. So now let's import the required public key. + +To do that, you need to know the "key ID" of the public key, which is shown in the output of gpg command above. In this example, the key ID is "FBB75451". Run the following command to import the public key from the official Ubuntu keyserver. + + $ gpg --keyserver hkp://keyserver.ubuntu.com --recv-keys FBB75451 + +![](https://farm4.staticflickr.com/3953/15620291035_bcdb3cffb9_z.jpg) + +Now that the public key has been imported, go ahead and re-run the previous command to verify the signature. + + gpg --verify SHA256SUMS.gpg SHA256SUMS + +![](https://farm6.staticflickr.com/5600/15433651369_d22905e65b_z.jpg) + +This time you will not see "public key not found" error. If the SHA256SUMS file is valid, you will see "Good signature from " message. Note that you will also see a warning message saying that "This key is not certified with a trusted signature". Basically this warning message is telling you that you have not [assigned any explicit trust][3] to the imported public key. To avoid this warning, you could choose to assign your full trust to the imported public key, but you should do that only after the key has been fully vetted in some other means. Otherwise, you can ignore the warning for now. + +After verifying the integrity of SHA256SUMS file, the final last step is to compare the SHA256 checksum of the downloade ISO image against the corresponding checksum value in SHA256SUMS file. For that you can use sha256sum command line tool. + +For your convenience, the following one-liner compares the SHA256 checksums and reports the result. + + $ sha256sum -c <(grep ubuntu-14.10-desktop-amd64.iso SHA256SUMS) + +---------- + + ubuntu-14.10-desktop-amd64.iso: OK + +If you see the above output, that means that two checksum values match. So the integrity of the downloaded ISO image has been successfully verified. + +-------------------------------------------------------------------------------- + +via: http://xmodulo.com/download-iso-image-bittorrent-command-line.html + +作者:[Dan Nanni][a] +译者:[译者ID](https://github.com/译者ID) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[a]:http://xmodulo.com/author/nanni +[1]:https://www.transmissionbt.com/ +[2]:http://xmodulo.com/how-to-set-up-epel-repository-on-centos.html +[3]:http://xmodulo.com/verify-authenticity-integrity-downloaded-file.html \ No newline at end of file diff --git a/sources/tech/20141027 How to encrypt files and directories with eCryptFS on Linux.md b/sources/tech/20141027 How to encrypt files and directories with eCryptFS on Linux.md new file mode 100644 index 0000000000..4619bf9cfe --- /dev/null +++ b/sources/tech/20141027 How to encrypt files and directories with eCryptFS on Linux.md @@ -0,0 +1,107 @@ +How to encrypt files and directories with eCryptFS on Linux +================================================================================ +You do not have to be a criminal or work for the CIA to use encryption. You simply don't want anybody to spy on your financial data, family pictures, unpublished manuscripts, or secret notes where you have jotted down startup ideas which you think can make you super rich. + +I have heard people telling me "I'm not important enough to be spied" or "I don't hide anything to care about." Well, my opinion is that even if I don't have anything to hide, or I can publish a picture of my kids with my dog, I have the right to not do it and want to protect my privacy. + +### Types of Encryption ### + +We have largely two different ways to encrypt files and directories. One method is filesystem-level encryption, where only certain files or directories (e.g., /home/alice) are encrypted selectively. To me, this is a perfect way to start. You don't need to re-install everything to enable or test encryption. Filesystem-level encryption has some disadvantages, though. For example, many modern applications cache (part of) files in unencrypted portions of your hard drive, such as swap partition, /tmp and /var folders, which can result in privacy leaks. + +The other way is so-called full-disk encryption, which means that the entire disk is encrypted (possibly except for a master boot record). Full disk encryption works at the physical disk level; every bit written to the disk is encrypted, and anything read from the disk is automatically decrypted on the fly. This will prevent any potential unauthorized access to unencrypted data, and ensure that everything in the entire filesystem is encrypted, including swap partition or any temporarily cached data. + +### Available Encryption Tools ### + +There are several options to implement encryption in Linux. In this tutorial, I am going to describe one option: **eCryptFS** a user-space cryptographic filesystem tool. For your reference, here is a roundup of available Linux encryption tools. + +#### Filesystem-level encryption #### + +- [EncFS][1]: one of the easiest ways to try encryption. EncFS works as a FUSE-based pseudo filesystem, so you just create an encrypted folder and mount it to a folder to work with. +- [eCryptFS][2]: a POSIX compliant cryptographic filesystem, eCryptFS works in the same way as EncFS, so you have to mount it. + +#### Filesystem-level encryption #### + +- [Loop-AES][3]: the oldest disk encryption method. It is really fast and works on old system (e.g., kernel 2.0 branch). +- [DMCrypt][4]: the most common disk encryption scheme supported by the modern Linux kernel. +- [CipherShed][5]: an open-source fork of the discontinued TrueCrypt disk encryption program. + +### Basics of eCryptFS ### + +eCryptFS is a FUSE-based user-space cryptographic filesystem, which has been available in the Linux kernel since 2.6.19 (as ecryptfs module). An eCryptFS-encrypted pseudo filesystem is mounted on top of your current filesystem. It works perfectly on EXT filesystem family and others like JFS, XFS, ReiserFS, Btrfs, even NFS/CIFS shares. Ubuntu uses eCryptFS as its default method to encrypt home directory, and so does ChromeOS. Underneath it, eCryptFS uses AES algorithm by default, but it supports others algorithms, such as blowfish, des3, cast5, cast6. You will be able to choose among them in case you create a manual setup of eCryptFS. + +Like I said, Ubuntu lets us choose whether to encrypt our /home directory during installation. Well, this is the easiest way to use eCryptFS. + +![](https://farm6.staticflickr.com/5600/15639040345_8d74cd54a8_z.jpg) + +Ubuntu provides a set of user-friendly tools that make our life easier with eCryptFS, but enabling eCryptFS during Ubuntu installation only creates a specific pre-configured setup. So in case the default setup doesn't fit your needs, you will need to perform a manual setup. In this tutorial, I will describe **how to set up eCryptFS manually on major Linux distros**. + +### Installation of eCryptFS ### + +Debian, Ubuntu or its derivatives: + + $ sudo apt-get install ecryptfs-utils + +Note that if you chose to encrypt your home directory during Ubuntu installation, eCryptFS should be already installed. + +CentOS, RHEL or Fedora: + + # yum install ecryptfs-utils + +Arch Linux: + + $ sudo pacman -S ecryptfs-utils + +After installing the package, it is a good practice to load the eCryptFS kernel module just to be sure: + + $ sudo modprobe ecryptfs + +### Configure eCryptFS ### + +Now let's start encrypting some directory by running eCryptFS configuration tool: + + $ ecryptfs-setup-private + +![](https://farm6.staticflickr.com/5608/15453440890_3b4be6d5a7_z.jpg) + +It will ask for a login passphrase and a mount passphrase. The login passphrase is the same as your normal login password. The mount passphrase is used to derive a file encryption master key. Leave it blank to generate one as it's safer. Log out and log back in. + +You will notice that eCryptFS created two directories by default: Private and .Private in your home directory. The ~/.Private directory contains encrypted data, while you can access corresponding decrypted data in the ~/Private directory. At the time you log in, the ~/.Private directory is automatically decrypted and mapped to the ~/Private directory, so you can access it. When you log out, the ~/Private directory is automatically unmounted and the content in the ~/Private directory is encrypted back into the ~/.Private directory. + +The way eCryptFS knows that you own the ~/.Private directory, and automatically decrypts it into the ~/Private directory without needing us to type a password is through an eCryptFS PAM module which does the trick for us. + +In case you don't want to have the ~/Private directory automatically mounted upon login, just add the "--noautomount" option when running ecryptfs-setup-private tool. Similarly, if you do not want the ~/Private directory to be automatically unmounted after logout, specify "--noautoumount" option. But then, you will have to mount or unmount ~/Private directory manually by yourself: + + $ ecryptfs-mount-private ~/.Private ~/Private + $ ecryptfs-umount-private ~/Private + +You can verify that .Private folder is mounted by running: + + $ mount + +![](https://farm6.staticflickr.com/5610/15452374739_2ffb73cf05_z.jpg) + +Now we can start putting any sensitive files in ~/Private folder, and they will automatically be encrypted and locked down in ~/.Private folder when we log out. + +All this seems pretty magical. Basically ecryptfs-setup-private tool makes everything easy to set up. If you want to play a little more and set up specific aspects of eCryptFS, go to the [official documentation][6]. + +### Conclusion ### + +To conclude, if you care a great deal about your privacy, the best setup I recommend is to combine eCryptFS-based filesystem-level encryption with full-disk encryption. Always remember though, file encryption alone does not guarantee your privacy. + +-------------------------------------------------------------------------------- + +via: http://xmodulo.com/encrypt-files-directories-ecryptfs-linux.html + +作者:[Christopher Valerio][a] +译者:[译者ID](https://github.com/译者ID) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[a]:http://xmodulo.com/author/valerio +[1]:http://www.arg0.net/encfs +[2]:http://ecryptfs.org/ +[3]:http://sourceforge.net/projects/loop-aes/ +[4]:https://code.google.com/p/cryptsetup/wiki/DMCrypt +[5]:https://ciphershed.org/ +[6]:http://ecryptfs.org/documentation.html \ No newline at end of file From a6de4f7d2f09e07dbfe361bfb115d32910091d04 Mon Sep 17 00:00:00 2001 From: KayGuoWhu Date: Mon, 27 Oct 2014 20:36:38 +0800 Subject: [PATCH 057/108] translated --- ...isk health on Linux using smartmontools.md | 147 ----------------- ...isk health on Linux using smartmontools.md | 150 ++++++++++++++++++ 2 files changed, 150 insertions(+), 147 deletions(-) delete mode 100644 sources/tech/20141017 How to check hard disk health on Linux using smartmontools.md create mode 100644 translated/tech/20141017 How to check hard disk health on Linux using smartmontools.md diff --git a/sources/tech/20141017 How to check hard disk health on Linux using smartmontools.md b/sources/tech/20141017 How to check hard disk health on Linux using smartmontools.md deleted file mode 100644 index ef88153c9f..0000000000 --- a/sources/tech/20141017 How to check hard disk health on Linux using smartmontools.md +++ /dev/null @@ -1,147 +0,0 @@ -[translating by KayGuoWhu] -How to check hard disk health on Linux using smartmontools -================================================================================ -If there is something that you never want to happen on your Linux system, that is having hard drives die on you without any warning. [Backups][1] and storage technologies such as [RAID][2] can get you back on your feet in no time, but the cost associated with a sudden loss of a hardware device can take a considerable toll on your budget, especially if you haven't planned ahead of time what to do in such circumstances. - -To avoid running into this kind of setbacks, you can try [smartmontools][3] which is a software package that manages and monitors storage hardware by using Self-Monitoring, Analysis and Reporting Technology (S.M.A.R.T. or just SMART). Most modern ATA/SATA, SCSI/SAS, and solid-state hard disks nowadays come with the SMART system built-in. The purpose of SMART is to monitor the reliability of the hard drive, to predict drive failures, and to carry out different types of drive self-tests. The smartmontools consists of two utility programs called smartctl and smartd. Together, they will provide advanced warnings of disk degradation and failure on Linux platforms. - -This tutorial will provide installation and configuration guide for smartmontools on Linux. - -### Installing Smartmontools ### - -Installation of smartmontools is straightforward as it available in base repositories of most Linux distros. - -#### Debian and derivatives: #### - - # aptitude install smartmontools - -#### Red Hat-based distributions: #### - - # yum install smartmontools - -### Checking Hard Drive Health with Smartctl ### - -First off, list the hard drives connected to your system with the following command: - - # ls -l /dev | grep -E 'sd|hd' - -The output should be similar to: - -![](https://farm4.staticflickr.com/3953/15352881249_96c09f7ccc_o.png) - -where sdx indicate device names assigned to the hard drives installed on your machine. - -To display information about a particular hard disk (e.g., device model, S/N, firmware version, size, ATA version/revision, availability and status of SMART capability), run smartctl with "--info" flag, and specify the hard drive's device name as follows. - -In this example, we will choose /dev/sda. - - # smartctl --info /dev/sda - -![](https://farm4.staticflickr.com/3928/15353873870_00a8dddf89_z.jpg) - -Although the ATA version information may seem to go unnoticed at first, it is one of the most important factors when looking for a replacement part. Each ATA version is backward compatible with the previous versions. For example, older ATA-1 or ATA-2 devices work fine on ATA-6 and ATA-7 interfaces, but unfortunately, that is not true for the other way around. In cases where the device version and interface version don't match, they work together at the capabilities of the lesser of the two. That being said, an ATA-7 hard drive is the safest choice for a replacement part in this case. - -You can examine the health status of a particular hard drive with: - - # smartctl -s on -a /dev/sda - -In this command, "-s on" flag enables SMART on the specified device. You can ommit it if SMART support is already enabled for /dev/sda. - -The SMART information for a disk consists of several sections. Among other things, "READ SMART DATA" section shows the overall health status of the drive. - - === START OF READ SMART DATA SECTION === - SMART overall-health self-assessment rest result: PASSED - -The result of this test can be either PASSED or FAILED. In the latter case, a hardware failure is imminent, so you may want to start backing up your important data from that drive! - -The next thing you will want to look at is the [SMART attribute][4] table, as shown below. - -![](https://farm6.staticflickr.com/5612/15539511935_dd62f6c9ef_z.jpg) - -Basically, SMART attribute table lists values of a number of attributes defined for a particular drive by its manufacturer, as well as failure threshold for these attributes. This table is automatically populated and updated by drive firmware. - -- **ID#**: attribute ID, usually a decimal (or hex) number between 1 and 255. -- **ATTRIBUTE_NAME**: attribute names defined by a drive manufacturer. -- **FLAG**: attribute handling flag (we can ignore it). -- **VALUE**: this is one of the most important information in the table, indicating a "normalized" value of a given attribute, whose range is between 1 and 253. 253 means the best condition, while 1 means the worse condition. Depending on attributes and manufacturers, an initial VALUE can be set to either 100 or 200. -- **WORST**: the lowest VALUE ever recorded. -- **THRESH**: the lowest value that WORST should ever be allowed to fall to, before reporting a given hard drive as FAILED. -- **TYPE**: the type of attribute (either Pre-fail or Old_age). A Pre-fail attribute is considered a critical attribute; one that participates in the overall SMART health assessment (PASSED/FAILED) of the drive. If any Pre-fail attribute fails, then the drive is considered "about to fail." On the other hand, an Old_age attribute is considered (for SMART purposes) a non-critical attribute (e.g., normal wear and tear); one that does not fail the drive per se. -- **UPDATED**: indicates how often an attribute is updated. Offline represents the case when offline tests are being performed on the drive. -- **WHEN_FAILED**: this will be set to "FAILING_NOW" (if VALUE is less than or equal to THRESH), or "In_the_past" (if WORST is less than equal to THRESH), or "-" (if none of the above). In case of "FAILING_NOW", back up your important files ASAP, especially if the attribute is of TYPE Pre-fail. "In_the_past" means that the attribute has failed before, but that it's OK at the time of running the test. "-" indicates that this attribute has never failed. -- **RAW_VALUE**: a manufacturer-defined raw value, from which VALUE is derived. - -At this point you may be thinking, "Yes, smartctl seems like a nice tool. but I would like to avoid the hassle of having to run it manually." Wouldn't it be nice if it could be run at specified intervals, and at the same time inform me of the testsresults? - -Fortunately, the answer is yes. And that's when smartd comes in. - -### Configuring Smartctl and Smartd for Live Monitoring ### - -First, edit smartctl's configuration file (/etc/default/smartmontools) to tell it to start smartd at system startup, and to specify check intervals in seconds (e.g., 7200 = 2 hours). - - start_smartd=yes - smartd_opts="--interval=7200" - -Next, edit smartd's configuration file (/etc/smartd.conf) to add the followign line. - - /dev/sda -m myemail@mydomain.com -M test - - -- **-m **: specifies an email address to send test reports to. This can be a system user such as root, or an email address such as myemail@mydomain.com if the server is configured to relay emails to the outside of your system. -- **-M **: specifies the desired type of delivery for an email report. - - **once**: sends only one warning email for each type of disk problem detected. - - **daily**: sends additional warning reminder emails, once per day, for each type of disk problem detected. - - **diminishing**: sends additional warning reminder emails, after a one-day interval, then a two-day interval, then a four-day interval, and so on for each type of disk problem detected. Each interval is twice as long as the previous interval. - - **test**: sends a single test email immediately upon smartd startup. - - **exec PATH**: runs the executable PATH instead of the default mail command. PATH must point to an executable binary file or script. This allows to specify a desired action (beep the console, shutdown the system, and so on) when a problem is detected. - -Save the changes and restart smartd. - -You should expect this kind of email sent by smartd. - -![](https://farm6.staticflickr.com/5612/15539511945_b344814c74_o.png) - -Luckily for us, no error was detected. Had it not been so, the errors would have appeared below the line "The following warning/error was logged by the smartd daemon." - -Finally, you can schedule tests at your preferred schedule using the "-s" flag and the regular expression in the form of "T/MM/DD/d/HH", where: - -T in the regular expression indicates the kind of test: - -- L: long test -- S: short test -- C: Conveyance test (ATA only) -- O: Offline (ATA only) - -and the remaining characters represent the date and time when the test should be performed: - -- MM is the month of the year. -- DD is the day of the month. -- HH is the hour of day. -- d is the day of the week (ranging from 1=Monday through 7=Sunday). -- MM, DD, and HH are expressed with two decimal digits. - -A dot in any of these places indicates all possible values. An expression inside parentheses such as ‘(A|B|C)’ denotes any one of the three possibilities A, B, or C. An expression inside square brackets such as [1-5] denotes a range (1 through 5 inclusive). - -For example, to perform a long test every business day at 1 pm for all disks, add the following line to /etc/smartd.conf. Make sure to restart smartd. - - DEVICESCAN -s (L/../../[1-5]/13) - -### Conclusion ### - -Whether you want to quickly check the electrical and mechanical performance of a disk, or perform a longer and more thorough test scans the entire disk surface, do not let yourself get so caught up in your day-to-day responsibilities as to forget to regularly check on the health of your disks. You will thank yourself later! - --------------------------------------------------------------------------------- - -via: http://xmodulo.com/check-hard-disk-health-linux-smartmontools.html - -作者:[Gabriel Cánepa][a] -译者:[译者ID](https://github.com/译者ID) -校对:[校对者ID](https://github.com/校对者ID) - -本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 - -[a]:http://xmodulo.com/author/gabriel -[1]:http://xmodulo.com/how-to-create-secure-incremental-offsite-backup-in-linux.html -[2]:http://xmodulo.com/create-software-raid1-array-mdadm-linux.html -[3]:http://www.smartmontools.org/ -[4]:http://en.wikipedia.org/wiki/S.M.A.R.T. \ No newline at end of file diff --git a/translated/tech/20141017 How to check hard disk health on Linux using smartmontools.md b/translated/tech/20141017 How to check hard disk health on Linux using smartmontools.md new file mode 100644 index 0000000000..9a3a743eda --- /dev/null +++ b/translated/tech/20141017 How to check hard disk health on Linux using smartmontools.md @@ -0,0 +1,150 @@ +在Linux上使用smartmontools查看硬盘的健康状态 +================================================================================ +要说Linux用户最不愿意看到的事情,莫过于在毫无警告的情况下发现硬盘崩溃了。诸如[RAID][2]的[备份][1]和存储技术可以在任何时候帮用户恢复数据,但为预防硬件突然崩溃造成数据丢失所花费的代价却是相当可观的,特别是在用户从来没有提前考虑过在这些情况下的应对措施时。 + +为了避免遇到这种困境,用户可以试用一款叫做[smartmontools][3]的软件包程序,它通过使用自我监控(Self-Monitoring)、分析(Analysis)和报告(Reporting)三种技术(缩写为S.M.A.R.T或SMART)来管理和监控存储硬件。如今大部分的ATA/SATA、SCSI/SAS和固态硬盘都搭载内置的SMART系统。SMART的目的是监控硬盘的可靠性、预测磁盘故障和执行各种类型的磁盘自检。smartmontools由smartctl和smartd两部分工具程序组成,它们一起为Linux平台提供对磁盘退化和故障的高级警告。 + +这篇文章会描述Linux上smartmontools的安装和配置方法。 + +### 安装Smartmontools ### + +由于smartmontools在大部分Linux发行版的基本软件库中都可用,所以安装很方便。 + +#### Debian和其衍生版:#### + + # aptitude install smartmontools + +#### 基于Red Hat的发行版:#### + + # yum install smartmontools + +### 使用Smartctl检测硬盘的健康状况 ### + +首先,使用下面的命令列出和系统相连的硬盘: + + # ls -l /dev | grep -E 'sd|hd' + +输出结果和下图类似: + +![](https://farm4.staticflickr.com/3953/15352881249_96c09f7ccc_o.png) + +其中sdx代表分配给机器上对应硬盘上的设备名。 + +如果想要显示出某个指定硬盘的信息(比如设备模式、S/N、固件版本、大小、ATA版本/修订号、SMART功能的可用性和状态),在运行smartctl命令时添加"--info"选项,并按如下所示指定硬盘的设备名。 + +在本例中,选择/dev/sda。 + + # smartctl --info /dev/sda + +![](https://farm4.staticflickr.com/3928/15353873870_00a8dddf89_z.jpg) + +尽管最开始可能不会注意到ATA(译者注:硬盘接口技术)的版本信息,但当需要替换硬盘时它确实是最重要的因素之一。每一代ATA版本都保持向下兼容。例如,老的ATA-1或ATA-2设备可以正常工作在ATA-6和ATA-7接口上,但反过来就不行了。在设备版本和接口版本两者不匹配的情况下,它们会按照两者中版本较小的规范来运行。也就是说,在这种情况下,需要替换硬盘时,ATA-7硬盘是最安全的选择。 + +可以通过这个命令来检测某个硬盘的健康状况: + + # smartctl -s on -a /dev/sda + +在这个命令中,"-s on"标志开启指定设备上的SMART功能。如果/dev/sda上已开启SMART支持,那就省略它。 + +硬盘的SMART信息包含很多部分。其中,"READ SMART DATA"部分显示出硬盘的整体健康状况。 + + === START OF READ SMART DATA SECTION === + SMART overall-health self-assessment rest result: PASSED + +这个测试的结果是PASSED或FAILED。后者表示即将出现硬件故障,所以需要开始备份这块磁盘上的重要数据! + +下一个需要关注的地方是[SMART属性][4]表,如下所示。 + +![](https://farm6.staticflickr.com/5612/15539511935_dd62f6c9ef_z.jpg) + +基本上,SMART属性表列出了制造商在硬盘中定义好的属性值,以及这些属性相关的故障阈值。这个表由驱动固件自动生成和更新。 + +- **ID**:属性ID,通常是一个1到255之间的十进制或十六进制的数字。 +- **ATTRIBUTE_NAME**:硬盘制造商定义的属性名。 +- **FLAG**:属性操作标志(可以忽略)。 +- **VALUE**:这是表格中最重要的信息之一,代表给定属性的标准化值,在1到253之间。253意味着最好情况,1意味着最坏情况。取决于属性和制造商,初始化VALUE可以被设置成100或200. +- **WORST**:所记录的最小VALUE。 +- **THRESH**:在报告硬盘FAILED状态前,WORST可以允许的最小值。 +- **TYPE**:属性的类型(Pre-fail或Old_age)。Pre-fail类型的属性可被看成一个关键属性,表示参与磁盘的整体SMART健康评估(PASSED/FAILED)。如果任何Pre-fail类型的属性故障,那么可视为磁盘将要发生故障。另一方面,Old_age类型的属性可被看成一个非关键的属性(如正常的磁盘磨损),表示不会使磁盘本身发生故障。 +- **UPDATED**:表示属性的更新频率。Offline代表磁盘上执行离线测试的时间。 +- **WHEN_FAILED**:如果VALUE小于等于THRESH,会被设置成“FAILING_NOW”;如果WORST小于等于THRESH会被设置成“In_the_past”;如果都不是,会被设置成“-”。在“FAILING_NOW”情况下,需要备份重要文件ASAP,特别是属性是Pre-fail类型时。“In_the_past”代表属性已经故障了,但在运行测试的时候没问题。“-”代表这个属性从没故障过。 +- **RAW_VALUE**:制造商定义的原始值,从VALUE派生。 + +这时候你可能会想,“是的,smartctl看起来是个不错的工具,但我更想知道如何避免手动运行的麻烦。”如果能够以指定的间隔运行,同时又能通知我测试结果,那不是更好吗?” + +好消息是,这个功能已经有了。是smartd发挥作用的时候了! + +### 配置Smartctl和Smartd实现实时监控 ### + +首先,编辑smartctl的配置文件(/etc/default/smartmontools)以便在系统启动时启动smartd,并以秒为单位指定间隔时间(如7200 = 2小时)。 + + start_smartd=yes + smartd_opts="--interval=7200" + +下一步,编辑smartd的配置文件(/etc/smartd.conf),添加以下行内容。 + + /dev/sda -m myemail@mydomain.com -M test + +- **-m **:指定发送测试报告到某个电子邮件地址。这里可以是系统用户比如root,或者如果服务器已经配置成发送电子邮件到系统外部,则是类似于myemail@mydomain.com的邮件地址。 +- **-M **:指定发送邮件报告的期望类型。 + - **once**:为检测到的每种磁盘问题只发送一封警告邮件。 + - **daily**:为检测到的每种磁盘问题每隔一天发送一封额外的警告提醒邮件。 + - **diminishing**:为检测到的每种问题发送一封额外的警告提醒邮件,开始是每隔一天,然后每隔两天,每隔四天,以此类推。每个间隔是前一次间隔的2倍。 + - **test**:只要smartd一启动,立即发送一封测试邮件。 + - **exec PATH**:取代默认的邮件命令,运行PATH路径下的可执行文件。PATH必须指向一个可执行的二进制文件或脚本。当检测到一个问题时,可以指定执行一个期望的动作(闪烁控制台、关闭系统等等)。 + +保存改动并重启smartd。 + +smartd发送的邮件应该是这个样子。 + +![](https://farm6.staticflickr.com/5612/15539511945_b344814c74_o.png) + +在上图中,没有检测到错误。如果实际上检测到了错误,那么错误会出现在“下列警告/错误由smartd守护进程写入日志”这一行的下面。 + +最后,可以使用“-s”标志和形如“T/MM/DD/d/HH”的正则表达式按照想要的调度方案执行测试,其中: + +正则表达式中的T代表测试的类型: + +- L:长测试 +- S:短测试 +- C:传输测试(仅限ATA) +- O:离线测试(仅限ATA) + +其它的字符代表测试执行的日期和时间: + +- MM是一年中的月份。 +- DD是一月中的天份。 +- HH是一天中的小时。 +- d是一个星期中的某天(从1=周一到7=周日)。 +- MM、DD和HH使用两位十进制数字表示。 + +在上述表达中的小圆点表示所有可能的值。形如'(A|B|C)'在圆括号里的表达式表示三个可能值A、B和C中的任意一个。形如[1-5]在方括号中的表达式表示1到5的范围(包含5). + +例如,想要在每个工作日的下午一点为所有的磁盘执行一次长测试,在/etc/smartd.conf中添加如下行内容。确保编辑完重启smartd。 + + DEVICESCAN -s (L/../../[1-5]/13) + +### 总结 ### + +无论你想要快速查看磁盘的电子和机械性能,还是对整个磁盘执行一次长时间扫描测试,都不要让自己陷入日复一日地执行命令中而忘记了定期检测磁盘的健康状态。多关注磁盘的健康状况,你会受益的! + +-------------------------------------------------------------------------------- + +via: http://xmodulo.com/check-hard-disk-health-linux-smartmontools.html + +作者:[Gabriel Cánepa][a] +译者:[KayGuoWhu](https://github.com/KayGuoWhu) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[a]:http://xmodulo.com/author/gabriel +[1]:http://xmodulo.com/how-to-create-secure-incremental-offsite-backup-in-linux.html +[2]:http://xmodulo.com/create-software-raid1-array-mdadm-linux.html +[3]:http://www.smartmontools.org/ +[4]:http://en.wikipedia.org/wiki/S.M.A.R.T. + + + + + From fdce025f503c1c0228fe9562b5fa6de9eeabb297 Mon Sep 17 00:00:00 2001 From: KayGuoWhu Date: Mon, 27 Oct 2014 22:14:52 +0800 Subject: [PATCH 058/108] translating --- ...0140905 Linux TCP or IP networking--net-tools vs. iproute2.md | 1 + 1 file changed, 1 insertion(+) diff --git a/sources/tech/20140905 Linux TCP or IP networking--net-tools vs. iproute2.md b/sources/tech/20140905 Linux TCP or IP networking--net-tools vs. iproute2.md index ccda81ca08..e7fdc11d7f 100644 --- a/sources/tech/20140905 Linux TCP or IP networking--net-tools vs. iproute2.md +++ b/sources/tech/20140905 Linux TCP or IP networking--net-tools vs. iproute2.md @@ -1,3 +1,4 @@ +[translating by KayGuoWhu] Linux TCP/IP networking: net-tools vs. iproute2 ================================================================================ Many sysadmins still manage and troubleshoot various network configurations by using a combination of ifconfig, route, arp and netstat command-line tools, collectively known as net-tools. Originally rooted in the BSD TCP/IP toolkit, the net-tools was developed to configure network functionality of older Linux kernels. Its development in the Linux community so far has ceased since 2001. Some Linux distros such as Arch Linux and CentOS/RHEL 7 have already deprecated net-tools in favor of iproute2. From 989d3a6cdc358a80aaeec4cd76c5169ee01bb646 Mon Sep 17 00:00:00 2001 From: zhengsihua Date: Mon, 27 Oct 2014 22:38:48 +0800 Subject: [PATCH 059/108] translated --- ...To Upgrade Ubuntu 14.04 To Ubuntu 14.10.md | 51 ------------------- ...To Upgrade Ubuntu 14.04 To Ubuntu 14.10.md | 51 +++++++++++++++++++ 2 files changed, 51 insertions(+), 51 deletions(-) delete mode 100644 sources/tech/20141024 How To Upgrade Ubuntu 14.04 To Ubuntu 14.10.md create mode 100644 translated/tech/20141024 How To Upgrade Ubuntu 14.04 To Ubuntu 14.10.md diff --git a/sources/tech/20141024 How To Upgrade Ubuntu 14.04 To Ubuntu 14.10.md b/sources/tech/20141024 How To Upgrade Ubuntu 14.04 To Ubuntu 14.10.md deleted file mode 100644 index ac64df2371..0000000000 --- a/sources/tech/20141024 How To Upgrade Ubuntu 14.04 To Ubuntu 14.10.md +++ /dev/null @@ -1,51 +0,0 @@ -How To Upgrade Ubuntu 14.04 To Ubuntu 14.10 -================================================================================ -![](http://itsfoss.itsfoss.netdna-cdn.com/wp-content/uploads/2014/04/Ubuntu_Unicorn_Utopia.jpeg) - -Ubuntu 14.10 has been released yesterday. Wondering **how to upgrade to Ubuntu 14.10 from Ubuntu 14.04**? Don’t worry, it’s extremely easy to upgrade to Ubuntu 14.10. In fact, it is just a matter of few clicks and a good internet connection. - -### Do you need to switch to Ubuntu 14.10 from Ubuntu 14.04? ### - -Before you go on upgrading to Ubuntu 14.10, make sure that you really want to ditch Ubuntu 14.04 for 14.10. It is important for the reason that you won’t be able to downgrade Ubuntu 14.10 back to Ubuntu 14.04. You’ll have to go for a fresh install instead. - -Ubuntu 14.04 is long-term support (LTS) release. Which means more stability and support for greater period. If you upgrade to 14.10, you’ll be forced to further upgrade to Ubuntu 15.04 as the support for 14.10 will last for 9 months only while 14.04 will go on for more than 3 years. - -Moreover, there are not many new features in Ubuntu 14.10 that could compel many users to switch to it. But yes, you’ll get the cutting edge OS for sure. So, at the end of the day it is your call whether to upgrade to Ubuntu 14.10 or not. - -### Upgrade to Ubuntu 14.10 from Ubuntu 14.04 ### - -To upgrade Ubuntu 14.04 to Ubuntu 14.10, follow the steps below: - -#### Step 1: #### - -Open **Software & Updates**. - -![](http://itsfoss.itsfoss.netdna-cdn.com/wp-content/uploads/2014/08/Software_Update_Ubuntu.jpeg) - -Go to **Updates** tab. In here make sure that **Notify me of a new Ubuntu version** is set to **For any new version**. By default Ubuntu will notify you only when there is another LTS release available. You must change it to upgrade to any new interim release. - -![](http://itsfoss.itsfoss.netdna-cdn.com/wp-content/uploads/2014/08/Upgrade_Ubuntu.png) - -#### Step 2: #### - -Now run **Software Updater**. - -![](http://itsfoss.itsfoss.netdna-cdn.com/wp-content/uploads/2014/04/Ubuntu_Updater.jpg) - -After the updates, it should prompt for the availability of a newer version. Click on upgrade and follow the next few obvious steps. - -![](http://itsfoss.itsfoss.netdna-cdn.com/wp-content/uploads/2014/08/Upgrade_to_Ubuntu_1410.jpeg) - -I hope this quick tutorial helped you to **upgrade Ubuntu 14.04 to Ubuntu 14.10**. Though this tutorial was written for Ubuntu, you can use the exact same steps to upgrade to Xubuntu 14.10, Kubuntu 14.10 or Lubuntu 14.10. Stay tuned for more Ubuntu 14.10 related articles. - --------------------------------------------------------------------------------- - -via: http://itsfoss.com/upgrade-ubuntu-14-04-to-14-10/ - -作者:[Abhishek][a] -译者:[译者ID](https://github.com/译者ID) -校对:[校对者ID](https://github.com/校对者ID) - -本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 - -[a]:http://itsfoss.com/author/Abhishek/ \ No newline at end of file diff --git a/translated/tech/20141024 How To Upgrade Ubuntu 14.04 To Ubuntu 14.10.md b/translated/tech/20141024 How To Upgrade Ubuntu 14.04 To Ubuntu 14.10.md new file mode 100644 index 0000000000..142f1d9538 --- /dev/null +++ b/translated/tech/20141024 How To Upgrade Ubuntu 14.04 To Ubuntu 14.10.md @@ -0,0 +1,51 @@ +如何升级Ubuntu 14.04 到Ubuntu 14.10 +================================================================================ +![](http://itsfoss.itsfoss.netdna-cdn.com/wp-content/uploads/2014/04/Ubuntu_Unicorn_Utopia.jpeg) + +Ubuntu 14.10已于昨日发布。想知道**如何从Ubuntu 14.04升级到Ubuntu 14.10**么?别担心,这很容易升级到Ubuntu 14.10。事实上,它只是点击几下和有良好的互联网连接的事情而已。 + +### 你需要从Ubuntu 14.04 切换到Ubuntu 14.10么? ### + +在你升级到Ubuntu 14.10之前,请确保你真的想为14.10抛弃Ubuntu14.04。一个很重要的原因是你不能从Ubuntu 14.10 降级到14.04。 你需要完全重新安装。 + +Ubuntu 14.04是长期支持(LTS)版本。这意味着更长的支持周期和更稳定和支持。如果升级到14.10,你将被迫在9个月后从Ubuntu 14.10 升级到15.04,而14.04将会持续3年以上。 + +此外,目前Ubuntu的14.10没有很多使用户迫切切换到14.10 的新功能。但是,你肯定会得到最前沿的操作系统。所以,在这之前是否升级到Ubuntu 14.10是你自己的决定。 + +### 从Ubuntu 14.04 升级到 Ubuntu 14.10 ### + +要从Ubuntu 14.04 升级到 Ubuntu 14.10,遵循下面的步骤: + +#### 步骤 1: #### + +打开 **软件和更新**. + +![](http://itsfoss.itsfoss.netdna-cdn.com/wp-content/uploads/2014/08/Software_Update_Ubuntu.jpeg) + +进入**更新**选项卡。这里要确保**Ubuntu新版本通知我** 设置成**对于任何新版本**。默认Ubuntu只会在另一个LTS发布时通知你。你必须要把它改成在任何中间版本都升级。 + +![](http://itsfoss.itsfoss.netdna-cdn.com/wp-content/uploads/2014/08/Upgrade_Ubuntu.png) + +#### 步骤 2: #### + +现在运行 **软件升级**。 + +![](http://itsfoss.itsfoss.netdna-cdn.com/wp-content/uploads/2014/04/Ubuntu_Updater.jpg) + +升级完成后,他应该会提示一个可用的新版本。点击升级,接着按照提示的步骤来。 + +![](http://itsfoss.itsfoss.netdna-cdn.com/wp-content/uploads/2014/08/Upgrade_to_Ubuntu_1410.jpeg) + +我希望本篇可以帮助你**从Ubuntu 14.04 升级到 Ubuntu 14.10**。虽然本教程是为Ubuntu写的,但是你可以用同样的步骤升级到Xubuntu 14.10和Kubuntu 14.10或者Lubuntu。敬请期待下一篇Ubuntu 14.10相关文章。 + +-------------------------------------------------------------------------------- + +via: http://itsfoss.com/upgrade-ubuntu-14-04-to-14-10/ + +作者:[Abhishek][a] +译者:[geekpi](https://github.com/geekpi) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[a]:http://itsfoss.com/author/Abhishek/ \ No newline at end of file From f0dc981eb47735638aa9022495d1670980ac1f2a Mon Sep 17 00:00:00 2001 From: zhengsihua Date: Mon, 27 Oct 2014 22:39:51 +0800 Subject: [PATCH 060/108] translated --- .../20141024 How To Upgrade Ubuntu 14.04 To Ubuntu 14.10.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/translated/tech/20141024 How To Upgrade Ubuntu 14.04 To Ubuntu 14.10.md b/translated/tech/20141024 How To Upgrade Ubuntu 14.04 To Ubuntu 14.10.md index 142f1d9538..1fd579521d 100644 --- a/translated/tech/20141024 How To Upgrade Ubuntu 14.04 To Ubuntu 14.10.md +++ b/translated/tech/20141024 How To Upgrade Ubuntu 14.04 To Ubuntu 14.10.md @@ -32,7 +32,7 @@ Ubuntu 14.04是长期支持(LTS)版本。这意味着更长的支持周期 ![](http://itsfoss.itsfoss.netdna-cdn.com/wp-content/uploads/2014/04/Ubuntu_Updater.jpg) -升级完成后,他应该会提示一个可用的新版本。点击升级,接着按照提示的步骤来。 +升级完成后,它应该会提示一个可用的新版本。点击升级,接着按照提示的步骤来。 ![](http://itsfoss.itsfoss.netdna-cdn.com/wp-content/uploads/2014/08/Upgrade_to_Ubuntu_1410.jpeg) From 5bd044dde24d760c60eb759f54d8a418951bcbd9 Mon Sep 17 00:00:00 2001 From: wxy Date: Mon, 27 Oct 2014 22:58:18 +0800 Subject: [PATCH 061/108] PUB:20140910 How to set up Nagios Remote Plugin Executor (NRPE) in Linux @felixonmars --- ...w to set up Nagios Remote Plugin Executor (NRPE) in Linux.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) rename {translated/tech => published}/20140910 How to set up Nagios Remote Plugin Executor (NRPE) in Linux.md (99%) diff --git a/translated/tech/20140910 How to set up Nagios Remote Plugin Executor (NRPE) in Linux.md b/published/20140910 How to set up Nagios Remote Plugin Executor (NRPE) in Linux.md similarity index 99% rename from translated/tech/20140910 How to set up Nagios Remote Plugin Executor (NRPE) in Linux.md rename to published/20140910 How to set up Nagios Remote Plugin Executor (NRPE) in Linux.md index af1d0267c1..9dc66f147d 100644 --- a/translated/tech/20140910 How to set up Nagios Remote Plugin Executor (NRPE) in Linux.md +++ b/published/20140910 How to set up Nagios Remote Plugin Executor (NRPE) in Linux.md @@ -231,6 +231,6 @@ via: http://xmodulo.com/2014/03/nagios-remote-plugin-executor-nrpe-linux.html [a]:http://xmodulo.com/author/sarmed [1]:http://xmodulo.com/2012/08/how-to-measure-average-cpu-utilization.html -[2]:http://xmodulo.com/2013/12/install-configure-nagios-linux.html +[2]:http://linux.cn/article-2436-1.html [3]:http://xmodulo.com/2013/01/how-to-set-up-rpmforge-repoforge-repository-on-centos.html [4]:http://xmodulo.com/2013/01/how-to-set-up-rpmforge-repoforge-repository-on-centos.html From 17a179f4cbf01bf48a37fbabf01613f44383ac1b Mon Sep 17 00:00:00 2001 From: wangjiezhe Date: Mon, 27 Oct 2014 23:54:53 +0800 Subject: [PATCH 062/108] [translated]20141022 Linux FAQs with Answers--How to change character encoding of a text file on Linux.md --- ...racter encoding of a text file on Linux.md | 32 +++++++++---------- 1 file changed, 15 insertions(+), 17 deletions(-) diff --git a/sources/tech/20141022 Linux FAQs with Answers--How to change character encoding of a text file on Linux.md b/sources/tech/20141022 Linux FAQs with Answers--How to change character encoding of a text file on Linux.md index 5ce0b7be75..a2bec2833b 100644 --- a/sources/tech/20141022 Linux FAQs with Answers--How to change character encoding of a text file on Linux.md +++ b/sources/tech/20141022 Linux FAQs with Answers--How to change character encoding of a text file on Linux.md @@ -1,46 +1,44 @@ -wangjiezhe translating... - -Linux FAQs with Answers--How to change character encoding of a text file on Linux +Linux 有问必答 -- 在 Linux 如何更改文本文件的字符编码 ================================================================================ -> **Question**: I have an "iso-8859-1"-encoded subtitle file which shows broken characters on my Linux system, and I would like to change its text encoding to "utf-8" character set. In Linux, what is a good tool to convert character encoding in a text file? +> **问题**:在我的 Linux 系统中有一个编码为 iso-8859-1 的字幕文件,其中部分字符无法正常显示,我想把文本改为 utf8 编码。在 Linux 张, 有没有一个好的工具来转换文本文件的字符编码? -As you already know, computers can only handle binary numbers at the lowest level - not characters. When a text file is saved, each character in that file is mapped to bits, and it is those "bits" that are actually stored on disk. When an application later opens that text file, each of those binary numbers are read and mapped back to the original characters that are understood by us human. This "save and open" process is best performed when all applications that need access to a text file "understand" its encoding, meaning the way binary numbers are mapped to characters, and thus can ensure a "round trip" of understandable data. +正如我们所知道的那样,电脑只能够处理低级的二进制数字,并不能直接处理字符。当一个文本文件被存储时,文件中的每一个字符都被映射成二进制数字,实际存储在硬盘中的正是这些“二进制数字”。之后当程序打开文本文件时,所有二进制数字都被读入并映射回原始的可读字符。只有当所有需要访问这个文件的程序都能够“理解”它的编码,即二进制数字到字符的映射时,这个“保存和打开”的过程才能很好地完成,这也确保了可理解数据的往返过程。 -If different applications do not use the same encoding while dealing with a text file, non-readable characters will be shown wherever special characters are found in the original file. By special characters we mean those that are not part of the English alphabet, such as accented characters (e.g., ñ, á, ü). +如果不同的程序使用不同的编码来处理同一个文件,源文件中的特殊字符就无法正常显示。这里的特殊字符指的是非英文字母的字符,例如带重音的字符(比如 ñ,á,ü)。 -The questions then become: 1) how can I know which character encoding a certain text file is using?, and 2) how can I convert it to some other encoding of my choosing? +然后问题就来了: 1)我们如何确定一个确定的文本文件使用的是什么字符编码? 2)我们如何把文件转换成已选择的字符编码? -### Step One ### +### 步骤一 ### -In order to find out the character encoding of a file, we will use a commad-line tool called file. Since the file command is a standard UNIX program, we can expect to find it in all modern Linux distros. +为了确定文件的字符编码,我们使用一个名为 “file” 的命令行工具。因为 file 命令是一个标准的 UNIX 程序,所以我们可以在所有现代的 Linux 发行版中找到它。 -Run the following command: +运行下面的命令: $ file --mime-encoding filename ![](https://farm6.staticflickr.com/5602/15595534261_1a7b4d16a2.jpg) -### Step Two ### +### 步骤二 ### -The next step is to check what kinds of text encodings are supported on your Linux system. For this, we will use a tool called iconv with the "-l" flag (lowercase L), which will list all the currently supported encodings. +下一步是查看你的 Linux 系统所支持的文件编码种类。为此,我们使用名为 iconv 短工具及 “-l” 选项(L 的小写)来列出所有当前支持的编码。 $ iconv -l -The iconv utility is part of the the GNU libc libraries, so it is available in all Linux distributions out-of-the-box. +iconv 工具是 GNU libc 库组成部分,因此它在所有 Linux 发行版中都是开箱即用的。 -### Step Three ### +### 步骤三 ### -Once we have selected a target encoding among those supported on our Linux system, let's run the following command to perform the conversion: +在我们在我们的 Linux 系统所支持的编码里面选定了目标编码之后,运行下面的命令来完成编码转换: $ iconv -f old_encoding -t new_encoding filename -For example, to convert iso-8859-1 to utf-8: +例如,把 iso-8859-1 编码转换为 utf-8 编码: $ iconv -f iso-8859-1 -t utf-8 input.txt ![](https://farm4.staticflickr.com/3943/14978042143_a516e0b10b_o.png) -Knowing how to use these tools together as we have demonstrated, you can for example fix a broken subtitle file: +了解了我们演示的如何使用这些工具之后,你可以像下面这样修复一个受损的字幕文件: ![](https://farm6.staticflickr.com/5612/15412197967_0dfe5078f9_z.jpg) From 36deab6a60862d00c7b6baeeda8da213d3a10d9b Mon Sep 17 00:00:00 2001 From: wangjiezhe Date: Mon, 27 Oct 2014 23:57:06 +0800 Subject: [PATCH 063/108] moved to translated --- ...s--How to change character encoding of a text file on Linux.md | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename {sources => translated}/tech/20141022 Linux FAQs with Answers--How to change character encoding of a text file on Linux.md (100%) diff --git a/sources/tech/20141022 Linux FAQs with Answers--How to change character encoding of a text file on Linux.md b/translated/tech/20141022 Linux FAQs with Answers--How to change character encoding of a text file on Linux.md similarity index 100% rename from sources/tech/20141022 Linux FAQs with Answers--How to change character encoding of a text file on Linux.md rename to translated/tech/20141022 Linux FAQs with Answers--How to change character encoding of a text file on Linux.md From 34ae3be482fe7d82df8d86636e718e9f557a9055 Mon Sep 17 00:00:00 2001 From: wangjiezhe Date: Tue, 28 Oct 2014 00:06:13 +0800 Subject: [PATCH 064/108] [translating]20141027 How to download an ISO image with BitTorrent fast and safely from the command line.md --- ...e with BitTorrent fast and safely from the command line.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/sources/tech/20141027 How to download an ISO image with BitTorrent fast and safely from the command line.md b/sources/tech/20141027 How to download an ISO image with BitTorrent fast and safely from the command line.md index e42f1c363b..e71c1a66cf 100644 --- a/sources/tech/20141027 How to download an ISO image with BitTorrent fast and safely from the command line.md +++ b/sources/tech/20141027 How to download an ISO image with BitTorrent fast and safely from the command line.md @@ -1,3 +1,5 @@ +wangjiezhe translating... + How to download an ISO image with BitTorrent fast and safely from the command line ================================================================================ If you are one of those guys who have urge to try out every new (or even beta) release of Linux distribution to satisfy your curiosity and stay up-to-date, you will need to deal with the hassle of downloading big ISO images every now and then. ISO providers typically put up .torrent file of their ISO images to ease up on the bandwidth consumption of their servers. The benefit of peer-to-peer download is obvious for users as well (in terms of speed), especially when a new release of a popular Linux distribution is up for grab, and everyone is downloading and seeding the release at the same time. @@ -122,4 +124,4 @@ via: http://xmodulo.com/download-iso-image-bittorrent-command-line.html [a]:http://xmodulo.com/author/nanni [1]:https://www.transmissionbt.com/ [2]:http://xmodulo.com/how-to-set-up-epel-repository-on-centos.html -[3]:http://xmodulo.com/verify-authenticity-integrity-downloaded-file.html \ No newline at end of file +[3]:http://xmodulo.com/verify-authenticity-integrity-downloaded-file.html From e1cdc41298d581671e0ca2271951d486c92ffc8a Mon Sep 17 00:00:00 2001 From: joeren Date: Tue, 28 Oct 2014 08:22:45 +0800 Subject: [PATCH 065/108] Update 20141027 How to encrypt files and directories with eCryptFS on Linux.md --- ... to encrypt files and directories with eCryptFS on Linux.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sources/tech/20141027 How to encrypt files and directories with eCryptFS on Linux.md b/sources/tech/20141027 How to encrypt files and directories with eCryptFS on Linux.md index 4619bf9cfe..dee739ed1f 100644 --- a/sources/tech/20141027 How to encrypt files and directories with eCryptFS on Linux.md +++ b/sources/tech/20141027 How to encrypt files and directories with eCryptFS on Linux.md @@ -1,3 +1,4 @@ +Translating by GOLinux! How to encrypt files and directories with eCryptFS on Linux ================================================================================ You do not have to be a criminal or work for the CIA to use encryption. You simply don't want anybody to spy on your financial data, family pictures, unpublished manuscripts, or secret notes where you have jotted down startup ideas which you think can make you super rich. @@ -104,4 +105,4 @@ via: http://xmodulo.com/encrypt-files-directories-ecryptfs-linux.html [3]:http://sourceforge.net/projects/loop-aes/ [4]:https://code.google.com/p/cryptsetup/wiki/DMCrypt [5]:https://ciphershed.org/ -[6]:http://ecryptfs.org/documentation.html \ No newline at end of file +[6]:http://ecryptfs.org/documentation.html From 4df0f6ac84798278f506fe13e94c611a6f208acc Mon Sep 17 00:00:00 2001 From: GOLinux Date: Tue, 28 Oct 2014 10:20:12 +0800 Subject: [PATCH 066/108] [Translated] 20141027 How to encrypt files and directories with eCryptFS on Linux.md --- ... and directories with eCryptFS on Linux.md | 108 ------------------ ... and directories with eCryptFS on Linux.md | 107 +++++++++++++++++ 2 files changed, 107 insertions(+), 108 deletions(-) delete mode 100644 sources/tech/20141027 How to encrypt files and directories with eCryptFS on Linux.md create mode 100644 translated/tech/20141027 How to encrypt files and directories with eCryptFS on Linux.md diff --git a/sources/tech/20141027 How to encrypt files and directories with eCryptFS on Linux.md b/sources/tech/20141027 How to encrypt files and directories with eCryptFS on Linux.md deleted file mode 100644 index dee739ed1f..0000000000 --- a/sources/tech/20141027 How to encrypt files and directories with eCryptFS on Linux.md +++ /dev/null @@ -1,108 +0,0 @@ -Translating by GOLinux! -How to encrypt files and directories with eCryptFS on Linux -================================================================================ -You do not have to be a criminal or work for the CIA to use encryption. You simply don't want anybody to spy on your financial data, family pictures, unpublished manuscripts, or secret notes where you have jotted down startup ideas which you think can make you super rich. - -I have heard people telling me "I'm not important enough to be spied" or "I don't hide anything to care about." Well, my opinion is that even if I don't have anything to hide, or I can publish a picture of my kids with my dog, I have the right to not do it and want to protect my privacy. - -### Types of Encryption ### - -We have largely two different ways to encrypt files and directories. One method is filesystem-level encryption, where only certain files or directories (e.g., /home/alice) are encrypted selectively. To me, this is a perfect way to start. You don't need to re-install everything to enable or test encryption. Filesystem-level encryption has some disadvantages, though. For example, many modern applications cache (part of) files in unencrypted portions of your hard drive, such as swap partition, /tmp and /var folders, which can result in privacy leaks. - -The other way is so-called full-disk encryption, which means that the entire disk is encrypted (possibly except for a master boot record). Full disk encryption works at the physical disk level; every bit written to the disk is encrypted, and anything read from the disk is automatically decrypted on the fly. This will prevent any potential unauthorized access to unencrypted data, and ensure that everything in the entire filesystem is encrypted, including swap partition or any temporarily cached data. - -### Available Encryption Tools ### - -There are several options to implement encryption in Linux. In this tutorial, I am going to describe one option: **eCryptFS** a user-space cryptographic filesystem tool. For your reference, here is a roundup of available Linux encryption tools. - -#### Filesystem-level encryption #### - -- [EncFS][1]: one of the easiest ways to try encryption. EncFS works as a FUSE-based pseudo filesystem, so you just create an encrypted folder and mount it to a folder to work with. -- [eCryptFS][2]: a POSIX compliant cryptographic filesystem, eCryptFS works in the same way as EncFS, so you have to mount it. - -#### Filesystem-level encryption #### - -- [Loop-AES][3]: the oldest disk encryption method. It is really fast and works on old system (e.g., kernel 2.0 branch). -- [DMCrypt][4]: the most common disk encryption scheme supported by the modern Linux kernel. -- [CipherShed][5]: an open-source fork of the discontinued TrueCrypt disk encryption program. - -### Basics of eCryptFS ### - -eCryptFS is a FUSE-based user-space cryptographic filesystem, which has been available in the Linux kernel since 2.6.19 (as ecryptfs module). An eCryptFS-encrypted pseudo filesystem is mounted on top of your current filesystem. It works perfectly on EXT filesystem family and others like JFS, XFS, ReiserFS, Btrfs, even NFS/CIFS shares. Ubuntu uses eCryptFS as its default method to encrypt home directory, and so does ChromeOS. Underneath it, eCryptFS uses AES algorithm by default, but it supports others algorithms, such as blowfish, des3, cast5, cast6. You will be able to choose among them in case you create a manual setup of eCryptFS. - -Like I said, Ubuntu lets us choose whether to encrypt our /home directory during installation. Well, this is the easiest way to use eCryptFS. - -![](https://farm6.staticflickr.com/5600/15639040345_8d74cd54a8_z.jpg) - -Ubuntu provides a set of user-friendly tools that make our life easier with eCryptFS, but enabling eCryptFS during Ubuntu installation only creates a specific pre-configured setup. So in case the default setup doesn't fit your needs, you will need to perform a manual setup. In this tutorial, I will describe **how to set up eCryptFS manually on major Linux distros**. - -### Installation of eCryptFS ### - -Debian, Ubuntu or its derivatives: - - $ sudo apt-get install ecryptfs-utils - -Note that if you chose to encrypt your home directory during Ubuntu installation, eCryptFS should be already installed. - -CentOS, RHEL or Fedora: - - # yum install ecryptfs-utils - -Arch Linux: - - $ sudo pacman -S ecryptfs-utils - -After installing the package, it is a good practice to load the eCryptFS kernel module just to be sure: - - $ sudo modprobe ecryptfs - -### Configure eCryptFS ### - -Now let's start encrypting some directory by running eCryptFS configuration tool: - - $ ecryptfs-setup-private - -![](https://farm6.staticflickr.com/5608/15453440890_3b4be6d5a7_z.jpg) - -It will ask for a login passphrase and a mount passphrase. The login passphrase is the same as your normal login password. The mount passphrase is used to derive a file encryption master key. Leave it blank to generate one as it's safer. Log out and log back in. - -You will notice that eCryptFS created two directories by default: Private and .Private in your home directory. The ~/.Private directory contains encrypted data, while you can access corresponding decrypted data in the ~/Private directory. At the time you log in, the ~/.Private directory is automatically decrypted and mapped to the ~/Private directory, so you can access it. When you log out, the ~/Private directory is automatically unmounted and the content in the ~/Private directory is encrypted back into the ~/.Private directory. - -The way eCryptFS knows that you own the ~/.Private directory, and automatically decrypts it into the ~/Private directory without needing us to type a password is through an eCryptFS PAM module which does the trick for us. - -In case you don't want to have the ~/Private directory automatically mounted upon login, just add the "--noautomount" option when running ecryptfs-setup-private tool. Similarly, if you do not want the ~/Private directory to be automatically unmounted after logout, specify "--noautoumount" option. But then, you will have to mount or unmount ~/Private directory manually by yourself: - - $ ecryptfs-mount-private ~/.Private ~/Private - $ ecryptfs-umount-private ~/Private - -You can verify that .Private folder is mounted by running: - - $ mount - -![](https://farm6.staticflickr.com/5610/15452374739_2ffb73cf05_z.jpg) - -Now we can start putting any sensitive files in ~/Private folder, and they will automatically be encrypted and locked down in ~/.Private folder when we log out. - -All this seems pretty magical. Basically ecryptfs-setup-private tool makes everything easy to set up. If you want to play a little more and set up specific aspects of eCryptFS, go to the [official documentation][6]. - -### Conclusion ### - -To conclude, if you care a great deal about your privacy, the best setup I recommend is to combine eCryptFS-based filesystem-level encryption with full-disk encryption. Always remember though, file encryption alone does not guarantee your privacy. - --------------------------------------------------------------------------------- - -via: http://xmodulo.com/encrypt-files-directories-ecryptfs-linux.html - -作者:[Christopher Valerio][a] -译者:[译者ID](https://github.com/译者ID) -校对:[校对者ID](https://github.com/校对者ID) - -本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 - -[a]:http://xmodulo.com/author/valerio -[1]:http://www.arg0.net/encfs -[2]:http://ecryptfs.org/ -[3]:http://sourceforge.net/projects/loop-aes/ -[4]:https://code.google.com/p/cryptsetup/wiki/DMCrypt -[5]:https://ciphershed.org/ -[6]:http://ecryptfs.org/documentation.html diff --git a/translated/tech/20141027 How to encrypt files and directories with eCryptFS on Linux.md b/translated/tech/20141027 How to encrypt files and directories with eCryptFS on Linux.md new file mode 100644 index 0000000000..655c8a27b1 --- /dev/null +++ b/translated/tech/20141027 How to encrypt files and directories with eCryptFS on Linux.md @@ -0,0 +1,107 @@ +在Linux上使用eCryptFS加密文件和目录 +================================================================================ +作为罪犯,你需要为自己的身份保密;而作为中情局成员,你同样也需要为自己的身份保密。但是,你却不是他们其中的任何一员,你只是不想其他人查探到你的金融数据、家庭照片、尚未出版的手稿,或者记录着你能发家致富的最初想法的私密笔记。 + +我时常听到有人告诉我“我只是个微不足道的人,没人会查探我”或者“我没有什么东西要隐藏的。”好吧,告诉你我的想法,即便我没有什么要隐藏的,或者我也可以公开我带着狗的孩子的照片,那我也有权利不这么去做,也有权利来保护我的隐私。 + +### 加密类型 ### + +我们主要有两种加密文件和目录的方法。一种是文件系统级别的加密,在这种加密中,你可以选择性地加密某些文件或者目录(如,/home/alice)。对我而言,这是个十分不错的方法,你不需要为了启用或者测试加密而把所有一切重新安装一遍。然而,文件系统级别的加密也有一些缺点。例如,许多现代应用程序会缓存(部分)文件你硬盘中未加密的部分中,比如交换分区、/tmp和/var文件夹,而这会导致隐私泄漏。 + +另外一种方式,就是所谓的全盘加密,这意味着整个磁盘都会被加密(可能除了主引导记录外)。全盘加密工作在物理磁盘级别,写入到磁盘的每个比特都会被加密,而从磁盘中读取的任何东西都会在运行中解密。这会阻止任何潜在的对未加密数据的未经授权的访问,并且确保整个文件系统中的所有东西都被加密,包括交换分区或任何临时缓存数据。 + +### 可用的加密工具 ### + +在Linux中要实施加密,有几个可供选择的工具。在本教程中,我打算介绍其中一个:**eCryptFS**,一个用户空间文件系统加密工具。下面提供了一个Linux上可用的加密工具摘要供您参考。 + +#### 文件系统级别加密 #### + +- [EncFS][1]:尝试加密的最简单方式之一。EncFS工作在基于FUSE的伪文件系统上,所以你只需要创建一个加密文件夹并将它挂载到某个文件夹就可以工作了。 +- [eCryptFS][2]:一个POSIX兼容的加密文件系统,eCryptFS工作方式和EncFS相同,所以你必须挂载它。 + +#### 磁盘级别加密 #### + +- [Loop-AES][3]:最古老的磁盘加密方法。它真的很快,并且适用于旧系统(如,2.0内核分支)。 +- [DMCrypt][4]:最常见的磁盘加密方案,支持现代Linux内核。 +- [CipherShed][5]:已停止的TrueCrypt磁盘加密程序的一个开源分支。 + +### eCryptFS基础 ### + +eCrypFS是一个基于FUSE的用户空间加密文件系统,在Linux内核2.6.19及更高版本中可用(作为encryptfs模块)。eCryptFS加密的伪文件系统挂载到当前文件系统的顶部。它可以很好地工作在EXT文件系统家族和其它文件系统如JFS、XFS、ReiserFS、Btrfs,甚至是NFS/CIFS共享文件系统上。Ubuntu使用eCryptFS作为加密其家目录的默认方法,ChromeOS也是。在eCryptFS底层,默认使用的是AES算法,但是它也支持其它算法,如blowfish、des3、cast5、cast6。如果你是通过手工创建eCryptFS设置,你可以选择其中一种算法。 + +就像我所的,Ubuntu让我们在安装过程中选择是否加密/home目录。好吧,这是使用eCryptFS的最简单的一种方法。 + +![](https://farm6.staticflickr.com/5600/15639040345_8d74cd54a8_z.jpg) + +Ubuntu提供了一个用户友好的工具集,通过eCryptFS可以让我们的生活更轻松,但是在Ubuntu安装过程中启用eCryptFS只创建了一个指定的预配置的设置。所以,如果默认的设置不适合你的需求,你需要进行手工设置。在本教程中,我将介绍**如何在主流Linux发行版上手工设置eCryptFS**。 + +### eCryptFS的安装 ### + +Debian,Ubuntu或其衍生版: + + $ sudo apt-get install ecryptfs-utils + +注意,如果你在Ubuntu安装过程中选择加密家目录,eCryptFS应该已经安装了。 + +CentOS, RHEL or Fedora: + + # yum install ecryptfs-utils + +Arch Linux: + + $ sudo pacman -S ecryptfs-utils + +在安装完包后,加载eCryptFS内核模块当然会是一个很好的实践: + + $ sudo modprobe ecryptfs + +### 配置eCryptFS ### + +现在,让我们开始加密一些目录,运行eCryptFS配置工具: + + $ ecryptfs-setup-private + +![](https://farm6.staticflickr.com/5608/15453440890_3b4be6d5a7_z.jpg) + +它会要求你输入登录密码和挂载密码。登录密码和你常规登录的密码一样,而挂载密码用于派生一个文件加密主密钥。留空来生成一个,这样会更安全。登出然后重新登录。 + +你会注意到,eCryptFS默认在你的家目录中创建了两个目录:Private和.Private。~/.Private目录包含有加密的数据,而你可以在~/Private目录中访问到相应的解密后的数据。在你登录时,~/.Private目录会自动解密并映射到~/Private目录,因此你可以访问它。当你登出时,~/Private目录会自动卸载,而~/Private目录中的内容会加密回到~/.Private目录。 + +eCryptFS怎么会知道你拥有~/.Private目录,并自动将其解密到~/Private目录而不需要我们输入密码呢?这就是eCryptFS的PAM模块捣的鬼,它为我们提供了这项便利服务。 + +如果你不想要~/Private目录在登录时自动挂载,只需要在运行ecryptfs-setup-private工具时添加“--noautomount”选项。同样,如果你不想要~/Private目录在登出后自动卸载,也可以自动“--noautoumount”选项。但是,那样后,你需要自己手工挂载或卸载~/Private目录: + + $ ecryptfs-mount-private ~/.Private ~/Private + $ ecryptfs-umount-private ~/Private + +你可以来验证一下.Private文件夹是否被挂载,运行: + + $ mount + +![](https://farm6.staticflickr.com/5610/15452374739_2ffb73cf05_z.jpg) + +现在,我们可以开始把任何敏感文件放进~/Private文件夹里头了,它们会在我们登出时自动被加密并锁在~/.Private文件内。 + +所有这一切看起来是那么得神奇。这主要是ecryptfs-setup-private工具让一切设置变得简单。如果你想要深究一点,对eCryptFS指定的方面进行设置,那么请转到[官方文档][6]。 + +### 结尾 ### + +综上所述,如果你十分关注你的隐私,最好是将基于eCryptFS文件系统级别的加密和全盘加密相结合。切记,只进行文件加密并不能保证你的隐私不受侵犯。 + +------------------------------------------------------------------------------ + +via: http://xmodulo.com/encrypt-files-directories-ecryptfs-linux.html + +作者:[Christopher Valerio][a] +译者:[GOLinux](https://github.com/GOLinux) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[a]:http://xmodulo.com/author/valerio +[1]:http://www.arg0.net/encfs +[2]:http://ecryptfs.org/ +[3]:http://sourceforge.net/projects/loop-aes/ +[4]:https://code.google.com/p/cryptsetup/wiki/DMCrypt +[5]:https://ciphershed.org/ +[6]:http://ecryptfs.org/documentation.html From b303e861923e082ceb0e700116631d38a73e3640 Mon Sep 17 00:00:00 2001 From: ZTinoZ Date: Tue, 28 Oct 2014 15:24:00 +0800 Subject: [PATCH 067/108] Translating by ZTinoZ --- ...17 Linus Torvalds' Best Quotes from LinuxCon Europe 2014.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sources/news/20141017 Linus Torvalds' Best Quotes from LinuxCon Europe 2014.md b/sources/news/20141017 Linus Torvalds' Best Quotes from LinuxCon Europe 2014.md index a2434e23bb..1ab487b234 100644 --- a/sources/news/20141017 Linus Torvalds' Best Quotes from LinuxCon Europe 2014.md +++ b/sources/news/20141017 Linus Torvalds' Best Quotes from LinuxCon Europe 2014.md @@ -1,3 +1,4 @@ +Translating by ZTinoZ Linus Torvalds' Best Quotes from LinuxCon Europe 2014 ================================================================================ ![](http://www.linux.com/images/stories/41373/Linus-Dirk-2014.jpg) @@ -57,4 +58,4 @@ via: http://www.linux.com/news/featured-blogs/200-libby-clark/791788-linus-torva 本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 [a]:http://www.linux.com/community/forums/person/41373/catid/200-libby-clark -[1]:http://events.linuxfoundation.org/events/linuxcon-europe \ No newline at end of file +[1]:http://events.linuxfoundation.org/events/linuxcon-europe From f03b9c01ecd52a648bb95c4af220955e16a57c81 Mon Sep 17 00:00:00 2001 From: johnhoow Date: Tue, 28 Oct 2014 21:19:12 +0800 Subject: [PATCH 068/108] johnhoow translating --- ...ow To Upgrade Ubuntu 14.04 Trusty To Ubuntu 14.10 Utopic.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sources/tech/20141024 How To Upgrade Ubuntu 14.04 Trusty To Ubuntu 14.10 Utopic.md b/sources/tech/20141024 How To Upgrade Ubuntu 14.04 Trusty To Ubuntu 14.10 Utopic.md index 78777b46a0..dee546fd1e 100644 --- a/sources/tech/20141024 How To Upgrade Ubuntu 14.04 Trusty To Ubuntu 14.10 Utopic.md +++ b/sources/tech/20141024 How To Upgrade Ubuntu 14.04 Trusty To Ubuntu 14.10 Utopic.md @@ -1,3 +1,4 @@ +johnhoow translating... How To Upgrade Ubuntu 14.04 Trusty To Ubuntu 14.10 Utopic ================================================================================ Hello all! Greetings! Today, we will discuss about how to upgrade from Ubuntu 14.04 to 14.10 final beta. As you may know, Ubuntu 14.10 final beta has already been released. According to the [Ubuntu release schedule][1], the final stable version will be available today in a couple of hours. @@ -106,4 +107,4 @@ via: http://www.unixmen.com/upgrade-ubuntu-14-04-trusty-ubuntu-14-10-utopic/ 本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 -[1]:https://wiki.ubuntu.com/UtopicUnicorn/ReleaseSchedule \ No newline at end of file +[1]:https://wiki.ubuntu.com/UtopicUnicorn/ReleaseSchedule From 42850cb72ce1588b7b6d2cd4d8640448786cc23c Mon Sep 17 00:00:00 2001 From: disylee Date: Tue, 28 Oct 2014 22:23:43 +0800 Subject: [PATCH 069/108] Update 20141023 How to turn your CentOS box into a BGP router using Quagga.md --- ...w to turn your CentOS box into a BGP router using Quagga.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sources/tech/20141023 How to turn your CentOS box into a BGP router using Quagga.md b/sources/tech/20141023 How to turn your CentOS box into a BGP router using Quagga.md index 63bda4a215..366d5a2861 100644 --- a/sources/tech/20141023 How to turn your CentOS box into a BGP router using Quagga.md +++ b/sources/tech/20141023 How to turn your CentOS box into a BGP router using Quagga.md @@ -1,3 +1,4 @@ +disylee占一个 How to turn your CentOS box into a BGP router using Quagga ================================================================================ In a [previous tutorial][1](注:此文原文做过,文件名:“20140928 How to turn your CentOS box into an OSPF router using Quagga.md”,如果前面翻译发布了,可以修改此链接), I described how we can easily turn a Linux box into a fully-fledged OPSF router using Quagga, an open source routing software suite. In this tutorial, I will focus on **converting a Linux box into a BGP router, again using Quagga**, and demonstrate how to set up BGP peering with other BGP routers. @@ -309,4 +310,4 @@ via: http://xmodulo.com/centos-bgp-router-quagga.html 本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 [a]:http://xmodulo.com/author/sarmed -[1]:http://xmodulo.com/turn-centos-box-into-ospf-router-quagga.html \ No newline at end of file +[1]:http://xmodulo.com/turn-centos-box-into-ospf-router-quagga.html From ae3d7383d0b27f53b0444c1e60f9d78fff0b888d Mon Sep 17 00:00:00 2001 From: DeadFire Date: Wed, 29 Oct 2014 13:09:25 +0800 Subject: [PATCH 070/108] =?UTF-8?q?20141029-1=20=E9=80=89=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ... to Install MariaDB in Ubuntu 14.04 LTS.md | 52 +++++++ ...uplex not supported in this QEMU binary.md | 40 +++++ ...stall REMI repository on CentOS or RHEL.md | 52 +++++++ ... port in the firewall on CentOS or RHEL.md | 68 ++++++++ ... Scripting--Checking Conditions with if.md | 146 ++++++++++++++++++ 5 files changed, 358 insertions(+) create mode 100644 sources/tech/20141029 How to Install MariaDB in Ubuntu 14.04 LTS.md create mode 100644 sources/tech/20141029 Linux FAQs with Answers--How to fix hda-duplex not supported in this QEMU binary.md create mode 100644 sources/tech/20141029 Linux FAQs with Answers--How to install REMI repository on CentOS or RHEL.md create mode 100644 sources/tech/20141029 Linux FAQs with Answers--How to open a port in the firewall on CentOS or RHEL.md create mode 100644 sources/tech/20141029 Shell Scripting--Checking Conditions with if.md diff --git a/sources/tech/20141029 How to Install MariaDB in Ubuntu 14.04 LTS.md b/sources/tech/20141029 How to Install MariaDB in Ubuntu 14.04 LTS.md new file mode 100644 index 0000000000..3392cfdc8c --- /dev/null +++ b/sources/tech/20141029 How to Install MariaDB in Ubuntu 14.04 LTS.md @@ -0,0 +1,52 @@ +How to Install MariaDB in Ubuntu 14.04 LTS +================================================================================ +MariaDB is an Open Source database Server & It is 100 % compatible with MySQL, drop-in replacement to MySQL database server. + +### Background of MariaDB : ### + +In 2008, MySQL was acquired by **Sun Microsystems**, which was in turn acquired by Oracle Corporation in 2010. While the initial acquisition by Sun was hailed by many in the MySQL community as exactly what the project needed, that sentiment did not last, and the subsequent acquisition by Oracle was unfortunately met with far lower expectations. Many of MySQL’s developers left Sun and Oracle to work on new projects . Among them was **Michael ‘Monty’ Widenius**, creator of MySQL and one of the project’s longtime technical lead. Monty and his team created a fork (offshoot) of the MySQL code base and named his new DBMS **MariaDB** + +In this Post we will discuss how to install MariaDB in Ubuntu Linux. By default mariadb packages are not included in Ubuntu Repositories. So to install mariadb , we we have set MariaDB repository. + +#### Setting Up MariaDB Repository #### + + $ sudo apt-get install software-properties-common + $ sudo apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xcbcb082a1bb943db + $ sudo add-apt-repository 'deb http://sfo1.mirrors.digitalocean.com/mariadb/repo/10.0/ubuntu trusty main' + +#### Installation of MariaDB : #### + + $ sudo apt-get update + $ sudo apt-get install mariadb-server + +While Installing MariaDB , you will be asked to set Maria DB root Password. + +![](http://www.linuxtechi.com/wp-content/uploads/2014/10/mariadb-root-1024x442-1.jpg) + +#### Connect To MariaDB From the Command Line : #### + + linuxtechi@mail:~$ mysql -uroot -p + Enter password: + Welcome to the MariaDB monitor. Commands end with ; or \g. + Your MariaDB connection id is 40 + Server version: 10.0.14-MariaDB-1~trusty-log mariadb.org binary distribution + Copyright (c) 2000, 2014, Oracle, SkySQL Ab and others. + Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. + MariaDB [(none)]> + +#### Maria DB Service #### + + $ sudo /etc/init.d/mysql stop + $ sudo /etc/init.d/mysql start + +-------------------------------------------------------------------------------- + +via: http://www.linuxtechi.com/install-mariadb-in-ubuntu/ + +作者:[Pradeep Kumar][a] +译者:[译者ID](https://github.com/译者ID) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[a]:http://www.linuxtechi.com/author/pradeep/ \ No newline at end of file diff --git a/sources/tech/20141029 Linux FAQs with Answers--How to fix hda-duplex not supported in this QEMU binary.md b/sources/tech/20141029 Linux FAQs with Answers--How to fix hda-duplex not supported in this QEMU binary.md new file mode 100644 index 0000000000..eafc88f00c --- /dev/null +++ b/sources/tech/20141029 Linux FAQs with Answers--How to fix hda-duplex not supported in this QEMU binary.md @@ -0,0 +1,40 @@ +Linux FAQs with Answers--How to fix “hda-duplex not supported in this QEMU binary” +================================================================================ +> **Question**: When I try to install Linux on a new VM in virt-manager, the VM fails to boot with the following error: "unsupported configuration: hda-duplex not supported in this QEMU binary." How can I fix this error? + +The cause for this VM error may originate from a qemu bug where a configured default sound card model is not recognized. + +![](https://farm4.staticflickr.com/3935/15000012754_b8b147fb16_o.png) + + Unable to complete install: 'unsupported configuration: hda-duplex not supported in this QEMU library' + +To solve this problem, do the following. + +### Solution One: Virt-Manager ### + +On **virt-manager**, open the VM's virtual hardware details menu, go to sound device section, and change the device model from default to ac97. + +![](https://farm4.staticflickr.com/3956/15435183020_d97856170c_z.jpg) + +Click on "Apply" button to save the change. See if you can start the VM now. + +### Solution Two: Virsh ### + +If you are using **virsh**, not **virt-manager**, you can edit the VM's XML file accordingly. Look for **sound** section inside section, and change the sound model to **ac97** as follows. + + + . . . + +
+ + . . . + + +-------------------------------------------------------------------------------- + +via: http://ask.xmodulo.com/hda-duplex-not-supported-in-this-qemu-binary.html + +译者:[译者ID](https://github.com/译者ID) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 \ No newline at end of file diff --git a/sources/tech/20141029 Linux FAQs with Answers--How to install REMI repository on CentOS or RHEL.md b/sources/tech/20141029 Linux FAQs with Answers--How to install REMI repository on CentOS or RHEL.md new file mode 100644 index 0000000000..10f5805987 --- /dev/null +++ b/sources/tech/20141029 Linux FAQs with Answers--How to install REMI repository on CentOS or RHEL.md @@ -0,0 +1,52 @@ +Linux FAQs with Answers--How to install REMI repository on CentOS or RHEL +================================================================================ +> **Question**: How can I configure the REMI repository on CentOS or RHEL, and install packages from the REMI repository? + +The [REMI repository][1] offers updated versions of core CentOS and RHEL packages, notably the latest PHP/MySQL stack. + +One thing to remember before installing the REMI repository is that it is not recommended to run yum update with the REMI repository. Since the package names of the REMI repository are the same as those used in the official RHEL/CentOS repositories, running yum update may trigger accidental upgrades of core packages. It is a good idea to keep the REMI repository disabled, and enable it only when you need to install packages that are only available in REMI. + +### Prerequisite ### + +Before installing REMI repository, you first need to enable the EPEL repository because some packages in REMI depend on EPEL. Follow [this guide][2] to set up EPEL repository on CentOS or RHEL. + +### Install REMI Repository ### + +Now go ahead and install REMI repository as follows. + +On CentOS 7: + + $ sudo rpm --import http://rpms.famillecollet.com/RPM-GPG-KEY-remi + $ sudo rpm -ivh http://rpms.famillecollet.com/enterprise/remi-release-7.rpm + +On CentOS 6: + + $ sudo rpm --import http://rpms.famillecollet.com/RPM-GPG-KEY-remi + $ sudo rpm -ivh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm + +By default, the REMI repository is set disabled. To check whether the REMI repository is successfully installed, use this command. You will see several REMI repositories such as remi, remi-php55 and remi-php56. + + $ yum repolist disabled | grep remi + +![](https://farm4.staticflickr.com/3956/15443851690_a1abe9eb40_z.jpg) + +### Install a Package from REMI Repository ### + +As clarified, it is a good idea to keep the REMI repository disabled, and use it only when necessary. + +To search or install a package in the REMI repository, use these commands: + + $ sudo yum --enablerepo=remi search + $ sudo yum --enablerepo=remi install + +-------------------------------------------------------------------------------- + +via: http://ask.xmodulo.com/install-remi-repository-centos-rhel.html + +译者:[译者ID](https://github.com/译者ID) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[1]:http://rpms.famillecollet.com/ +[2]:http://xmodulo.com/how-to-set-up-epel-repository-on-centos.html \ No newline at end of file diff --git a/sources/tech/20141029 Linux FAQs with Answers--How to open a port in the firewall on CentOS or RHEL.md b/sources/tech/20141029 Linux FAQs with Answers--How to open a port in the firewall on CentOS or RHEL.md new file mode 100644 index 0000000000..32277122b3 --- /dev/null +++ b/sources/tech/20141029 Linux FAQs with Answers--How to open a port in the firewall on CentOS or RHEL.md @@ -0,0 +1,68 @@ +Linux FAQs with Answers--How to open a port in the firewall on CentOS or RHEL +================================================================================ +> **Question**: I am running a web/file server on my CentOS box, and to access the server remotely, I need to modify a firewall to allow access to a TCP port on the box. What is a proper way to open a TCP/UDP port in the firewall of CentOS/RHEL? + +Out of the box, enterprise Linux distributions such as CentOS or RHEL come with a powerful firewall built-in, and their default firewall rules are pretty restrictive. Thus if you install any custom services (e.g., web server, NFS, Samba), chances are their traffic will be blocked by the firewall rules. You need to open up necessary ports on the firewall to allow their traffic. + +On CentOS/RHEL 6 or earlier, the iptables service allows users to interact with netfilter kernel modules to configure firewall rules in the user space. Starting with CentOS/RHEL 7, however, a new userland interface called firewalld has been introduced to replace iptables service. + +To check the current firewall rules, use this command: + + $ sudo iptables -L + +![](https://farm6.staticflickr.com/5601/15604533686_a8c0ae7b89_z.jpg) + +Now let's see how we can update the firewall to open a port on CentOS/RHEL. + +### Open a Port on CentOS/RHEL 7 ### + +Starting with CentOS and RHEL 7, firewall rule settings are managed by firewalld service daemon. A command-line client called firewall-cmd can talk to this deamon to update firewall rules permanently. + +To open up a new port (e.g., TCP/80) permanently, use these commands. + + $ sudo firewall-cmd --zone=public --add-port=80/tcp --permanent + $ sudo firewall-cmd --reload + +Without "--permanent" flag, the firewall rule would not persist across reboots. + +### Open a Port on CentOS/RHEL 6 ### + +On CentOS/RHEL 6 or earlier, a iptables service is responsible for maintaining firewall rules. + +Use iptables command to open up a new TCP/UDP port in the firewall. To save the updated rule permanently, you need the second command. + + $ sudo iptables -I INPUT -p tcp -m tcp --dport 80 -j ACCEPT + $ sudo service iptables save + +Another way to open up a port on CentOS/RHEL 6 is to use a terminal-user interface (TUI) firewall client, named system-config-firewall-tui. + + $ sudo system-config-firewall-tui + +Choose "Customize" button in the middle and press ENTER. + +![](https://farm6.staticflickr.com/5602/15628237745_4409cff52f_z.jpg) + +If you are trying to update the firewall for any well-known service (e.g., web server), you can easily enable the firewall for the service here, and close the tool. If you are trying to open up any arbitrary TCP/UDP port, choose "Forward" button and go to a next window. + +![](https://farm4.staticflickr.com/3941/15604533696_12857827ea_z.jpg) + +Add a new rule by choosing "Add" button. + +![](https://farm4.staticflickr.com/3941/15008065383_4b92cbd843_z.jpg) + +Specify a port (e.g., 80) or port range (e.g., 3000-3030), and protocol (e.g., tcp or udp). + +![](https://farm4.staticflickr.com/3946/15007474154_bef75d8c72_z.jpg) + +Finally, save the updated configuration, and close the tool. At this point, the firewall will be saved permanently. + +![](https://farm4.staticflickr.com/3942/15628237765_0299a638ab_z.jpg) + +-------------------------------------------------------------------------------- + +via: http://ask.xmodulo.com/open-port-firewall-centos-rhel.html + +译者:[译者ID](https://github.com/译者ID) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 \ No newline at end of file diff --git a/sources/tech/20141029 Shell Scripting--Checking Conditions with if.md b/sources/tech/20141029 Shell Scripting--Checking Conditions with if.md new file mode 100644 index 0000000000..400718b185 --- /dev/null +++ b/sources/tech/20141029 Shell Scripting--Checking Conditions with if.md @@ -0,0 +1,146 @@ +Shell Scripting – Checking Conditions with if +================================================================================ +In Bourne Shell if statement checks whether a condition is true or not. If so , the shell executes the block of code associated with the if statement. If the statement is not true , the shell jumps beyond the end of the if statement block & Continues on. + +### Syntax of if Statement : ### + + if [ condition_command ] + then + command1 + command2 + …….. + last_command + fi + +#### Example: #### + + #!/bin/bash + number=150 + if [ $number -eq 150 ] + then + echo "Number is 150" + fi + +#### if-else Statement : #### + +In addition to the normal if statement , we can extend the if statement with an else block. The basic idea is that if the statement is true , then execute the if block. If the statement is false , then execute the else block. + +#### Syntax : #### + + if [ condition_command ] + then + command1 + command2 + …….. + last_command + else + command1 + command2 + …….. + last_command + fi + +#### Example: #### + + #!/bin/bash + number=150 + if [ $number -gt 250 ] + then + echo "Number is greater" + else + echo "Number is smaller" + fi + +### If..elif..else..fi Statement (Short for else if) ### + +The Bourne shell syntax for the if statement allows an else block that gets executed if the test is not true. We can nest if statement , allowing for multiple conditions. As an alternative, we can use the elif construct , shot for else if. + +#### Syntax : #### + + if [ condition_command ] + then + command1 + command2 + …….. + last_command + elif [ condition_command2 ] + then + command1 + command2 + …….. + last_command + else + command1 + command2 + …….. + last_command + fi + +#### Example : #### + + #!/bin/bash + number=150 + if [ $number -gt 300 ] + then + echo "Number is greater" + elif [ $number -lt 300 ] + then + echo "Number is Smaller" + else + echo "Number is equal to actual value" + fi + +### Nested if statements : ### + +If statement and else statement can be nested in a bash script. The keyword ‘fi’ shows the end of the inner if statement and all if statement should end with the keyword ‘fi’. + +Basic **syntax of nested** if is shown below : + + if [ condition_command ] + then + command1 + command2 + …….. + last_command + else + if [ condition_command2 ] + then + command1 + command2 + …….. + last_command + else + command1 + command2 + …….. + last_command + fi + fi + +#### Example: #### + + #!/bin/bash + number=150 + if [ $number -eq 150 ] + then + echo "Number is 150" + else + if [ $number -gt 150 ] + then + echo "Number is greater" + else + echo "'Number is smaller" + fi + fi + +-------------------------------------------------------------------------------- + +via: http://www.linuxtechi.com/shell-scripting-checking-conditions-with-if/ + +作者:[Pradeep Kumar][a] +译者:[译者ID](https://github.com/译者ID) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[a]:http://www.linuxtechi.com/author/pradeep/ \ No newline at end of file From 0ef9cf09fad51738535cf8dc0fde6726ef296d9b Mon Sep 17 00:00:00 2001 From: DeadFire Date: Wed, 29 Oct 2014 16:41:20 +0800 Subject: [PATCH 071/108] =?UTF-8?q?20141029-2=20=E9=80=89=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...up My Weather Indicator in Ubuntu 14.10.md | 75 ++++++ ...ate and manage LXC containers on Ubuntu.md | 141 ++++++++++ ...ginx MariaDB or MySQL and php on CentOS.md | 248 ++++++++++++++++++ 3 files changed, 464 insertions(+) create mode 100644 sources/tech/20141029 How to Install and Setup My Weather Indicator in Ubuntu 14.10.md create mode 100644 sources/tech/20141029 How to create and manage LXC containers on Ubuntu.md create mode 100644 sources/tech/20141029 How to install LEMP stack nginx MariaDB or MySQL and php on CentOS.md diff --git a/sources/tech/20141029 How to Install and Setup My Weather Indicator in Ubuntu 14.10.md b/sources/tech/20141029 How to Install and Setup My Weather Indicator in Ubuntu 14.10.md new file mode 100644 index 0000000000..a5e06daef8 --- /dev/null +++ b/sources/tech/20141029 How to Install and Setup My Weather Indicator in Ubuntu 14.10.md @@ -0,0 +1,75 @@ +How to Install and Setup ‘My Weather Indicator’ in Ubuntu 14.10 +================================================================================ +![](http://www.omgubuntu.co.uk/wp-content/uploads/2014/10/my-weather-indicator.jpg) + +**There’s no drought of ways to be kept abreast of the weather on the Ubuntu desktop, with the Unity Dash and desktop apps like [Typhoon][1] all offering to help.** + +But panel applets that offer quick glance condition and temperature stats, with a ream of detailed meteorological data never more than a quick click away, are by far the most popular weather utilities on Linux. + +[My Weather Indicator][2] by Atareao is one of this breed, and arguably the best. + +It displays current temperature and conditions on the Unity panel, and has a menu stuffed full of stats, including ‘feels like’, cloudiness and sunrise/set times. In addition, there’s a desktop widget, multiple location support, a choice of backend data providers, and plenty of configuration options. + +Sounds pretty comprehensive, right? Let’s walk through how to install and set it up on Ubuntu. + +### Install My Weather Indicator in Ubuntu ### + +My Weather Indicator is not available to install from the Ubuntu Software Center directly, but both a .deb installer and an officially maintained PPA (providing packages for both Ubuntu 14.04 LTS and 14.10) are provided by the developers. + +- Download My Weather Indicator (.deb) + +To ensure you’re always kept up-to-date with the latest release I recommend adding the [Atareao PPA][3] to your Software Sources and installing from there. + +How? **Open a new Terminal** window (Unity Dash > Terminal, or press Ctrl+Alt+T) and **enter the following two commands carefully**, entering your system password when prompted: + + sudo add-apt-repository ppa:atareao/atareao + + sudo apt-get update && sudo apt-get install my-weather-indicator + +#### Setting Up My Weather Indicator #### + +Regardless of how you install the tool, once you have you can launch it from the Unity Dash by searching for “weather”. + +![](http://www.omgubuntu.co.uk/wp-content/uploads/2014/10/weather-icon.jpg) + +The first time you open the app the following Preferences window will open. From here you can search for a location manually or set it to auto-detect using geo-ip — the latter of which can sometimes be a little imprecise, but saves the need to faff. + +![](http://www.omgubuntu.co.uk/wp-content/uploads/2014/10/Screen-Shot-2014-10-27-at-17.39.07.jpeg) + +If you’re travelling (or in need of some small talk fodder) **you can monitor a second locale**, too. This is set up in the same way as the first but in the ‘Second Location’ tab. + +Checking the ‘**Show Widget**’ box in the “**Widget Options**” section adds a small forecast desklet to your desktop. There are a number of different skins included, so be sure to play around to find the one you like the most (note: widget changes are applied on clicking ‘Ok’). + +![](http://www.omgubuntu.co.uk/wp-content/uploads/2014/10/widgets.jpg) + +My Weather Indicator uses [Open Weather Map][4] as its forecast backend by default, but other options can be selected from the ‘**Weather Services**’ pane (*require an API key to function): + +- Open Weather Map +- Yahoo! Weather +- Weather Underground* +- World Weather Online* + +The ‘**Units**’ tab is where you can configure measurements for temperature, pressure, wind speed, etc. These are applied globally to all configured locations; you can’t have one location in Celsius and the other in Fahrenheit. + +![](http://www.omgubuntu.co.uk/wp-content/uploads/2014/10/Screen-Shot-2014-10-27-at-17.38.54.jpeg) + +Finally, in the ‘General Options‘ section you can set the refresh interval, set autostart preference, and choose from one of two panel icons. + +MWI not your thing? Why not try [the nerdy way to view weather forecasts on Linux][5]? + +-------------------------------------------------------------------------------- + +via: http://www.omgubuntu.co.uk/2014/10/install-weather-indicator-ubuntu-14-10 + +作者:[Joey-Elijah Sneddon][a] +译者:[译者ID](https://github.com/译者ID) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[a]:https://plus.google.com/117485690627814051450/?rel=author +[1]:https://launchpad.net/typhoon +[2]:https://launchpad.net/my-weather-indicator +[3]:https://launchpad.net/~atareao/+archive/ubuntu/atareao +[4]:http://openweathermap.org/ +[5]:http://www.omgubuntu.co.uk/2014/02/get-weather-forecast-terminal-linux \ No newline at end of file diff --git a/sources/tech/20141029 How to create and manage LXC containers on Ubuntu.md b/sources/tech/20141029 How to create and manage LXC containers on Ubuntu.md new file mode 100644 index 0000000000..5731a7d737 --- /dev/null +++ b/sources/tech/20141029 How to create and manage LXC containers on Ubuntu.md @@ -0,0 +1,141 @@ +How to create and manage LXC containers on Ubuntu +================================================================================ +While the concept of containers was introduced more than a decade ago to manage shared hosting environments securely (e.g., FreeBSD jails), Linux containers such as LXC or [Docker][1] have gone mainstream only recently with the rising need to deploy applications for the cloud. While [Docker][2] is getting all the media spotlight these days with strong backing from major cloud providers (e.g., Amazon AWS, Microsoft Azure) and distro providers (e.g., Red Hat, Ubuntu), LXC is in fact the original container technology developed for Linux platforms. + +If you are an average Linux user, what good does Docker/LXC bring to you? Well, containers are actually a great means to switch between distros literally instantly. Suppose your current desktop is Debian. You want Debian's stability. At the same time, you also want to play the latest Ubuntu games. Then instead of bothering to dual boot into a Ubuntu partition, or boot up a heavyweight Ubuntu VM, simply spin off a Ubuntu container on the spot, and you are done. + +Even without all the goodies of Docker, what I like about LXC containers is the fact that LXC can be managed by libvirt interface, which is not the case for Docker. If you have been using libvirt-based management tools (e.g., virt-manager or virsh), you can use those same tools to manage LXC containers. + +In this tutorial, I focus on the command-line usage of standard LXC container tools, and demonstrate **how to create and manage LXC containers from the command line on Ubuntu**. + +### Install LXC on Ubuntu ### + +To use LXC on Ubuntu, install LXC user-space tools as follows. + + $ sudo apt-get install lxc + +After that, check the current Linux kernel for LXC support by running lxc-checkconifg tool. If everything is enabled, kernel's LXC support is ready. + + $ lxc-checkconfig + +![](https://farm4.staticflickr.com/3955/15655792445_d462957ee9_z.jpg) + +After installing LXC tools, you will find that an LXC's default bridge interface (lxcbr0) is automatically created (as configured in /etc/lxc/default.conf). + +![](https://farm6.staticflickr.com/5598/15035046834_a53c092230_z.jpg) + +When you create an LXC container, the container's interface will automatically be attached to this bridge, so the container can communicate with the world. + +### Create an LXC Container ### + +To be able to create an LXC container of a particular target environment (e.g., Debian Wheezy 64bit), you need a corresponding LXC template. Fortunately, LXC user space tools on Ubuntu come with a collection of ready-made LXC templates. You can find available LXC templates in /usr/share/lxc/templates directory. + + $ ls /usr/share/lxc/templates + +![](https://farm4.staticflickr.com/3954/15035046824_d15d1cbf6e_z.jpg) + +An LXC template is nothing more than a script which builds a container for a particular Linux environment. When you create an LXC container, you need to use one of these templates. + +To create a Ubuntu container, for example, use the following command-line: + + $ sudo lxc-create -n -t ubuntu + +![](https://farm8.staticflickr.com/7559/15035638763_07d63e23ef_z.jpg) + +By default, it will create a minimal Ubuntu install of the same release version and architecture as the local host, in this case Saucy Salamander (13.10) 64-bit. + +If you want, you can create Ubuntu containers of any arbitrary version by passing the release parameter. For example, to create a Ubuntu 14.10 container: + + $ sudo lxc-create -n -t ubuntu -- --release utopic + +It will download and validate all the packages needed by a target container environment. The whole process can take a couple of minutes or more depending on the type of container. So be patient. + +![](https://farm4.staticflickr.com/3933/15469152369_6a48943cf3_z.jpg) + +After a series of package downloads and validation, an LXC container image are finally created, and you will see a default login credential to use. The container is stored in /var/lib/lxc/. Its root filesystem is found in /var/lib/lxc//rootfs. + +All the packages downloaded during LXC creation get cached in /var/cache/lxc, so that creating additional containers with the same LXC template will take no time. + +Let's see a list of LXC containers on the host: + + $ sudo lxc-ls --fancy + +---------- + + NAME STATE IPV4 IPV6 AUTOSTART + ------------------------------------ + test-lxc STOPPED - - NO + +To boot up a container, use the command below. The "-d" option launches the container as a daemon. Without this option, you will directly be attached to console right after you launch the container. + + $ sudo lxc-start -n -d + +After launching the container, let's check the state of the container again: + + $ sudo lxc-ls --fancy + +---------- + + NAME STATE IPV4 IPV6 AUTOSTART + ----------------------------------------- + lxc RUNNING 10.0.3.55 - NO + +You will see that the container is in "RUNNING" state with an IP address assigned to it. + +You can also verify that the container's interface (e.g., vethJ06SFL) is automatically attached to LXC's internal bridge (lxcbr0) as follows. + + $ brctl show lxcbr0 + +![](https://farm4.staticflickr.com/3932/15656618342_53c4bc19ca_z.jpg) + +### Manage an LXC Container ### + +Now that we know how to create and start an LXC container, let's see what we can do with a running container. + +First of all, we want to access the container's console. For this, type this command: + + $ sudo lxc-console -n + +![](https://farm8.staticflickr.com/7538/15470225050_d093cb1028_z.jpg) + +Type to exit the console. + +To stop and destroy a container: + + $ sudo lxc-stop -n + $ sudo lxc-destroy -n + +To clone an existing container to another, use these commands: + + $ sudo lxc-stop -n + $ sudo lxc-clone -o -n + +### Troubleshooting ### + +For those of you who encounter errors with LXC, here are some troubleshooting tips. + +1. You fail to create an LXC container with the following error. + + $ sudo lxc-create -n test-lxc -t ubuntu + +---------- + + lxc-create: symbol lookup error: /usr/lib/x86_64-linux-gnu/liblxc.so.1: undefined symbol: cgmanager_get_pid_cgroup_abs_sync + +This means that you are running the latest LXC, but with an older libcgmanager. To fix this problem, you need to update libcgmanager. + + $ sudo apt-get install libcgmanager0 + +-------------------------------------------------------------------------------- + +via: http://xmodulo.com/lxc-containers-ubuntu.html + +作者:[Dan Nanni][a] +译者:[译者ID](https://github.com/译者ID) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[a]:http://xmodulo.com/author/nanni +[1]:http://xmodulo.com/docker-containers-centos-fedora.html +[2]:http://xmodulo.com/manage-linux-containers-docker-ubuntu.html \ No newline at end of file diff --git a/sources/tech/20141029 How to install LEMP stack nginx MariaDB or MySQL and php on CentOS.md b/sources/tech/20141029 How to install LEMP stack nginx MariaDB or MySQL and php on CentOS.md new file mode 100644 index 0000000000..0554534f82 --- /dev/null +++ b/sources/tech/20141029 How to install LEMP stack nginx MariaDB or MySQL and php on CentOS.md @@ -0,0 +1,248 @@ +How to install LEMP stack (nginx, MariaDB/MySQL and php) on CentOS +================================================================================ +The LEMP stack is an increasingly popular web service stack, powering mission-critical web services in many production environments. As the name implies, the LEMP stack is composed of Linux, nginx, MariaDB/MySQL and PHP. nginx is a high performance and lightweight replacement of slow and hard-to-scale Apache HTTP server used in the traditional LAMP stack. MariaDB is a community-driven fork of MySQL, with more features and better performance. PHP, a server-side language for generating dynamic content, is processed by PHP-FPM, an enhanced implementation of PHP FastCGI. + +In this tutorial, I demonstrate **how to set up the LEMP stack on CentOS platforms**. I target both CentOS 6 and CentOS 7 platforms, and point out differences where necessary. + +### Step One: Nginx ### + +As the first step, let's install nginx on CentOS, and do basic configuration for nginx, such as enabling auto-start and [customizing the firewall][1]. + +#### Install Nginx #### + +Let's install a pre-built stable version of nginx package from its official RPM source. + +On CentOS 7: + + $ sudo rpm --import http://nginx.org/keys/nginx_signing.key + $ sudo rpm -ivh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm + $ sudo yum install nginx + +On CentOS 6: + + $ sudo rpm --import http://nginx.org/keys/nginx_signing.key + $ sudo rpm -ivh http://nginx.org/packages/centos/6/noarch/RPMS/nginx-release-centos-6-0.el6.ngx.noarch.rpm + $ sudo yum install nginx + +Note that if you do not import the official nginx GPG key before installing nginx RPM, you will get this warning: + + warning: /var/tmp/rpm-tmp.KttVHD: Header V4 RSA/SHA1 Signature, key ID 7bd9bf62: NOKEY + +#### Start Nginx #### + +After installation, nginx does not start automatically. Let's start nginx right now, and configure it to auto-start upon boot. Also, we need to open a TCP/80 port in the firewall so that you can access nginx webserver remotely. All of these are achieved by entering the following commands. + +On CentOS 7: + + $ sudo systemctl start nginx + $ sudo systemctl enable nginx + $ sudo firewall-cmd --zone=public --add-port=80/tcp --permanent + $ sudo firewall-cmd --reload + +On CentOS 6: + + $ sudo service nginx start + $ sudo chkconfig nginx on + $ sudo iptables -I INPUT -p tcp -m tcp --dport 80 -j ACCEPT + $ sudo service iptables save + +#### Test Nginx #### + +The default document root directory of nginx is /usr/share/nginx/html. A default index.html file must be already placed in this directory. Let's check if you can access this test web page by going to http:/// + +![](https://farm4.staticflickr.com/3940/15461279287_8573948074_b.jpg) + +If you see the above page, nginx must be set up correctly. Proceed to the next. + +### Step Two: MariaDB/MySQL ### + +The next step is to install a database component of the LEMP stack. While CentOS/RHEL 6 or earlier provides MySQL server/client packages, CentOS/RHEL 7 has adopted MariaDB as the default implementation of MySQL. As a drop-in replacement of MySQL, MariaDB ensures maximum compatibility with MySQL in terms of APIs and command-line usages. Here is how to install and configure MariaDB/MySQL on CentOS. + +On CentOS 7: + +Install MariaDB server/client package and start MariaDB server as follows. + + $ sudo yum install mariadb-server + $ sudo systemctl start mariadb + $ sudo systemctl enable mariadb + +On CentOS 6: + +Install MySQL server/client package, and start MySQL server as follows. + + $ sudo yum install mysql-server + $ sudo service mysqld start + $ sudo chkconfig mysqld on + +After launching MariaDB/MySQL server successfully, execute the following add-on script that comes with MariaDB/MySQL server package. This one-time run conducts several security hardening steps for the database server, such as setting the (non-empty) root password, removing anonymous user, and locking down remote access. + + $ sudo mysql_secure_installation + +![](https://farm8.staticflickr.com/7545/15644566071_8c39875512_z.jpg) + +That's it for the database setup. Now move to the next step. + +### Step Three: PHP ### + +PHP is an important component of the LEMP stack, which is responsible for generating dynamic content from data stored in a MariaDB/MySQL server. For the LEMP stack, you need, at a minimum, to install PHP-FPM and PHP-MySQL. PHP-FPM (FastCGI Process Manager) implements an interface between nginx and PHP applications which generate dynamic content. The PHP-MySQL module allows PHP programs to access MariaDB/MySQL. + +#### Install PHP Modules #### + +On CentOS 7: + + $ sudo yum php php-fpm php-mysql + +On CentOS 6: + +First you need to install REMI repository (refer to [this guide][2]), and install the packages from the repository. + + $ sudo yum --enablerepo=remi install php php-fpm php-mysql + +![](https://farm4.staticflickr.com/3934/15644566121_60cbaab8b7_z.jpg) + +Two observations worth noting while installing PHP: + +On CentOS 6, MySQL server and client packages will automatically be upgraded as part of dependencies of the latest php-mysql in REMI. + +On both CentOS 6 and 7, installing the php package will also install Apache web server (i.e., httpd) as part of its dependencies. This can cause conflicts with nginx web server. We will take care of this problem in the next section. + +Depending on your use cases, you may want to install any of the following additional PHP module packages with yum command to customize your PHP engine. + +- **php-cli**: command-line interface for PHP. Useful for testing PHP from the command line. +- **php-gd**: image processing support for PHP. +- **php-bcmath**: arbitrary mathematics support for PHP. +- **php-mcrypt**: encryption algorithm support for PHP (e.g., DES, Blowfish, CBC, CFB, ECB ciphers). +- **php-xml**: XML parsing and manipulation support for PHP. +- **php-dba**: database abstraction layer support for PHP. +- **php-pecl-apc**: PHP accelerator/caching support. + +To see a complete list of available PHP modules to install, run: + + $ sudo yum search php- (CentOS 7) + $ sudo yum --enablerepo=remi search php- (CentOS 6) + +#### Start PHP-FPM #### + +You will need to start PHP-FPM, and add it to auto-start list. + +On CentOS 7: + + $ sudo systemctl start php-fpm + $ sudo systemctl enable php-fpm + +On CentOS 6: + + $ sudo chkconfig php-fpm on + $ sudo service php-fpm start + +### Step Four: Configure the LEMP Stack ### + +The final step of the tutorial is tuning the LEMP stack configuration. + +#### Disable Httpd #### + +Let's first disable httpd which was installed along with the PHP package earlier. + +On CentOS 7: + + $ sudo systemctl disable httpd + +On CentOS 6: + + $ sudo chkconfig httpd off + +#### Configure Nginx #### + +Next, let's configure nginx virtual hosts, so that nginx can process PHP via PHP-FPM. For that, open /etc/nginx/conf.d/default.conf with a text editor, and change it to the following. + + $ sudo vi /etc/nginx/conf.d/default.conf + +---------- + + server { + listen 80; + server_name www.server_domain.com; + root /usr/share/nginx/html; + index index.php index.html index.htm; + + location / { + } + + # redirect server error pages to the static page /50x.html + error_page 500 502 503 504 /50x.html; + location = /50x.html { + } + + # nginx passes PHP scripts to FastCGI server via a TCP/9000 socket + # this setting much be consistent with /etc/php-fpm.d/www.conf + # try_files prevents nginx from passing bad scripts to FastCGI server + location ~ \.php$ { + try_files $uri =404; + fastcgi_pass 127.0.0.1:9000; + fastcgi_index index.php; + fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; + include fastcgi_params; + } + } + +Also, let's adjust the number of nginx worker threads (specified in /etc/nginx/nginx.conf), which is set to one by default. Typically, we create as many worker threads as the number of CPU cores you have. To check how many CPU core you have, run this command: + + $ grep processor /proc/cpuinfo | wc -l + +If you have 4 cores, change /etc/nginx/nginx.conf as follows. + + $ sudo vi /etc/nginx/nginx.conf + +---------- + + worker_processes 4; + +#### Configure PHP #### + +Next, let's customize PHP configuration in /etc/php.ini file. More specifically, add the following lines in /etc/php.ini. + + cgi.fix_pathinfo=0 + date.timezone = "America/New York" + +As a security precaution, we want the PHP interpreter to process only an exact file path, instead of guessing any non-existing file. The first line above achieves this goal. + +The second line specifies the default timezone used by date/time related PHP functions. Use [this guide][3] to find out your timezone, and set the value of **date.timezone** accordingly. + +#### Test PHP #### + +Finally, let's check if nginx can process a PHP page. Before testing, make sure to restart nginx and PHP-FPM. + +On CentOS 7: + + $ sudo systemctl restart nginx + $ sudo systemctl restart php-fpm + +On CentOS 6: + + $ sudo service nginx restart + $ sudo service php-fpm restart + +Create a PHP file named test.php with the following content, and place it in /var/www/html/ + + + +Open a web browser, and go to http:///test.php. + +![](https://farm6.staticflickr.com/5608/15647258715_9d7bcd8c73_z.jpg) + +If you see the above page, you are all set with the LEMP stack! + +-------------------------------------------------------------------------------- + +via: http://xmodulo.com/install-lemp-stack-centos.html + +作者:[Dan Nanni][a] +译者:[译者ID](https://github.com/译者ID) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[a]:http://xmodulo.com/author/nanni +[1]:http://ask.xmodulo.com/open-port-firewall-centos-rhel.html +[2]:http://ask.xmodulo.com/install-remi-repository-centos-rhel.html +[3]:http://ask.xmodulo.com/set-default-timezone-php.html \ No newline at end of file From 8e2f6bdc237be18c47d3c4281a8b62a6fb375424 Mon Sep 17 00:00:00 2001 From: wxy Date: Wed, 29 Oct 2014 23:38:19 +0800 Subject: [PATCH 072/108] PUB:20141017 Linus Torvalds Regrets Alienating Developers with Strong Language @ZTinoZ --- ...enating Developers with Strong Language.md | 38 +++++++++++++++++++ ...enating Developers with Strong Language.md | 35 ----------------- 2 files changed, 38 insertions(+), 35 deletions(-) create mode 100644 published/20141017 Linus Torvalds Regrets Alienating Developers with Strong Language.md delete mode 100644 translated/news/20141017 Linus Torvalds Regrets Alienating Developers with Strong Language.md diff --git a/published/20141017 Linus Torvalds Regrets Alienating Developers with Strong Language.md b/published/20141017 Linus Torvalds Regrets Alienating Developers with Strong Language.md new file mode 100644 index 0000000000..a99457b834 --- /dev/null +++ b/published/20141017 Linus Torvalds Regrets Alienating Developers with Strong Language.md @@ -0,0 +1,38 @@ +Linus Torvalds 对于向那些开发者说粗话而感到遗憾 +================================================================================ +> 他没有提到任何人的名字,但是这像一次道歉 + +**Linus Torvalds在前几天的欧洲LinuxCon和CloudOpen大会上做了讲话,这次大会由Linux基金会组织并且汇聚了开源世界的所有大佬。他回答了很多问题,也谈到了他在邮件发送清单里使用粗话的事情。** + +Linus Torvalds被认为是Linux内核的创造者和Linux最新的开发版本的维护者。他给我们几乎每个星期都带来一个新的内核RC 版本,并且会在邮件列表里面进行大量的讨论。在这些讨论中,他经常口不择言地用粗话大骂一些开发者们。 + +最近又出现了一个这种事情,就像我们在新闻里报道过的一样,他在做了一些苛刻的评论之后,[决定砍掉一些他认定的开发者的代码][1]。大家都知道Linus很招人厌烦,尤其是当内核开发者为了修复内核中的一些问题而破坏了用户空间。这次又发生了同样的事情,他基本上已经把那个家伙给气疯了。 + +### 这是他最接近道歉意味的一次谈话 ### + +以前Linus Torvalds从不真正去特地谈论这些事情,大家也习惯了。但是最近一个[systemd开发者谈到了在开源社区充斥着粗话,并且点名提到了Linus Torvalds][3]。他不太习惯于道歉,所以这次在LinuxCon大会上的这次“认错”是他跨出的一大步。 + +主持人询问他在过去的23年里所做过的决定有什么最后悔的吗? + +"从技术角度来看,没有哪个决定重要到这个程度...有个问题是慢慢地疏远了用户和开发者,而我却恰恰很擅长这个。我说了粗话,但是这不是我想要改变的某一个决定,这些粗话应该有所限制。" + +"其中一个原因是我们有说粗话的传统,很多人觉得倒胃口,特别是当有强烈的意愿和推动力的技术人员要做一些技术上的进步时,你就需要用一些强烈的语言来表达你的意愿。" Linus Torvalds [如是说][2] 。 + +他没提到任何人或者任何事件的名字,但很像是对于一位[名为Leonart Pottering的systemd开发者挑起事端][3]的回应,看上去就是针对这起事件。 + +Linux内核3.18 RC1也在上周发布了,我们又有新东西玩了。 + +-------------------------------------------------------------------------------- + +via: http://news.softpedia.com/news/Linus-Torvalds-Regrets-Alienating-Developers-with-Strong-Language-462191.shtml + +作者:[Silviu Stahie][a] +译者:[ZTinoZ](https://github.com/ZTinoZ) +校对:[wxy](https://github.com/wxy) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[a]:http://news.softpedia.com/editors/browse/silviu-stahie +[1]:http://news.softpedia.com/news/Linus-Torvalds-Block-All-Code-from-Systemd-Developer-for-the-Linux-Kernel-435714.shtml +[2]:http://www.linux.com/news/featured-blogs/200-libby-clark/791788-linus-torvalds-best-quotes-from-linuxcon-europe-2014 +[3]:http://linux.cn/article-3978-1.html diff --git a/translated/news/20141017 Linus Torvalds Regrets Alienating Developers with Strong Language.md b/translated/news/20141017 Linus Torvalds Regrets Alienating Developers with Strong Language.md deleted file mode 100644 index 09d4a7d831..0000000000 --- a/translated/news/20141017 Linus Torvalds Regrets Alienating Developers with Strong Language.md +++ /dev/null @@ -1,35 +0,0 @@ -Linus Torvalds对于骂那些开发者感到后悔 -================================================================================ -> 他没有提到任何人的名字,但是这像一次道歉 - -**Linus Torvalds在前几天的欧洲LinuxCon和CloudOpen大会上做了讲话,这次大会由Linux基金会组织并且汇聚了开源世界的所有大佬。他回答了很多问题,也谈到了他在邮件发送清单里使用粗话的事情。** - -Linus Torvalds被认为是Linux内核的创造者和最新的Linux开发版的维护者。他确保我们几乎每个星期都会得到一个新的RC内核并且涉及发生在邮件发送清单中的对话里,他口不择言地用粗话大骂一些开发者们。 - -最近出现了一个问题,就是他在做了一些苛刻的评论之后[决定从指定的开发者的手中阉割掉一些代码][1],这种事件在新闻里也报道过。大家都知道Linus很招人厌烦,尤其是当内核开发者为了修复内核中的一些问题而破坏了用户空间。同样的事情就发生在这种情况下,他基本上已经把那个家伙给气疯了。 - -### 这是他最接近道歉意味的一次谈话 ### - -以前Linus Torvalds从不真正去特地谈论一些事情,大家也在稳步地前进。但是最近一个systemd开发者谈到了在开源社区充斥着粗话并且点名提到了Linus Torvalds。他不太知道去道歉,所以这次在LinuxCon大会上的这次“认错”是他跨出的一大步。主持人询问他在过去的23年里所做过的单一的决定。 - -"从技术角度来看,没有一个单一的决定向来就是重要的...这个问题慢慢地疏远用户和开发者而我却恰恰很擅长这个。我说了粗话。但是我不想再修复单独实例了,都是一坨坨狗X一样的东西。" - -"其中一个原因是我们有说粗话的传统,很多人觉得倒胃口,当有强烈提议欲的技术人员和在技术上拥有巨大推动力的上级时,你就会把这些建议想成了一堆堆粗话了。" Linus Torvalds [如是说][2] 。 - -他没提到任何人或者任何事件的名字,但很像是对于一位名为Leonart Pottering的systemd开发者挑起事端的回应,看上去就是针对这起事件。 - -Linux内核3.18 RC1也在上周发布了,我们又有新东西玩了。 - --------------------------------------------------------------------------------- - -via: http://news.softpedia.com/news/Linus-Torvalds-Regrets-Alienating-Developers-with-Strong-Language-462191.shtml - -作者:[Silviu Stahie][a] -译者:[ZTinoZ](https://github.com/ZTinoZ) -校对:[校对者ID](https://github.com/校对者ID) - -本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 - -[a]:http://news.softpedia.com/editors/browse/silviu-stahie -[1]:http://news.softpedia.com/news/Linus-Torvalds-Block-All-Code-from-Systemd-Developer-for-the-Linux-Kernel-435714.shtml -[2]:http://www.linux.com/news/featured-blogs/200-libby-clark/791788-linus-torvalds-best-quotes-from-linuxcon-europe-2014 From 8ec8f2756bf542893c9139647a863d8fe9b03d7a Mon Sep 17 00:00:00 2001 From: wxy Date: Thu, 30 Oct 2014 00:05:31 +0800 Subject: [PATCH 073/108] PUB:20140819 How to Encrypt Email in Linux @KayGuoWhu --- .../20140819 How to Encrypt Email in Linux.md | 24 +++++++++---------- 1 file changed, 12 insertions(+), 12 deletions(-) rename {translated/tech => published}/20140819 How to Encrypt Email in Linux.md (79%) diff --git a/translated/tech/20140819 How to Encrypt Email in Linux.md b/published/20140819 How to Encrypt Email in Linux.md similarity index 79% rename from translated/tech/20140819 How to Encrypt Email in Linux.md rename to published/20140819 How to Encrypt Email in Linux.md index 9dadd06e8f..6996d816ea 100644 --- a/translated/tech/20140819 How to Encrypt Email in Linux.md +++ b/published/20140819 How to Encrypt Email in Linux.md @@ -1,9 +1,9 @@ 在Linux中加密邮件 ================================================================================ ![Kgpg provides a nice GUI for creating and managing your encryption keys.](http://www.linux.com/images/stories/41373/fig-1-kgpg.png) -Kgpg为了创建了管理加密秘钥提供了一个很好的GUI界面. +*Kgpg为了创建了管理加密秘钥提供了一个很好的GUI界面.* -如果你一直在考虑如何加密电子邮件,那么在众多的邮件服务和邮件客户端中挑来挑去一定是件头痛的事情.可以考虑两种加密方法:SSL或TLS加密会保护发送到邮件服务器的登录名和密码.[Gunpg][1]是一款标准有用的Linux加密工具,可以加密和认证消息.如果你可以管理自己的GPG加密,并不考虑第三方工具,那它就够了,其它的我们将在稍后讨论. +如果你一直在考虑如何加密电子邮件,那么在众多的邮件服务和邮件客户端中挑来挑去一定是件头痛的事情.可以考虑两种加密方法:SSL或TLS加密会保护发送到邮件服务器的登录名和密码.[Gunpg][1]是一款标准的、强大的Linux加密工具,可以加密和认证消息.如果你可以管理自己的GPG加密,并不考虑第三方工具,那它就够了,其它的我们将在稍后讨论. 即便加密了消息,你仍然会暴露在流量分析中,因为消息头部必须是明文形式.所以需要另一款比如[Tor network][2]来隐藏你在互联网上的足迹.我们会看看各种邮件服务和客户端,以及其中的利弊. @@ -11,27 +11,27 @@ Kgpg为了创建了管理加密秘钥提供了一个很好的GUI界面. 如果你使用过GMail, Yahoo,Hotmail或者其它Web邮件提供商的邮件服务,那就忘掉它们吧.你在Web浏览器里输入的任何信息都会暴露在JavaScript攻击中,而且无论服务提供商提供什么保障都是过眼云烟(译者注:此说法靠谱否?).GMail,Yahoo和Hotmail均提供SSL/TLS加密来防止消息被窃听.但是它们不会提供任何保护来阻碍它们自己的数据挖掘,因此并不会提供端到端的加密.Yahoo和Google都声称将在明年推出端到端的加密.对此我持怀疑态度,因为如果一旦它们的核心业务数据挖掘受到干预,它们就什么都干不了了. -市面上也有各式各样的声称可以为所有类型的电子邮件都能提供安全加密的第三方邮件加密服务,比如[Virtru][3]和[SafeMess][4].对此我依旧表示怀疑,因为无论是谁,只要持有加密秘钥就可以访问你的消息,所以你还是要依赖于可信而不是技术. +市面上也有各式各样的声称可以为所有类型的电子邮件都能提供安全加密的第三方邮件加密服务,比如[Virtru][3]和[SafeMess][4].对此我依旧表示怀疑,因为无论是谁,只要持有加密秘钥就可以访问你的消息,所以你还是要依赖于对他们的信任而不是技术. -对等消息可以避免许多使用集中化服务中的缺陷.[RetroShare][5]和[Bitmessage][6]是两种流行的范例.我不知道它们是否如实所述,但这么说肯定由可取之处. +对等消息可以避免许多使用集中化服务中的缺陷.[RetroShare][5]和[Bitmessage][6]是两种流行的范例.我不知道它们是否如实所述,但这么说肯定有其可取之处. 那Anddroid和iOS又如何呢?假设大部分的Android和iOS应用都没有权限获取你的消息的话,那就是最安全的.不要照搬我说的 -- 在应用将要安装到你的设备上时麻烦读读相关的服务条款并检查所要求的权限.即便在初次安装时它们的条款是可接受的,也记得单方面的条款改变是行业的标准,所以做最坏的打算是最安全的. -### 零基础知识 ### +### 零知识(Zero Knowledge) ### -[Proton Mail][7]是一款全新的邮件服务,声称无需任何基础就可以实现消息加密.认证和消息加密分为两个单独的步骤,Proton受到Swiss隐私条款的保护,它们不会通过日志记录用户的活动.零基础知识加密提供真正的安全.这代表只有你拥有你的加密秘钥,如果你丢了它们,你的消息就无法恢复了. +[Proton Mail][7]是一款全新的邮件服务,声称采用零知识就可以实现消息加密.认证和消息加密分为两个单独的步骤,Proton遵照Swiss隐私条款,它们不会通过日志记录用户的活动.零知识加密提供真正的安全.这代表只有你拥有你的加密秘钥,如果你丢了它们,你的消息就无法恢复了. 也有许多加密电子邮件服务声称可以保护你的隐私.认真阅读细则,查看红色标注的地方,比如受限的用户数据采集,与好友分享,与执法部门的合作等.这些条款暗示它们会收集和共享用户数据,拥有权限获取你的加密秘钥,并读取你的消息. ### Linux邮件客户端 ### -一款独立的开源邮件客户端,比如, Mutt, Claws, Evolution, Sylpheed和Alpine,可建立你自己控制的GnuPG秘钥,给你大部分的保护.(建立更安全的电子邮件和Web浏览的最容易的方式是运行TAILS live的Linux发行版.详情查看[Protect Yourself Online With Tor, TAILS, and Debian][8].) +一款独立的开源邮件客户端,比如, Mutt, Claws, Evolution, Sylpheed和Alpine,可建立你自己控制的GnuPG秘钥,给你大部分的保护.(建立更安全的电子邮件和Web浏览的最容易的方式是运行TAILS live的Linux发行版.详情查看[通过 Tor、TAILS 和 Debian 在网上保护你自己][8]。) 无论你使用的是TAILS还是一款标准Linux发行版,管理GnuPG的方法是相同的,所以下面来学习如何使用GnuPG加密消息. ### 使用GnuPG ### -首先,熟悉一下相关术语。OpenPGP是一种开放的电子邮件加密和认证协议,基于菲利普·齐默曼的Pretty Good Privacy (PGP)。GNU Privacy Guard (GnuPG or GPG)是OpenPGP的GPL实现。GnuPG使用对称公钥加密算法,也就是说会生成一堆密钥:一个任何人都可以用来加密发送给你的消息的公钥和一个只有你自己拥有用来解密消息的的私钥。GnuPG执行两个分开的函数:数字化签名消息以证明消息来自你和加密消息。任何人都可以读到你的数字签名消息,但只有那些与你交换密钥的人才可以读取加密消息。切记千万不要与他人分享你的密钥!只能分享公钥。 +首先,熟悉一下相关术语。OpenPGP是一种开放的电子邮件加密和认证协议,基于菲利普·齐默曼的Pretty Good Privacy (PGP)。GNU Privacy Guard (GnuPG or GPG)是OpenPGP的GPL实现。GnuPG使用对称公钥加密算法,也就是说会生成一对密钥:一个任何人都可以用来加密发送给你的消息的公钥和一个只有你自己拥有用来解密消息的的私钥。GnuPG执行两个分开的函数:数字化签名消息以证明消息来自你和加密消息。任何人都可以读到你的数字签名消息,但只有那些与你交换密钥的人才可以读取加密消息。切记千万不要与他人分享你的密钥!只能分享公钥。 Seahorse是GnuPG对应的GNOME图形化前端,KGpg是KDE图形化的GnuPG工具。 @@ -39,7 +39,7 @@ Seahorse是GnuPG对应的GNOME图形化前端,KGpg是KDE图形化的GnuPG工 $ gpg --gen-key -这个过程有许多步骤;对于大部分人来说,只需要回答所有的问题,遵循默认设置就好。当你生成你的密钥时,记下来并将其保存在一个安全的地方,因为如果你丢掉了它,你就不能解密任何消息了。任何关于不要写下密码的建议都是错误的。我们中的大部分人要记住许多登录名和密码,包括那些我们几乎从来不会用到的,所以全部记住它们是不现实的。你知道当人们不写下他们的密码时会发生什么吗?他们会选择生成简单的密码并不断重复使用。你存储在电脑里的任何东西都潜在地会被攻击窃取;一个保存在上锁的柜子里的小本是无法通过渗透获取的,除了物理的入侵,当然入侵者要知道如何去寻找它。 +这个过程有许多步骤;对于大部分人来说,只需要回答所有的问题,遵循默认设置就好。当你生成你的密钥时,记下来并将其保存在一个安全的地方,因为如果你丢掉了它,你就不能解密任何消息了。**任何关于不要写下密码的建议都是错误的。**我们中的大部分人要记住许多登录名和密码,包括那些我们几乎从来不会用到的,所以全部记住它们是不现实的。你知道当人们不写下他们的密码时会发生什么吗?**他们会选择生成简单的密码并不断重复使用。**你存储在电脑里的任何东西都潜在地会被攻击窃取;一个保存在上锁的柜子里的小本是无法通过渗透获取的,除了物理的入侵,当然入侵者要知道如何去寻找它。 我必须叮嘱你们去弄清楚如何使用新密钥去配置邮件客户端,因为每一个都不同。你可以按照如下操作列出你的密钥: @@ -54,11 +54,11 @@ Seahorse是GnuPG对应的GNOME图形化前端,KGpg是KDE图形化的GnuPG工 $ gpg --send-keys 'Carla Schroder' --keyserver http://example.com -当你为上传到公钥服务器生成了一个新的密钥,你也应该生成一个撤销证书。不要推迟到以后做———当你生成新密钥时就生成它。你可以给它取任意的名称,比如使用一个像mycodeproject.asc的描述性名称来代替revoke.asc: +当你生成了一个新的密钥要上传到公钥服务器,你也应该生成一个撤销证书。不要推迟到以后做———当你生成新密钥时就生成它。你可以给它取任意的名称,比如使用一个像mycodeproject.asc的描述性名称来代替revoke.asc: $ gpg --output revoke.asc --gen-revoke 'Carla Schroder' -如果你的密钥缺乏抵抗力,你可以通过向keyring导入撤销证书来撤销它: +如果你的密钥变得不可靠了,你可以通过向keyring导入撤销证书来撤销它: $ gpg --import ~/.gnupg/revoke.asc @@ -89,7 +89,7 @@ via: http://www.linux.com/learn/tutorials/784165-how-to-encrypt-email-in-linux 作者:[Carla Schroder][a] 译者:[KayGuoWhu](https://github.com/KayGuoWhu) -校对:[校对者ID](https://github.com/校对者ID) +校对:[wxy](https://github.com/wxy) 本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 From 694ee08a4a470005f7627727af5013c5035230bb Mon Sep 17 00:00:00 2001 From: bazz2 Date: Thu, 30 Oct 2014 08:55:02 +0800 Subject: [PATCH 074/108] [half work]The Why and How of Ansible and Docker --- ...8 The Why and How of Ansible and Docker.md | 104 ------------------ ...8 The Why and How of Ansible and Docker.md | 103 +++++++++++++++++ 2 files changed, 103 insertions(+), 104 deletions(-) delete mode 100644 sources/tech/20141008 The Why and How of Ansible and Docker.md create mode 100644 translated/tech/20141008 The Why and How of Ansible and Docker.md diff --git a/sources/tech/20141008 The Why and How of Ansible and Docker.md b/sources/tech/20141008 The Why and How of Ansible and Docker.md deleted file mode 100644 index 59bbc0ea2e..0000000000 --- a/sources/tech/20141008 The Why and How of Ansible and Docker.md +++ /dev/null @@ -1,104 +0,0 @@ -[bazz222222222222222222222] -The Why and How of Ansible and Docker -================================================================================ -There is a lot of interest from the tech community in both [Docker][1] and [Ansible][2], I am hoping that after reading this article you will share our enthusiasm. You will also gain a practical insight into using Ansible and Docker for setting up a complete server environment for a Rails application. - -Many reading this might be asking, “Why don’t you just use Heroku?”. First of all, I can run Docker and Ansible on any host, with any provider. Secondly, I prefer flexibility over convenience. I can run anything in this manner, not just web applications. Last but not least, because I am a tinkerer at heart, I get a kick from understanding how all the pieces fit together. The fundamental building block of Heroku is the Linux Container. The same technology lies at the heart of Docker’s versatility. As a matter of fact, one of Docker’s mottoes is: “Containerization is the new virtualization”. - -### Why Ansible? ### - -After 4 years of heavy Chef usage, the **infrastructure as code** mentality becomes really tedious. I was spending most of my time with the code that was managing my infrastructure, not with the infrastructure itself. Any change, regardless how small, would require a considerable amount of effort for a relatively small gain. With [Ansible][3], there’s data describing infrastructure on one hand, and the constraints of the interactions between various components on the other hand. It’s a much simpler model that enables me to move quicker by letting me focus on what makes my infrastructure personal. Similar to the Unix model, Ansible provides simple modules with a single responsibility that can be combined in endless ways. - -Ansible has no dependencies other than Python and SSH. It doesn’t require any agents to be set up on the remote hosts and it doesn’t leave any traces after it runs either. What’s more, it comes with an extensive, built-in library of modules for controlling everything from package managers to cloud providers, to databases and everything else in between. - -### Why Docker? ### - -[Docker][4] is establishing itself as the most reliable and convenient way of deploying a process on a host. This can be anything from mysqld to ![](Docker container as a VM. The)redis, to a Rails application. Just like git snapshots and distributes code in the most efficient way, Docker does the same with processes. It guarantees that everything required to run that process will be available regardless of the host that it runs on. - -A common but understandable mistake is to treat a Docker container as a VM. The [Single Responsibility Principle][5] still applies, running a single process per container will give it a single reason to change, it will make it re-usable and easy to reason about. This model has stood the test of time in the form of the Unix philosophy, it makes for a solid foundation to build on. - -### The Setup ### - -Without leaving my terminal, I can have Ansible provision a new instance for me with any of the following: Amazon Web Services, Linode, Rackspace or DigitalOcean. To be more specific, I can have Ansible create a new DigitalOcean 2GB droplet in Amsterdam 2 region in precisely 1 minute and 25 seconds. In a further 1 minute and 50 seconds I can have the system setup with Docker and a few other personal preferences. Once I have this base system in place, I can deploy my application. Notice that I didn’t setup any database or programming language. Docker will handle all application dependencies. - -Ansible runs all remote commands via SSH. My SSH keys stored in the local ssh-agent will be shared remotely during Ansible’s SSH sessions. When my application code will be cloned or updated on remote hosts, no git credentials will be required, the forwarded ssh-agent will be used to authenticate with the git host. - -### Docker and application dependencies ### - -I find it amusing that most developers are specific about the version of the programming language which their application needs, the version of the dependencies in the form of Python packages, Ruby gems or node.js modules, but when it comes to something as important as the database or the message queue, they just use whatever is available in the environment that the application runs. I believe this is one of the reasons behind the devops movement, developers taking responsibility for the application’s environment. Docker makes this task easier and more straightforward by adding a layer of pragmatism and confidence to the existing practices. - -My application defines dependencies on processes such as MySQL 5.5 and Redis 2.8 by including the following `.docker_container_dependencies` file: - - gerhard/mysql:5.5 - gerhard/redis:2.8 - -The Ansible playbook will notice this file and will instruct Docker to pull the correct images from the Docker index and start them as containers. It also links these service containers to my application container. If you want to find out how Docker container linking works, refer to the [Docker 0.6.5 announcement][6]. - -My application also comes with a Dockerfile which is specific about the Ruby Docker image that is required. As this is already built, the steps in my Dockerfile will have the guarantee that the correct Ruby version will be available to them. - - FROM howareyou/ruby:2.0.0-p353 - - ADD ./ /terrabox - - RUN \ - . /.profile ;\ - rm -fr /terrabox/.git ;\ - cd /terrabox ;\ - bundle install --local ;\ - echo '. /.profile && cd /terrabox && RAILS_ENV=test bundle exec rake db:create db:migrate && bundle exec rspec' > /test-terrabox ;\ - echo '. /.profile && cd /terrabox && export RAILS_ENV=production && rake db:create db:migrate && bundle exec unicorn -c config/unicorn.rails.conf.rb' > /run-terrabox ;\ - # END RUN - - ENTRYPOINT ["/bin/bash"] - CMD ["/run-terrabox"] - - EXPOSE 3000 - -The first step is to copy all my application’s code into the Docker image and load the global environment variables added by previous images. The Ruby Docker image for example will append PATH configuration which ensures that the correct Ruby version gets loaded. - -Next, I remove the git history as this is not useful in the context of a Docker container. I install all the gems and then create a `/test-terrabox` command which will be run by the test-only container. The purpose of this is to have a “canary” which ensures that the application and all its dependencies are properly resolved, that the Docker containers are linked correctly and all tests pass before the actual application container will be started. - -The command that gets run when a new web application container gets started is defined in the CMD step. The `/run-terrabox` command was defined part of the build process, right after the test one. - -The last instruction in this application’s Dockerfile maps port 3000 from inside the container to an automatically allocated port on the host that runs Docker. This is the port that the reverse proxy or load balancer will use when proxying public requests to my application running inside the Docker container. - -### Running a Rails application inside a Docker container ### - -For a medium-sized Rails application, with about 100 gems and just as many integration tests running under Rails, this takes 8 minutes and 16 seconds on a 2GB and 2 core instance, without any local Docker images. If I already had Ruby, MySQL & Redis Docker images on that host, this would take 4 minutes and 45 seconds. Furthermore, if I had a master application image to base a new Docker image build of the same application, this would take a mere 2 minutes and 23 seconds. To put this into perspective, it takes me just over 2 minutes to deploy a new version of my Rails application, including dependent services such as MySQL and Redis. - -I would like to point out that my application deploys also run a full test suite which alone takes about a minute end-to-end. Without intending, Docker became a simple Continuous Integration environment that leaves test-only containers behind for inspection when tests fail, or starts a new application container with the latest version of my application when the test suite passes. All of a sudden, I can validate new code with my customers in minutes, with the guarantee that different versions of my application are isolated from one another, all the way to the operating system. Unlike traditional VMs which take minutes to boot, a Docker container will take under a second. Furthermore, once a Docker image is built and tests pass for a specific version of my application, I can have this image pushed into a private Docker registry, waiting to be pulled by other Docker hosts and started as a new Docker container, all within seconds. - -### Conclusion ### - -Ansible made me re-discover the joy of managing infrastructures. Docker gives me confidence and stability when dealing with the most important step of application development, the delivery phase. In combination, they are unmatched. - -To go from no server to a fully deployed Rails application in just under 12 minutes is impressive by any standard. To get a very basic Continuous Integration system for free and be able to preview different versions of an application side-by-side, without affecting the “live” version which runs on the same hosts in any way, is incredibly powerful. This makes me very excited, and having reached the end of the article, I can only hope that you share my excitement. - -I gave a talk at the January 2014 London Docker meetup on this subject, [I have shared the slides on Speakerdeck][7]. - -For more Ansible and Docker content, subscribe to [The Changelog Weekly][8] — it ships every Saturday and regularly includes the week’s best links for both topics. - -[Use the Draft repo][9] if you’d like to write a post like this for The Changelog. They’ll work with you through the process too. - -Until next time, [Gerhard][a]. - --------------------------------------------------------------------------------- - -via: http://thechangelog.com/ansible-docker/ - -作者:[Gerhard Lazu][a] -译者:[译者ID](https://github.com/译者ID) -校对:[校对者ID](https://github.com/校对者ID) - -本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 - -[a]:https://twitter.com/gerhardlazu -[1]:https://www.docker.io/ -[2]:https://github.com/ansible/ansible -[3]:http://ansible.com/ -[4]:http://docker.io/ -[5]:http://en.wikipedia.org/wiki/Single_responsibility_principle -[6]:http://blog.docker.io/2013/10/docker-0-6-5-links-container-naming-advanced-port-redirects-host-integration/ -[7]:https://speakerdeck.com/gerhardlazu/ansible-and-docker-the-path-to-continuous-delivery-part-1 -[8]:http://thechangelog.com/weekly/ -[9]:https://github.com/thechangelog/draft diff --git a/translated/tech/20141008 The Why and How of Ansible and Docker.md b/translated/tech/20141008 The Why and How of Ansible and Docker.md new file mode 100644 index 0000000000..6386a82cb3 --- /dev/null +++ b/translated/tech/20141008 The Why and How of Ansible and Docker.md @@ -0,0 +1,103 @@ +Ansible和Docker的作用和用法 +================================================================================ +在 [Docker][1] 和 [Ansible][2] 的技术社区内存在着很多好玩的东西,我希望在你阅读完这篇文章后也能获取到我们对它们的那种热爱。当然,你也会收获一些实践知识,那就是如何通过部署 Ansible 和 Docker 来为 Rails 应用搭建一个完整的服务器环境。 + +也许有人会问:你怎么不去用 Heroku?首先,我可以在任何供应商提供的主机上运行 Docker 和 Ansible;其次,相比于方便性,我更偏向于喜欢灵活性。我可以在这种组合中运行任何程序,而不仅仅是 web 应用。最后,我骨子里是一个工匠,我非常理解如何把零件拼凑在一起工作。Heroku 的基础模块是 Linux Container,而 Docker 表现出来的多功能性也是基于这种技术。事实上,Docker 的其中一个座右铭是:容器化是新虚拟化技术。 + +### 为什么使用 Ansible? ### + +我重度使用 Chef 已经有4年了(LCTT:Chef 是与 puppet 类似的配置管理工具),**基础设施即代码**的观念让我觉得非常无聊。我花费大量时间来管理代码,而不是管理基础设施本身。不论多小的改变,都需要相当大的努力来实现它。使用 [Ansible][3],你可以一手掌握拥有可描述性数据的基础架构,另一只手掌握不同组件之间的交互作用。这种更简单的操作模式让我把精力集中在如何将我的技术设施私有化,提高了我的工作效率。与 Unix 的模式一样,Ansible 提供大量功能简单的模块,我们可以组合这些模块,达到不同的工作要求。 + +除了 Python 和 SSH,Ansible 不再依赖其他软件,在它的远端主机上不需要部署代理,也不会留下任何运行痕迹。更厉害的是,它提供一套内建的、可扩展的模块库文件,通过它你可以控制所有:包管理器、云服务供应商、数据库等等等等。 + +### 为什么要使用 Docker? ### + +[Docker][4] 的定位是:提供最可靠、最方便的方式来部署服务。这些服务可以是 mysqld,可以是 redis,可以是 Rails 应用。先聊聊 git,它的快照功能让它可以以最有效的方式发布代码,Docker 的处理方法与它类似。它保证应用可以无视主机环境,随心所欲地跑起来。 + +一种最普遍的误解是人们总是把 Docker 容器看成是一个虚拟机,当然,我表示理解你们的误解。Docker 满足[单一功能原则][5],在一个容器里面只跑一个进程,所以一次修改只会影响一个进程,而这些进程可以被重用。这种模型参考了 Unix 的哲学思想,当前还处于试验阶段,并且正变得越来越稳定。 + +### 设置选项 ### + +不需要离开终端,我就可以使用 Ansible 来生成以下实例:Amazon Web Services,Linode,Rackspace 以及 DigitalOcean。如果想要更详细的信息,我于1分25秒内在位于阿姆斯特丹的2号数据中心上创建了一个 2GB 的 DigitalOcean 虚拟机。另外的1分50秒用于系统配置,包括设置 Docker 和其他个人选项。当我完成这些基本设定后,就可以部署我的应用了。值得一提的是这个过程中我没有配置任何数据库或程序开发语言,Docker 已经帮我把应用所需要的事情都安排好了。 + +Ansible 通过 SSH 为远端主机发送命令。我保存在本地 ssh 代理上面的 SSH 密钥会通过 Ansible 提供的 SSH 会话分享到远端主机。当我把应用代码从远端 clone 下来,或者上传到远端时,我就不再需要提供 git 所需的证书了,我的 ssh 代理会帮我通过 git 主机的身份验证程序的。 + +### Docker 和应用的依赖性 ### + +我发现有一点挺有意思的:大部分开发者非常了解他们的应用需要什么版本的编程语言,这些语言依赖关系有多种形式:Python 的包、Ruby 的打包系统 gems、node.js 的模块等等,但与数据库或消息队列这种重要的概念相比起来,这些语言就处于很随便的境地了——随便给我个编程语言环境,我都能把数据库和消息队列系统跑起来。我认为这是 DevOps 运动(它旨在促进开发与运维团队的和谐相处)的动机之一,开发者负责搭建应用所需要的环境。Docker 使这个任务变得简单明了直截了当,它为现有环境加了实用的一层配置。 + +我的应用依赖于 MySQL 5.5和 Redis 2.8,依赖关系放在“.docker_container_dependencies”文件里面: + + gerhard/mysql:5.5 + gerhard/redis:2.8 + +Ansible 会查看这个文件,并且通知 Docker 加载正确的镜像,然后在容器中启动。它还会把这些服务容器链接到应用容器。如果你想知道 Docker 容器的链接功能是怎么工作的,可以参考[Docker 0.6.5 发布通知][6]. + +我的应用包括一个 Dockerfile,它详细指定了 Ruby Docker 镜像的信息,这里面的步骤能够保证把正确的 Ruby 版本加载到镜像中。 + + FROM howareyou/ruby:2.0.0-p353 + + ADD ./ /terrabox + + RUN \ + . /.profile ;\ + rm -fr /terrabox/.git ;\ + cd /terrabox ;\ + bundle install --local ;\ + echo '. /.profile && cd /terrabox && RAILS_ENV=test bundle exec rake db:create db:migrate && bundle exec rspec' > /test-terrabox ;\ + echo '. /.profile && cd /terrabox && export RAILS_ENV=production && rake db:create db:migrate && bundle exec unicorn -c config/unicorn.rails.conf.rb' > /run-terrabox ;\ + # END RUN + + ENTRYPOINT ["/bin/bash"] + CMD ["/run-terrabox"] + + EXPOSE 3000 + +第一步是复制应用的所有代码到 Docker 镜像,加载上一个镜像的全局环境变量。这个例子中的 Ruby Docker 镜像会加载 PATH 配置,这个配置能确保镜像加载正确的 Ruby 版本。 + +接下来,删除 git 历史,Docker 容器不需要它们。我安装了所有 Ruby 的 gems,创建一个名为“/test-terrabox”的命令,这个命令会被名为“test-only”的容器执行。这个步骤的目的是能正确解决应用和它的依赖关系,让 Docker 容器正确链接起来,保证在真正的应用容器启动前能通过所有测试项目。 + +CMD 这个步骤是在新的 web 应用容器启动后执行的。在测试环节结束后马上就执行`/run-terrabox`命令进行编译。 + +最后,Dockerfile 为应用指定了一个端口号,将容器内部端口号为3000的端口映射到主机(运行着 Docker 的机器)的一个随机分配的端口上。当 Docker 容器里面的应用需要响应来自外界的请求时,这个端口可用于反向代理或负载均衡。 + +### Docker 容器内运行 Rails 应用 ### + +For a medium-sized Rails application, with about 100 gems and just as many integration tests running under Rails, this takes 8 minutes and 16 seconds on a 2GB and 2 core instance, without any local Docker images. If I already had Ruby, MySQL & Redis Docker images on that host, this would take 4 minutes and 45 seconds. Furthermore, if I had a master application image to base a new Docker image build of the same application, this would take a mere 2 minutes and 23 seconds. To put this into perspective, it takes me just over 2 minutes to deploy a new version of my Rails application, including dependent services such as MySQL and Redis. + +I would like to point out that my application deploys also run a full test suite which alone takes about a minute end-to-end. Without intending, Docker became a simple Continuous Integration environment that leaves test-only containers behind for inspection when tests fail, or starts a new application container with the latest version of my application when the test suite passes. All of a sudden, I can validate new code with my customers in minutes, with the guarantee that different versions of my application are isolated from one another, all the way to the operating system. Unlike traditional VMs which take minutes to boot, a Docker container will take under a second. Furthermore, once a Docker image is built and tests pass for a specific version of my application, I can have this image pushed into a private Docker registry, waiting to be pulled by other Docker hosts and started as a new Docker container, all within seconds. + +### 总结 ### + +Ansible made me re-discover the joy of managing infrastructures. Docker gives me confidence and stability when dealing with the most important step of application development, the delivery phase. In combination, they are unmatched. + +To go from no server to a fully deployed Rails application in just under 12 minutes is impressive by any standard. To get a very basic Continuous Integration system for free and be able to preview different versions of an application side-by-side, without affecting the “live” version which runs on the same hosts in any way, is incredibly powerful. This makes me very excited, and having reached the end of the article, I can only hope that you share my excitement. + +I gave a talk at the January 2014 London Docker meetup on this subject, [I have shared the slides on Speakerdeck][7]. + +For more Ansible and Docker content, subscribe to [The Changelog Weekly][8] — it ships every Saturday and regularly includes the week’s best links for both topics. + +[Use the Draft repo][9] if you’d like to write a post like this for The Changelog. They’ll work with you through the process too. + +Until next time, [Gerhard][a]. + +-------------------------------------------------------------------------------- + +via: http://thechangelog.com/ansible-docker/ + +作者:[Gerhard Lazu][a] +译者:[译者ID](https://github.com/译者ID) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[a]:https://twitter.com/gerhardlazu +[1]:https://www.docker.io/ +[2]:https://github.com/ansible/ansible +[3]:http://ansible.com/ +[4]:http://docker.io/ +[5]:http://en.wikipedia.org/wiki/Single_responsibility_principle +[6]:http://blog.docker.io/2013/10/docker-0-6-5-links-container-naming-advanced-port-redirects-host-integration/ +[7]:https://speakerdeck.com/gerhardlazu/ansible-and-docker-the-path-to-continuous-delivery-part-1 +[8]:http://thechangelog.com/weekly/ +[9]:https://github.com/thechangelog/draft From fb8f5c6f1b7f2cf3d7405bf687813e6f1a4ecbaa Mon Sep 17 00:00:00 2001 From: bazz2 Date: Thu, 30 Oct 2014 13:10:02 +0800 Subject: [PATCH 075/108] [translated]The Why and How of Ansible and Docker --- ...08 The Why and How of Ansible and Docker.md | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/translated/tech/20141008 The Why and How of Ansible and Docker.md b/translated/tech/20141008 The Why and How of Ansible and Docker.md index 6386a82cb3..748d7eb15b 100644 --- a/translated/tech/20141008 The Why and How of Ansible and Docker.md +++ b/translated/tech/20141008 The Why and How of Ansible and Docker.md @@ -63,30 +63,30 @@ CMD 这个步骤是在新的 web 应用容器启动后执行的。在测试环 ### Docker 容器内运行 Rails 应用 ### -For a medium-sized Rails application, with about 100 gems and just as many integration tests running under Rails, this takes 8 minutes and 16 seconds on a 2GB and 2 core instance, without any local Docker images. If I already had Ruby, MySQL & Redis Docker images on that host, this would take 4 minutes and 45 seconds. Furthermore, if I had a master application image to base a new Docker image build of the same application, this would take a mere 2 minutes and 23 seconds. To put this into perspective, it takes me just over 2 minutes to deploy a new version of my Rails application, including dependent services such as MySQL and Redis. +没有本地 Docker 镜像,从零开始部署一个中级规模的 Rails 应用大概需要100个 gems,进行100次整体测试,在使用2个核心实例和2GB内存的情况下,这些操作需要花费8分16秒。装上 Ruby、MySQL 和 Redis Docker 镜像后,部署应用花费了4分45秒。另外,如果从一个已存在的主应用镜像编译出一个新的 Docker 应用镜像出来,只需花费2分23秒。综上所述,部署一套新的 Rails 应用,解决其所有依赖关系(包括 MySQL 和 Redis),只需花我2分钟多一点的时间就够了。 -I would like to point out that my application deploys also run a full test suite which alone takes about a minute end-to-end. Without intending, Docker became a simple Continuous Integration environment that leaves test-only containers behind for inspection when tests fail, or starts a new application container with the latest version of my application when the test suite passes. All of a sudden, I can validate new code with my customers in minutes, with the guarantee that different versions of my application are isolated from one another, all the way to the operating system. Unlike traditional VMs which take minutes to boot, a Docker container will take under a second. Furthermore, once a Docker image is built and tests pass for a specific version of my application, I can have this image pushed into a private Docker registry, waiting to be pulled by other Docker hosts and started as a new Docker container, all within seconds. +需要指出的一点是,我的应用上运行着一套完全测试套件,跑完测试需要花费额外1分钟时间。尽管是无意的,Docker 可以变成一套简单的持续集成环境,当测试失败后,Docker 会把“test-only”这个容器保留下来,用于分析出错原因。我可以在1分钟之内和我的客户一起验证新代码,保证不同版本的应用之间是完全隔离的,同操作系统也是隔离的。传统虚拟机启动系统时需要花费好几分钟,Docker 容器只花几秒。另外,一旦一个 Dockedr 镜像编译出来,并且针对我的某个版本的应用的测试都被通过,我就可以把这个镜像提交到 Docker 私服 Registry 上,可以被其他 Docker 主机下载下来并启动一个新的 Docker 容器,而这不过需要几秒钟时间。 ### 总结 ### -Ansible made me re-discover the joy of managing infrastructures. Docker gives me confidence and stability when dealing with the most important step of application development, the delivery phase. In combination, they are unmatched. +Ansible 让我重新看到管理基础设施的乐趣。Docker 让我有充分的信心能稳定处理应用部署过程中最重要的步骤——交付环节。双剑合璧,威力无穷。 -To go from no server to a fully deployed Rails application in just under 12 minutes is impressive by any standard. To get a very basic Continuous Integration system for free and be able to preview different versions of an application side-by-side, without affecting the “live” version which runs on the same hosts in any way, is incredibly powerful. This makes me very excited, and having reached the end of the article, I can only hope that you share my excitement. +从无到有搭建一个完整的 Rails 应用可以在12分钟内完成,这种速度放在任何场合都是令人印象深刻的。能获得一个免费的持续集成环境,可以查看不同版本的应用之间的区别,不会影响到同主机上已经在运行的应用,这些功能强大到难以置信,让我感到很兴奋。在文章的最后,我只希望你能感受到我的兴奋。 -I gave a talk at the January 2014 London Docker meetup on this subject, [I have shared the slides on Speakerdeck][7]. +我在2014年1月伦敦 Docker 会议上讲过这个主题,[已经分享到 Speakerdeck][7]了。 -For more Ansible and Docker content, subscribe to [The Changelog Weekly][8] — it ships every Saturday and regularly includes the week’s best links for both topics. +如果想获得更多的关于 Ansible 和 Docker 的内容,请订阅 [changlog 周报][8],它会在每周六推送一周最有价值的关于这两个主题的新闻链接。 -[Use the Draft repo][9] if you’d like to write a post like this for The Changelog. They’ll work with you through the process too. +如果你想为我们的 Changlog 写一篇文章,请[使用 Draft repo][9],他们会帮到你的。 -Until next time, [Gerhard][a]. +下次见,[Gerhard][a]。 -------------------------------------------------------------------------------- via: http://thechangelog.com/ansible-docker/ 作者:[Gerhard Lazu][a] -译者:[译者ID](https://github.com/译者ID) +译者:[bazz2](https://github.com/bazz2) 校对:[校对者ID](https://github.com/校对者ID) 本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 From 3526fb4c91933f3a5d6422c31ad13e07864dc707 Mon Sep 17 00:00:00 2001 From: DeadFire Date: Thu, 30 Oct 2014 15:33:57 +0800 Subject: [PATCH 076/108] =?UTF-8?q?20141030-1=20=E9=80=89=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...Linux can take your system back in time.md | 58 ++++ ...ke Disk Full Or Can't Write to the Disk.md | 288 ++++++++++++++++++ ...eries against Apache log files on Linux.md | 138 +++++++++ 3 files changed, 484 insertions(+) create mode 100644 sources/news/20141030 Suse enterprise Linux can take your system back in time.md create mode 100644 sources/tech/20141030 8 Tips to Solve Linux and Unix Systems Hard Disk Problmes Like Disk Full Or Can't Write to the Disk.md create mode 100644 sources/tech/20141030 How to run SQL queries against Apache log files on Linux.md diff --git a/sources/news/20141030 Suse enterprise Linux can take your system back in time.md b/sources/news/20141030 Suse enterprise Linux can take your system back in time.md new file mode 100644 index 0000000000..5615c8a7d0 --- /dev/null +++ b/sources/news/20141030 Suse enterprise Linux can take your system back in time.md @@ -0,0 +1,58 @@ +Suse enterprise Linux can take your system back in time +================================================================================ +> Suse Linux Enterprise Server 12 features a new system snapshot and rollback capability + +The newest enterprise edition of the Suse Linux distribution allows administrators to go back in time, for instance, to immediately before they made that fatal system-crippling mistake. + +Suse Linux Enterprise Server 12 (SLES 12) features a system snapshot and rollback capability that allows the user to boot the system to an earlier configuration, should the latest one unexpectedly fail. + +Such a capability can be handy for undoing a system configuration change that did not turn out as expected. For instance, an administrator might have the SLES computer in a perfectly fine running state, but then install a botched software update, or make a change that destroys the kernel. Typically, Unix systems have been unforgiving about such mistakes, forcing the administrator to reinstall the system software from scratch, should they not know how to undo the unfortunate change. + +"This stuff happens, for whatever reason," said Matthias Eckermann, Suse senior product manager. "So the admin has an emergency exit, so to speak." + +Users of Microsoft Windows and Apple Macintosh systems have long enjoyed rollback functionality within their respective OSes, but this capability had been missing in Unix-based systems such as Linux, at least as a native function of the OS. + +For this functionality, the Suse team used the [Btrfs][1] file system (B-tree file system, often pronounced as "Butter FS"), an open-source file system developed by Oracle engineer Chris Mason ([now at Facebook][2]). Mason created Btrfs to address emerging enterprise requirements such as the ability to make snapshots and to scale across multiple storage nodes. + +Although Btrfs is supported in the mainline Linux kernel, SLES is the first major Linux distribution to use Btrfs as the default file system. "Over the last five years, we specifically focused on making Btrfs enterprise-ready," Eckermann said. + +The rollback capability also relies on the open-source tool [Snapper][3], first developed by Suse, to manage the snapshots. + +The Suse team integrated Snapper with SLES so that users now have the ability, when the OS is first being loaded, to boot into an earlier snapshot of the system. "Whoever installs SLES 12 gets this capability by default," Eckermann said. + +SLES also integrated Btrfs with the [Samba Windows file server][4], which makes Linux files accessible to Windows machines. For Windows users, SLES can now make multiple snapshots of a file appear as different versions of a file, which are all accessible. + +Initially, Enterprise Suse supports rollbacks for only system changes, though users can also deploy it to handle changes in a user's home directory, in which data is typically kept. "We already have it running, but it is not supported," Eckermann said. Users can continue to use ext3, ext4 or some other traditional Linux file system as their default. + +SLES 12, released Monday, comes with a number of other features as well. Like other distributions, SLES has [caught the fever for Docker containers][5] and now comes with a built-in framework to run this virtualization technology. For the first time, the package also provides geo-clustering, which allows the user to build replicate clusters across different geographic regions. + +An organization could use geo-clustering, for instance, to set up multiple copies of a single cluster in data centers around the world, so if one or more regions go offline, the others can continue operations unabated, Eckermann said. + +Suse [is among the world's most widely used distributions][6] of Linux, along with Ubuntu/Debian, and Red Hat Enterprise Linux. A free version is available under OpenSuse and Suse Linux offers a commercial edition packaged for enterprise usage. + +Suse Linux's parent company, Attachmate, is in the process of merging with Micro Focus. Eckermann expects no major changes in the operations of Suse Linux resulting from the new ownership. + +SLES 12 is [offered at an annual subscription][7] of US$349 per server. A free 60-day trial is also available. + +![](http://images.techhive.com/images/article/2014/10/sle_12_installed_system_08_snapper_gui-2-100527225-large.idge.png) + +Through the combined powers of the Btrfs file system and the Snapper utility, SUSE Enterprise Linux can now take snapshots of the system, and roll back to an earlier configuration if necessary. + +-------------------------------------------------------------------------------- + +via: http://www.computerworld.com/article/2838950/suse-enterprise-linux-can-take-your-system-back-in-time.html + +作者:[Joab Jackson][a] +译者:[译者ID](https://github.com/译者ID) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[a]:http://www.computerworld.com/author/Joab-Jackson/ +[1]:https://btrfs.wiki.kernel.org/index.php/Main_Page +[2]:http://www.phoronix.com/scan.php?page=news_item&px=MTUzNTE +[3]:http://snapper.io/ +[4]:http://www.samba.org/ +[5]:http://www.pcworld.com/article/2838452/canonical-celebrates-cloud-freedoms-with-new-ubuntu.html +[6]:http://distrowatch.com/table.php?distribution=suse +[7]:https://www.suse.com/products/server/how-to-buy/ \ No newline at end of file diff --git a/sources/tech/20141030 8 Tips to Solve Linux and Unix Systems Hard Disk Problmes Like Disk Full Or Can't Write to the Disk.md b/sources/tech/20141030 8 Tips to Solve Linux and Unix Systems Hard Disk Problmes Like Disk Full Or Can't Write to the Disk.md new file mode 100644 index 0000000000..1fbed0ced1 --- /dev/null +++ b/sources/tech/20141030 8 Tips to Solve Linux and Unix Systems Hard Disk Problmes Like Disk Full Or Can't Write to the Disk.md @@ -0,0 +1,288 @@ +8 Tips to Solve Linux & Unix Systems Hard Disk Problmes Like Disk Full Or Can’t Write to the Disk +================================================================================ +Can't write to the hard disk on a Linux or Unix-like systems? Want to diagnose corrupt disk issues on a server? Want to find out why you are getting "disk full" messages on screen? Want to learn how to solve full/corrupt and failed disk issues. Try these eight tips to diagnose a Linux and Unix server hard disk drive problems. + +![](http://s0.cyberciti.org/uploads/cms/2014/10/welcome-0-disk-problems.001.jpg) + +### #1 - Error: No space left on device ### + +When the Disk is full on Unix-like system you get an error message on screen. In this example, I'm running [fallocate command][1] and my system run out of disk space: + + $ fallocate -l 1G test4.img + fallocate: test4.img: fallocate failed: No space left on device + +The first step is to run the df command to find out information about total space and available space on a file system including partitions: + + $ df + +OR try human readable output format: + + $ df -h + +Sample outputs: + + Filesystem Size Used Avail Use% Mounted on + /dev/sda6 117G 54G 57G 49% / + udev 993M 4.0K 993M 1% /dev + tmpfs 201M 264K 200M 1% /run + none 5.0M 0 5.0M 0% /run/lock + none 1002M 0 1002M 0% /run/shm + /dev/sda1 1.8G 115M 1.6G 7% /boot + /dev/sda7 4.7G 145M 4.4G 4% /tmp + /dev/sda9 9.4G 628M 8.3G 7% /var + /dev/sda8 94G 579M 89G 1% /ftpusers + /dev/sda10 4.0G 4.0G 0 100% /ftpusers/tmp + +From the df command output it is clear that /dev/sda10 has 4.0Gb of total space of which 4.0Gb is used. + +#### Fixing problem when the disk is full #### + +1.[Compress uncompressed log and other files][2] using gzip or bzip2 or tar command: + + gzip /ftpusers/tmp/*.log + bzip2 /ftpusers/tmp/large.file.name + +2.Delete [unwanted files using rm command][3] on a Unix-like system: + + m -rf /ftpusers/tmp/*.bmp + +3.Move files to other [system or external hard disk using rsync command][4]: + + rsync --remove-source-files -azv /ftpusers/tmp/*.mov /mnt/usbdisk/ + rsync --remove-source-files -azv /ftpusers/tmp/*.mov server2:/path/to/dest/dir/ + +4.[Find out the largest directories or files eating disk space][5] on a Unix-like systesm: + + du -a /ftpusers/tmp | sort -n -r | head -n 10 + du -cks * | sort -rn | head + +5.[Truncate a particular file][6]. This is useful for log file: + + truncate -s 0 /ftpusers/ftp.upload.log + ### bash/sh etc ## + >/ftpusers/ftp.upload.log + ## perl ## + perl -e'truncate "filename", LENGTH' + +6.Find and remove large files that are open but have been deleted on Linux or Unix: + + ## Works on Linux/Unix/OSX/BSD etc ## + lsof -nP | grep '(deleted)' + + ## Only works on Linux ## + find /proc/*/fd -ls | grep '(deleted)' + +To truncate it: + + ## works on Linux/Unix/BSD/OSX etc all ## + > "/path/to/the/deleted/file.name" + ## works on Linux only ## + > "/proc/PID-HERE/fd/FD-HERE" + +### #2 - Is the file system is in read-only mode? ### + +You may end up getting an error such as follows when you try to create a file or save a file: + + $ cat > file + -bash: file: Read-only file system + +Run mount command to find out if the file system is mounted in read-only mode: + + $ mount + $ mount | grep '/ftpusers' + +To fix this problem, simply remount the file system in read-write mode on a Linux based system: + + # mount -o remount,rw /ftpusers/tmp + +Another example, from my [FreeBSD 9.x server to remount / in rw mode][7]: + + # mount -o rw /dev/ad0s1a / + +### #3 - Am I running out of inodes? ### + +Sometimes, df command reports that there is enough free space but system claims file-system is full. You need to check [for the inode][8] which identifies the file and its attributes on a file systems using the following command: + + $ df -i + $ df -i /ftpusers/ + +Sample outputs: + + Filesystem Inodes IUsed IFree IUse% Mounted on + /dev/sda8 6250496 11568 6238928 1% /ftpusers + +So /ftpusers has 62,50,496 total inodes but only 11,568 are used. You are free to create another 62,38,928 files on /ftpusers partition. If 100% of your inodes are used, try the following options: + +- Find unwanted files and delete or move to another server. +- Find unwanted large files and delete or move to another server. + +### #4 - Is my hard drive is dying? ### + +[I/O errors in log file (such as /var/log/messages) indicates][9] that something is wrong with the hard disk and it may be failing. You can check hard disk for errors using smartctl command, which is control and monitor utility for SMART disks under Linux and UNIX like operating systems. The syntax is: + + smartctl -a /dev/DEVICE + # check for /dev/sda on a Linux server + smartctl -a /dev/sda + +You can also use "Disk Utility" to get the same information + +[![](http://s0.cyberciti.org/uploads/l/tips/2007/07/500-GB-Hard-Disk-ATA-TOSHIBA-MK5061GSYF-dev-sda-%E2%80%94-Disk-Utility_014.png)][10] + +Fig. 01: Gnome disk utility (Applications > System Tools > Disk Utility) + +> **Note**: Don't expect too much from SMART tool. It may not work in some cases. Make backup on a regular basis. + +### #5 - Is my hard drive and server is too hot? ### + +High temperatures can cause server to function poorly. So you need to maintain the proper temperature of the server and disk. High temperatures can result into server shutdown or damage to file system and disk. [Use hddtemp or smartctl utility to find out the temperature of your hard on a Linux or Unix based system][11] by reading data from S.M.A.R.T. on drives that support this feature. Only modern hard drives have a temperature sensor. hddtemp supports reading S.M.A.R.T. information from SCSI drives too. hddtemp can work as simple command line tool or as a daemon to get information from all servers: + + hddtemp /dev/DISK + hddtemp /dev/sg0 + +Sample outputs: + +[![](http://s0.cyberciti.org/uploads/cms/2014/10/hddtemp-on-rhel-300x85.jpg)][12] + +Fig.02: hddtemp in action + +You can use the smartctl command as follows too: + + smartctl -d ata -A /dev/sda | grep -i temperature + +#### How do I get the CPU temperature? #### + +You can use Linux hardware monitoring tool such as [lm_sensor to get the cpu temperature on a Linux based][13] system: + + sensors + +Sample outputs from Debian Linux server: + +[![](http://s0.cyberciti.org/uploads/cms/2014/10/sensors-command-on-debian-server.jpg)][14] + +Fig.03: sensors command providing cpu core temperature and other info on a Linux + +### #6 - Dealing with corrupted file systems ### + +File system on server may be get corrupted due to a hard reboot or some other error such as bad blocks. You can [repair corrupted file systems with the following fsck command][15]: + + umount /ftpusers + fsck -y /dev/sda8 + +See [how to surviving a Linux filesystem failures][16] for more info. + +### #7 - Dealing with software RAID on a Linux ### + +To find the current status of a Linux software raid type the following command: + + ## get detail on /dev/md0 raid ## + mdadm --detail /dev/md0 + + ## Find status ## + cat /proc/mdstat + watch cat /proc/mdstat + +Sample outputs: + +[![](http://s0.cyberciti.org/uploads/cms/2014/10/linux-mdstat-output.jpg)][17] + +Fig. 04: Find the status of a Linux software raid command + +You need to replace a failed hard drive. You must u remove the correct failed drive. In this example, I'm going to replace /dev/sdb (2nd hard drive of RAID 6). It is not necessary to take the storage offline to repair the RAID on Linux. This only works if your server support hot-swappable hard disk: + + ## remove disk from an array md0 ## + mdadm --manage /dev/md0 --fail /dev/sdb1 + mdadm --manage /dev/md0 --remove /dev/sdb1 + + # Do the same steps again for rest of /dev/sdbX ## + # Power down if not hot-swappable hard disk: ## + shutdown -h now + + ## copy partition table from /dev/sda to newly replaced /dev/sdb ## + sfdisk -d /dev/sda | sfdisk /dev/sdb + fdisk -l + + ## Add it ## + mdadm --manage /dev/md0 --add /dev/sdb1 + # do the same steps again for rest of /dev/sdbX ## + + # Now md0 will sync again. See it on screen ## + watch cat /proc/mdstat + +See our [tips on increasing RAID sync speed on Linux][18] for more information. + +### #8 - Dealing with hardware RAID ### + +You can use the samrtctl command or vendor specific command to find out the status of RAID and disks in your controller: + + ## SCSI disk + smartctl -d scsi --all /dev/sgX + + ## Adaptec RAID array + /usr/StorMan/arcconf getconfig 1 + + ## 3ware RAID Array + tw_cli /c0 show + +See your vendor specific documentation to replace a failed disk. + +### Monitoring disk health ### + +See our previous tutorials: + +1. [Monitoring hard disk health with smartd under Linux or UNIX operating systems][19] +1. [Shell script to watch the disk space][20] +1. [UNIX get an alert when disk is full][21] +1. [Monitor UNIX / Linux server disk space with a shell scrip][22] +1. [Perl script to monitor disk space and send an email][23] +1. [NAS backup server disk monitoring shell script][24] + +### Conclusion ### + +I hope these tips will help you troubleshoot system disk issue on a Linux/Unix based server. I also recommend implementing a good backup plan in order to have the ability to recover from disk failure, accidental file deletion, file corruption, or complete server destruction: + +- [Debian / Ubuntu: Install Duplicity for encrypted backup in cloud][25] +- [HowTo: Backup MySQL databases, web server files to a FTP server automatically][26] +- [How To Set Red hat & CentOS Linux remote backup / snapshot server][27] +- [Debian / Ubuntu Linux install and configure remote filesystem snapshot with rsnapshot incremental backup utility][28] +- [Linux Tape backup with mt And tar command tutorial][29] + +-------------------------------------------------------------------------------- + +via: http://www.cyberciti.biz/datacenter/linux-unix-bsd-osx-cannot-write-to-hard-disk/ + +作者:[nixCraft][a] +译者:[译者ID](https://github.com/译者ID) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[a]:http://www.cyberciti.biz/tips/about-us +[1]:http://www.cyberciti.biz/faq/howto-create-lage-files-with-dd-command/ +[2]:http://www.cyberciti.biz/howto/question/general/compress-file-unix-linux-cheat-sheet.php +[3]:http://www.cyberciti.biz/faq/howto-linux-unix-delete-remove-file/ +[4]:http://www.cyberciti.biz/faq/linux-unix-bsd-appleosx-rsync-delete-file-after-transfer/ +[5]:http://www.cyberciti.biz/faq/how-do-i-find-the-largest-filesdirectories-on-a-linuxunixbsd-filesystem/ +[6]:http://www.cyberciti.biz/faq/truncate-large-text-file-in-unix-linux/ +[7]:http://www.cyberciti.biz/faq/howto-freebsd-remount-partition/ +[8]:http://www.cyberciti.biz/tips/understanding-unixlinux-filesystem-inodes.html +[9]:http://www.cyberciti.biz/tips/linux-find-out-if-harddisk-failing.html +[10]:http://www.cyberciti.biz/tips/linux-find-out-if-harddisk-failing.html +[11]:http://www.cyberciti.biz/tips/howto-monitor-hard-drive-temperature.html +[12]:http://www.cyberciti.biz/datacenter/linux-unix-bsd-osx-cannot-write-to-hard-disk/attachment/hddtemp-on-rhel/ +[13]:http://www.cyberciti.biz/faq/howto-linux-get-sensors-information/ +[14]:http://www.cyberciti.biz/datacenter/linux-unix-bsd-osx-cannot-write-to-hard-disk/attachment/sensors-command-on-debian-server/ +[15]:http://www.cyberciti.biz/tips/repairing-linux-ext2-or-ext3-file-system.html +[16]:http://www.cyberciti.biz/tips/surviving-a-linux-filesystem-failures.html +[17]:http://www.cyberciti.biz/datacenter/linux-unix-bsd-osx-cannot-write-to-hard-disk/attachment/linux-mdstat-output/ +[18]:http://www.cyberciti.biz/tips/linux-raid-increase-resync-rebuild-speed.html +[19]:http://www.cyberciti.biz/tips/monitoring-hard-disk-health-with-smartd-under-linux-or-unix-operating-systems.html +[20]:http://www.cyberciti.biz/tips/shell-script-to-watch-the-disk-space.html +[21]:http://www.cyberciti.biz/faq/mac-osx-unix-get-an-alert-when-my-disk-is-full/ +[22]:http://bash.cyberciti.biz/monitoring/shell-script-monitor-unix-linux-diskspace/ +[23]:http://www.cyberciti.biz/tips/howto-write-perl-script-to-monitor-disk-space.html +[24]:http://bash.cyberciti.biz/backup/monitor-nas-server-unix-linux-shell-script/ +[25]:http://www.cyberciti.biz/faq/duplicity-installation-configuration-on-debian-ubuntu-linux/ +[26]:http://www.cyberciti.biz/tips/how-to-backup-mysql-databases-web-server-files-to-a-ftp-server-automatically.html +[27]:http://www.cyberciti.biz/faq/redhat-cetos-linux-remote-backup-snapshot-server/ +[28]:http://www.cyberciti.biz/faq/linux-rsnapshot-backup-howto/ +[29]:http://www.cyberciti.biz/faq/linux-tape-backup-with-mt-and-tar-command-howto/ \ No newline at end of file diff --git a/sources/tech/20141030 How to run SQL queries against Apache log files on Linux.md b/sources/tech/20141030 How to run SQL queries against Apache log files on Linux.md new file mode 100644 index 0000000000..9ae1a5a76b --- /dev/null +++ b/sources/tech/20141030 How to run SQL queries against Apache log files on Linux.md @@ -0,0 +1,138 @@ +How to run SQL queries against Apache log files on Linux +================================================================================ +One of the distinguishing features of Linux is that, under normal circumstances, you should be able to know what is happening and has happened on your system by analyzing one or more system logs. Indeed, system logs are the first resource a system administrator tends to look to while troubleshooting system or application issues. In this article, we will focus on the Apache access log files generated by Apache HTTP web server. We will explore an alternative way of analyzing Apache access logs using [asql][1], an open-source tool that allows one to run SQL queries against the logs in order to view the same information in a more friendly format. + +### Background on Apache Logs ### + +There are two kinds of Apache logs: + +- **Access log**: Found at /var/log/apache2/access.log (for Debian) or /var/log/httpd/access_log (for Red Hat). Contains records of every request served by an Apache web server. +- **Error log**: Found at /var/log/apache2/error.log (for Debian) or /var/log/httpd/error_log (for Red Hat). Contains records of all error conditions reported by an Apache web server. Error conditions include, but are not limited to, 403 (Forbidden, usually returned after a valid request missing access credentials or insufficient read permissions), and 404 (Not found, returned when the requested resource does not exist). + +Although the verbosity of Apache access log file can be customized through Apache's configuration files, we will assume the default format in this article, which is as follows: + + Remote IP - Request date - Request type - Response code - Requested resource - Remote browser (may also include operating system) + +So a typical Apache log entry looks like: + + 192.168.0.101 - - [22/Aug/2014:12:03:36 -0300] "GET /icons/unknown.gif HTTP/1.1" 200 519 "http://192.168.0.10/test/projects/read_json/" "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:30.0) Gecko/20100101 Firefox/30.0" + +But what about Apache error log? Since error log entries dealing with particular requests have corresponding entries in the access log (which you can customize), you can use the access log file to obtain more information about error conditions (refer to example 5 for more details). + +That being said, please note that access log is a system-wide log file. To find the log files of virtual hosts, you may also need to check their corresponding configuration files (e.g., within /etc/apache2/sites-available/[virtual host name] on Debian). + +### Installing asql on Linux ### + +asql is written in Perl, and requires two Perl modules: a DBI driver for SQLite and GNU readline. + +#### Install asql on Debian, Ubuntu or their derivatives #### + +asql and its dependencies will automatically be installed with aptitude on Debian-based distributions. + + # aptitude install asql + +#### Install asql on Fedora, CentOS or RHEL #### + +On CentOS or RHEL, you will need to enable [EPEL repository][2] first, and then run the commands below. On Fedora, proceed to the following commands directly. + + # sudo yum install perl-DBD-SQLite perl-Term-ReadLine-Gnu + # wget http://www.steve.org.uk/Software/asql/asql-1.7.tar.gz + # tar xvfvz asql-1.7.tar.gz + # cd asql + # make install + +### How Does asql Work? ### + +As you can guess from the dependencies listed above, asql converts unstructured plain-text Apache log files into a structured SQLite database, which can be queried using standard SQL commands. This database can be populated with the contents of current and past log files - including compressed rotated logs such as access.log.X.gz. or access_log.old. + +First, launch asql from the command line with the following command + + # asql + +You will be entering asql's built-in shell interface. + +![](https://farm8.staticflickr.com/7493/15477783969_ebedc61afc_o.png) + +Let's type help to list the available commands in the asql shell: + +![](https://farm8.staticflickr.com/7471/15478852650_ffed84ddc2_o.png) + +We will begin by loading all the access logs in asql, which can be done with: + + asql> load + +In case of Debian, the following command will do: + + asql> load /var/log/apache2/access.* + +In case of CentOS/RHEL, use this command instead: + + asql> load /var/log/httpd/access_log* + +When asql finishes loading access logs, we can start querying the database. Note that the database created after loading is "temporary," meaning that if you exit the asql shell, the database will be lost. If you want to preserve the database, you have to save it to a file first. We will see how to do that later (refer to examples 3 and 4). + +![](https://farm8.staticflickr.com/7489/15044293173_f21e38692b_o.png) + +The database contains a table named logs. The available fields in the logs table can be displayed using the show command: + +![](https://farm4.staticflickr.com/3955/15664433685_465e8f47bd_o.png) + +The .asql hidden file, which is stored in each user's home directory, records the history of the commands that were typed by the user in an asql shell. Thus, you can browse through it using the arrow keys, and repeat previous commands by just pressing ENTER when you find the right one. + +### SQL Query Examples with asql ### + +Here a few examples of running SQL queries against Apache log files with asql. + +**Example 1**: Listing the request sources / dates and HTTP status codes returned during the month of October 2014. + + SELECT source, date, status FROM logs WHERE date >= '2014-10-01T00:00:00' ORDER BY source; + +![](https://farm8.staticflickr.com/7488/15664433665_dde4ac1319_z.jpg) + +**Example 2**: Displaying the total size (in bytes) of requests served per client in descending order. + + SELECT source,SUM(size) AS Number FROM logs GROUP BY source ORDER BY Number DESC; + +![](https://farm4.staticflickr.com/3938/15478271548_369541b56c_z.jpg) + +**Example 3**: Saving the database to [filename] in the current working directory. + + save [filename] + +![](https://farm8.staticflickr.com/7576/15664433645_16510d8938_o.png) + +This allows us to avoid the need for waiting while the log parsing is performed with the load command as shown earlier. + +**Example 4**: Restoring the database in a new asql session after exiting the current one. + + restore [filename] + +![](https://farm4.staticflickr.com/3941/15664433635_737e714780_o.png) + +**Example 5**: Returning error conditions logged in the access file. In this example, we will display all the requests that returned a 403 (access forbidden) HTTP code. + + SELECT source,date,status,request FROM logs WHERE status='403' ORDER BY date + +![](https://farm8.staticflickr.com/7551/15478271518_0444582a3d_z.jpg) + +This goes to show that although asql only analyzes access logs, we can use the status field of a request to display requests with error conditions. + +### Summary ### + +We have seen how asql can help us analyze Apache logs and present the results in a user friendly output format. Although you could obtain similar results by using command line utilities such as cat in conjunction with grep, uniq, sort, and wc (to name a few), in comparison asql represents a Swiss army knife due to the fact that it allows us to use standard SQL syntax to filter the logs according to our needs. + +Feel free to leave your questions or comments below. Hope it helps. + +-------------------------------------------------------------------------------- + +via: http://xmodulo.com/sql-queries-apache-log-files-linux.html + +作者:[Gabriel Cánepa][a] +译者:[译者ID](https://github.com/译者ID) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[a]:http://xmodulo.com/author/gabriel +[1]:http://www.steve.org.uk/Software/asql/ +[2]:http://xmodulo.com/how-to-set-up-epel-repository-on-centos.html \ No newline at end of file From a2b874c777bc18c0f0ef7ddd18c00647cf5aa8a3 Mon Sep 17 00:00:00 2001 From: wxy Date: Thu, 30 Oct 2014 15:50:18 +0800 Subject: [PATCH 077/108] PUB:20140924 How to use CloudFlare as a ddclient provider under Ubuntu @GOLinux --- ...are as a ddclient provider under Ubuntu.md | 25 ++++++++----------- 1 file changed, 11 insertions(+), 14 deletions(-) rename {translated/tech => published}/20140924 How to use CloudFlare as a ddclient provider under Ubuntu.md (78%) diff --git a/translated/tech/20140924 How to use CloudFlare as a ddclient provider under Ubuntu.md b/published/20140924 How to use CloudFlare as a ddclient provider under Ubuntu.md similarity index 78% rename from translated/tech/20140924 How to use CloudFlare as a ddclient provider under Ubuntu.md rename to published/20140924 How to use CloudFlare as a ddclient provider under Ubuntu.md index bd5f5a49ea..fb78dd7867 100644 --- a/translated/tech/20140924 How to use CloudFlare as a ddclient provider under Ubuntu.md +++ b/published/20140924 How to use CloudFlare as a ddclient provider under Ubuntu.md @@ -1,15 +1,16 @@ -Ubuntu下使用CloudFlare作为ddclient提供商 +Ubuntu下使用CloudFlare 动态域名 ================================================================================ -DDclient是一个Perl客户端,用于更新动态DNS网络服务提供商帐号下的动态DNS条目。它最初是由保罗·巴利编写的,现在大多数是由维姆潘科在做。它能做的不仅仅是动态DNS,也可以通过几种不同的方式获取你的WAN口IP地址。 - -CloudFlare有一点已知的功能,它允许你通过API或叫做ddclient的命令行脚本更新你的DNS记录。不管哪一个,结果都一样,而且它是个免费软件。 - -不幸的是,ddclient并不能在CloudFlare中即开即用。它需要打补丁,这里就是要介绍怎样在Debian或Ubuntu上破解它,它也能在带有Raspberry Pi的Raspbian上工作。 ### 需求 ### 首先保证你有一个自有域名,然后登录到CloudFlare,添加你的域名。遵循指令操作,使用它给出的默认值就行了。你将让CloudFlare来托管你的域,所以你需要调整你的注册机构的设置。如果你想要使用子域名,请为它添加一条‘A’记录。目前,任何IP地址都可以。 +DDclient是一个Perl客户端,用于更新动态DNS网络服务提供商帐号下的动态DNS条目。它最初是由保罗·巴利编写的,现在大多数是由维姆潘科在做。它能做的不仅仅是动态DNS,也可以通过几种不同的方式获取你的WAN口IP地址。 + +CloudFlare 的一个功能是它允许你通过API或叫做ddclient的命令行脚本更新你的DNS记录。不管哪一个,结果都一样,而且它是个免费软件。 + +不幸的是,ddclient并不能在CloudFlare中即开即用。它需要打补丁,这里就是要介绍怎样在Debian或Ubuntu上破解它,它也能在带有Raspberry Pi的Raspbian上工作。 + ### 在Ubuntu上安装ddclient ### 打开终端,并运行以下命令 @@ -50,15 +51,11 @@ CloudFlare有一点已知的功能,它允许你通过API或叫做ddclient的 #daemon=300 -来自CloudFlare帐号页面的api密钥 +你的 api-key 可以从 CloudFlare帐号页面找到,ssl=yes 可能已经设置,use=web, web=dyndns 表示使用 dyndns 来确定 IP(用于 NAT)。 -ssl=yes might already be in that file +你已经搞定了。登录到 https://www.cloudflare.com 并检查列出的与你域名对应的IP地址是否与 http://checkip.dyndns.com 列出的相匹配。 -use=web, web=dyndns will use dyndns to check IP (useful for NAT) - -你已经搞定了。登录到https://www.cloudflare.com并检查列出的与你域名对应的IP地址是否匹配到了http://checkip.dyndns.com。 - -使用以下命令来验证你的设置 +使用以下命令来验证你的设置: sudo ddclient -daemon=0 -debug -verbose -noquiet @@ -67,6 +64,6 @@ use=web, web=dyndns will use dyndns to check IP (useful for NAT) via: http://www.ubuntugeek.com/how-to-use-cloudflare-as-a-ddclient-provider-under-ubuntu.html 译者:[GOLinux](https://github.com/GOLinux) -校对:[校对者ID](https://github.com/校对者ID) +校对:[wxy](https://github.com/wxy) 本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 From 11ab45f5568a1b3e9101295766abc7fb2d912578 Mon Sep 17 00:00:00 2001 From: DeadFire Date: Thu, 30 Oct 2014 16:01:57 +0800 Subject: [PATCH 078/108] =?UTF-8?q?20141030-2=20=E9=80=89=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...d Give a Fatal Blow to Windows in China.md | 36 +++++ ...s Civil War--Has It Really Come to This.md | 136 ++++++++++++++++++ ...ve Linux with nothing but a flash drive.md | 75 ++++++++++ ... List of Files and Directories in Linux.md | 42 ++++++ 4 files changed, 289 insertions(+) create mode 100644 sources/news/20141030 Ubuntu Could Give a Fatal Blow to Windows in China.md create mode 100644 sources/talk/20141030 Debian's Civil War--Has It Really Come to This.md create mode 100644 sources/tech/20141030 Test drive Linux with nothing but a flash drive.md create mode 100644 sources/tech/20141030 rsync Command to Exclude a List of Files and Directories in Linux.md diff --git a/sources/news/20141030 Ubuntu Could Give a Fatal Blow to Windows in China.md b/sources/news/20141030 Ubuntu Could Give a Fatal Blow to Windows in China.md new file mode 100644 index 0000000000..4e3c4ceb21 --- /dev/null +++ b/sources/news/20141030 Ubuntu Could Give a Fatal Blow to Windows in China.md @@ -0,0 +1,36 @@ +Ubuntu Could Give a Fatal Blow to Windows in China +================================================================================ +> Ubuntu Kylin might be able to replace Windows in China + +**The Windows operating systems is going out the front door in China and its place will be taken by a Linux distribution that will be used by the authorities and the governing body. The problem is that there is no real alternative, although at least one OS might be ready for the task, and that is Ubuntu Kylin.** + +The Chinese government and Microsoft now have a rocky relationship, to say the least. [As detailed in today's news][1], a plan to replace Windows gradually throughout the country with a Linux counterpart is in the works. It's unclear what system will be used to take over, especially since this a very complex situation and a very big country. + +Usually, there is no size-fits-all solution to this kind of problem and the Chinese approach does seem to be a little too blunt. In any case, this opens up a great window of opportunity for Ubuntu Kylin, a distribution based on Ubuntu and developed by Chinese devs and Canonical. It's been stable for quite some time and they already had a few consecutive launches. + +### Ubuntu Kylin is knocking on Windows' door ### + +It's interesting to see that in the same day that this piece of news about the Chinese intentions surfaces, an interview with Dr. Jonas Zhang, vice professor of the National University of Defense Technology (NUDT), about the [recent launch of the 14.10 branch][2] has been published. + +"In our 14.10 release, there are some sweet new features. For example, beginners can find a replacement of Windows software via Ubuntu Kylin Software Center easily; users can login to Ubuntu Kylin applications and community via the SSO of Ubuntu Kylin (Single Sign-On System of Ubuntu Kylin, we call it UKID); Sogou IM (one of the most famous Chinese input method in the world, which has been launched on Apple’s App Store since last month) reduces 40% of the CPU and memory usage." + +"More than 50 project managers, engineers and community managers from CSIP (one service agency of China government), Canonical and NUDT (National University of Defense Technology) are working on Ubuntu Kylin. Most of the full-time engineers are from NUDT. Many developers from Ubuntu, Debian and other communities also take part in the development of Ubuntu Kylin," [said][2] Dr. Jonas Zhang. + +The Chinese government might be looking to build yet another Linux distro by itself (not their first attempt), but it looks like they could already have a very good candidate to take over Windows. This would also be very good business for Canonical, at least in terms of recognition. + +If Ubuntu, through its Kylin connection, manages to replace Windows in a country as big as China, it would be a huge boost for the company. It remains to be seen if the developers' efforts to make Ubuntu Kylin a competitive OS were not in vain. + +-------------------------------------------------------------------------------- + +via: http://news.softpedia.com/news/Ubuntu-Could-Give-a-Fatal-Blow-to-Windows-in-China-463500.shtml + +作者:[Silviu Stahie][a] +译者:[译者ID](https://github.com/译者ID) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[a]:http://news.softpedia.com/editors/browse/silviu-stahie +[1]:http://news.softpedia.com/news/China-Starts-Windows-Eradication-15-of-Govt-PCs-to-Switch-to-Linux-Every-Year-463393.shtml +[2]:http://news.softpedia.com/news/Ubuntu-Kylin-14-10-Utopic-Unicorn-Consolidates-Its-Position-in-China-463068.shtml +[3]:https://insights.ubuntu.com/2014/10/29/interview-nudt-talks-ubuntu-kylin-and-its-14-10-release/ \ No newline at end of file diff --git a/sources/talk/20141030 Debian's Civil War--Has It Really Come to This.md b/sources/talk/20141030 Debian's Civil War--Has It Really Come to This.md new file mode 100644 index 0000000000..090ffb1f03 --- /dev/null +++ b/sources/talk/20141030 Debian's Civil War--Has It Really Come to This.md @@ -0,0 +1,136 @@ +Debian's Civil War: Has It Really Come to This? +================================================================================ +![](http://www.linuxinsider.com/ai/254566/debian.jpg) + +**"The 'new' Debian would be rather weak," said blogger Robert Pogson. "Would it have the hundreds of mirrors that make Debian wonderful? I doubt that. Debian is a great distro. Disemboweling it out of spite is just wrong. Why can't we come to some amicable agreement? Why do we have to race at full speed to the edge of a cliff when we don't know if we can stop?"** + +Well it seems no matter how loudly we here in the Linux blogosphere try to hum a happy tune or discuss [cheerful FOSS matters][1], we just can't seem to drown out the shouts and screams coming from those standing too close to the Systemd Inferno. + +Stand back, people! It's dangerous! + +The embers, of course, [had been hot][2] for some time already before the blaze [flared sky-high][3] a few months ago. Now, the conflagration appears to be completely out of control. + +Need proof? Two words: [Debian fork][4]. + +That's right: Debian, the granddaddy of Linux distributions and embodiment of everything so many FOSS fans hold dear, may be forked, and it's apparently all because of Systemd. + +A more upsetting development would be hard to conceive. + +### 'Roll Up Your Sleeves' ### + +![](http://www.linuxinsider.com/images/article_images/linuxgirl_bg_pinkswirl_150x245.jpg) + +"Debian today is haunted by the tendency to betray its own mandate, a base principle of the Free Software movement: put the user's rights first," explained the anonymous developers behind the Debian Fork site. "What is happening now instead is that through a so-called 'do-ocracy,' developers and package maintainers are imposing their choices on users." + +Their conclusion: "Roll up your sleeves, we may need to fork Debian." + +Quick as a flash, [word traveled][5] to [Slashdot][6], [LXer][7] and beyond. + +Down at the Linux blogosphere's Punchy Penguin Saloon, a profound hush fell as soon as the news arrived. Fortunately, it lasted only a fraction of a second. + +### 'I Say Go for It' ### + +"Freedom of choice implies the freedom to be a complete idiot, and clearly Free Software has its share," Google+ blogger Kevin O'Brien said. + +"I have been skeptical about Systemd, but I have trouble believing there are enough people this crazy to actually pull off a fork of Debian," O'Brien added. "I predict a year from now we won't remember what this was all about." + +On the other hand: "I say go for it if you're that passionate about it," offered [Linux Rants][8] blogger Mike Stone. "This is Linux we're talking about, after all, and Linux is open source. Anybody should always feel free to do what they want with Linux, as long as they're willing to share. + +"The fact that SysVinit will still be available on standard Debian kind of makes forking it over Systemd seem a little silly, but I'm not going to stand in the way of anybody that wants to fork any FOSS for their own use," Stone added. + +Indeed, "Linux's strength is also its Achilles' Heel," Google+ blogger Rodolfo Saenz opined. 'In the Linux world, forking is inevitable. It is part of Linux's evolution." + +### 'A Lot of Misinformation' ### + +At the same time, "I think if they were likely to actually fork Debian, they would have just gone and done it rather than throw a massive public temper tantrum," consultant and Slashdot blogger Gerhard Mack suggested. + +"Secondly, I think there is a lot of misinformation out there about what Systemd does and how it works," Mack added. 'At the beginning of all of this I was very worried about the stability and security of the systems I maintain after reading the nerd rage on Slashdot, The Register, and sites like [Boycott Systemd][9], so I looked into Systemd for myself. + +"What I have discovered is that they seem to be confusing Systemd with things that are bundled with Systemd but run separately using a 'least privilege needed for the task' type design," he explained. "There are things I don't like, such as the binary logs, but then I can just configure it to run through syslogd as usual and ignore the binary logs." + +Particularly "hilarious," Mack added, is that people "suggest that only desktops need to boot quickly," he said. "I have seen some automated systems that load VMs on demand, and they would be much more effective if they booted faster." + +### 'I'm Really Confused' ### + +It will be "a sad day if Debian forks over this Systemd thing," longtime Debian user [Robert Pogson][10] told Linux Girl. + +"I am one of the haters, I guess," Pogson said. "I see adopting Systemd as something that kept Jessie's bug count high for months. I just don't see the need for it. I've read that some desktop users complain that Systemd is all for server users and I've read that some server users complain that Systemd is all for desktop users. I'm both and I'm really confused." + +Meanwhile, "do I need to learn a lot about Systemd to use it?" Pogson wondered. "I'm too old to learn too many new tricks. Does it give me any benefits, or is it just a nuisance? + +"I see faster booting as a rather small benefit for a lot of nuisance value like binary logs... what's with that?" he added. "I've learned to use grep on current logs to get what I need. Hiding them is just making GNU/Linux more like that other OS. Yuck!" + +### 'Nonfree Software Is the Real Enemy' ### + +Debian is an organization of roughly a thousand developers, Pogson pointed out. + +"They work hard and make the world a better place," he said. "Forcing them to choose which fork to take is really cruel and unusual punishment for such generous people. If the fork is 50/50, Debian might take years of recruitment to recover. That does no one any good. + +"The 'new' Debian would be rather weak," Pogson added. "Would it have the hundreds of mirrors that make Debian wonderful? I doubt that. Debian is a great distro. Disemboweling it out of spite is just wrong. Why can't we come to some amicable agreement? Why do we have to race at full speed to the edge of a cliff when we don't know if we can stop?" + +Bottom line: "If this civil war gets any worse, I may switch back to Debian Stable/Wheezy, my 'bomb shelter,' in the hope that I can wait for peace to break out," he concluded. "I don't need the drama. Bill Gates must be laughing at this waste of energy. Nonfree software is the real enemy -- not folks building/using Debian GNU/Linux." + +### 'It Is What Happens' ### + +It is a sad development, Google+ blogger Gonzalo Velasco C. agreed. + +At the same time, "it is what happens in the FLOSS world when you don't listen to your peers and users and listen to others that have their own (commercial) agenda and 'suggest' you use a tool as hungry as Systemd, regardless of its merits and modernism comparing to old sisVinit," he said. + +"There are a lot of technical discussions and arguments out there, and Debian must show it is neither deaf nor blind and re-discuss the issue," he added. + +### Red Hat's Influence ### + +"Do the users wish to be beholden to [Red Hat's][11] corporate roadmap? If the answer is 'no,' then a fork is the only choice left open, as it's pretty plain to see that Debian will go Systemd whether their users like it or not," SoylentNews blogger hairyfeet said. + +"It all comes down to cloud computing, and RH intends to foist its version of SVCHOSTS for Linux onto Debian and Ubuntu," he added. "The reason why is obvious: it gives them pretty much every major Linux distro, as they are nearly all built on RH, Debian or Ubuntu." + +So, the answer is simple, hairyfeet said: "If you want RH calling the shots, then stay; if not, fork." + +### 'Seems Like a Lot of Work' ### + +Of course, there's nothing to prevent a fork, Google+ blogger Brett Legree pointed out. + +"If someone wants to do it, that's their choice," he noted. + +"Seems like a lot of work, though," Legree added. "I mean, I figure that most people wouldn't care either way what init system is being used, and those who do know can probably figure out how to configure Debian (or whatever) to use a different init system. That's been possible up to now, and I'd expect it will continue to be so." + +Forks are a lot of work to maintain, agreed Chris Travers, a [blogger][12] who works on the [LedgerSMB][13] project. + +"Trust me -- I know from experience, as LedgerSMB began life as a fork of SQL-Ledger," Travers said. + +Still, "there are huge differences in philosophy between init scripts and Systemd, and this is an area where there is probably room for a good Unix-like distro to keep the old ways," Travers said. "There are certainly worse things than forks developing. This being said, I wonder if people who really want Unix should instead switch to the BSDs." + +### 'Like Killing Mosquitoes With Shotguns' ### + +The Debian community was not aware of everything the changes in the init system would bring, Google+ blogger Alessandro Ebersol suggested. "They thought it was a non-issue." + +Now that "a large number of Debian sysadmins are not pleased," however, forking would be "an extreme measure," he said, "and a last resort. There are still a lot of things that can be done." + +After all, Debian is "the GNU/Linux that runs on anything, in any *nix setup -- remember the Debian BSD flavor, and that Debian BSD will have to be accommodated to work with the new init system," Ebersol pointed out. + +"So, I believe all is not lost for Debian, but a fork, right now, is too extreme, like killing mosquitoes with shotguns," he concluded. "There's still time and place to make peace and amendments in the Debian community." + +-------------------------------------------------------------------------------- + +via: http://www.linuxinsider.com/story/81262.html + +作者:[Katherine Noyes][a] +译者:[译者ID](https://github.com/译者ID) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[a]:http://twitter.com/noyesk +[1]:http://www.reglue.org/ +[2]:http://www.linuxinsider.com/story/80472.html +[3]:http://www.linuxinsider.com/story/80980.html +[4]:http://debianfork.org/ +[5]:http://linux.slashdot.org/story/14/10/20/1944226/debians-systemd-adoption-inspires-threat-of-fork +[6]:http://slashdot.org/ +[7]:http://lxer.com/module/forums/t/35625/ +[8]:http://linuxrants.com/ +[9]:http://boycottsystemd.org/ +[10]:http://mrpogson.com/ +[11]:http://www.redhat.com/ +[12]:http://ledgersmbdev.blogspot.com/ +[13]:http://www.ledgersmb.org/ \ No newline at end of file diff --git a/sources/tech/20141030 Test drive Linux with nothing but a flash drive.md b/sources/tech/20141030 Test drive Linux with nothing but a flash drive.md new file mode 100644 index 0000000000..84d5b7a9d4 --- /dev/null +++ b/sources/tech/20141030 Test drive Linux with nothing but a flash drive.md @@ -0,0 +1,75 @@ +Test drive Linux with nothing but a flash drive +================================================================================ +![Penguins gathered together: Linux for the win](https://opensource.com/sites/default/files/styles/image-full-size/public/images/life/OSDC_Penguin_Image_520x292_12324207_0714_mm_v1a.png) +Image by : Opensource.com + +Maybe you’ve heard about Linux and are intrigued by it. So intrigued that you want to give it a try. But you might not know where to begin. + +You’ve probably done a bit of research online and have run across terms like dual booting and virtualization. Those terms might mean nothing to you, and you’re definitely not ready to sacrifice the operating system that you’re currently using to give Linux a try. So what can you do? + +If you have a USB flash drive lying around, you can test drive Linux by creating a live USB. It’s a USB flash drive that contains an operating system that can start from the flash drive. It doesn’t take much technical ability to create one. Let’s take a look at how to do that and how to run Linux using a live USB. + +### What you’ll need ### + +Aside from a desktop or laptop computer, you’ll need: + +- A blank USB flash drive—preferably one that has a capacity of 4 GB or more. +- An [ISO image][1] (an archive of the contents of a hard disk) of the Linux distribution that you want to try. More about this in a moment. +- An application called [Unetbootin][2], an open source tool, cross platform tool that creates a live USB. You don’t need to be running Linux to use it. In the instructions that below, I’m running Unetbootin on a MacBook. + +### Getting to work ### + +Plug your flash drive into a USB port on your computer and then fire up Unetbootin. You’ll be asked for the password that you use to log into your computer. + +![Unetbootin main window](http://opensource.com/sites/default/files/images/life-uploads/unetbootin-main.png) + +Remember the ISO image that was mentioned a few moments ago? There are two ways you can get one: either by downloading it from the website of the Linux distribution that you want to try, or by having Unetbootin download it for you. To do that latter, click **Select Distribution** at the top of the window, choose the distribution that you want to download, and then click **Select Version** to select the version of the distribution that you want to try. + +![Downloading a Linux distribution](http://opensource.com/sites/default/files/images/life-uploads/unetbootin-download-distro.png) + +Or, you can download the distribution yourself. Usually, the Linux distributions that I want to try aren’t in the list. If you go the second route, click **Disk image** and then click the button to search for the .iso file that you downloaded. + +Notice the **Space used to preserve files across reboots (Ubuntu only)** option? If you’re testing Ubuntu or one of its derivatives (like Lubuntu or Xubuntu), you can set aside a few megabytes of space on your flash drive to save files like web browser bookmarks or documents that you create. When you load Ubuntu from the flash drive again, you can reuse those files. + +![Ready to create a live USB](http://opensource.com/sites/default/files/images/life-uploads/unetbootin-ready-to-go.png) + +Once the ISO image is loaded, click **OK**. It takes anywhere from a couple of minutes to 10 minutes for Unetbootin to create the live USB. + +![Creating the live USB](http://opensource.com/sites/default/files/images/life-uploads/unetbootin-creating-disk.png) + +### Testing out the live USB ### + +This is the point where you have to embrace your inner geek a bit. Not too much, but you will be taking a peek into the innards of your computer by going into the [BIOS][3]. Your computer’s BIOS starts various bits of hardware and controls where the computer’s operating system starts, or boots, from. + +The BIOS usually looks for the operating system in this order (or something like it): hard drive, then CD-ROM or DVD drive, and then an external drive. You’ll want to change that order so that the external drive (in this case, your live USB) is the one that the BIOS checks first. + +To do that, restart your computer with the flash drive plugged into a USB port. When you see the message **Press F2 to enter setup**, do just that. On some computers, the key might be F10. + +In the BIOS, use the right arrow key on your keyboard to navigate to the **Boot** menu. You’ll see a list of drives on your computer. Use the down arrow key on your keyboard to navigate to the item labeled **USB HDD** and then press **F6** to move that item to the top of the list. + +Once you’ve done that, press **F10** to save the changes. You’ll be kicked out of the BIOS and your computer will start up. After a short amount of time, you’ll be presented with a menu listing the options for starting the Linux distribution you’re trying out. Select **Run without installing** (or the menu item closest to it). + +Once the desktop loads, you can connect to a wireless or wired network, browse the web, and give the pre-installed software a whirl. You can also check to see if, for example, your printer or scanner works with the Linux distribution you’re testing. If you really, really want to you can also fiddle at the command line. + +### What to expect ### + +Depending on the Linux distribution you’re testing and the speed of the flash drive you’re using, the operating system might take longer to load and it might run a bit slower than it would if it was installed on your hard drive. + +As well, you’ll only have the basic software that the Linux distribution packs out of the box. You generally get a web browser, a word processor, a text editor, a media player, an image viewer, and a set of utilities. That should be enough to give you a feel for what it’s like to use Linux. + +If you decide that you like using Linux, you can install it from the flash drive by double clicking on the installer. + +-------------------------------------------------------------------------------- + +via: https://opensource.com/life/14/10/test-drive-linux-nothing-flash-drive + +作者:[Scott Nesbitt][a] +译者:[译者ID](https://github.com/译者ID) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[a]:https://opensource.com/users/scottnesbitt +[1]:http://en.wikipedia.org/wiki/ISO_image +[2]:http://unetbootin.sourceforge.net/ +[3]:http://en.wikipedia.org/wiki/BIOS \ No newline at end of file diff --git a/sources/tech/20141030 rsync Command to Exclude a List of Files and Directories in Linux.md b/sources/tech/20141030 rsync Command to Exclude a List of Files and Directories in Linux.md new file mode 100644 index 0000000000..23bec502f8 --- /dev/null +++ b/sources/tech/20141030 rsync Command to Exclude a List of Files and Directories in Linux.md @@ -0,0 +1,42 @@ +rsync Command to Exclude a List of Files and Directories in Linux +================================================================================ +**rsync** is a very useful and popular linux tool being used for backup and restoring files, but also for comparing and syncing them. We already shown you in the past [how to use rsync command in linux with examples][1] and today we will add a few more useful tricks you can use rsync at. + +### Exclude a list of files and directories ### + +Sometimes when we do large syncs we may wish to exclude a list of files and directories from syncing, in general files that can't by synced like device files and some system files, or files that would take up unnecessary disk space like temporary or cache files. + +First let's make a file called "excluded" (you can name it whatever you wish) and write each folder or file we would like to exclude on a separate line like this. For our example if you wish to do a full backup of your root partition you should exclude devices directories that get created at boot time and directories that hold temporary files, your list may look like this: + +![rsync excluded](http://blog.linoxide.com/wp-content/uploads/2014/10/rsync-excluded.jpg) + +Then you can run the following command to backup your system: + + $ sudo rsync -aAXhv --exclude-from=excluded / /mnt/backup + +![rsync exclude file](http://blog.linoxide.com/wp-content/uploads/2014/10/rsync-exclude-file.jpg) + +### Exclude files from the command line ### + +You can also exclude files directly from the command line, this is useful when you have a smaller number of files to exclude and you wish to include this in a script or crontab and don't want your script or cron to depend on another file to run successful. + +For example if you wish to sync /var to a backup directory but you don't wish to include cache and tmp folder that usualy don't hold important content between restarts you can use the following command: + + $ sudo rsync -aAXhv --exclude={"/var/cache","/var/tmp"} /var /home/adrian/var + +![rsync exclude](http://blog.linoxide.com/wp-content/uploads/2014/10/rsync-exclude.jpg) + +This command will be easy to use in any script or cron and will not depend on another file. + +-------------------------------------------------------------------------------- + +via: http://linoxide.com/linux-command/exclude-files-rsync-examples/ + +作者:[Adrian Dinu][a] +译者:[译者ID](https://github.com/译者ID) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[a]:http://linoxide.com/author/adriand/ +[1]:http://linoxide.com/how-tos/rsync-copy/ \ No newline at end of file From 623892b120b794dc9c97a5753b71b7cd9372c36b Mon Sep 17 00:00:00 2001 From: wxy Date: Thu, 30 Oct 2014 16:22:09 +0800 Subject: [PATCH 079/108] =?UTF-8?q?PUB:Wine=201.7.29=20(Development=20Vers?= =?UTF-8?q?ion)=20Released=20=E2=80=93=20Install=20in=20RedHat=20and=20Deb?= =?UTF-8?q?ian=20Based=20Systems?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit @SPccman --- ... – Install in RedHat and Debian Based Systems.md | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) rename {translated/tech => published}/Wine 1.7.29 (Development Version) Released – Install in RedHat and Debian Based Systems.md (92%) diff --git a/translated/tech/Wine 1.7.29 (Development Version) Released – Install in RedHat and Debian Based Systems.md b/published/Wine 1.7.29 (Development Version) Released – Install in RedHat and Debian Based Systems.md similarity index 92% rename from translated/tech/Wine 1.7.29 (Development Version) Released – Install in RedHat and Debian Based Systems.md rename to published/Wine 1.7.29 (Development Version) Released – Install in RedHat and Debian Based Systems.md index 322ce30076..6c5720bd9b 100644 --- a/translated/tech/Wine 1.7.29 (Development Version) Released – Install in RedHat and Debian Based Systems.md +++ b/published/Wine 1.7.29 (Development Version) Released – Install in RedHat and Debian Based Systems.md @@ -1,10 +1,11 @@ -Wine 1.7.29(开发版本)已发布-在基于RedHat与Debian的系统上安装 +在基于RedHat与Debian的系统上安装Wine 最新的开发版本 ========================= + **Wine**,一个在Linux平台上非常受欢迎并且强大的开源应用,有了它,我们可以在Linux平台上完美运行Windows应用与游戏。 ![Install Wine (Development Version) in Linux](http://www.tecmint.com/wp-content/uploads/2014/05/Install-Wine-Development-Version.png) -在Linux上安装Wine(开发版本) +*在Linux上安装Wine(开发版本)* WineHQ团队,近期宣布了一个新的开发版本**Wine1.7.29**。这个版本带来了诸多重要的特性,并且修复了**44**个bug。 @@ -19,7 +20,7 @@ Wine团队几乎每周都会发布新的开发版本,并且加入许多新特 在官方的 [变更日志][1] 中可以找到关于这个版本更多更深入的细节。 -这篇文章指导你在基于**RedHat**与**Debian**的系统,如CentOS,Fedora,Ubuntu,Linux Mint以及其他的发型版中安装最新的开发版本**Wine 1.7.29**。 +这篇文章指导你在基于**RedHat**与**Debian**的系统,如CentOS,Fedora,Ubuntu,Linux Mint以及其他的发行版中安装最新的开发版本**Wine 1.7.29**。 ##在Linux中安装 Wine 1.7.29 开发版本## @@ -32,8 +33,8 @@ Wine团队几乎每周都会发布新的开发版本,并且加入许多新特 然后,使用如下命令下载Wine最新的开发版本(**1.7.29**)以及解压源码包。 - $cd /tmp - $wget http://citylan.dl.sourceforge.net/project/wine/Source/wine-1.7.29.tar.bz2 + $ cd /tmp + $ wget http://citylan.dl.sourceforge.net/project/wine/Source/wine-1.7.29.tar.bz2 $ tar -xvf wine-1.7.29.tar.bz2 -C /tmp/ 接下来,使用下列命令编译及安装Wine。 @@ -85,7 +86,7 @@ via: http://www.tecmint.com/install-wine-in-linux/ 作者:[Ravi Saive][a] 译者:[SPccman](https://github.com/SPccman) -校对:[校对者ID](https://github.com/校对者ID) +校对:[wxy](https://github.com/wxy) 本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 From 7d0876d4717842120054010f3ffccc734e0fdb51 Mon Sep 17 00:00:00 2001 From: zhengsihua Date: Thu, 30 Oct 2014 22:05:53 +0800 Subject: [PATCH 080/108] =?UTF-8?q?[Translating]=20Linux=20FAQs=20with=20A?= =?UTF-8?q?nswers--How=20to=20fix=20=E2=80=9Chda-duplex=20not=20supported?= =?UTF-8?q?=20in=20this=20QEMU=20binary=E2=80=9D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...--How to fix hda-duplex not supported in this QEMU binary.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/sources/tech/20141029 Linux FAQs with Answers--How to fix hda-duplex not supported in this QEMU binary.md b/sources/tech/20141029 Linux FAQs with Answers--How to fix hda-duplex not supported in this QEMU binary.md index eafc88f00c..d89384c5b9 100644 --- a/sources/tech/20141029 Linux FAQs with Answers--How to fix hda-duplex not supported in this QEMU binary.md +++ b/sources/tech/20141029 Linux FAQs with Answers--How to fix hda-duplex not supported in this QEMU binary.md @@ -1,3 +1,5 @@ +Translating------geekpi + Linux FAQs with Answers--How to fix “hda-duplex not supported in this QEMU binary” ================================================================================ > **Question**: When I try to install Linux on a new VM in virt-manager, the VM fails to boot with the following error: "unsupported configuration: hda-duplex not supported in this QEMU binary." How can I fix this error? From 0939c9c62d5ec4f80fb3485ebb9f12ec9140f025 Mon Sep 17 00:00:00 2001 From: zhengsihua Date: Thu, 30 Oct 2014 22:22:55 +0800 Subject: [PATCH 081/108] =?UTF-8?q?[Translated]=20Linux=20FAQs=20with=20An?= =?UTF-8?q?swers--How=20to=20fix=20=E2=80=9Chda-duplex=20not=20supported?= =?UTF-8?q?=20in=20this=20QEMU=20binary=E2=80=9D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...uplex not supported in this QEMU binary.md | 42 ------------------- ...uplex not supported in this QEMU binary.md | 40 ++++++++++++++++++ 2 files changed, 40 insertions(+), 42 deletions(-) delete mode 100644 sources/tech/20141029 Linux FAQs with Answers--How to fix hda-duplex not supported in this QEMU binary.md create mode 100644 translated/tech/20141029 Linux FAQs with Answers--How to fix hda-duplex not supported in this QEMU binary.md diff --git a/sources/tech/20141029 Linux FAQs with Answers--How to fix hda-duplex not supported in this QEMU binary.md b/sources/tech/20141029 Linux FAQs with Answers--How to fix hda-duplex not supported in this QEMU binary.md deleted file mode 100644 index d89384c5b9..0000000000 --- a/sources/tech/20141029 Linux FAQs with Answers--How to fix hda-duplex not supported in this QEMU binary.md +++ /dev/null @@ -1,42 +0,0 @@ -Translating------geekpi - -Linux FAQs with Answers--How to fix “hda-duplex not supported in this QEMU binary” -================================================================================ -> **Question**: When I try to install Linux on a new VM in virt-manager, the VM fails to boot with the following error: "unsupported configuration: hda-duplex not supported in this QEMU binary." How can I fix this error? - -The cause for this VM error may originate from a qemu bug where a configured default sound card model is not recognized. - -![](https://farm4.staticflickr.com/3935/15000012754_b8b147fb16_o.png) - - Unable to complete install: 'unsupported configuration: hda-duplex not supported in this QEMU library' - -To solve this problem, do the following. - -### Solution One: Virt-Manager ### - -On **virt-manager**, open the VM's virtual hardware details menu, go to sound device section, and change the device model from default to ac97. - -![](https://farm4.staticflickr.com/3956/15435183020_d97856170c_z.jpg) - -Click on "Apply" button to save the change. See if you can start the VM now. - -### Solution Two: Virsh ### - -If you are using **virsh**, not **virt-manager**, you can edit the VM's XML file accordingly. Look for **sound** section inside section, and change the sound model to **ac97** as follows. - - - . . . - -
- - . . . - - --------------------------------------------------------------------------------- - -via: http://ask.xmodulo.com/hda-duplex-not-supported-in-this-qemu-binary.html - -译者:[译者ID](https://github.com/译者ID) -校对:[校对者ID](https://github.com/校对者ID) - -本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 \ No newline at end of file diff --git a/translated/tech/20141029 Linux FAQs with Answers--How to fix hda-duplex not supported in this QEMU binary.md b/translated/tech/20141029 Linux FAQs with Answers--How to fix hda-duplex not supported in this QEMU binary.md new file mode 100644 index 0000000000..e3a6f3b4af --- /dev/null +++ b/translated/tech/20141029 Linux FAQs with Answers--How to fix hda-duplex not supported in this QEMU binary.md @@ -0,0 +1,40 @@ +Linux 有问必答 -- 如何修复“hda-duplex not supported in this QEMU binary”(hda-duplex在此QEMU文件中不支持) +================================================================================ +> **提问**: 当我尝试在虚拟机中安装一个新的Linux时,虚拟机不能启动且报了下面这个错误:“不支持的配置:hda-duplex在此QEMU文件中不支持。” 我该如何修复? + +这个错误可能来自一个当默认声卡型号不能被识别时的一个qemu bug。 + +![](https://farm4.staticflickr.com/3935/15000012754_b8b147fb16_o.png) + + 无法完成安装:‘不支持的配置:hda-duplex在此QEMU文件中不支持’ + +要解决这个问题,按照下面的做。 + +### 方案一: virt-manager ### + +在**virt-manager**中,打开虚拟机的虚拟硬件详细菜单,进入声卡选项,改变默认的设备型号为ac97。 + +![](https://farm4.staticflickr.com/3956/15435183020_d97856170c_z.jpg) + +点击“应用”按钮并保存设置。看一下虚拟机现在是否可以启动了。 + +### 方案二: Virsh ### + +如果你使用的是**virt-manager** 而不是**virt-manager**, 你可以编辑VM相应的配置文件。在节点中查找**sound**节点,并按照下面的默认声卡型号改成**ac97**。 + + + . . . + +
+ + . . . + + +-------------------------------------------------------------------------------- + +via: http://ask.xmodulo.com/hda-duplex-not-supported-in-this-qemu-binary.html + +译者:[geekpi](https://github.com/geekpi) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 \ No newline at end of file From 7bcf9e715a5c11a68284c63664c537e9d790bf13 Mon Sep 17 00:00:00 2001 From: wxy Date: Thu, 30 Oct 2014 23:10:39 +0800 Subject: [PATCH 082/108] PUB:20140922 How to use logrotate to manage log files in Linux @GOLinux --- ...e logrotate to manage log files in Linux.md | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) rename {translated/tech => published}/20140922 How to use logrotate to manage log files in Linux.md (90%) diff --git a/translated/tech/20140922 How to use logrotate to manage log files in Linux.md b/published/20140922 How to use logrotate to manage log files in Linux.md similarity index 90% rename from translated/tech/20140922 How to use logrotate to manage log files in Linux.md rename to published/20140922 How to use logrotate to manage log files in Linux.md index c4f03e9dcc..abe0d52984 100644 --- a/translated/tech/20140922 How to use logrotate to manage log files in Linux.md +++ b/published/20140922 How to use logrotate to manage log files in Linux.md @@ -1,8 +1,8 @@ Linux日志文件总管——logrotate ================================================================================ -日志文件包含了关于系统中发生的事件的有用信息,在排障过程中或者系统性能分析时经常被用到。对于忙碌的服务器,日志文件大小会快速增长,服务器会很快消耗磁盘空间,这成了个问题。除此之外,处理一个单个的庞大日志文件也常常是件十分棘手的事。 +日志文件包含了关于系统中发生的事件的有用信息,在排障过程中或者系统性能分析时经常被用到。对于忙碌的服务器,日志文件大小会增长极快,服务器会很快消耗磁盘空间,这成了个问题。除此之外,处理一个单个的庞大日志文件也常常是件十分棘手的事。 -logrotate是个十分有用的工具,它可以自动对日志进行分解(或轮循)、压缩以及删除旧日志文件。例如,你可以设置logrotate,让/var/log/foo日志文件每30天轮循,并删除超过6个月的日志。配置完后,logrotate的运作完全自动化,不必进行任何进一步的认为干预。另外,旧日志也可以通过电子邮件发送,不过该选项超出了本教程的讨论范围。 +logrotate是个十分有用的工具,它可以自动对日志进行截断(或轮循)、压缩以及删除旧的日志文件。例如,你可以设置logrotate,让/var/log/foo日志文件每30天轮循,并删除超过6个月的日志。配置完后,logrotate的运作完全自动化,不必进行任何进一步的人为干预。另外,旧日志也可以通过电子邮件发送,不过该选项超出了本教程的讨论范围。 主流Linux发行版上都默认安装有logrotate包,如果出于某种原因,logrotate没有出现在里头,你可以使用apt-get或yum命令来安装。 @@ -50,16 +50,16 @@ logrotate的配置文件是/etc/logrotate.conf,通常不需要对它进行修 - **rotate 5**: 一次将存储5个归档日志。对于第六个归档,时间最久的归档将被删除。 - **compress**: 在轮循任务完成后,已轮循的归档将使用gzip进行压缩。 - **delaycompress**: 总是与compress选项一起用,delaycompress选项指示logrotate不要将最近的归档压缩,压缩将在下一次轮循周期进行。这在你或任何软件仍然需要读取最新归档时很有用。 -- **missingok**: 在日志轮循其间,任何错误将被忽略,例如“文件无法找到”之类的错误。 +- **missingok**: 在日志轮循期间,任何错误将被忽略,例如“文件无法找到”之类的错误。 - **notifempty**: 如果日志文件为空,轮循不会进行。 - **create 644 root root**: 以指定的权限创建全新的日志文件,同时logrotate也会重命名原始日志文件。 -- **postrotate/endscript**: 在所有其它指令完成后,postrotate和endscript之间指定的命令将被执行。在这种情况下,rsyslogd 进程将立即再次读取其配置并继续运行。 +- **postrotate/endscript**: 在所有其它指令完成后,postrotate和endscript里面指定的命令将被执行。在这种情况下,rsyslogd 进程将立即再次读取其配置并继续运行。 上面的模板是通用的,而配置参数则根据你的需求进行调整,不是所有的参数都是必要的。 ### 样例二 ### -在本例中,我们只想要轮循一个日志文件,然而日志文件大小会增长到50MB。 +在本例中,我们只想要轮循一个日志文件,然而日志文件大小可以增长到50MB。 # vim /etc/logrotate.d/log-file @@ -92,7 +92,7 @@ logrotate的配置文件是/etc/logrotate.conf,通常不需要对它进行修 endscript } -这将导致归档文件在它们的文件名中包含日期信息。 +这将让归档文件在它们的文件名中包含日期信息。 ### 排障 ### @@ -120,7 +120,7 @@ logrotate的配置文件是/etc/logrotate.conf,通常不需要对它进行修 正如我们从上面的输出结果可以看到的,logrotate判断该轮循是不必要的。如果文件的时间小于一天,这就会发生了。 -#### 3. 强制运行 #### +#### 3. 强制轮循 #### 即使轮循条件没有满足,我们也可以通过使用‘-f’选项来强制logrotate轮循日志文件,‘-v’参数提供了详细的输出。 @@ -153,7 +153,7 @@ logrotate的配置文件是/etc/logrotate.conf,通常不需要对它进行修 running postrotate script compressing log with: /bin/gzip -#### 4. Logrotate记录日志 #### +#### 4. Logrotate的记录日志 #### logrotate自身的日志通常存放于/var/lib/logrotate/status目录。如果处于排障目的,我们想要logrotate记录到任何指定的文件,我们可以指定像下面这样从命令行指定。 @@ -192,7 +192,7 @@ via: http://xmodulo.com/2014/09/logrotate-manage-log-files-linux.html 作者:[Sarmed Rahman][a] 译者:[GOLinux](https://github.com/GOLinux) -校对:[校对者ID](https://github.com/校对者ID) +校对:[wxy](https://github.com/wxy) 本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 From 03b7164590a5a249334befc0f8d20b901467919a Mon Sep 17 00:00:00 2001 From: wxy Date: Thu, 30 Oct 2014 23:20:38 +0800 Subject: [PATCH 083/108] PUB:20141017 Linux FAQs with Answers--How to create a video DVD on Linux desktop @GOLinux --- ... with Answers--How to create a video DVD on Linux desktop.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) rename {translated/tech => published}/20141017 Linux FAQs with Answers--How to create a video DVD on Linux desktop.md (98%) diff --git a/translated/tech/20141017 Linux FAQs with Answers--How to create a video DVD on Linux desktop.md b/published/20141017 Linux FAQs with Answers--How to create a video DVD on Linux desktop.md similarity index 98% rename from translated/tech/20141017 Linux FAQs with Answers--How to create a video DVD on Linux desktop.md rename to published/20141017 Linux FAQs with Answers--How to create a video DVD on Linux desktop.md index f95827799e..169c19171b 100644 --- a/translated/tech/20141017 Linux FAQs with Answers--How to create a video DVD on Linux desktop.md +++ b/published/20141017 Linux FAQs with Answers--How to create a video DVD on Linux desktop.md @@ -67,7 +67,7 @@ via: http://ask.xmodulo.com/create-video-dvd-linux-desktop.html 译者:[GOLinux](https://github.com/GOLinux) -校对:[校对者ID](https://github.com/校对者ID) +校对:[wxy](https://github.com/wxy) 本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 From 383fd5e7797905cb7abda26b0ca5cbbcbeb06960 Mon Sep 17 00:00:00 2001 From: wxy Date: Thu, 30 Oct 2014 23:41:16 +0800 Subject: [PATCH 084/108] =?UTF-8?q?PUB:20140829=206=20Interesting=20Funny?= =?UTF-8?q?=20Commands=20of=20Linux=20(Fun=20in=20Terminal)=20=E2=80=93=20?= =?UTF-8?q?Part=20II?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit @wangjiezhe --- ...ds of Linux (Fun in Terminal) – Part II.md | 32 ++++++++++++------- 1 file changed, 20 insertions(+), 12 deletions(-) rename {translated/tech => published}/20140829 6 Interesting Funny Commands of Linux (Fun in Terminal) – Part II.md (89%) diff --git a/translated/tech/20140829 6 Interesting Funny Commands of Linux (Fun in Terminal) – Part II.md b/published/20140829 6 Interesting Funny Commands of Linux (Fun in Terminal) – Part II.md similarity index 89% rename from translated/tech/20140829 6 Interesting Funny Commands of Linux (Fun in Terminal) – Part II.md rename to published/20140829 6 Interesting Funny Commands of Linux (Fun in Terminal) – Part II.md index 84dc635d0d..8cce36ecbb 100644 --- a/translated/tech/20140829 6 Interesting Funny Commands of Linux (Fun in Terminal) – Part II.md +++ b/published/20140829 6 Interesting Funny Commands of Linux (Fun in Terminal) – Part II.md @@ -1,12 +1,13 @@ -6个有趣的Linux命令行工具(终端中的乐趣)—— 第二部分 +终端中的乐趣:6个有趣的Linux命令行工具 ================================================================================ 之前, 我们展示了一些有关有趣的 Linux 命令行命令的文章, 这些文章告诉我们, Linux 并不像看起来那样复杂, 如果我们知道如何使用的话, 反而会非常有趣. Linux 命令行可以简洁而完美地执行一些复杂的任务, 并且十分有趣. - [Linux命令及Linux终端的20个趣事][3] -- [Fun in Linux Terminal – Play with Word and Character Counts][2] +- [Linux终端的乐趣之把玩字词计数][2] ![Funny Linux Commands](http://www.tecmint.com/wp-content/uploads/2014/08/Funny-Linux-Commands.png) -有趣的 Linux 命令 + +*有趣的 Linux 命令* 前者包含了20个有趣的 Linux 命令/脚本(和子命令), 得到了读者的高度赞扬. 而另一篇文章虽然没有之前那篇文章那么受欢迎,包含了一些命令/脚本和改进,让你能够玩儿转文本文件、单词和字符串. @@ -27,9 +28,10 @@ $ echo "Tecmint[dot]com is a community of Linux Nerds and Geeks" | pv -qL 10 ![pv command in action](http://www.tecmint.com/wp-content/uploads/2014/08/pv-command.gif) -正在运行的 pv 命令 -**注意**: '**q**' 选项表示'安静',没有其他输出信息, '**L**' 选项表示每秒转化的字节数上限. 数字变量可以调整任何一个方向(必须是整数) 来获得所需的模拟文本. +*正在运行的 pv 命令* + +**注意**: '**q**' 选项表示'安静',没有其他输出信息, '**L**' 选项表示每秒转化的字节数上限. 调整数字的值(必须是整数)可以以另外的方向显示文字效果。 ### 2. toilet 命令 ### @@ -38,7 +40,8 @@ $ while true; do echo “$(date | toilet -f term -F border –Tecmint)”; sleep 1; done ![toilet command in action](http://www.tecmint.com/wp-content/uploads/2014/08/toilet-command.gif) -正在运行的 toilet 命令 + +*正在运行的 toilet 命令* **注意**: 上面的脚本需要使用 **ctrl+z** 键来暂停. @@ -49,7 +52,8 @@ # rig ![rig command in action](http://www.tecmint.com/wp-content/uploads/2014/08/rig-command.gif) -正在运行的 rig 命令 + +*正在运行的 rig 命令* ### 4. aview 命令 ### @@ -58,7 +62,8 @@ $ asciiview elephant.jpg -driver curses ![aview command in action](http://www.tecmint.com/wp-content/uploads/2014/08/elephant.gif) -正在运行的 aview 命令 + +*正在运行的 aview 命令* ### 5. xeyes 命令 ### @@ -67,7 +72,8 @@ $ xeyes ![xeyes command in action](http://www.tecmint.com/wp-content/uploads/2014/08/xeyes.gif) -正在运行的 xeyes 命令 + +*正在运行的 xeyes 命令* ### 6. cowsay 命令 ### @@ -80,14 +86,16 @@ $ cowsay -f elephant-in-snake Tecmint is Best ![cowsay command in action](http://www.tecmint.com/wp-content/uploads/2014/08/cowsay.gif) -正在运行的 cowsay 命令 + +*正在运行的 cowsay 命令* 换作山羊又会怎样? $ cowsay -f gnu Tecmint is Best ![cowsay goat in action](http://www.tecmint.com/wp-content/uploads/2014/08/cowsay-goat.gif) -正在运行的 山羊cowsay 命令 + +*正在运行的 山羊cowsay 命令* 今天就到这里吧. 我将带着另一篇有趣的文章回来. 不要忘记在下面留下您的评论. @@ -103,6 +111,6 @@ via: http://www.tecmint.com/linux-funny-commands/ [a]:http://www.tecmint.com/author/avishek/ [1]:http://www.tecmint.com/20-funny-commands-of-linux-or-linux-is-fun-in-terminal/ -[2]:http://www.tecmint.com/play-with-word-and-character-counts-in-linux/ +[2]:http://linux.cn/article-4088-1.html [3]:http://linux.cn/article-2831-1.html [4]:http://aa-project.sourceforge.net/aview/ From fec865c9dce7627cc0c86002530be47d7cda9154 Mon Sep 17 00:00:00 2001 From: wxy Date: Thu, 30 Oct 2014 23:56:14 +0800 Subject: [PATCH 085/108] PUB:20141009 Linux or UNIX wget command with practical examples @GOLinux --- ...IX wget command with practical examples.md | 30 +++++++++---------- 1 file changed, 15 insertions(+), 15 deletions(-) rename {translated/tech => published}/20141009 Linux or UNIX wget command with practical examples.md (85%) diff --git a/translated/tech/20141009 Linux or UNIX wget command with practical examples.md b/published/20141009 Linux or UNIX wget command with practical examples.md similarity index 85% rename from translated/tech/20141009 Linux or UNIX wget command with practical examples.md rename to published/20141009 Linux or UNIX wget command with practical examples.md index 7a720c725b..429e997c1d 100644 --- a/translated/tech/20141009 Linux or UNIX wget command with practical examples.md +++ b/published/20141009 Linux or UNIX wget command with practical examples.md @@ -1,16 +1,16 @@ -Linux/Unix wget命令实例 +wget 命令实例 ================================================================================ wget是Linux/Unix命令行**文件下载器**,它是下载网站上文件的免费的非交互下载工具,它支持**HTTP**、**HTTPS**和**FTP**协议,也支持通过HTTP代理检索。Wget是非交互的,这就是说它可以在用户没有登录到系统时在后台工作。 在本帖中,我们将讨论wget命令的一些不同使用实例。 -### 实例:1 下载单个文件 ### +### 实例1 :下载单个文件 ### # wget http://mirror.nbrc.ac.in/centos/7.0.1406/isos/x86_64/CentOS-7.0-1406-x86_64-DVD.iso 该命令会下载CentOS 7 ISO文件到用户当前工作目录中。 -### 实例:2 续传分段下载文件 ### +### 实例2:续传分段下载文件 ### 总有那么一些场景,当我们开始下载一个大文件时,中途互联网却断开了。那样的话,我们可以使用wget命令的‘**-c**’选项,让下载从断点续传。 @@ -18,7 +18,7 @@ wget是Linux/Unix命令行**文件下载器**,它是下载网站上文件的 ![](http://www.linuxtechi.com/wp-content/uploads/2014/09/wget-resume-download-1024x111-1.jpg) -### 实例:3 后台下载文件 ### +### 实例3:后台下载文件 ### 我们可以通过在wget命令中使用‘-b’选项来让它在后台下载文件。 @@ -43,7 +43,7 @@ wget是Linux/Unix命令行**文件下载器**,它是下载网站上文件的 2800K ………. ………. ………. ………. ………. 0% 58.2K 18h16m 2850K ………. ………. ………. ………. ………. 0% 52.2K 18h20m -### 实例:4 限制下载速率 ### +### 实例4:限制下载速率 ### 默认情况下,wget命令尝试以全速下载,但是有时候你可能使用的是共享互联网,那么如果你尝试使用wget来下载庞大的文件时,就会把其它用户的网络拖慢。这时,你如果使用‘-limit-rate’选项来限制下载速率,就可以避免这种情况的发生。 @@ -51,7 +51,7 @@ wget是Linux/Unix命令行**文件下载器**,它是下载网站上文件的 在上例中,下载速率被限制到了100k。 -### 实例:5 使用‘-i’选项来下载多个文件 ### +### 实例5:使用‘-i’选项来下载多个文件 ### 如果你想要使用wget命令来下载多个文件,那么首先要创建一个文本文件,并将所有的URL添加到该文件中。 @@ -65,15 +65,15 @@ wget是Linux/Unix命令行**文件下载器**,它是下载网站上文件的 # wget -i download-list.txt -### 实例:6 增加重试次数 ### +### 实例6:增加重试次数 ### -我们可以使用‘-tries’选项来增加重试次数。默认情况下,wget命令会重试20次以使下载成功。 +我们可以使用‘-tries’选项来增加重试次数。默认情况下,wget命令会重试20次,直到下载成功。 该选项在你下载一个大文件的过程中互联网连接发生问题时十分有用,因为在那种情况下,会增加下载失败的几率。 # wget --tries=75 http://mirror.nbrc.ac.in/centos/7.0.1406/isos/x86_64/CentOS-7.0-1406-x86_64-DVD.iso -### 实例:7 使用-o选项来重定向wget日志到文件 ### +### 实例7:使用-o选项来重定向wget日志到文件 ### 我们可以使用‘-o’选项来重定向wget命令的日志到一个日志文件。 @@ -81,7 +81,7 @@ wget是Linux/Unix命令行**文件下载器**,它是下载网站上文件的 上面的命令会在用户当前目录下创建download.log文件。 -### 实例:8 下载整个网站用于本地查看 ### +### 实例8:下载整个网站用于本地查看 ### # wget --mirror -p --convert-links -P ./ website-url @@ -92,21 +92,21 @@ wget是Linux/Unix命令行**文件下载器**,它是下载网站上文件的 - **–convert-links** : 下载完成后,转换文档中的链接以用于本地查看。 - -**P ./Local-Folder** : 保存所有文件和目录到指定的目录。 -### 实例:9 下载过程中拒绝文件类型 ### +### 实例9:下载过程中拒绝文件类型 ### 当你正打算下载整个网站时,我们可以使用‘-reject’选项来强制wget不下载图片。 # wget --reject=png Website-To-Be-Downloaded -### 实例:10 使用wget -Q设置下载配额 ### +### 实例10:使用wget -Q设置下载配额 ### 我们可以使用‘-Q’选项强制wget命令在下载大小超过特定大小时退出下载。 # wget -Q10m -i download-list.txt -注意,配额不会对单个文件的下载产生影响。所以,如果你指定wget -Q10m ftp://wuarchive.wustl.edu/ls-lR.gz,ls-lR的全部内容都会被下载。这在下载命令行指定的多个URL时也一样。然而,在递归或从一个输入文件检索时,还是值得一用。因此,你可以安全地输入‘wget -Q10m -i download-list.txt’,在超过配额时,下载会退出。 +注意,配额不会对单个文件的下载产生影响。所以,如果你指定wget -Q10m ftp://wuarchive.wustl.edu/ls-lR.gz,ls-lR.gz的全部内容都会被下载。这在下载命令行指定的多个URL时也一样。然而,在递归或从一个输入文件检索时,还是值得一用。因此,你可以安全地输入‘wget -Q10m -i download-list.txt’,在超过配额时,下载会退出。 -### 实例:11 从密码保护的网站下载文件 ### +### 实例11:从密码保护的网站下载文件 ### # wget --ftp-user= --ftp-password= Download-URL @@ -120,7 +120,7 @@ via: http://www.linuxtechi.com/wget-command-practical-examples/ 作者:[Pradeep Kumar][a] 译者:[GOLinux](https://github.com/GOLinux) -校对:[校对者ID](https://github.com/校对者ID) +校对:[wxy](https://github.com/wxy) 本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 From 3d959e81d7daa842f57aec96ee1ef0f6781e9acc Mon Sep 17 00:00:00 2001 From: barney-ro Date: Fri, 31 Oct 2014 14:39:48 +0800 Subject: [PATCH 086/108] [translating]20141027 Handy Disk Image Tools --- sources/share/20141027 Handy Disk Image Tools.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/sources/share/20141027 Handy Disk Image Tools.md b/sources/share/20141027 Handy Disk Image Tools.md index b69a0962b0..6cbd2caf33 100644 --- a/sources/share/20141027 Handy Disk Image Tools.md +++ b/sources/share/20141027 Handy Disk Image Tools.md @@ -1,3 +1,5 @@ +barney-ro translating + Handy Disk Image Tools ================================================================================ Disk images are computer files of a disk volume or an entire data storage device, such as a hard drive, optical disk (e.g. DVD, CD, Blu-ray), tape drive, USB flash drive, or floppy disk. A disk image represents the content exactly as it is on the original storage device, including both data and structure information. @@ -158,7 +160,7 @@ Features include: via: http://www.linuxlinks.com/article/20141025082352476/DiskImageTools.html 作者:Frazer Kline -译者:[译者ID](https://github.com/译者ID) +译者:[barney-ro](https://github.com/barney-ro) 校对:[校对者ID](https://github.com/校对者ID) 本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 From 1f387ffb07b1c259bc46b110939ba8c2fced2607 Mon Sep 17 00:00:00 2001 From: carolinewuyan <309866211@qq.com> Date: Fri, 31 Oct 2014 15:24:55 +0800 Subject: [PATCH 087/108] =?UTF-8?q?=E6=A0=A1=E5=AF=B9=E4=B8=AD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../20140915 10 Open Source Cloning Software For Linux Users.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/translated/talk/20140915 10 Open Source Cloning Software For Linux Users.md b/translated/talk/20140915 10 Open Source Cloning Software For Linux Users.md index 9dddef3570..1fef50289f 100644 --- a/translated/talk/20140915 10 Open Source Cloning Software For Linux Users.md +++ b/translated/talk/20140915 10 Open Source Cloning Software For Linux Users.md @@ -12,7 +12,7 @@ Clonezilla 是一个基于 Ubuntu 和 Debian 的 Live CD。它可以像 Windows ![](http://1-ps.googleusercontent.com/h/www.efytimes.com/admin/useradmin/rte/my_documents/my_pictures/600x450xZ34_clonezilla-600x450.png.pagespeed.ic.8Jq7pL2dwo.png) -### 2. [Redo Backup][2]:### +### 2. [Redo Backup][2]:### Redo Backup 是另一个用来方便地克隆磁盘的 Live CD。它是自由和开源的软件,使用 GPL 3 许可协议授权。它的主要功能和特点包括从 CD 引导的简单易用的 GUI、无需安装,可以恢复 Linux 和 Windows 等系统、无需登陆访问文件,以及已删除的文件等。 From 3cec9a8360738051096be62c9b3a918d2905706c Mon Sep 17 00:00:00 2001 From: KayGuoWhu Date: Fri, 31 Oct 2014 19:20:15 +0800 Subject: [PATCH 088/108] translating --- ...wers--How to open a port in the firewall on CentOS or RHEL.md | 1 + 1 file changed, 1 insertion(+) diff --git a/sources/tech/20141029 Linux FAQs with Answers--How to open a port in the firewall on CentOS or RHEL.md b/sources/tech/20141029 Linux FAQs with Answers--How to open a port in the firewall on CentOS or RHEL.md index 32277122b3..c36dcac0e8 100644 --- a/sources/tech/20141029 Linux FAQs with Answers--How to open a port in the firewall on CentOS or RHEL.md +++ b/sources/tech/20141029 Linux FAQs with Answers--How to open a port in the firewall on CentOS or RHEL.md @@ -1,3 +1,4 @@ +[translating by KayGuoWhu] Linux FAQs with Answers--How to open a port in the firewall on CentOS or RHEL ================================================================================ > **Question**: I am running a web/file server on my CentOS box, and to access the server remotely, I need to modify a firewall to allow access to a TCP port on the box. What is a proper way to open a TCP/UDP port in the firewall of CentOS/RHEL? From 5daacff93c8c49ac8ea85ff575cae50d73cdd81d Mon Sep 17 00:00:00 2001 From: zhengsihua Date: Sat, 1 Nov 2014 09:57:06 +0800 Subject: [PATCH 089/108] [Translating] Linux FAQs with Answers--How to install REMI repository on CentOS or RHEL --- ...Answers--How to install REMI repository on CentOS or RHEL.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/sources/tech/20141029 Linux FAQs with Answers--How to install REMI repository on CentOS or RHEL.md b/sources/tech/20141029 Linux FAQs with Answers--How to install REMI repository on CentOS or RHEL.md index 10f5805987..e82b3faa70 100644 --- a/sources/tech/20141029 Linux FAQs with Answers--How to install REMI repository on CentOS or RHEL.md +++ b/sources/tech/20141029 Linux FAQs with Answers--How to install REMI repository on CentOS or RHEL.md @@ -1,3 +1,5 @@ +Translating--------geekpi + Linux FAQs with Answers--How to install REMI repository on CentOS or RHEL ================================================================================ > **Question**: How can I configure the REMI repository on CentOS or RHEL, and install packages from the REMI repository? From 172e156f5f74bfe6ab832a97c978458ede19d65e Mon Sep 17 00:00:00 2001 From: zhengsihua Date: Sat, 1 Nov 2014 10:35:44 +0800 Subject: [PATCH 090/108] [Translated] Linux FAQs with Answers--How to install REMI repository on CentOS or RHEL --- ...stall REMI repository on CentOS or RHEL.md | 54 ------------------- ...stall REMI repository on CentOS or RHEL.md | 52 ++++++++++++++++++ 2 files changed, 52 insertions(+), 54 deletions(-) delete mode 100644 sources/tech/20141029 Linux FAQs with Answers--How to install REMI repository on CentOS or RHEL.md create mode 100644 translated/tech/20141029 Linux FAQs with Answers--How to install REMI repository on CentOS or RHEL.md diff --git a/sources/tech/20141029 Linux FAQs with Answers--How to install REMI repository on CentOS or RHEL.md b/sources/tech/20141029 Linux FAQs with Answers--How to install REMI repository on CentOS or RHEL.md deleted file mode 100644 index e82b3faa70..0000000000 --- a/sources/tech/20141029 Linux FAQs with Answers--How to install REMI repository on CentOS or RHEL.md +++ /dev/null @@ -1,54 +0,0 @@ -Translating--------geekpi - -Linux FAQs with Answers--How to install REMI repository on CentOS or RHEL -================================================================================ -> **Question**: How can I configure the REMI repository on CentOS or RHEL, and install packages from the REMI repository? - -The [REMI repository][1] offers updated versions of core CentOS and RHEL packages, notably the latest PHP/MySQL stack. - -One thing to remember before installing the REMI repository is that it is not recommended to run yum update with the REMI repository. Since the package names of the REMI repository are the same as those used in the official RHEL/CentOS repositories, running yum update may trigger accidental upgrades of core packages. It is a good idea to keep the REMI repository disabled, and enable it only when you need to install packages that are only available in REMI. - -### Prerequisite ### - -Before installing REMI repository, you first need to enable the EPEL repository because some packages in REMI depend on EPEL. Follow [this guide][2] to set up EPEL repository on CentOS or RHEL. - -### Install REMI Repository ### - -Now go ahead and install REMI repository as follows. - -On CentOS 7: - - $ sudo rpm --import http://rpms.famillecollet.com/RPM-GPG-KEY-remi - $ sudo rpm -ivh http://rpms.famillecollet.com/enterprise/remi-release-7.rpm - -On CentOS 6: - - $ sudo rpm --import http://rpms.famillecollet.com/RPM-GPG-KEY-remi - $ sudo rpm -ivh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm - -By default, the REMI repository is set disabled. To check whether the REMI repository is successfully installed, use this command. You will see several REMI repositories such as remi, remi-php55 and remi-php56. - - $ yum repolist disabled | grep remi - -![](https://farm4.staticflickr.com/3956/15443851690_a1abe9eb40_z.jpg) - -### Install a Package from REMI Repository ### - -As clarified, it is a good idea to keep the REMI repository disabled, and use it only when necessary. - -To search or install a package in the REMI repository, use these commands: - - $ sudo yum --enablerepo=remi search - $ sudo yum --enablerepo=remi install - --------------------------------------------------------------------------------- - -via: http://ask.xmodulo.com/install-remi-repository-centos-rhel.html - -译者:[译者ID](https://github.com/译者ID) -校对:[校对者ID](https://github.com/校对者ID) - -本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 - -[1]:http://rpms.famillecollet.com/ -[2]:http://xmodulo.com/how-to-set-up-epel-repository-on-centos.html \ No newline at end of file diff --git a/translated/tech/20141029 Linux FAQs with Answers--How to install REMI repository on CentOS or RHEL.md b/translated/tech/20141029 Linux FAQs with Answers--How to install REMI repository on CentOS or RHEL.md new file mode 100644 index 0000000000..66ed92b64d --- /dev/null +++ b/translated/tech/20141029 Linux FAQs with Answers--How to install REMI repository on CentOS or RHEL.md @@ -0,0 +1,52 @@ +Linux 有问必答 -- 如何在CentOS或者RHEL上安装REMI仓库 +================================================================================ +> **Question**:我该如何在CentOS或者RHEL中配置REMI仓库,并在其中安装包? + +[REMI 仓库][1] 提供了核心CentOS和RHEL包的更新版本,尤其是最新的PHP/MySQL系列。 + +安装REMI仓库要记住的一件事是不要在REMI仓库中运行yum update。因为REMI仓库的包名RHEL/CentOS中的相同,运行yum update可能会触发意外的更新。一个好办法是禁用REMI仓库,在你需要安装RMEI仓库中独有的包时再启用。 + +### 预备工作 ### + +安装REMI仓库之前,你首先需要启用EPEL仓库,因为REMI中的一些包依赖与EPEL。按照[这份指南][2]在CentOS或者RHEL中设置EPEL仓库。 + +### 安装REMI仓库 ### + +现在按照下面的步骤安装REMI仓库。 + +在CentOS 7上: + + $ sudo rpm --import http://rpms.famillecollet.com/RPM-GPG-KEY-remi + $ sudo rpm -ivh http://rpms.famillecollet.com/enterprise/remi-release-7.rpm + +在CentOS 6上: + + $ sudo rpm --import http://rpms.famillecollet.com/RPM-GPG-KEY-remi + $ sudo rpm -ivh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm + +默认上,REMI是禁用的。要检查REMI是否已经成功安装,使用这个命令。你会看到几个REMI仓库,比如remi、remi-php55和remi-php56。 + + $ yum repolist disabled | grep remi + +![](https://farm4.staticflickr.com/3956/15443851690_a1abe9eb40_z.jpg) + +### 从REMI仓库中安装一个包 ### + +如上所述,最好保持禁用REMI仓库,只有在需要的时候再启用。 + +要搜索或安装REMI仓库中的包,使用这些命令: + + $ sudo yum --enablerepo=remi search + $ sudo yum --enablerepo=remi install + +-------------------------------------------------------------------------------- + +via: http://ask.xmodulo.com/install-remi-repository-centos-rhel.html + +译者:[geekpi](https://github.com/geekpi) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[1]:http://rpms.famillecollet.com/ +[2]:http://xmodulo.com/how-to-set-up-epel-repository-on-centos.html \ No newline at end of file From 9c31a9021d1f0bf843dba08bfe84494ccef28a2a Mon Sep 17 00:00:00 2001 From: Andy Date: Sat, 1 Nov 2014 19:02:47 +0800 Subject: [PATCH 091/108] Delete 20141024 Amazing 25 Linux Performance Monitoring Tools.md --- ...g 25 Linux Performance Monitoring Tools.md | 292 ------------------ 1 file changed, 292 deletions(-) delete mode 100644 sources/tech/20141024 Amazing 25 Linux Performance Monitoring Tools.md diff --git a/sources/tech/20141024 Amazing 25 Linux Performance Monitoring Tools.md b/sources/tech/20141024 Amazing 25 Linux Performance Monitoring Tools.md deleted file mode 100644 index 9f6f386f33..0000000000 --- a/sources/tech/20141024 Amazing 25 Linux Performance Monitoring Tools.md +++ /dev/null @@ -1,292 +0,0 @@ -andyxue translating -Amazing ! 25 Linux Performance Monitoring Tools -================================================================================ -Over the time our website has shown you how to configure various performance tools for Linux and Unix-like operating systems. In this article we have made a list of the most used and most useful tools to monitor the performance for your box. We provided a link for each of them and split them into 2 categories: command lines one and the ones that offer a graphical interface. - -### Command line performance monitoring tools ### - -#### 1. dstat - Versatile resource statistics tool #### - -A versatile combination of **vmstat**, **iostat** and **ifstat**. It adds new features and functionality allowing you to view all the different resources instantly, allowing you to compare and combine the different resource usage. It uses colors and blocks to help you see the information clearly and easily. It also allows you to export the data in **CVS** format to review it in a spreadsheet application or import in a **database**. You can use this application to [monitor cpu, memory, eth0 activity related to time][1]. - -![](http://blog.linoxide.com/wp-content/uploads/2014/10/dstat.png) - -#### 2. atop - Improved top with ASCII #### - -A command line tool using **ASCII** to display a **performance monitor** that is capable of reporting the activity of all processes. It shows daily logging of system and process activity for long-term analysis and it highlights overloaded system resources by using colors. It includes metrics related to **CPU**, **memory**, **swap**, **disks** and **network layers**. All the functions of atop can be accessed by simply running: - - # atop - -And you will be able to [use the interactive interface to display][2] and order data. - -![](http://blog.linoxide.com/wp-content/uploads/2014/10/atop1.jpg) - -#### 3. Nmon - performance monitor for Unix-like systems #### - -Nmon stands for **Nigel's Monitor** and it's a system monitor tool originally developed for **AIX**. If features an **Online Mode** that uses curses for efficient screen handling, which updates the terminal frequently for real-time monitoring and a **Capture Mode** where the data is saved in a file in **CSV** format for later processing and graphing. - -![](http://blog.linoxide.com/wp-content/uploads/2014/10/nmon_interface.png) - -**More info** in our [nmon performance track article][3]. - -#### 4. slabtop - information on kernel slab cache #### - -This application will show you how the **caching memory allocator** manages in the Linux kernel caches various type of objects. The command is a top like command but is focused on showing real-time kernel slab cache information. It displays a listing of the top caches sorted by one of the listed sort criteria. It also displays a statistics header filled with slab layer information. Here are a few examples: - - # slabtop --sort=a - # slabtop -s b - # slabtop -s c - # slabtop -s l - # slabtop -s v - # slabtop -s n - # slabtop -s o - -**More info** is available [kernel slab cache article][4] - -#### 5. sar - performance monitoring and bottlenecks check #### - -The **sar** command writes to standard output the contents of selected cumulative activity counters in the operating system. The **accounting system**, based on the values in the count and interval parameters, writes information the specified number of times spaced at the specified intervals in seconds. If the interval parameter is set to zero, [the sar command displays the average statistics][5] for the time since the system was started. Useful commands: - - # sar -u 2 3 - # sar –u –f /var/log/sa/sa05 - # sar -P ALL 1 1 - # sar -r 1 3 - # sar -W 1 3 - -#### 6. Saidar - simple stats monitor #### - -Saidar is a **simple** and **lightweight** tool for system information. It doesn't have major performance reports but it does show the most useful system metrics in a short and nice way. You can easily see the [**up-time, average load, CPU, memory, processes, disk and network interfaces**][6] stats. - - Usage: saidar [-d delay] [-c] [-v] [-h] - - -d Sets the update time in seconds - -c Enables coloured output - -v Prints version number - -h Displays this help information. - -![](http://blog.linoxide.com/wp-content/uploads/2014/10/saidar-e1413370985588.png) - -#### 7. top - The classical Linux task manager #### - -top is one of the best known **Linux** utilities, it's a **task manager** found on most **Unix-like** operating systems. It shows the current list of running processes that the user can order using different criteria. It mainly shows how much **CPU** and **memory** is used by the **system processes**. top is a quick place to go a check what process or **processes** hangs your system. You can also find here a [list of examples of top usage][7] . You can access it by running the top command and entering the interactive mode: - - Quick cheat sheet for interactive mode: - - GLOBAL_Commands: ?, =, A, B, d, G, h, I, k, q, r, s, W, Z - SUMMARY_Area_Commands: l, m, t, 1 - TASK_Area_Commands Appearance: b, x, y, z Content: c, f, H, o, S, u Size: #, i, n Sorting: <, >, F, O, R - COLOR_Mapping: , a, B, b, H, M, q, S, T, w, z, 0 - 7 - COMMANDS_for_Windows: -, _, =, +, A, a, G, g, w - -![](http://blog.linoxide.com/wp-content/uploads/2014/10/top.png) - -#### 8. Sysdig - Advanced view of system processes #### - -**Sysdig** is a tool that gives admins and developers unprecedented visibility into the behavior of their systems. The team that develops it wants to improve the way system-level **monitoring** and **troubleshooting** is done by offering a unified, coherent, and granular visibility into the **storage**, **processing**, **network**, and **memory** subsystems making it possible to create trace files for system activity so you can easily analyze it at any time. - -Quick examples: - - # sysdig proc.name=vim - # sysdig -p"%proc.name %fd.name" "evt.type=accept and proc.name!=httpd" - # sysdig evt.type=chdir and user.name=root - # sysdig -l - # sysdig -L - # sysdig -c topprocs_net - # sysdig -c fdcount_by fd.sport "evt.type=accept" - # sysdig -p"%proc.name %fd.name" "evt.type=accept and proc.name!=httpd" - # sysdig -c topprocs_file - # sysdig -c fdcount_by proc.name "fd.type=file" - # sysdig -p "%12user.name %6proc.pid %12proc.name %3fd.num %fd.typechar %fd.name" evt.type=open - # sysdig -c topprocs_cpu - # sysdig -c topprocs_cpu evt.cpu=0 - # sysdig -p"%evt.arg.path" "evt.type=chdir and user.name=root" - # sysdig evt.type=open and fd.name contains /etc - -![](http://blog.linoxide.com/wp-content/uploads/2014/10/sysdig.jpg) - -**More info** is available in our article on [how to use sysdig for improved system-level monitoring and troubleshooting][8] - -#### 9. netstat - Shows open ports and connections #### - -Is the tool **Linux administrators** use to show various **network** information, like what ports are open and what network connections are established and what process runs that connection. It also shows various information about the **Unix sockets** that are open between various programs. It is part of most Linux distributions A lot of the commands are explained in the [article on netstat and its various outputs][9]. Most used commands are: - - $ netstat | head -20 - $ netstat -r - $ netstat -rC - $ netstat -i - $ netstat -ie - $ netstat -s - $ netstat -g - $ netstat -tapn - -### 10. tcpdump - insight on network packets ### - -**tcpdump** can be used to see the content of the **packets** on a **network connection**. It shows various information about the packet content that pass. To make the output useful, it allows you to use various filters to only get the information you wish. A few examples on how you can use it: - - # tcpdump -i eth0 not port 22 - # tcpdump -c 10 -i eth0 - # tcpdump -ni eth0 -c 10 not port 22 - # tcpdump -w aloft.cap -s 0 - # tcpdump -r aloft.cap - # tcpdump -i eth0 dst port 80 - -**You can find them described in** [detail in our article on tcpdump and capturing packets][10] - -#### 11. vmstat - virtual memory statistics #### - -**vmstat** stands for **virtual memory** statistics and it's a **memory monitoring** tool that collects and displays summary information about **memory**, **processes**, **interrupts**, **paging** and **block I/O**. It is an open source program available on most Linux distributions, Solaris and FreeBSD. It is used to diagnose most memory performance problems and much more. - -![](http://blog.linoxide.com/wp-content/uploads/2014/10/vmstat_delay_5.png) - -**More info** in [our article on vmstat commands][11]. - -#### 12. free - memory statistics #### - -Another **command line** tool that will show to standard output a few stats about **memory** usage and swap usage. Because it's a simple tool it can be used to either find **quick information** about memory usage or it can be used in different scripts and applications. You can see that [this small application has a lot of uses][12] and almost all system admin use this tool daily :-) - -![](http://blog.linoxide.com/wp-content/uploads/2014/10/free_hs3.png) - -#### 13. Htop - friendlier top #### - -**Htop** is basically an improved version of top showing more stats and in a more colorful way allowing you to sort them in different ways as you can see in our article. It provides a more a more **user-friendly** interface. - -![](http://blog.linoxide.com/wp-content/uploads/2014/10/htop.png) - -You can find **more info** in [our comparison of htop and top][13] - -#### 14. ss - the modern net-tools replacement #### - -**ss** is part of the **iproute2** package. iproute2 is intended to replace an entire suite of standard **Unix networking tools** that were previously used for the tasks of [configuring network interfaces, routing tables, and managing the ARP table][14]. The ss utility is used to dump socket statistics, it allows showing information similar to **netstat** and its able display more TCP and state information. A few examples: - - # ss -tnap - # ss -tnap6 - # ss -tnap - # ss -s - # ss -tn -o state established -p - -#### 15. lsof - list open files #### - -**lsof** is a command meaning "**list open files**", which is used in many Unix-like systems to report a list of all open files and the processes that opened them. It is used by most Linux distributions and other Unix-like operating systems by **system administrators** to check what files are open by various processes. - - # lsof +p process_id - # lsof | less - # lsof –u username - # lsof /etc/passwd - # lsof –i TCP:ftp - # lsof –i TCP:80 - -You can find **more examples** in the [lsof article][15] - -#### 16. iftop - top for your network connections #### - -**iftop** is yet another top like application that will is based on networking information. It shows various current **network connection** sorted by **bandwidth usage** or the amount of data uploaded or downloaded. It also provides various estimations of the time it will take to download them. - -![](http://blog.linoxide.com/wp-content/uploads/2014/10/iftop.png) - -For **more info** see [article on network traffic with iftop][16] - -#### 17. iperf - network performance tool #### - -**iperf** is a **network testing** tool that can create **TCP** and **UDP** data connections and measure the **performance** of a network that is carrying them. It supports tuning of various parameters related to timing, protocols, and buffers. For each test it reports the bandwidth, loss, and other parameters. - -![](http://blog.linoxide.com/wp-content/uploads/2014/10/iperf-e1413378331696.png) - -If you wish to use the tool check out our article on [how to install and use iperf][17] - -#### 18. Smem - advanced memory reporting #### - -**Smem** is one of the most advanced tools for **Linux** command line, it offers information about the actual **memory** that is used and shared in the system, attempting to provide a more realistic image of the actual **memory** being used. - - $ smem -m - $ smem -m -p | grep firefox - $ smem -u -p - $ smem -w -p - -Check out our [article on Smem for more examples][18] - -### GUI or Web based performance tools ### - -#### 19. Icinga - community fork of Nagios #### - -**Icinga** is **free** and **open source** system and network monitoring application. It’s a fork of Nagios retaining most of the existing features of its predecessor and building on them to add many long awaited patches and features requested by the user community. - -![](http://blog.linoxide.com/wp-content/uploads/2014/10/Icinga-e1413377995731.png) - -**More info** about installing and configuring [can be found in our Icinga article][19]. - -#### 20. Nagios - the most popular monitoring tool. #### - -The most used and popular **monitoring solution** found on Linux. It has a daemon that collects information about various process and has the ability to collect information from remote hosts. All the information is then provided via a nice and powerful **web interface**. - -![](http://blog.linoxide.com/wp-content/uploads/2014/10/nagios-e1413305858732.png) - -You can find **information** on [how to install Nagios in our article][20] - -#### 21. Linux process explorer - procexp for Linux #### - -**Linux process explorer** is a graphical process explorer for **Linux**. It shows various **process information** like the process tree, TCP/IP connections and performance figures for each process. It's a replica of procexp found in Windows and developed by **Sysinternals** and aims to be more user friendly then top and ps. - -Check our [linux process explorer article][21] for more info. - -#### 22. Collectl - performance monitoring tool #### - -This is a **performance monitoring** tool that you can use either in an **interactive mode** or you can have it **write reports** to disk and access them with a web server. It reports statistics on **CPU**, **disk**, **memory**, **network**, **nfs**, **process**, **slabs** and more in easy to read and manage format. - -![](http://blog.linoxide.com/wp-content/uploads/2014/10/collectl.png) - -**More info** in our [Collectl article][22] - -#### 23. MRTG - the classic graph tool #### - -This is a **network traffic** monitor that will provide you **graphs** using the **rrdtool**. It is one of the oldest tools that provides graphics and is one of the most used on Unix-like operating systems. Check our article on [how to use MRTG][23] for information on the installation and configuration process - -![](http://blog.linoxide.com/wp-content/uploads/2014/10/mrtg.png) - -#### 24. Monit - simple and easy to use monitor tool #### - -**Monit** is an **open source** small **Linux** utility designed to monitor **processes**, **system load**, **filesystems**, **directories** and **files**. You can have it run automatic maintenance and repair and can execute actions in error situations or send email reports to alert the system administrator. If you wish to use this tool you can check out our [how to use Monit article][24]. - -![](http://blog.linoxide.com/wp-content/uploads/2014/10/monit.png) - -#### 25. Munin - monitoring and alerting services for servers #### - -**Munin** is a **networked resource monitoring** tool that can help analyze **resource trends** and see what is the weak point and what caused **performance issues**. The team that develops it wishes it for it to be very easy to use and user-friendly. The application is written in Perl and uses the rrdtool to generate graphs, which are with the web interface. The developers advertise the application "plug and play" capabilities with about 500 monitoring plugins currently available. - -**More info** can be found in our [article on Munin][25] - --------------------------------------------------------------------------------- - -via: http://linoxide.com/monitoring-2/linux-performance-monitoring-tools/ - -作者:[Adrian Dinu][a] -译者:[译者ID](https://github.com/译者ID) -校对:[校对者ID](https://github.com/校对者ID) - -本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 - -[a]:http://linoxide.com/author/adriand/ -[1]:http://linoxide.com/monitoring-2/dstat-monitor-linux-performance/ -[2]:http://linoxide.com/monitoring-2/guide-using-linux-atop/ -[3]:http://linoxide.com/monitoring-2/install-nmon-monitor-linux-performance/ -[4]:http://linoxide.com/linux-command/kernel-slab-cache-information/ -[5]:http://linoxide.com/linux-command/linux-system-performance-monitoring-using-sar-command/ -[6]:http://linoxide.com/monitoring-2/monitor-linux-saidar-tool/ -[7]:http://linoxide.com/linux-command/linux-top-command-examples-screenshots/ -[8]:http://linoxide.com/tools/sysdig-performance-linux-tool/ -[9]:http://linoxide.com/linux-command/netstat-commad-with-all-variant-outputs/ -[10]:http://linoxide.com/linux-how-to/network-traffic-capture-tcp-dump-command/ -[11]:http://linoxide.com/linux-command/linux-vmstat-command-tool-report-virtual-memory-statistics/ -[12]:http://linoxide.com/linux-command/linux-free-command/ -[13]:http://linoxide.com/linux-command/linux-htop-command/ -[14]:http://linoxide.com/linux-command/ss-sockets-network-connection/ -[15]:http://linoxide.com/how-tos/lsof-command-list-process-id-information/ -[16]:http://linoxide.com/monitoring-2/iftop-network-traffic/ -[17]:http://linoxide.com/monitoring-2/install-iperf-test-network-speed-bandwidth/ -[18]:http://linoxide.com/tools/memory-usage-reporting-smem/ -[19]:http://linoxide.com/monitoring-2/install-configure-icinga-linux/ -[20]:http://linoxide.com/how-tos/install-configure-nagios-centos-7/ -[21]:http://sourceforge.net/projects/procexp/ -[22]:http://linoxide.com/monitoring-2/collectl-tool-install-examples/ -[23]:http://linoxide.com/tools/multi-router-traffic-grapher/ -[24]:http://linoxide.com/monitoring-2/monit-linux/ -[25]:http://linoxide.com/ubuntu-how-to/install-munin/ From 4cb9cc02a1eab782b26665c136e3c39af76a4fb5 Mon Sep 17 00:00:00 2001 From: andy xue Date: Sat, 1 Nov 2014 19:03:52 +0800 Subject: [PATCH 092/108] andyxue translated --- ...g 25 Linux Performance Monitoring Tools.md | 290 ++++++++++++++++++ 1 file changed, 290 insertions(+) create mode 100644 translated/tech/20141024 Amazing 25 Linux Performance Monitoring Tools.md diff --git a/translated/tech/20141024 Amazing 25 Linux Performance Monitoring Tools.md b/translated/tech/20141024 Amazing 25 Linux Performance Monitoring Tools.md new file mode 100644 index 0000000000..05b4b00e5c --- /dev/null +++ b/translated/tech/20141024 Amazing 25 Linux Performance Monitoring Tools.md @@ -0,0 +1,290 @@ +25个linux性能监控工具 +================================================================================ +一段时间以来,我们在网上向读者介绍了如何为Linux以及类Linux操作系统配置多种不同的性能监控工具。在这篇文章中我们将罗列一系列使用最频繁的性能监控工具,并对介绍到的每一个工具提供了相应的简介链接,大致将其划分为两类,基于命令行的和提供图形化接口的。 + +### 基于命令行的性能监控工具 ### + +#### 1. dstat - 多类型资源统计工具 #### + +该命令整合了**vmstat**,**iostat**和**ifstat**三种命令。同时增加了新的特性和功能允许你能够看到及时的不同的资源使用情况,从而能够使你对比和整合不同的资源使用情况。通过不同颜色和代码块布局的界面帮助你能够更加清晰容易的获取信息。它同时支持将信息数据导出到**cvs**格式文件中,从而用其他应用程序打开,或者导入到数据库中。你可以用该命令来[监控cpu,内存和网络状态随着时间的变化][1]。 + +![](http://blog.linoxide.com/wp-content/uploads/2014/10/dstat.png) + +#### 2. atop - 相比top更好的ASCII码体验 #### + +使用**ASCII**码的命令行工具来显示一个性能监控工具能够记录显示所有进程活动。它不但能够展示每日的系统日志,也能够进行长期的进程活动分析,同时也能够高亮过载的系统使用资源。它包含了CPU,内存,交换空间,磁盘和网络层的度量指标。使用所用的功能只需在终端运行**atop**即可。当然你也可以使用[交互接口来显示][2]数据并进行排序。 + + # atop + + +![](http://blog.linoxide.com/wp-content/uploads/2014/10/atop1.jpg) + +#### 3. Nmon - 类Unix系统的性能监控 #### + +Nmon为**Nigel's Monitor**缩写,它最早开发用来作为**AIX**的系统监控工具。它的特征是**在线模式**,该模式在终端中实时更新监控信息,同时使用光标操作来提高屏幕事件处理效率。使用**捕捉模式**能够将数据保存为**CSV**格式,方便进一步的处理和图形化展示。 + +![](http://blog.linoxide.com/wp-content/uploads/2014/10/nmon_interface.png) + +更多的信息参考我们的[nmon性能监控文章][3]。 + +#### 4. slabtop - 显示内核slab缓存信息 #### + +个应用能够显示**缓存分配器**是如何管理Linux内核缓存不同类型的对象的。这个命令类似于top命令,区别是它重点实时显示内核slab缓存信息。它能够显示按照不同排序条件来显示最靠前的缓存列表。它同时也能够显示一个以slab层信息填充的统计题头。举例如下: + + # slabtop --sort=a + # slabtop -s b + # slabtop -s c + # slabtop -s l + # slabtop -s v + # slabtop -s n + # slabtop -s o + +**更多信息参阅**[内核slab缓存文章][4]。 + +#### 5. sar - 性能监控和瓶颈检查 #### + +**sar** 命令是为了标准输出在操作系统上所选的累积活动计数器内容信息。该基于计数值和时间间隔参数的**审计系统**,会按照指定的时间间隔输出指定次数的监控信息。如果时间间隔参数为设置为0,那么[sar命令将会显示系统从开机到当时时刻的平均统计信息][5]。有用的命令如下: + + # sar -u 2 3 + # sar –u –f /var/log/sa/sa05 + # sar -P ALL 1 1 + # sar -r 1 3 + # sar -W 1 3 + +#### 6. Saidar - 简单的统计监控工具 #### + +Saidar是一个**简单**且**轻量**的系统信息监控工具。虽然它无法提供大多性能报表,但是它能够通过一个简短友好的方式显示最有用的系统运行状况数据。你可以很容易地看到[up-time, average load,CPU,内存,进程,磁盘和网络接口][6]统计信息。 + + Usage: saidar [-d delay] [-c] [-v] [-h] + + -d Sets the update time in seconds + -c Enables coloured output + -v Prints version number + -h Displays this help information. + +![](http://blog.linoxide.com/wp-content/uploads/2014/10/saidar-e1413370985588.png) + +#### 7. top - 经典的Linux任务管理工具 #### + +作为一个广为认知的**Linux**工具,**top**出现在大多数的类Unix操作系统任务管理中。它可以显示当前正在运行的进程的列表,同时用户可以按照不同的查询条件对该列表进行排序。它主要显示了系统进程对**CPU**和内存的使用状况。top可以快速检查是哪个或哪几个进程挂起了你的系统。你可以在[这里][7]看到top使用的例子。 你可以在终端输入top来运行它并进入到交互模式: + + Quick cheat sheet for interactive mode: + + GLOBAL_Commands: ?, =, A, B, d, G, h, I, k, q, r, s, W, Z + SUMMARY_Area_Commands: l, m, t, 1 + TASK_Area_Commands Appearance: b, x, y, z Content: c, f, H, o, S, u Size: #, i, n Sorting: <, >, F, O, R + COLOR_Mapping: , a, B, b, H, M, q, S, T, w, z, 0 - 7 + COMMANDS_for_Windows: -, _, =, +, A, a, G, g, w + +![](http://blog.linoxide.com/wp-content/uploads/2014/10/top.png) + +#### 8. Sysdig - 系统进程的高级视图 #### + +**Sasdig**是一个能够让系统管理员和开发人员前所未有的洞察其系统行为的监控工具。其开发团队出于改善系统层次的监控方式以及通过提供关于**存储,进程,网络和内存**子系统的**统一有序**以及**粒度可见**的方式来进行错误排查,通过创建系统活动记录文件使得你可以在任何时间轻松分析。 + +简单例子: + + # sysdig proc.name=vim + # sysdig -p"%proc.name %fd.name" "evt.type=accept and proc.name!=httpd" + # sysdig evt.type=chdir and user.name=root + # sysdig -l + # sysdig -L + # sysdig -c topprocs_net + # sysdig -c fdcount_by fd.sport "evt.type=accept" + # sysdig -p"%proc.name %fd.name" "evt.type=accept and proc.name!=httpd" + # sysdig -c topprocs_file + # sysdig -c fdcount_by proc.name "fd.type=file" + # sysdig -p "%12user.name %6proc.pid %12proc.name %3fd.num %fd.typechar %fd.name" evt.type=open + # sysdig -c topprocs_cpu + # sysdig -c topprocs_cpu evt.cpu=0 + # sysdig -p"%evt.arg.path" "evt.type=chdir and user.name=root" + # sysdig evt.type=open and fd.name contains /etc + +![](http://blog.linoxide.com/wp-content/uploads/2014/10/sysdig.jpg) + +**更多信息** 可以在 [如何利用sysdig改善系统层次的监控和错误排查][8] + +#### 9. netstat - 显示开放的端口和连接 #### + +它是**Linux管理员**使用来显示不同网络信息的工具,如查看什么端口开放和什么网络连接已经建立以及何种进程运行在这种连接之上。同时它也显示了**Unix套接**字的信息,这些套接字在不同的程序中为打开状态。作为大多数Linux发行版本的一部分,netstat的许多命令在 [netstat和它的不同输出][9]中有详细的描述。最为常用的如下: + + $ netstat | head -20 + $ netstat -r + $ netstat -rC + $ netstat -i + $ netstat -ie + $ netstat -s + $ netstat -g + $ netstat -tapn + +### 10. tcpdump - 洞察网络包 ### + +**tcpdump**可以用来查看**网络连接**包的内容。它显示了传输过程中包内容的各种信息。为了使得输出信息更为有用,它允许使用者通过不同的过滤器获取自己想要的信息。可以参照的例子如下: + + # tcpdump -i eth0 not port 22 + # tcpdump -c 10 -i eth0 + # tcpdump -ni eth0 -c 10 not port 22 + # tcpdump -w aloft.cap -s 0 + # tcpdump -r aloft.cap + # tcpdump -i eth0 dst port 80 + +你可以找到详细的[描述在topdump和捕捉包][10]文章中。 + +#### 11. vmstat - 虚拟内存统计信息 #### + +**vmstat**是虚拟内存(**virtual memory** statistics)的缩写,作为一个**内存监控**工具,它收集和显示概括关于**内存**,**进程**,**终端**和**分页**和**I/O阻塞**的信息。作为一个开源程序,它可以再大部分Linux发行版本中找到,包括Solaris和FreeBSD。它用来诊断大部分的内存性能问题和其他相关问题 + +![](http://blog.linoxide.com/wp-content/uploads/2014/10/vmstat_delay_5.png) + +**M更多信息** 参考 [vmstat命令文章][11]。 + +#### 12. free - 内存统计信息 #### + +free是另一个能够在终端中标准输出内存和交换空间使用的命令行工具。由于它的简易,它经常用于快速查看内存使用或者是应用于不同的脚本和应用程序中。在这里你可以看到[这个小程序的许多应用][12]。几乎所有的系统管理员日常都会用这个工具。:-) + +![](http://blog.linoxide.com/wp-content/uploads/2014/10/free_hs3.png) + +#### 13. Htop - 更加友好的top #### + +**Htop**基本上是一个top改善版本,它能够显示更多的统计信息和更加多彩的方式,同时允许你采用不同的方式进行排序,它提供了一个**用户友好**的接口。 + +![](http://blog.linoxide.com/wp-content/uploads/2014/10/htop.png) + +你可以找到 **更多的信息** 在 [关于htop和top的比较][13]文章中。 + +#### 14. ss - 更现代感的网络管理替代工具 #### + +**ss**是**iproute2**包的一部分。iproute2趋向于替代一整套标准的**Unix网络**工具组件,它曾经用来完成[网络接口配置,路由表和管理ARP表][14]任务。ss工具用来存储套接字统计信息,也能够类似netstat一样显示信息,同时也能显示更多TCP和状态信息。一些例子如下: + + # ss -tnap + # ss -tnap6 + # ss -tnap + # ss -s + # ss -tn -o state established -p + +#### 15. lsof - 列表显示打开的文件 #### + +**lsof**命令,意为“**list open files**”, 用于在许多类Unix系统中显示所有打开状态的文件和打开它们的进程。在大部分Linux发行版和其他类Linux操作系统中系统管理员用它来检查不同的进程打开了哪些文件。你可以在这里找到更多的例子。 + + # lsof +p process_id + # lsof | less + # lsof –u username + # lsof /etc/passwd + # lsof –i TCP:ftp + # lsof –i TCP:80 + +你可以找到 **更多例子** 在[lsof 文章][15] + +#### 16. iftop - 类似top的了网络连接工具 #### + +**iftop**是一个基于网络信息的类似top的程序。它能够显示当前时刻按照**带宽使用**量或者上传或者下载量排序的**网络连接**状况。它同事提供了下载文件的预估完成时间。 + +![](http://blog.linoxide.com/wp-content/uploads/2014/10/iftop.png) + +**更多信息**可以参考[网络流量iftop文章][16] + +#### 17. iperf - 网络性能工具 #### + +**iperf**是一个**网络测试**工具,能够创建**TCP**和**UDP**数据连接和测量该网络能够传输它们的**性能**。它支持调节关于时间,协议和缓冲等不同的参数。对于每一个测试,它会报告带宽,丢包和其他的一些参数。 + +![](http://blog.linoxide.com/wp-content/uploads/2014/10/iperf-e1413378331696.png) + +如果你想用使用这个工具,可以参考这篇文章: [如何安装和使用iperf][17] + +#### 18. Smem - 高级内存报表工具 #### + +**Smem**是一个比较高级的**Linux**命令行工具,它提供关于系统中已经使用的和共享的实际内存,试图提供一个更为可靠地当前**内存**使用数据。 + + $ smem -m + $ smem -m -p | grep firefox + $ smem -u -p + $ smem -w -p + +参考我们的文章:[Smem更多的例子][18] + +### 图形化或基于Web的性能工具 ### + +#### 19. Icinga - Nagios的社区分支版本 #### + +**Icinga**是一个**开源免费**的网络监控程序,作为Nagios的分支,它获取了前者现存的大部分功能,同时基于这些功能又增加了社区用户要求已久的功能和补丁。 + +![](http://blog.linoxide.com/wp-content/uploads/2014/10/Icinga-e1413377995731.png) + +**更多信息**参考[安装和配置lcinga文章][19]. + +#### 20. Nagios - 最为流行的监控工具. #### + +作为在Linux上使用最为广泛和流行的**监控方案**,它有一个守护程序用来收集不同进程和远程主机的信息,这些收集到的信息都通过功能强大**的web界面**进行呈现。 + +![](http://blog.linoxide.com/wp-content/uploads/2014/10/nagios-e1413305858732.png) + +你可以在 **找到更多的信息** 在[如何安装nagios][20] + +#### 21. Linux process explorer - Linux下的procexp #### + +**Linux process explorer**是一个Linux下的图形化进程浏览工具。它能够显示不同的进程信息,如进程数,TCP/IP连接和每一个进程的性能指标。作为**Windows**下**procexp**在Linux的替代品,是由**Sysinternals**开发的,其目标是相比**top**和**ps**用户体验更加的友好。 + +查看 [linux process explorer 文章][21]获取更多信息。 + +#### 22. Collectl - 性能监控工具 #### + +你可以既可以通过交互的方式使用这个**性能监控**工具,也可以用它产生**报表**,并通过web服务器来访问它在磁盘上的数据。它以一种**易读易管理**的文件格式,记录了**CPU,磁盘,内存,网络,网络文件系统,进程,slabs**等统计信息于。 + +![](http://blog.linoxide.com/wp-content/uploads/2014/10/collectl.png) + +**更多** 关于[Collectl的文章][22]。 + +#### 23. MRTG - 经典网络流量监控图形工具 #### + +这是一个采用**rrdtool**的提供给用户图形化流量监控工具。作为**最早**的提供**图形化界面**的工具,它被广泛应用在类Unix的操作系统中。查看我们关于[如何使用MRTG][23]的文章获取更多关于安装和配置的信息。 + +![](http://blog.linoxide.com/wp-content/uploads/2014/10/mrtg.png) + +#### 24. Monit - 简单易用的监控工具 #### + +**Monit**是一个用来**监控进程**,**系统加载**,**文件系统**和**目录文件**等的开源的Linux工具。你能够让它自动化维护和修复,也能够在运行错误的情景下执行动作或者发邮件报告提醒系统管理员。如果你想要用这个工具,你可以查看[如何使用Monit的文章][24]。 + +![](http://blog.linoxide.com/wp-content/uploads/2014/10/monit.png) + +#### 25. Munin - 为服务器提供监控和提醒服务 #### + +作为一个网络资源监控工具,*Munin**能够帮助分析**资源趋势**和**查看弱节点**以及导致产生**性能问题**的原因。开发此软件的团队系统它能够易用和用户体验友好。该软件是用Perl开发的同时采用**rrdtool**来绘制图形,使用了**web接口**进行呈现。开发人员推广此应用时声称“**插件化和易用**”,目前已有500多个监控插件可结合使用。 + +**更多信息**可以在[关于Munin的文章][25]。 + +-------------------------------------------------------------------------------- + +via: http://linoxide.com/monitoring-2/linux-performance-monitoring-tools/ + +作者:[Adrian Dinu][a] +译者:[译者ID](https://github.com/andyxue) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[a]:http://linoxide.com/author/adriand/ +[1]:http://linoxide.com/monitoring-2/dstat-monitor-linux-performance/ +[2]:http://linoxide.com/monitoring-2/guide-using-linux-atop/ +[3]:http://linoxide.com/monitoring-2/install-nmon-monitor-linux-performance/ +[4]:http://linoxide.com/linux-command/kernel-slab-cache-information/ +[5]:http://linoxide.com/linux-command/linux-system-performance-monitoring-using-sar-command/ +[6]:http://linoxide.com/monitoring-2/monitor-linux-saidar-tool/ +[7]:http://linoxide.com/linux-command/linux-top-command-examples-screenshots/ +[8]:http://linoxide.com/tools/sysdig-performance-linux-tool/ +[9]:http://linoxide.com/linux-command/netstat-commad-with-all-variant-outputs/ +[10]:http://linoxide.com/linux-how-to/network-traffic-capture-tcp-dump-command/ +[11]:http://linoxide.com/linux-command/linux-vmstat-command-tool-report-virtual-memory-statistics/ +[12]:http://linoxide.com/linux-command/linux-free-command/ +[13]:http://linoxide.com/linux-command/linux-htop-command/ +[14]:http://linoxide.com/linux-command/ss-sockets-network-connection/ +[15]:http://linoxide.com/how-tos/lsof-command-list-process-id-information/ +[16]:http://linoxide.com/monitoring-2/iftop-network-traffic/ +[17]:http://linoxide.com/monitoring-2/install-iperf-test-network-speed-bandwidth/ +[18]:http://linoxide.com/tools/memory-usage-reporting-smem/ +[19]:http://linoxide.com/monitoring-2/install-configure-icinga-linux/ +[20]:http://linoxide.com/how-tos/install-configure-nagios-centos-7/ +[21]:http://sourceforge.net/projects/procexp/ +[22]:http://linoxide.com/monitoring-2/collectl-tool-install-examples/ +[23]:http://linoxide.com/tools/multi-router-traffic-grapher/ +[24]:http://linoxide.com/monitoring-2/monit-linux/ +[25]:http://linoxide.com/ubuntu-how-to/install-munin/ From a5196129b1ca27637200918daa44b24dae04b4af Mon Sep 17 00:00:00 2001 From: wxy Date: Sat, 1 Nov 2014 21:02:39 +0800 Subject: [PATCH 093/108] =?UTF-8?q?201409=20=E5=AD=98=E6=A1=A3=E9=94=99?= =?UTF-8?q?=E8=AF=AF=E5=91=BD=E5=90=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../20140610 How does the cloud affect the everyday linux user.md | 0 .../20140624 Staying free--should GCC allow non-free plug ins.md | 0 ...--How to define PATH environment variable for sudo commands.md | 0 ...ed Microsoft Office on Ubuntu--Install the Official Webapps.md | 0 ...ge DigitalOcean VPS droplets from the command line on Linux.md | 0 ...723 How to access SoundCloud from the command line in Linux.md | 0 .../{201410 => 201409}/20140723 Top 10 Fun On The Command Line.md | 0 .../20140724 diff -u--What is New in Kernel Development.md | 0 ...quid Proxy Server' Interview Questions and Answers in Linux.md | 0 ... to access Linux command cheat sheets from the command line.md | 0 .../20140730 How to use variables in shell Scripting.md | 0 .../20140731 Easy Steps to Make GNOME 3 More Efficient.md | 0 .../20140801 How To Install Java On Ubuntu 14.04.md | 0 .../20140801 How to Create an Ubuntu Kiosk Computer.md | 0 ...d Line 'Cheat-Sheet' for Linux Beginners and Administrators.md | 0 .../{201410 => 201409}/20140808 When Linux Was Perfect Enough.md | 0 ...rd Protect Single User Mode or RHEL ro CentOS ro 5.x ro 6.x.md | 0 ...20140811 How to Image and Clone Hard Drives with Clonezilla.md | 0 ...rs--How to check the last time system was rebooted on Linux.md | 0 ... to set a static MAC address on VMware ESXi virtual machine.md | 0 ...8 Where And How To Code--Choosing The Best Free Code Editor.md | 0 ...tions to Trace or Debug Programs using Linux strace Command.md | 0 ...20140819 A Pocket Guide for Linux ssh Command with Examples.md | 0 ... 5--For those Linux users undecided on the kernel' s future.md | 0 ...temd--Start or Stop or Restart Services in RHEL or CentOS 7.md | 0 .../20140822 15 Practical Examples of 'cd' Command in Linux.md | 0 ...5 China Will Change The Way All Software Is Bought And Sold.md | 0 ...wers--How to enable Nux Dextop repository on CentOS or RHEL.md | 0 ...w to fix 'failed to run aclocal--No such file or directory'.md | 0 ...ux Terminal--speedtest_cli checks your real bandwidth speed.md | 0 ... Linus Torvalds is my hero, says 13 year old Zachary DuPont.md | 0 ...8 GIMP 2.8.12 Released--Here' s How to Install it on Ubuntu.md | 0 .../20140829 Linux Doesn't Need to Own the Desktop.md | 0 .../20140901 Awesome systemd Commands to Manage Linux System.md | 0 .../20140901 Remarkable--A New MarkDown Editor For Linux.md | 0 ...0901 Ubuntu Wallpaper Contest Closes, These Are Our 8 Faves.md | 0 published/{201410 => 201409}/20140902 Happy Birthday Email.md | 0 ...902 How to share on linux the output of your shell commands.md | 0 ...ey To Search Text In All Files Within A Directory In Ubuntu.md | 0 published/{201410 => 201409}/20140904 The Masked Avengers.md | 0 ...5 Ubuntu Touch Now Has a Torrent Client in the Ubuntu Store.md | 0 .../20140910 Colourful systemd vs sysVinit Linux Cheatsheet.md | 0 ...elly Conky Adds Simple, Stylish Stats To Your Linux Desktop.md | 0 ...Meet the 12 Ubuntu 14.10 Wallpaper Contest Winners (So Far).md | 0 ...] How To List All Installed Packages On Linux Distributions.md | 0 ...20140911 Install UberWriter Markdown Editor In Ubuntu 14.04.md | 0 ...40912 How to Go Hands On With the Utopic Unicorn--Literally.md | 0 .../20140912 QuiteRSS--RSS Reader For Desktop Linux.md | 0 ...0915 How To Uninstall Ubuntu Linux From Windows 8 Dual Boot.md | 0 ...-How to find and remove obsolete PPA repositories on Ubuntu.md | 0 ...allest Distros in the World, Tiny Core, Gets a Fresh Update.md | 0 .../20140915 Potenza Icon Themes 2.0 Available For Download.md | 0 ... Control Center 3.14 RC1 Corrects Lots of Potential Crashes.md | 0 ...Goodbye To Microsoft Office, Will Switch To OpenOffice Soon.md | 0 ...0919 Mir and Unity 8 Status Update Arrives from Ubuntu Devs.md | 0 ... Offers to Work with Ubuntu to Bring Native Playback to All.md | 0 ...res FeedHenry for $82 Million to Advance Mobile Development.md | 0 .../20140922 Ten Blogs Every Ubuntu User Must Follow.md | 0 ...20140924 Canonical Closes nginx Exploit in Ubuntu 14.04 LTS.md | 0 ...140924 Debian 8 Jessie to Have GNOME as the Default Desktop.md | 0 .../20140924 End of the Line for Red Hat Enterprise Linux 5.md | 0 ...ugfix Release for KDE Plasma 5 Arrives with Lots of Changes.md | 0 .../20140924 Wal Commander GitHub Edition 0.17 released.md | 0 ... to listen to Internet radio from the command line on Linux.md | 0 .../The Open Source Witch Hunts Have Returned.md | 0 65 files changed, 0 insertions(+), 0 deletions(-) rename published/{201410 => 201409}/20140610 How does the cloud affect the everyday linux user.md (100%) rename published/{201410 => 201409}/20140624 Staying free--should GCC allow non-free plug ins.md (100%) rename published/{201410 => 201409}/20140716 Linux FAQs with Answers--How to define PATH environment variable for sudo commands.md (100%) rename published/{201410 => 201409}/20140718 Need Microsoft Office on Ubuntu--Install the Official Webapps.md (100%) rename published/{201410 => 201409}/20140722 How to manage DigitalOcean VPS droplets from the command line on Linux.md (100%) rename published/{201410 => 201409}/20140723 How to access SoundCloud from the command line in Linux.md (100%) rename published/{201410 => 201409}/20140723 Top 10 Fun On The Command Line.md (100%) rename published/{201410 => 201409}/20140724 diff -u--What is New in Kernel Development.md (100%) rename published/{201410 => 201409}/20140729 10 Useful 'Squid Proxy Server' Interview Questions and Answers in Linux.md (100%) rename published/{201410 => 201409}/20140729 How to access Linux command cheat sheets from the command line.md (100%) rename published/{201410 => 201409}/20140730 How to use variables in shell Scripting.md (100%) rename published/{201410 => 201409}/20140731 Easy Steps to Make GNOME 3 More Efficient.md (100%) rename published/{201410 => 201409}/20140801 How To Install Java On Ubuntu 14.04.md (100%) rename published/{201410 => 201409}/20140801 How to Create an Ubuntu Kiosk Computer.md (100%) rename published/{201410 => 201409}/20140804 Cheat--An Ultimate Command Line 'Cheat-Sheet' for Linux Beginners and Administrators.md (100%) rename published/{201410 => 201409}/20140808 When Linux Was Perfect Enough.md (100%) rename published/{201410 => 201409}/20140811 Disable or Password Protect Single User Mode or RHEL ro CentOS ro 5.x ro 6.x.md (100%) rename published/{201410 => 201409}/20140811 How to Image and Clone Hard Drives with Clonezilla.md (100%) rename published/{201410 => 201409}/20140811 Linux FAQs with Answers--How to check the last time system was rebooted on Linux.md (100%) rename published/{201410 => 201409}/20140818 Linux FAQs with Answers--How to set a static MAC address on VMware ESXi virtual machine.md (100%) rename published/{201410 => 201409}/20140818 Where And How To Code--Choosing The Best Free Code Editor.md (100%) rename published/{201410 => 201409}/20140819 8 Options to Trace or Debug Programs using Linux strace Command.md (100%) rename published/{201410 => 201409}/20140819 A Pocket Guide for Linux ssh Command with Examples.md (100%) rename published/{201410 => 201409}/20140819 KDE Plasma 5--For those Linux users undecided on the kernel' s future.md (100%) rename published/{201410 => 201409}/20140819 Linux Systemd--Start or Stop or Restart Services in RHEL or CentOS 7.md (100%) rename published/{201410 => 201409}/20140822 15 Practical Examples of 'cd' Command in Linux.md (100%) rename published/{201410 => 201409}/20140825 China Will Change The Way All Software Is Bought And Sold.md (100%) rename published/{201410 => 201409}/20140825 Linux FAQs with Answers--How to enable Nux Dextop repository on CentOS or RHEL.md (100%) rename published/{201410 => 201409}/20140825 Linux FAQs with Answers--How to fix 'failed to run aclocal--No such file or directory'.md (100%) rename published/{201410 => 201409}/20140825 Linux Terminal--speedtest_cli checks your real bandwidth speed.md (100%) rename published/{201410 => 201409}/20140826 Linus Torvalds is my hero, says 13 year old Zachary DuPont.md (100%) rename published/{201410 => 201409}/20140828 GIMP 2.8.12 Released--Here' s How to Install it on Ubuntu.md (100%) rename published/{201410 => 201409}/20140829 Linux Doesn't Need to Own the Desktop.md (100%) rename published/{201410 => 201409}/20140901 Awesome systemd Commands to Manage Linux System.md (100%) rename published/{201410 => 201409}/20140901 Remarkable--A New MarkDown Editor For Linux.md (100%) rename published/{201410 => 201409}/20140901 Ubuntu Wallpaper Contest Closes, These Are Our 8 Faves.md (100%) rename published/{201410 => 201409}/20140902 Happy Birthday Email.md (100%) rename published/{201410 => 201409}/20140902 How to share on linux the output of your shell commands.md (100%) rename published/{201410 => 201409}/20140902 Use SearchMonkey To Search Text In All Files Within A Directory In Ubuntu.md (100%) rename published/{201410 => 201409}/20140904 The Masked Avengers.md (100%) rename published/{201410 => 201409}/20140905 Ubuntu Touch Now Has a Torrent Client in the Ubuntu Store.md (100%) rename published/{201410 => 201409}/20140910 Colourful systemd vs sysVinit Linux Cheatsheet.md (100%) rename published/{201410 => 201409}/20140910 Jelly Conky Adds Simple, Stylish Stats To Your Linux Desktop.md (100%) rename published/{201410 => 201409}/20140910 Meet the 12 Ubuntu 14.10 Wallpaper Contest Winners (So Far).md (100%) rename published/{201410 => 201409}/20140910 [Quick Tip] How To List All Installed Packages On Linux Distributions.md (100%) rename published/{201410 => 201409}/20140911 Install UberWriter Markdown Editor In Ubuntu 14.04.md (100%) rename published/{201410 => 201409}/20140912 How to Go Hands On With the Utopic Unicorn--Literally.md (100%) rename published/{201410 => 201409}/20140912 QuiteRSS--RSS Reader For Desktop Linux.md (100%) rename published/{201410 => 201409}/20140915 How To Uninstall Ubuntu Linux From Windows 8 Dual Boot.md (100%) rename published/{201410 => 201409}/20140915 Linux FAQs with Answers--How to find and remove obsolete PPA repositories on Ubuntu.md (100%) rename published/{201410 => 201409}/20140915 One of the Smallest Distros in the World, Tiny Core, Gets a Fresh Update.md (100%) rename published/{201410 => 201409}/20140915 Potenza Icon Themes 2.0 Available For Download.md (100%) rename published/{201410 => 201409}/20140917 GNOME Control Center 3.14 RC1 Corrects Lots of Potential Crashes.md (100%) rename published/{201410 => 201409}/20140919 Another Italian City Says Goodbye To Microsoft Office, Will Switch To OpenOffice Soon.md (100%) rename published/{201410 => 201409}/20140919 Mir and Unity 8 Status Update Arrives from Ubuntu Devs.md (100%) rename published/{201410 => 201409}/20140919 Netflix Offers to Work with Ubuntu to Bring Native Playback to All.md (100%) rename published/{201410 => 201409}/20140919 Red Hat Acquires FeedHenry for $82 Million to Advance Mobile Development.md (100%) rename published/{201410 => 201409}/20140922 Ten Blogs Every Ubuntu User Must Follow.md (100%) rename published/{201410 => 201409}/20140924 Canonical Closes nginx Exploit in Ubuntu 14.04 LTS.md (100%) rename published/{201410 => 201409}/20140924 Debian 8 Jessie to Have GNOME as the Default Desktop.md (100%) rename published/{201410 => 201409}/20140924 End of the Line for Red Hat Enterprise Linux 5.md (100%) rename published/{201410 => 201409}/20140924 Second Bugfix Release for KDE Plasma 5 Arrives with Lots of Changes.md (100%) rename published/{201410 => 201409}/20140924 Wal Commander GitHub Edition 0.17 released.md (100%) rename published/{201410 => 201409}/How to listen to Internet radio from the command line on Linux.md (100%) rename published/{201410 => 201409}/The Open Source Witch Hunts Have Returned.md (100%) diff --git a/published/201410/20140610 How does the cloud affect the everyday linux user.md b/published/201409/20140610 How does the cloud affect the everyday linux user.md similarity index 100% rename from published/201410/20140610 How does the cloud affect the everyday linux user.md rename to published/201409/20140610 How does the cloud affect the everyday linux user.md diff --git a/published/201410/20140624 Staying free--should GCC allow non-free plug ins.md b/published/201409/20140624 Staying free--should GCC allow non-free plug ins.md similarity index 100% rename from published/201410/20140624 Staying free--should GCC allow non-free plug ins.md rename to published/201409/20140624 Staying free--should GCC allow non-free plug ins.md diff --git a/published/201410/20140716 Linux FAQs with Answers--How to define PATH environment variable for sudo commands.md b/published/201409/20140716 Linux FAQs with Answers--How to define PATH environment variable for sudo commands.md similarity index 100% rename from published/201410/20140716 Linux FAQs with Answers--How to define PATH environment variable for sudo commands.md rename to published/201409/20140716 Linux FAQs with Answers--How to define PATH environment variable for sudo commands.md diff --git a/published/201410/20140718 Need Microsoft Office on Ubuntu--Install the Official Webapps.md b/published/201409/20140718 Need Microsoft Office on Ubuntu--Install the Official Webapps.md similarity index 100% rename from published/201410/20140718 Need Microsoft Office on Ubuntu--Install the Official Webapps.md rename to published/201409/20140718 Need Microsoft Office on Ubuntu--Install the Official Webapps.md diff --git a/published/201410/20140722 How to manage DigitalOcean VPS droplets from the command line on Linux.md b/published/201409/20140722 How to manage DigitalOcean VPS droplets from the command line on Linux.md similarity index 100% rename from published/201410/20140722 How to manage DigitalOcean VPS droplets from the command line on Linux.md rename to published/201409/20140722 How to manage DigitalOcean VPS droplets from the command line on Linux.md diff --git a/published/201410/20140723 How to access SoundCloud from the command line in Linux.md b/published/201409/20140723 How to access SoundCloud from the command line in Linux.md similarity index 100% rename from published/201410/20140723 How to access SoundCloud from the command line in Linux.md rename to published/201409/20140723 How to access SoundCloud from the command line in Linux.md diff --git a/published/201410/20140723 Top 10 Fun On The Command Line.md b/published/201409/20140723 Top 10 Fun On The Command Line.md similarity index 100% rename from published/201410/20140723 Top 10 Fun On The Command Line.md rename to published/201409/20140723 Top 10 Fun On The Command Line.md diff --git a/published/201410/20140724 diff -u--What is New in Kernel Development.md b/published/201409/20140724 diff -u--What is New in Kernel Development.md similarity index 100% rename from published/201410/20140724 diff -u--What is New in Kernel Development.md rename to published/201409/20140724 diff -u--What is New in Kernel Development.md diff --git a/published/201410/20140729 10 Useful 'Squid Proxy Server' Interview Questions and Answers in Linux.md b/published/201409/20140729 10 Useful 'Squid Proxy Server' Interview Questions and Answers in Linux.md similarity index 100% rename from published/201410/20140729 10 Useful 'Squid Proxy Server' Interview Questions and Answers in Linux.md rename to published/201409/20140729 10 Useful 'Squid Proxy Server' Interview Questions and Answers in Linux.md diff --git a/published/201410/20140729 How to access Linux command cheat sheets from the command line.md b/published/201409/20140729 How to access Linux command cheat sheets from the command line.md similarity index 100% rename from published/201410/20140729 How to access Linux command cheat sheets from the command line.md rename to published/201409/20140729 How to access Linux command cheat sheets from the command line.md diff --git a/published/201410/20140730 How to use variables in shell Scripting.md b/published/201409/20140730 How to use variables in shell Scripting.md similarity index 100% rename from published/201410/20140730 How to use variables in shell Scripting.md rename to published/201409/20140730 How to use variables in shell Scripting.md diff --git a/published/201410/20140731 Easy Steps to Make GNOME 3 More Efficient.md b/published/201409/20140731 Easy Steps to Make GNOME 3 More Efficient.md similarity index 100% rename from published/201410/20140731 Easy Steps to Make GNOME 3 More Efficient.md rename to published/201409/20140731 Easy Steps to Make GNOME 3 More Efficient.md diff --git a/published/201410/20140801 How To Install Java On Ubuntu 14.04.md b/published/201409/20140801 How To Install Java On Ubuntu 14.04.md similarity index 100% rename from published/201410/20140801 How To Install Java On Ubuntu 14.04.md rename to published/201409/20140801 How To Install Java On Ubuntu 14.04.md diff --git a/published/201410/20140801 How to Create an Ubuntu Kiosk Computer.md b/published/201409/20140801 How to Create an Ubuntu Kiosk Computer.md similarity index 100% rename from published/201410/20140801 How to Create an Ubuntu Kiosk Computer.md rename to published/201409/20140801 How to Create an Ubuntu Kiosk Computer.md diff --git a/published/201410/20140804 Cheat--An Ultimate Command Line 'Cheat-Sheet' for Linux Beginners and Administrators.md b/published/201409/20140804 Cheat--An Ultimate Command Line 'Cheat-Sheet' for Linux Beginners and Administrators.md similarity index 100% rename from published/201410/20140804 Cheat--An Ultimate Command Line 'Cheat-Sheet' for Linux Beginners and Administrators.md rename to published/201409/20140804 Cheat--An Ultimate Command Line 'Cheat-Sheet' for Linux Beginners and Administrators.md diff --git a/published/201410/20140808 When Linux Was Perfect Enough.md b/published/201409/20140808 When Linux Was Perfect Enough.md similarity index 100% rename from published/201410/20140808 When Linux Was Perfect Enough.md rename to published/201409/20140808 When Linux Was Perfect Enough.md diff --git a/published/201410/20140811 Disable or Password Protect Single User Mode or RHEL ro CentOS ro 5.x ro 6.x.md b/published/201409/20140811 Disable or Password Protect Single User Mode or RHEL ro CentOS ro 5.x ro 6.x.md similarity index 100% rename from published/201410/20140811 Disable or Password Protect Single User Mode or RHEL ro CentOS ro 5.x ro 6.x.md rename to published/201409/20140811 Disable or Password Protect Single User Mode or RHEL ro CentOS ro 5.x ro 6.x.md diff --git a/published/201410/20140811 How to Image and Clone Hard Drives with Clonezilla.md b/published/201409/20140811 How to Image and Clone Hard Drives with Clonezilla.md similarity index 100% rename from published/201410/20140811 How to Image and Clone Hard Drives with Clonezilla.md rename to published/201409/20140811 How to Image and Clone Hard Drives with Clonezilla.md diff --git a/published/201410/20140811 Linux FAQs with Answers--How to check the last time system was rebooted on Linux.md b/published/201409/20140811 Linux FAQs with Answers--How to check the last time system was rebooted on Linux.md similarity index 100% rename from published/201410/20140811 Linux FAQs with Answers--How to check the last time system was rebooted on Linux.md rename to published/201409/20140811 Linux FAQs with Answers--How to check the last time system was rebooted on Linux.md diff --git a/published/201410/20140818 Linux FAQs with Answers--How to set a static MAC address on VMware ESXi virtual machine.md b/published/201409/20140818 Linux FAQs with Answers--How to set a static MAC address on VMware ESXi virtual machine.md similarity index 100% rename from published/201410/20140818 Linux FAQs with Answers--How to set a static MAC address on VMware ESXi virtual machine.md rename to published/201409/20140818 Linux FAQs with Answers--How to set a static MAC address on VMware ESXi virtual machine.md diff --git a/published/201410/20140818 Where And How To Code--Choosing The Best Free Code Editor.md b/published/201409/20140818 Where And How To Code--Choosing The Best Free Code Editor.md similarity index 100% rename from published/201410/20140818 Where And How To Code--Choosing The Best Free Code Editor.md rename to published/201409/20140818 Where And How To Code--Choosing The Best Free Code Editor.md diff --git a/published/201410/20140819 8 Options to Trace or Debug Programs using Linux strace Command.md b/published/201409/20140819 8 Options to Trace or Debug Programs using Linux strace Command.md similarity index 100% rename from published/201410/20140819 8 Options to Trace or Debug Programs using Linux strace Command.md rename to published/201409/20140819 8 Options to Trace or Debug Programs using Linux strace Command.md diff --git a/published/201410/20140819 A Pocket Guide for Linux ssh Command with Examples.md b/published/201409/20140819 A Pocket Guide for Linux ssh Command with Examples.md similarity index 100% rename from published/201410/20140819 A Pocket Guide for Linux ssh Command with Examples.md rename to published/201409/20140819 A Pocket Guide for Linux ssh Command with Examples.md diff --git a/published/201410/20140819 KDE Plasma 5--For those Linux users undecided on the kernel' s future.md b/published/201409/20140819 KDE Plasma 5--For those Linux users undecided on the kernel' s future.md similarity index 100% rename from published/201410/20140819 KDE Plasma 5--For those Linux users undecided on the kernel' s future.md rename to published/201409/20140819 KDE Plasma 5--For those Linux users undecided on the kernel' s future.md diff --git a/published/201410/20140819 Linux Systemd--Start or Stop or Restart Services in RHEL or CentOS 7.md b/published/201409/20140819 Linux Systemd--Start or Stop or Restart Services in RHEL or CentOS 7.md similarity index 100% rename from published/201410/20140819 Linux Systemd--Start or Stop or Restart Services in RHEL or CentOS 7.md rename to published/201409/20140819 Linux Systemd--Start or Stop or Restart Services in RHEL or CentOS 7.md diff --git a/published/201410/20140822 15 Practical Examples of 'cd' Command in Linux.md b/published/201409/20140822 15 Practical Examples of 'cd' Command in Linux.md similarity index 100% rename from published/201410/20140822 15 Practical Examples of 'cd' Command in Linux.md rename to published/201409/20140822 15 Practical Examples of 'cd' Command in Linux.md diff --git a/published/201410/20140825 China Will Change The Way All Software Is Bought And Sold.md b/published/201409/20140825 China Will Change The Way All Software Is Bought And Sold.md similarity index 100% rename from published/201410/20140825 China Will Change The Way All Software Is Bought And Sold.md rename to published/201409/20140825 China Will Change The Way All Software Is Bought And Sold.md diff --git a/published/201410/20140825 Linux FAQs with Answers--How to enable Nux Dextop repository on CentOS or RHEL.md b/published/201409/20140825 Linux FAQs with Answers--How to enable Nux Dextop repository on CentOS or RHEL.md similarity index 100% rename from published/201410/20140825 Linux FAQs with Answers--How to enable Nux Dextop repository on CentOS or RHEL.md rename to published/201409/20140825 Linux FAQs with Answers--How to enable Nux Dextop repository on CentOS or RHEL.md diff --git a/published/201410/20140825 Linux FAQs with Answers--How to fix 'failed to run aclocal--No such file or directory'.md b/published/201409/20140825 Linux FAQs with Answers--How to fix 'failed to run aclocal--No such file or directory'.md similarity index 100% rename from published/201410/20140825 Linux FAQs with Answers--How to fix 'failed to run aclocal--No such file or directory'.md rename to published/201409/20140825 Linux FAQs with Answers--How to fix 'failed to run aclocal--No such file or directory'.md diff --git a/published/201410/20140825 Linux Terminal--speedtest_cli checks your real bandwidth speed.md b/published/201409/20140825 Linux Terminal--speedtest_cli checks your real bandwidth speed.md similarity index 100% rename from published/201410/20140825 Linux Terminal--speedtest_cli checks your real bandwidth speed.md rename to published/201409/20140825 Linux Terminal--speedtest_cli checks your real bandwidth speed.md diff --git a/published/201410/20140826 Linus Torvalds is my hero, says 13 year old Zachary DuPont.md b/published/201409/20140826 Linus Torvalds is my hero, says 13 year old Zachary DuPont.md similarity index 100% rename from published/201410/20140826 Linus Torvalds is my hero, says 13 year old Zachary DuPont.md rename to published/201409/20140826 Linus Torvalds is my hero, says 13 year old Zachary DuPont.md diff --git a/published/201410/20140828 GIMP 2.8.12 Released--Here' s How to Install it on Ubuntu.md b/published/201409/20140828 GIMP 2.8.12 Released--Here' s How to Install it on Ubuntu.md similarity index 100% rename from published/201410/20140828 GIMP 2.8.12 Released--Here' s How to Install it on Ubuntu.md rename to published/201409/20140828 GIMP 2.8.12 Released--Here' s How to Install it on Ubuntu.md diff --git a/published/201410/20140829 Linux Doesn't Need to Own the Desktop.md b/published/201409/20140829 Linux Doesn't Need to Own the Desktop.md similarity index 100% rename from published/201410/20140829 Linux Doesn't Need to Own the Desktop.md rename to published/201409/20140829 Linux Doesn't Need to Own the Desktop.md diff --git a/published/201410/20140901 Awesome systemd Commands to Manage Linux System.md b/published/201409/20140901 Awesome systemd Commands to Manage Linux System.md similarity index 100% rename from published/201410/20140901 Awesome systemd Commands to Manage Linux System.md rename to published/201409/20140901 Awesome systemd Commands to Manage Linux System.md diff --git a/published/201410/20140901 Remarkable--A New MarkDown Editor For Linux.md b/published/201409/20140901 Remarkable--A New MarkDown Editor For Linux.md similarity index 100% rename from published/201410/20140901 Remarkable--A New MarkDown Editor For Linux.md rename to published/201409/20140901 Remarkable--A New MarkDown Editor For Linux.md diff --git a/published/201410/20140901 Ubuntu Wallpaper Contest Closes, These Are Our 8 Faves.md b/published/201409/20140901 Ubuntu Wallpaper Contest Closes, These Are Our 8 Faves.md similarity index 100% rename from published/201410/20140901 Ubuntu Wallpaper Contest Closes, These Are Our 8 Faves.md rename to published/201409/20140901 Ubuntu Wallpaper Contest Closes, These Are Our 8 Faves.md diff --git a/published/201410/20140902 Happy Birthday Email.md b/published/201409/20140902 Happy Birthday Email.md similarity index 100% rename from published/201410/20140902 Happy Birthday Email.md rename to published/201409/20140902 Happy Birthday Email.md diff --git a/published/201410/20140902 How to share on linux the output of your shell commands.md b/published/201409/20140902 How to share on linux the output of your shell commands.md similarity index 100% rename from published/201410/20140902 How to share on linux the output of your shell commands.md rename to published/201409/20140902 How to share on linux the output of your shell commands.md diff --git a/published/201410/20140902 Use SearchMonkey To Search Text In All Files Within A Directory In Ubuntu.md b/published/201409/20140902 Use SearchMonkey To Search Text In All Files Within A Directory In Ubuntu.md similarity index 100% rename from published/201410/20140902 Use SearchMonkey To Search Text In All Files Within A Directory In Ubuntu.md rename to published/201409/20140902 Use SearchMonkey To Search Text In All Files Within A Directory In Ubuntu.md diff --git a/published/201410/20140904 The Masked Avengers.md b/published/201409/20140904 The Masked Avengers.md similarity index 100% rename from published/201410/20140904 The Masked Avengers.md rename to published/201409/20140904 The Masked Avengers.md diff --git a/published/201410/20140905 Ubuntu Touch Now Has a Torrent Client in the Ubuntu Store.md b/published/201409/20140905 Ubuntu Touch Now Has a Torrent Client in the Ubuntu Store.md similarity index 100% rename from published/201410/20140905 Ubuntu Touch Now Has a Torrent Client in the Ubuntu Store.md rename to published/201409/20140905 Ubuntu Touch Now Has a Torrent Client in the Ubuntu Store.md diff --git a/published/201410/20140910 Colourful systemd vs sysVinit Linux Cheatsheet.md b/published/201409/20140910 Colourful systemd vs sysVinit Linux Cheatsheet.md similarity index 100% rename from published/201410/20140910 Colourful systemd vs sysVinit Linux Cheatsheet.md rename to published/201409/20140910 Colourful systemd vs sysVinit Linux Cheatsheet.md diff --git a/published/201410/20140910 Jelly Conky Adds Simple, Stylish Stats To Your Linux Desktop.md b/published/201409/20140910 Jelly Conky Adds Simple, Stylish Stats To Your Linux Desktop.md similarity index 100% rename from published/201410/20140910 Jelly Conky Adds Simple, Stylish Stats To Your Linux Desktop.md rename to published/201409/20140910 Jelly Conky Adds Simple, Stylish Stats To Your Linux Desktop.md diff --git a/published/201410/20140910 Meet the 12 Ubuntu 14.10 Wallpaper Contest Winners (So Far).md b/published/201409/20140910 Meet the 12 Ubuntu 14.10 Wallpaper Contest Winners (So Far).md similarity index 100% rename from published/201410/20140910 Meet the 12 Ubuntu 14.10 Wallpaper Contest Winners (So Far).md rename to published/201409/20140910 Meet the 12 Ubuntu 14.10 Wallpaper Contest Winners (So Far).md diff --git a/published/201410/20140910 [Quick Tip] How To List All Installed Packages On Linux Distributions.md b/published/201409/20140910 [Quick Tip] How To List All Installed Packages On Linux Distributions.md similarity index 100% rename from published/201410/20140910 [Quick Tip] How To List All Installed Packages On Linux Distributions.md rename to published/201409/20140910 [Quick Tip] How To List All Installed Packages On Linux Distributions.md diff --git a/published/201410/20140911 Install UberWriter Markdown Editor In Ubuntu 14.04.md b/published/201409/20140911 Install UberWriter Markdown Editor In Ubuntu 14.04.md similarity index 100% rename from published/201410/20140911 Install UberWriter Markdown Editor In Ubuntu 14.04.md rename to published/201409/20140911 Install UberWriter Markdown Editor In Ubuntu 14.04.md diff --git a/published/201410/20140912 How to Go Hands On With the Utopic Unicorn--Literally.md b/published/201409/20140912 How to Go Hands On With the Utopic Unicorn--Literally.md similarity index 100% rename from published/201410/20140912 How to Go Hands On With the Utopic Unicorn--Literally.md rename to published/201409/20140912 How to Go Hands On With the Utopic Unicorn--Literally.md diff --git a/published/201410/20140912 QuiteRSS--RSS Reader For Desktop Linux.md b/published/201409/20140912 QuiteRSS--RSS Reader For Desktop Linux.md similarity index 100% rename from published/201410/20140912 QuiteRSS--RSS Reader For Desktop Linux.md rename to published/201409/20140912 QuiteRSS--RSS Reader For Desktop Linux.md diff --git a/published/201410/20140915 How To Uninstall Ubuntu Linux From Windows 8 Dual Boot.md b/published/201409/20140915 How To Uninstall Ubuntu Linux From Windows 8 Dual Boot.md similarity index 100% rename from published/201410/20140915 How To Uninstall Ubuntu Linux From Windows 8 Dual Boot.md rename to published/201409/20140915 How To Uninstall Ubuntu Linux From Windows 8 Dual Boot.md diff --git a/published/201410/20140915 Linux FAQs with Answers--How to find and remove obsolete PPA repositories on Ubuntu.md b/published/201409/20140915 Linux FAQs with Answers--How to find and remove obsolete PPA repositories on Ubuntu.md similarity index 100% rename from published/201410/20140915 Linux FAQs with Answers--How to find and remove obsolete PPA repositories on Ubuntu.md rename to published/201409/20140915 Linux FAQs with Answers--How to find and remove obsolete PPA repositories on Ubuntu.md diff --git a/published/201410/20140915 One of the Smallest Distros in the World, Tiny Core, Gets a Fresh Update.md b/published/201409/20140915 One of the Smallest Distros in the World, Tiny Core, Gets a Fresh Update.md similarity index 100% rename from published/201410/20140915 One of the Smallest Distros in the World, Tiny Core, Gets a Fresh Update.md rename to published/201409/20140915 One of the Smallest Distros in the World, Tiny Core, Gets a Fresh Update.md diff --git a/published/201410/20140915 Potenza Icon Themes 2.0 Available For Download.md b/published/201409/20140915 Potenza Icon Themes 2.0 Available For Download.md similarity index 100% rename from published/201410/20140915 Potenza Icon Themes 2.0 Available For Download.md rename to published/201409/20140915 Potenza Icon Themes 2.0 Available For Download.md diff --git a/published/201410/20140917 GNOME Control Center 3.14 RC1 Corrects Lots of Potential Crashes.md b/published/201409/20140917 GNOME Control Center 3.14 RC1 Corrects Lots of Potential Crashes.md similarity index 100% rename from published/201410/20140917 GNOME Control Center 3.14 RC1 Corrects Lots of Potential Crashes.md rename to published/201409/20140917 GNOME Control Center 3.14 RC1 Corrects Lots of Potential Crashes.md diff --git a/published/201410/20140919 Another Italian City Says Goodbye To Microsoft Office, Will Switch To OpenOffice Soon.md b/published/201409/20140919 Another Italian City Says Goodbye To Microsoft Office, Will Switch To OpenOffice Soon.md similarity index 100% rename from published/201410/20140919 Another Italian City Says Goodbye To Microsoft Office, Will Switch To OpenOffice Soon.md rename to published/201409/20140919 Another Italian City Says Goodbye To Microsoft Office, Will Switch To OpenOffice Soon.md diff --git a/published/201410/20140919 Mir and Unity 8 Status Update Arrives from Ubuntu Devs.md b/published/201409/20140919 Mir and Unity 8 Status Update Arrives from Ubuntu Devs.md similarity index 100% rename from published/201410/20140919 Mir and Unity 8 Status Update Arrives from Ubuntu Devs.md rename to published/201409/20140919 Mir and Unity 8 Status Update Arrives from Ubuntu Devs.md diff --git a/published/201410/20140919 Netflix Offers to Work with Ubuntu to Bring Native Playback to All.md b/published/201409/20140919 Netflix Offers to Work with Ubuntu to Bring Native Playback to All.md similarity index 100% rename from published/201410/20140919 Netflix Offers to Work with Ubuntu to Bring Native Playback to All.md rename to published/201409/20140919 Netflix Offers to Work with Ubuntu to Bring Native Playback to All.md diff --git a/published/201410/20140919 Red Hat Acquires FeedHenry for $82 Million to Advance Mobile Development.md b/published/201409/20140919 Red Hat Acquires FeedHenry for $82 Million to Advance Mobile Development.md similarity index 100% rename from published/201410/20140919 Red Hat Acquires FeedHenry for $82 Million to Advance Mobile Development.md rename to published/201409/20140919 Red Hat Acquires FeedHenry for $82 Million to Advance Mobile Development.md diff --git a/published/201410/20140922 Ten Blogs Every Ubuntu User Must Follow.md b/published/201409/20140922 Ten Blogs Every Ubuntu User Must Follow.md similarity index 100% rename from published/201410/20140922 Ten Blogs Every Ubuntu User Must Follow.md rename to published/201409/20140922 Ten Blogs Every Ubuntu User Must Follow.md diff --git a/published/201410/20140924 Canonical Closes nginx Exploit in Ubuntu 14.04 LTS.md b/published/201409/20140924 Canonical Closes nginx Exploit in Ubuntu 14.04 LTS.md similarity index 100% rename from published/201410/20140924 Canonical Closes nginx Exploit in Ubuntu 14.04 LTS.md rename to published/201409/20140924 Canonical Closes nginx Exploit in Ubuntu 14.04 LTS.md diff --git a/published/201410/20140924 Debian 8 Jessie to Have GNOME as the Default Desktop.md b/published/201409/20140924 Debian 8 Jessie to Have GNOME as the Default Desktop.md similarity index 100% rename from published/201410/20140924 Debian 8 Jessie to Have GNOME as the Default Desktop.md rename to published/201409/20140924 Debian 8 Jessie to Have GNOME as the Default Desktop.md diff --git a/published/201410/20140924 End of the Line for Red Hat Enterprise Linux 5.md b/published/201409/20140924 End of the Line for Red Hat Enterprise Linux 5.md similarity index 100% rename from published/201410/20140924 End of the Line for Red Hat Enterprise Linux 5.md rename to published/201409/20140924 End of the Line for Red Hat Enterprise Linux 5.md diff --git a/published/201410/20140924 Second Bugfix Release for KDE Plasma 5 Arrives with Lots of Changes.md b/published/201409/20140924 Second Bugfix Release for KDE Plasma 5 Arrives with Lots of Changes.md similarity index 100% rename from published/201410/20140924 Second Bugfix Release for KDE Plasma 5 Arrives with Lots of Changes.md rename to published/201409/20140924 Second Bugfix Release for KDE Plasma 5 Arrives with Lots of Changes.md diff --git a/published/201410/20140924 Wal Commander GitHub Edition 0.17 released.md b/published/201409/20140924 Wal Commander GitHub Edition 0.17 released.md similarity index 100% rename from published/201410/20140924 Wal Commander GitHub Edition 0.17 released.md rename to published/201409/20140924 Wal Commander GitHub Edition 0.17 released.md diff --git a/published/201410/How to listen to Internet radio from the command line on Linux.md b/published/201409/How to listen to Internet radio from the command line on Linux.md similarity index 100% rename from published/201410/How to listen to Internet radio from the command line on Linux.md rename to published/201409/How to listen to Internet radio from the command line on Linux.md diff --git a/published/201410/The Open Source Witch Hunts Have Returned.md b/published/201409/The Open Source Witch Hunts Have Returned.md similarity index 100% rename from published/201410/The Open Source Witch Hunts Have Returned.md rename to published/201409/The Open Source Witch Hunts Have Returned.md From ec0d19874d471627ee3922bca6138f5c432ad155 Mon Sep 17 00:00:00 2001 From: wxy Date: Sat, 1 Nov 2014 21:03:29 +0800 Subject: [PATCH 094/108] =?UTF-8?q?=E5=BD=92=E6=A1=A3201410?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...stat, pidstat, iostat and sar) for Linux Performance Monitoring.md | 0 ...0711 How to use systemd for system administration on Debian.md | 0 ...cri Cube--An Offline And Portable Package Management System.md | 0 .../20140724 What are useful online tools for Linux.md | 0 .../{ => 201410}/20140729 How to use awk command in Linux.md | 0 ...hat are better alternatives to basic command line utilities.md | 0 ...ow to install and configure Nvidia Optimus driver on Ubuntu.md | 0 ... How to install Puppet server and client on CentOS and RHEL.md | 0 ...20140811 Check how much do you type with WhatPulse on Linux.md | 0 ...improve your productivity in terminal environment with Tmux.md | 0 ...Reduce LVM' s (Logical Volume Management) in Linux--Part II.md | 0 .../{ => 201410}/20140813 How to remove file metadata on Linux.md | 0 ...orage with Logical Volume Management (LVM) in Linux--PART 1.md | 0 ...40815 How to manage a WiFi connection from the command line.md | 0 ...untu Do This--Answers to The 4 Questions New Users Ask Most.md | 0 ...18 Disable reboot using Ctrl-Alt-Del Keys in RHEL or CentOS.md | 0 ...40818 How to configure Access Control Lists (ACLs) on Linux.md | 0 ...s--How to fix 'X11 forwarding request failed on channel 0'.md | 0 published/{ => 201410}/20140819 How to Encrypt Email in Linux.md | 0 .../20140822 15 Practical Examples of 'echo' command in Linux.md | 0 .../20140822 Want To Start An Open Source Project--Here's How.md | 0 ...5 Linux FAQs with Answers--How to install Shutter on CentOS.md | 0 ...h Answers--How to show a MAC learning table of Linux bridge.md | 0 ...us Torvalds Promotes Linux for Desktops, Embedded Computing.md | 0 ...resting Funny Commands of Linux (Fun in Terminal) – Part II.md | 0 ... Fun in Linux Terminal--Play with Word and Character Counts.md | 0 .../20140902 Mount Google drive in Ubuntu 14.04 LTS.md | 0 .../{ => 201410}/20140902 Photo Editing on Linux with Krita.md | 0 published/{ => 201410}/20140904 Making MySQL Better at GitHub.md | 0 ...4 Use LaTeX In Ubuntu 14.04 and Linux Mint 17 With Texmaker.md | 0 ...0 How To Recover Default Openbox Config Files On Crunchbang.md | 0 ...10 How to download GOG games from the command line on Linux.md | 0 ...How to set up Nagios Remote Plugin Executor (NRPE) in Linux.md | 0 ...s--How to capture TCP SYN, ACK and FIN packets with tcpdump.md | 0 ...Qs with Answers--How to change hostname on CentOS or RHEL 7.md | 0 ...AQs with Answers--How to create a new Amazon AWS access key.md | 0 ...5 Linux FAQs with Answers--How to expand an XFS file system.md | 0 ...s--How to remove PPA repository from command line on Ubuntu.md | 0 ...swers--How to create a MySQL database from the command line.md | 0 .../20140922 How to Run Android Apps on Ubuntu using ARChon.md | 0 .../20140922 How to use logrotate to manage log files in Linux.md | 0 .../20140922 Reset Unity and Compiz Settings in Ubuntu 14.04.md | 0 .../{ => 201410}/20140924 How To Install Vmware 10 On CentOS 7.md | 0 ...How to delete recently opened files history in ubuntu 14.04.md | 0 ...4 How to use CloudFlare as a ddclient provider under Ubuntu.md | 0 published/{ => 201410}/20140924 Unix----stat -- more than ls.md | 0 ...FAQs with Answers--How to catch and handle a signal in Perl.md | 0 ...Answers--How to change a network interface name on CentOS 7.md | 0 ...h Answers--How to configure a static IP address on CentOS 7.md | 0 ...Qs with Answers--How to detect a Linux distribution in Perl.md | 0 ...w to embed all fonts in a PDF document generated with LaTex.md | 0 .../20140926 How To Reset Root Password On CentOS 7.md | 0 published/{ => 201410}/20140928 How to Use Systemd Timers.md | 0 ...Oracle Linux 5.11 Features Updated Unbreakable Linux Kernel.md | 0 ...929 Git Rebase Tutorial--Going Back in Time with Git Rebase.md | 0 .../20140929 Learning Vim in 2014--Working with Files.md | 0 .../20140929 Using GIT to backup your website files on linux.md | 0 ...If Your Linux System Is Vulnerable To Shellshock And Fix It.md | 0 ... How to Boot Linux ISO Images Directly From Your Hard Drive.md | 0 ...0141008 Adobe Pulls Linux PDF Reader Downloads From Website.md | 0 .../20141008 Linux Calendar App California 0.2 Released.md | 0 ...141008 Linux Kernel 3.17 Is Out With Plenty of New Features.md | 0 published/{ => 201410}/20141009 Linux Terminal--An lsof Primer.md | 0 ...20141009 Linux or UNIX wget command with practical examples.md | 0 published/{ => 201410}/20141013 UbuTricks 14.10.08.md | 0 .../20141013 Ubuntu's Unity Turns 4 Happy Birthday.md | 0 ...0141013 What is good reference management software on Linux.md | 0 ...an ISO or NRG image to a DVD from the command line on Linux.md | 0 ...e name and its writing speed from the command line on Linux.md | 0 ...s--How to detect and patch Shellshock vulnerability in bash.md | 0 ...Torvalds Regrets Alienating Developers with Strong Language.md | 0 ...Qs with Answers--How to create a video DVD on Linux desktop.md | 0 ...ight on the cost of dropping Linux and returning to Windows.md | 0 .../20141021 Debian 7.7 Is Out with Security Fixes.md | 0 published/{ => 201410}/20141021 Nifty Free Image Viewers.md | 0 ...3.11.0 Brings a Ton of Changes and Fixes for POODLE Exploit.md | 0 ...hieve Better Security With Proper Management of Open Source.md | 0 .../How to configure SNMPv3 on ubuntu 14.04 server.md | 0 ...uild a RPM or DEB package from the source with CheckInstall.md | 0 ...inux Performance Monitoring with Vmstat and Iostat Commands.md | 0 ...stem Performance and Usage Activity Monitoring Tool For Linux.md | 0 ...sion) Released – Install in RedHat and Debian Based Systems.md | 0 82 files changed, 0 insertions(+), 0 deletions(-) rename published/{ => 201410}/20 Useful Commands of ‘Sysstat’ Utilities (mpstat, pidstat, iostat and sar) for Linux Performance Monitoring.md (100%) rename published/{ => 201410}/20140711 How to use systemd for system administration on Debian.md (100%) rename published/{ => 201410}/20140724 Camicri Cube--An Offline And Portable Package Management System.md (100%) rename published/{ => 201410}/20140724 What are useful online tools for Linux.md (100%) rename published/{ => 201410}/20140729 How to use awk command in Linux.md (100%) rename published/{ => 201410}/20140801 What are better alternatives to basic command line utilities.md (100%) rename published/{ => 201410}/20140804 How to install and configure Nvidia Optimus driver on Ubuntu.md (100%) rename published/{ => 201410}/20140808 How to install Puppet server and client on CentOS and RHEL.md (100%) rename published/{ => 201410}/20140811 Check how much do you type with WhatPulse on Linux.md (100%) rename published/{ => 201410}/20140811 How to improve your productivity in terminal environment with Tmux.md (100%) rename published/{ => 201410}/20140813 How to Extend or Reduce LVM' s (Logical Volume Management) in Linux--Part II.md (100%) rename published/{ => 201410}/20140813 How to remove file metadata on Linux.md (100%) rename published/{ => 201410}/20140813 Setup Flexible Disk Storage with Logical Volume Management (LVM) in Linux--PART 1.md (100%) rename published/{ => 201410}/20140815 How to manage a WiFi connection from the command line.md (100%) rename published/{ => 201410}/20140818 Can Ubuntu Do This--Answers to The 4 Questions New Users Ask Most.md (100%) rename published/{ => 201410}/20140818 Disable reboot using Ctrl-Alt-Del Keys in RHEL or CentOS.md (100%) rename published/{ => 201410}/20140818 How to configure Access Control Lists (ACLs) on Linux.md (100%) rename published/{ => 201410}/20140818 Linux FAQs with Answers--How to fix 'X11 forwarding request failed on channel 0'.md (100%) rename published/{ => 201410}/20140819 How to Encrypt Email in Linux.md (100%) rename published/{ => 201410}/20140822 15 Practical Examples of 'echo' command in Linux.md (100%) rename published/{ => 201410}/20140822 Want To Start An Open Source Project--Here's How.md (100%) rename published/{ => 201410}/20140825 Linux FAQs with Answers--How to install Shutter on CentOS.md (100%) rename published/{ => 201410}/20140825 Linux FAQs with Answers--How to show a MAC learning table of Linux bridge.md (100%) rename published/{ => 201410}/20140826 Linus Torvalds Promotes Linux for Desktops, Embedded Computing.md (100%) rename published/{ => 201410}/20140829 6 Interesting Funny Commands of Linux (Fun in Terminal) – Part II.md (100%) rename published/{ => 201410}/20140829 Fun in Linux Terminal--Play with Word and Character Counts.md (100%) rename published/{ => 201410}/20140902 Mount Google drive in Ubuntu 14.04 LTS.md (100%) rename published/{ => 201410}/20140902 Photo Editing on Linux with Krita.md (100%) rename published/{ => 201410}/20140904 Making MySQL Better at GitHub.md (100%) rename published/{ => 201410}/20140904 Use LaTeX In Ubuntu 14.04 and Linux Mint 17 With Texmaker.md (100%) rename published/{ => 201410}/20140910 How To Recover Default Openbox Config Files On Crunchbang.md (100%) rename published/{ => 201410}/20140910 How to download GOG games from the command line on Linux.md (100%) rename published/{ => 201410}/20140910 How to set up Nagios Remote Plugin Executor (NRPE) in Linux.md (100%) rename published/{ => 201410}/20140915 Linux FAQs with Answers--How to capture TCP SYN, ACK and FIN packets with tcpdump.md (100%) rename published/{ => 201410}/20140915 Linux FAQs with Answers--How to change hostname on CentOS or RHEL 7.md (100%) rename published/{ => 201410}/20140915 Linux FAQs with Answers--How to create a new Amazon AWS access key.md (100%) rename published/{ => 201410}/20140915 Linux FAQs with Answers--How to expand an XFS file system.md (100%) rename published/{ => 201410}/20140915 Linux FAQs with Answers--How to remove PPA repository from command line on Ubuntu.md (100%) rename published/{ => 201410}/20140919 Linux FAQs with Answers--How to create a MySQL database from the command line.md (100%) rename published/{ => 201410}/20140922 How to Run Android Apps on Ubuntu using ARChon.md (100%) rename published/{ => 201410}/20140922 How to use logrotate to manage log files in Linux.md (100%) rename published/{ => 201410}/20140922 Reset Unity and Compiz Settings in Ubuntu 14.04.md (100%) rename published/{ => 201410}/20140924 How To Install Vmware 10 On CentOS 7.md (100%) rename published/{ => 201410}/20140924 How to delete recently opened files history in ubuntu 14.04.md (100%) rename published/{ => 201410}/20140924 How to use CloudFlare as a ddclient provider under Ubuntu.md (100%) rename published/{ => 201410}/20140924 Unix----stat -- more than ls.md (100%) rename published/{ => 201410}/20140925 Linux FAQs with Answers--How to catch and handle a signal in Perl.md (100%) rename published/{ => 201410}/20140925 Linux FAQs with Answers--How to change a network interface name on CentOS 7.md (100%) rename published/{ => 201410}/20140925 Linux FAQs with Answers--How to configure a static IP address on CentOS 7.md (100%) rename published/{ => 201410}/20140925 Linux FAQs with Answers--How to detect a Linux distribution in Perl.md (100%) rename published/{ => 201410}/20140925 Linux FAQs with Answers--How to embed all fonts in a PDF document generated with LaTex.md (100%) rename published/{ => 201410}/20140926 How To Reset Root Password On CentOS 7.md (100%) rename published/{ => 201410}/20140928 How to Use Systemd Timers.md (100%) rename published/{ => 201410}/20140928 Oracle Linux 5.11 Features Updated Unbreakable Linux Kernel.md (100%) rename published/{ => 201410}/20140929 Git Rebase Tutorial--Going Back in Time with Git Rebase.md (100%) rename published/{ => 201410}/20140929 Learning Vim in 2014--Working with Files.md (100%) rename published/{ => 201410}/20140929 Using GIT to backup your website files on linux.md (100%) rename published/{ => 201410}/20140930 Check If Your Linux System Is Vulnerable To Shellshock And Fix It.md (100%) rename published/{ => 201410}/20140930 How to Boot Linux ISO Images Directly From Your Hard Drive.md (100%) rename published/{ => 201410}/20141008 Adobe Pulls Linux PDF Reader Downloads From Website.md (100%) rename published/{ => 201410}/20141008 Linux Calendar App California 0.2 Released.md (100%) rename published/{ => 201410}/20141008 Linux Kernel 3.17 Is Out With Plenty of New Features.md (100%) rename published/{ => 201410}/20141009 Linux Terminal--An lsof Primer.md (100%) rename published/{ => 201410}/20141009 Linux or UNIX wget command with practical examples.md (100%) rename published/{ => 201410}/20141013 UbuTricks 14.10.08.md (100%) rename published/{ => 201410}/20141013 Ubuntu's Unity Turns 4 Happy Birthday.md (100%) rename published/{ => 201410}/20141013 What is good reference management software on Linux.md (100%) rename published/{ => 201410}/20141014 Linux FAQs with Answers--How to burn an ISO or NRG image to a DVD from the command line on Linux.md (100%) rename published/{ => 201410}/20141014 Linux FAQs with Answers--How to detect DVD writer' s device name and its writing speed from the command line on Linux.md (100%) rename published/{ => 201410}/20141014 Linux FAQs with Answers--How to detect and patch Shellshock vulnerability in bash.md (100%) rename published/{ => 201410}/20141017 Linus Torvalds Regrets Alienating Developers with Strong Language.md (100%) rename published/{ => 201410}/20141017 Linux FAQs with Answers--How to create a video DVD on Linux desktop.md (100%) rename published/{ => 201410}/20141017 Munich sheds light on the cost of dropping Linux and returning to Windows.md (100%) rename published/{ => 201410}/20141021 Debian 7.7 Is Out with Security Fixes.md (100%) rename published/{ => 201410}/20141021 Nifty Free Image Viewers.md (100%) rename published/{ => 201410}/20141023 Claws Mail 3.11.0 Brings a Ton of Changes and Fixes for POODLE Exploit.md (100%) rename published/{ => 201410}/How to Achieve Better Security With Proper Management of Open Source.md (100%) rename published/{ => 201410}/How to configure SNMPv3 on ubuntu 14.04 server.md (100%) rename published/{ => 201410}/Linux FAQs with Answers--How to build a RPM or DEB package from the source with CheckInstall.md (100%) rename published/{ => 201410}/Linux Performance Monitoring with Vmstat and Iostat Commands.md (100%) rename published/{ => 201410}/Sysstat – All-in-One System Performance and Usage Activity Monitoring Tool For Linux.md (100%) rename published/{ => 201410}/Wine 1.7.29 (Development Version) Released – Install in RedHat and Debian Based Systems.md (100%) diff --git a/published/20 Useful Commands of ‘Sysstat’ Utilities (mpstat, pidstat, iostat and sar) for Linux Performance Monitoring.md b/published/201410/20 Useful Commands of ‘Sysstat’ Utilities (mpstat, pidstat, iostat and sar) for Linux Performance Monitoring.md similarity index 100% rename from published/20 Useful Commands of ‘Sysstat’ Utilities (mpstat, pidstat, iostat and sar) for Linux Performance Monitoring.md rename to published/201410/20 Useful Commands of ‘Sysstat’ Utilities (mpstat, pidstat, iostat and sar) for Linux Performance Monitoring.md diff --git a/published/20140711 How to use systemd for system administration on Debian.md b/published/201410/20140711 How to use systemd for system administration on Debian.md similarity index 100% rename from published/20140711 How to use systemd for system administration on Debian.md rename to published/201410/20140711 How to use systemd for system administration on Debian.md diff --git a/published/20140724 Camicri Cube--An Offline And Portable Package Management System.md b/published/201410/20140724 Camicri Cube--An Offline And Portable Package Management System.md similarity index 100% rename from published/20140724 Camicri Cube--An Offline And Portable Package Management System.md rename to published/201410/20140724 Camicri Cube--An Offline And Portable Package Management System.md diff --git a/published/20140724 What are useful online tools for Linux.md b/published/201410/20140724 What are useful online tools for Linux.md similarity index 100% rename from published/20140724 What are useful online tools for Linux.md rename to published/201410/20140724 What are useful online tools for Linux.md diff --git a/published/20140729 How to use awk command in Linux.md b/published/201410/20140729 How to use awk command in Linux.md similarity index 100% rename from published/20140729 How to use awk command in Linux.md rename to published/201410/20140729 How to use awk command in Linux.md diff --git a/published/20140801 What are better alternatives to basic command line utilities.md b/published/201410/20140801 What are better alternatives to basic command line utilities.md similarity index 100% rename from published/20140801 What are better alternatives to basic command line utilities.md rename to published/201410/20140801 What are better alternatives to basic command line utilities.md diff --git a/published/20140804 How to install and configure Nvidia Optimus driver on Ubuntu.md b/published/201410/20140804 How to install and configure Nvidia Optimus driver on Ubuntu.md similarity index 100% rename from published/20140804 How to install and configure Nvidia Optimus driver on Ubuntu.md rename to published/201410/20140804 How to install and configure Nvidia Optimus driver on Ubuntu.md diff --git a/published/20140808 How to install Puppet server and client on CentOS and RHEL.md b/published/201410/20140808 How to install Puppet server and client on CentOS and RHEL.md similarity index 100% rename from published/20140808 How to install Puppet server and client on CentOS and RHEL.md rename to published/201410/20140808 How to install Puppet server and client on CentOS and RHEL.md diff --git a/published/20140811 Check how much do you type with WhatPulse on Linux.md b/published/201410/20140811 Check how much do you type with WhatPulse on Linux.md similarity index 100% rename from published/20140811 Check how much do you type with WhatPulse on Linux.md rename to published/201410/20140811 Check how much do you type with WhatPulse on Linux.md diff --git a/published/20140811 How to improve your productivity in terminal environment with Tmux.md b/published/201410/20140811 How to improve your productivity in terminal environment with Tmux.md similarity index 100% rename from published/20140811 How to improve your productivity in terminal environment with Tmux.md rename to published/201410/20140811 How to improve your productivity in terminal environment with Tmux.md diff --git a/published/20140813 How to Extend or Reduce LVM' s (Logical Volume Management) in Linux--Part II.md b/published/201410/20140813 How to Extend or Reduce LVM' s (Logical Volume Management) in Linux--Part II.md similarity index 100% rename from published/20140813 How to Extend or Reduce LVM' s (Logical Volume Management) in Linux--Part II.md rename to published/201410/20140813 How to Extend or Reduce LVM' s (Logical Volume Management) in Linux--Part II.md diff --git a/published/20140813 How to remove file metadata on Linux.md b/published/201410/20140813 How to remove file metadata on Linux.md similarity index 100% rename from published/20140813 How to remove file metadata on Linux.md rename to published/201410/20140813 How to remove file metadata on Linux.md diff --git a/published/20140813 Setup Flexible Disk Storage with Logical Volume Management (LVM) in Linux--PART 1.md b/published/201410/20140813 Setup Flexible Disk Storage with Logical Volume Management (LVM) in Linux--PART 1.md similarity index 100% rename from published/20140813 Setup Flexible Disk Storage with Logical Volume Management (LVM) in Linux--PART 1.md rename to published/201410/20140813 Setup Flexible Disk Storage with Logical Volume Management (LVM) in Linux--PART 1.md diff --git a/published/20140815 How to manage a WiFi connection from the command line.md b/published/201410/20140815 How to manage a WiFi connection from the command line.md similarity index 100% rename from published/20140815 How to manage a WiFi connection from the command line.md rename to published/201410/20140815 How to manage a WiFi connection from the command line.md diff --git a/published/20140818 Can Ubuntu Do This--Answers to The 4 Questions New Users Ask Most.md b/published/201410/20140818 Can Ubuntu Do This--Answers to The 4 Questions New Users Ask Most.md similarity index 100% rename from published/20140818 Can Ubuntu Do This--Answers to The 4 Questions New Users Ask Most.md rename to published/201410/20140818 Can Ubuntu Do This--Answers to The 4 Questions New Users Ask Most.md diff --git a/published/20140818 Disable reboot using Ctrl-Alt-Del Keys in RHEL or CentOS.md b/published/201410/20140818 Disable reboot using Ctrl-Alt-Del Keys in RHEL or CentOS.md similarity index 100% rename from published/20140818 Disable reboot using Ctrl-Alt-Del Keys in RHEL or CentOS.md rename to published/201410/20140818 Disable reboot using Ctrl-Alt-Del Keys in RHEL or CentOS.md diff --git a/published/20140818 How to configure Access Control Lists (ACLs) on Linux.md b/published/201410/20140818 How to configure Access Control Lists (ACLs) on Linux.md similarity index 100% rename from published/20140818 How to configure Access Control Lists (ACLs) on Linux.md rename to published/201410/20140818 How to configure Access Control Lists (ACLs) on Linux.md diff --git a/published/20140818 Linux FAQs with Answers--How to fix 'X11 forwarding request failed on channel 0'.md b/published/201410/20140818 Linux FAQs with Answers--How to fix 'X11 forwarding request failed on channel 0'.md similarity index 100% rename from published/20140818 Linux FAQs with Answers--How to fix 'X11 forwarding request failed on channel 0'.md rename to published/201410/20140818 Linux FAQs with Answers--How to fix 'X11 forwarding request failed on channel 0'.md diff --git a/published/20140819 How to Encrypt Email in Linux.md b/published/201410/20140819 How to Encrypt Email in Linux.md similarity index 100% rename from published/20140819 How to Encrypt Email in Linux.md rename to published/201410/20140819 How to Encrypt Email in Linux.md diff --git a/published/20140822 15 Practical Examples of 'echo' command in Linux.md b/published/201410/20140822 15 Practical Examples of 'echo' command in Linux.md similarity index 100% rename from published/20140822 15 Practical Examples of 'echo' command in Linux.md rename to published/201410/20140822 15 Practical Examples of 'echo' command in Linux.md diff --git a/published/20140822 Want To Start An Open Source Project--Here's How.md b/published/201410/20140822 Want To Start An Open Source Project--Here's How.md similarity index 100% rename from published/20140822 Want To Start An Open Source Project--Here's How.md rename to published/201410/20140822 Want To Start An Open Source Project--Here's How.md diff --git a/published/20140825 Linux FAQs with Answers--How to install Shutter on CentOS.md b/published/201410/20140825 Linux FAQs with Answers--How to install Shutter on CentOS.md similarity index 100% rename from published/20140825 Linux FAQs with Answers--How to install Shutter on CentOS.md rename to published/201410/20140825 Linux FAQs with Answers--How to install Shutter on CentOS.md diff --git a/published/20140825 Linux FAQs with Answers--How to show a MAC learning table of Linux bridge.md b/published/201410/20140825 Linux FAQs with Answers--How to show a MAC learning table of Linux bridge.md similarity index 100% rename from published/20140825 Linux FAQs with Answers--How to show a MAC learning table of Linux bridge.md rename to published/201410/20140825 Linux FAQs with Answers--How to show a MAC learning table of Linux bridge.md diff --git a/published/20140826 Linus Torvalds Promotes Linux for Desktops, Embedded Computing.md b/published/201410/20140826 Linus Torvalds Promotes Linux for Desktops, Embedded Computing.md similarity index 100% rename from published/20140826 Linus Torvalds Promotes Linux for Desktops, Embedded Computing.md rename to published/201410/20140826 Linus Torvalds Promotes Linux for Desktops, Embedded Computing.md diff --git a/published/20140829 6 Interesting Funny Commands of Linux (Fun in Terminal) – Part II.md b/published/201410/20140829 6 Interesting Funny Commands of Linux (Fun in Terminal) – Part II.md similarity index 100% rename from published/20140829 6 Interesting Funny Commands of Linux (Fun in Terminal) – Part II.md rename to published/201410/20140829 6 Interesting Funny Commands of Linux (Fun in Terminal) – Part II.md diff --git a/published/20140829 Fun in Linux Terminal--Play with Word and Character Counts.md b/published/201410/20140829 Fun in Linux Terminal--Play with Word and Character Counts.md similarity index 100% rename from published/20140829 Fun in Linux Terminal--Play with Word and Character Counts.md rename to published/201410/20140829 Fun in Linux Terminal--Play with Word and Character Counts.md diff --git a/published/20140902 Mount Google drive in Ubuntu 14.04 LTS.md b/published/201410/20140902 Mount Google drive in Ubuntu 14.04 LTS.md similarity index 100% rename from published/20140902 Mount Google drive in Ubuntu 14.04 LTS.md rename to published/201410/20140902 Mount Google drive in Ubuntu 14.04 LTS.md diff --git a/published/20140902 Photo Editing on Linux with Krita.md b/published/201410/20140902 Photo Editing on Linux with Krita.md similarity index 100% rename from published/20140902 Photo Editing on Linux with Krita.md rename to published/201410/20140902 Photo Editing on Linux with Krita.md diff --git a/published/20140904 Making MySQL Better at GitHub.md b/published/201410/20140904 Making MySQL Better at GitHub.md similarity index 100% rename from published/20140904 Making MySQL Better at GitHub.md rename to published/201410/20140904 Making MySQL Better at GitHub.md diff --git a/published/20140904 Use LaTeX In Ubuntu 14.04 and Linux Mint 17 With Texmaker.md b/published/201410/20140904 Use LaTeX In Ubuntu 14.04 and Linux Mint 17 With Texmaker.md similarity index 100% rename from published/20140904 Use LaTeX In Ubuntu 14.04 and Linux Mint 17 With Texmaker.md rename to published/201410/20140904 Use LaTeX In Ubuntu 14.04 and Linux Mint 17 With Texmaker.md diff --git a/published/20140910 How To Recover Default Openbox Config Files On Crunchbang.md b/published/201410/20140910 How To Recover Default Openbox Config Files On Crunchbang.md similarity index 100% rename from published/20140910 How To Recover Default Openbox Config Files On Crunchbang.md rename to published/201410/20140910 How To Recover Default Openbox Config Files On Crunchbang.md diff --git a/published/20140910 How to download GOG games from the command line on Linux.md b/published/201410/20140910 How to download GOG games from the command line on Linux.md similarity index 100% rename from published/20140910 How to download GOG games from the command line on Linux.md rename to published/201410/20140910 How to download GOG games from the command line on Linux.md diff --git a/published/20140910 How to set up Nagios Remote Plugin Executor (NRPE) in Linux.md b/published/201410/20140910 How to set up Nagios Remote Plugin Executor (NRPE) in Linux.md similarity index 100% rename from published/20140910 How to set up Nagios Remote Plugin Executor (NRPE) in Linux.md rename to published/201410/20140910 How to set up Nagios Remote Plugin Executor (NRPE) in Linux.md diff --git a/published/20140915 Linux FAQs with Answers--How to capture TCP SYN, ACK and FIN packets with tcpdump.md b/published/201410/20140915 Linux FAQs with Answers--How to capture TCP SYN, ACK and FIN packets with tcpdump.md similarity index 100% rename from published/20140915 Linux FAQs with Answers--How to capture TCP SYN, ACK and FIN packets with tcpdump.md rename to published/201410/20140915 Linux FAQs with Answers--How to capture TCP SYN, ACK and FIN packets with tcpdump.md diff --git a/published/20140915 Linux FAQs with Answers--How to change hostname on CentOS or RHEL 7.md b/published/201410/20140915 Linux FAQs with Answers--How to change hostname on CentOS or RHEL 7.md similarity index 100% rename from published/20140915 Linux FAQs with Answers--How to change hostname on CentOS or RHEL 7.md rename to published/201410/20140915 Linux FAQs with Answers--How to change hostname on CentOS or RHEL 7.md diff --git a/published/20140915 Linux FAQs with Answers--How to create a new Amazon AWS access key.md b/published/201410/20140915 Linux FAQs with Answers--How to create a new Amazon AWS access key.md similarity index 100% rename from published/20140915 Linux FAQs with Answers--How to create a new Amazon AWS access key.md rename to published/201410/20140915 Linux FAQs with Answers--How to create a new Amazon AWS access key.md diff --git a/published/20140915 Linux FAQs with Answers--How to expand an XFS file system.md b/published/201410/20140915 Linux FAQs with Answers--How to expand an XFS file system.md similarity index 100% rename from published/20140915 Linux FAQs with Answers--How to expand an XFS file system.md rename to published/201410/20140915 Linux FAQs with Answers--How to expand an XFS file system.md diff --git a/published/20140915 Linux FAQs with Answers--How to remove PPA repository from command line on Ubuntu.md b/published/201410/20140915 Linux FAQs with Answers--How to remove PPA repository from command line on Ubuntu.md similarity index 100% rename from published/20140915 Linux FAQs with Answers--How to remove PPA repository from command line on Ubuntu.md rename to published/201410/20140915 Linux FAQs with Answers--How to remove PPA repository from command line on Ubuntu.md diff --git a/published/20140919 Linux FAQs with Answers--How to create a MySQL database from the command line.md b/published/201410/20140919 Linux FAQs with Answers--How to create a MySQL database from the command line.md similarity index 100% rename from published/20140919 Linux FAQs with Answers--How to create a MySQL database from the command line.md rename to published/201410/20140919 Linux FAQs with Answers--How to create a MySQL database from the command line.md diff --git a/published/20140922 How to Run Android Apps on Ubuntu using ARChon.md b/published/201410/20140922 How to Run Android Apps on Ubuntu using ARChon.md similarity index 100% rename from published/20140922 How to Run Android Apps on Ubuntu using ARChon.md rename to published/201410/20140922 How to Run Android Apps on Ubuntu using ARChon.md diff --git a/published/20140922 How to use logrotate to manage log files in Linux.md b/published/201410/20140922 How to use logrotate to manage log files in Linux.md similarity index 100% rename from published/20140922 How to use logrotate to manage log files in Linux.md rename to published/201410/20140922 How to use logrotate to manage log files in Linux.md diff --git a/published/20140922 Reset Unity and Compiz Settings in Ubuntu 14.04.md b/published/201410/20140922 Reset Unity and Compiz Settings in Ubuntu 14.04.md similarity index 100% rename from published/20140922 Reset Unity and Compiz Settings in Ubuntu 14.04.md rename to published/201410/20140922 Reset Unity and Compiz Settings in Ubuntu 14.04.md diff --git a/published/20140924 How To Install Vmware 10 On CentOS 7.md b/published/201410/20140924 How To Install Vmware 10 On CentOS 7.md similarity index 100% rename from published/20140924 How To Install Vmware 10 On CentOS 7.md rename to published/201410/20140924 How To Install Vmware 10 On CentOS 7.md diff --git a/published/20140924 How to delete recently opened files history in ubuntu 14.04.md b/published/201410/20140924 How to delete recently opened files history in ubuntu 14.04.md similarity index 100% rename from published/20140924 How to delete recently opened files history in ubuntu 14.04.md rename to published/201410/20140924 How to delete recently opened files history in ubuntu 14.04.md diff --git a/published/20140924 How to use CloudFlare as a ddclient provider under Ubuntu.md b/published/201410/20140924 How to use CloudFlare as a ddclient provider under Ubuntu.md similarity index 100% rename from published/20140924 How to use CloudFlare as a ddclient provider under Ubuntu.md rename to published/201410/20140924 How to use CloudFlare as a ddclient provider under Ubuntu.md diff --git a/published/20140924 Unix----stat -- more than ls.md b/published/201410/20140924 Unix----stat -- more than ls.md similarity index 100% rename from published/20140924 Unix----stat -- more than ls.md rename to published/201410/20140924 Unix----stat -- more than ls.md diff --git a/published/20140925 Linux FAQs with Answers--How to catch and handle a signal in Perl.md b/published/201410/20140925 Linux FAQs with Answers--How to catch and handle a signal in Perl.md similarity index 100% rename from published/20140925 Linux FAQs with Answers--How to catch and handle a signal in Perl.md rename to published/201410/20140925 Linux FAQs with Answers--How to catch and handle a signal in Perl.md diff --git a/published/20140925 Linux FAQs with Answers--How to change a network interface name on CentOS 7.md b/published/201410/20140925 Linux FAQs with Answers--How to change a network interface name on CentOS 7.md similarity index 100% rename from published/20140925 Linux FAQs with Answers--How to change a network interface name on CentOS 7.md rename to published/201410/20140925 Linux FAQs with Answers--How to change a network interface name on CentOS 7.md diff --git a/published/20140925 Linux FAQs with Answers--How to configure a static IP address on CentOS 7.md b/published/201410/20140925 Linux FAQs with Answers--How to configure a static IP address on CentOS 7.md similarity index 100% rename from published/20140925 Linux FAQs with Answers--How to configure a static IP address on CentOS 7.md rename to published/201410/20140925 Linux FAQs with Answers--How to configure a static IP address on CentOS 7.md diff --git a/published/20140925 Linux FAQs with Answers--How to detect a Linux distribution in Perl.md b/published/201410/20140925 Linux FAQs with Answers--How to detect a Linux distribution in Perl.md similarity index 100% rename from published/20140925 Linux FAQs with Answers--How to detect a Linux distribution in Perl.md rename to published/201410/20140925 Linux FAQs with Answers--How to detect a Linux distribution in Perl.md diff --git a/published/20140925 Linux FAQs with Answers--How to embed all fonts in a PDF document generated with LaTex.md b/published/201410/20140925 Linux FAQs with Answers--How to embed all fonts in a PDF document generated with LaTex.md similarity index 100% rename from published/20140925 Linux FAQs with Answers--How to embed all fonts in a PDF document generated with LaTex.md rename to published/201410/20140925 Linux FAQs with Answers--How to embed all fonts in a PDF document generated with LaTex.md diff --git a/published/20140926 How To Reset Root Password On CentOS 7.md b/published/201410/20140926 How To Reset Root Password On CentOS 7.md similarity index 100% rename from published/20140926 How To Reset Root Password On CentOS 7.md rename to published/201410/20140926 How To Reset Root Password On CentOS 7.md diff --git a/published/20140928 How to Use Systemd Timers.md b/published/201410/20140928 How to Use Systemd Timers.md similarity index 100% rename from published/20140928 How to Use Systemd Timers.md rename to published/201410/20140928 How to Use Systemd Timers.md diff --git a/published/20140928 Oracle Linux 5.11 Features Updated Unbreakable Linux Kernel.md b/published/201410/20140928 Oracle Linux 5.11 Features Updated Unbreakable Linux Kernel.md similarity index 100% rename from published/20140928 Oracle Linux 5.11 Features Updated Unbreakable Linux Kernel.md rename to published/201410/20140928 Oracle Linux 5.11 Features Updated Unbreakable Linux Kernel.md diff --git a/published/20140929 Git Rebase Tutorial--Going Back in Time with Git Rebase.md b/published/201410/20140929 Git Rebase Tutorial--Going Back in Time with Git Rebase.md similarity index 100% rename from published/20140929 Git Rebase Tutorial--Going Back in Time with Git Rebase.md rename to published/201410/20140929 Git Rebase Tutorial--Going Back in Time with Git Rebase.md diff --git a/published/20140929 Learning Vim in 2014--Working with Files.md b/published/201410/20140929 Learning Vim in 2014--Working with Files.md similarity index 100% rename from published/20140929 Learning Vim in 2014--Working with Files.md rename to published/201410/20140929 Learning Vim in 2014--Working with Files.md diff --git a/published/20140929 Using GIT to backup your website files on linux.md b/published/201410/20140929 Using GIT to backup your website files on linux.md similarity index 100% rename from published/20140929 Using GIT to backup your website files on linux.md rename to published/201410/20140929 Using GIT to backup your website files on linux.md diff --git a/published/20140930 Check If Your Linux System Is Vulnerable To Shellshock And Fix It.md b/published/201410/20140930 Check If Your Linux System Is Vulnerable To Shellshock And Fix It.md similarity index 100% rename from published/20140930 Check If Your Linux System Is Vulnerable To Shellshock And Fix It.md rename to published/201410/20140930 Check If Your Linux System Is Vulnerable To Shellshock And Fix It.md diff --git a/published/20140930 How to Boot Linux ISO Images Directly From Your Hard Drive.md b/published/201410/20140930 How to Boot Linux ISO Images Directly From Your Hard Drive.md similarity index 100% rename from published/20140930 How to Boot Linux ISO Images Directly From Your Hard Drive.md rename to published/201410/20140930 How to Boot Linux ISO Images Directly From Your Hard Drive.md diff --git a/published/20141008 Adobe Pulls Linux PDF Reader Downloads From Website.md b/published/201410/20141008 Adobe Pulls Linux PDF Reader Downloads From Website.md similarity index 100% rename from published/20141008 Adobe Pulls Linux PDF Reader Downloads From Website.md rename to published/201410/20141008 Adobe Pulls Linux PDF Reader Downloads From Website.md diff --git a/published/20141008 Linux Calendar App California 0.2 Released.md b/published/201410/20141008 Linux Calendar App California 0.2 Released.md similarity index 100% rename from published/20141008 Linux Calendar App California 0.2 Released.md rename to published/201410/20141008 Linux Calendar App California 0.2 Released.md diff --git a/published/20141008 Linux Kernel 3.17 Is Out With Plenty of New Features.md b/published/201410/20141008 Linux Kernel 3.17 Is Out With Plenty of New Features.md similarity index 100% rename from published/20141008 Linux Kernel 3.17 Is Out With Plenty of New Features.md rename to published/201410/20141008 Linux Kernel 3.17 Is Out With Plenty of New Features.md diff --git a/published/20141009 Linux Terminal--An lsof Primer.md b/published/201410/20141009 Linux Terminal--An lsof Primer.md similarity index 100% rename from published/20141009 Linux Terminal--An lsof Primer.md rename to published/201410/20141009 Linux Terminal--An lsof Primer.md diff --git a/published/20141009 Linux or UNIX wget command with practical examples.md b/published/201410/20141009 Linux or UNIX wget command with practical examples.md similarity index 100% rename from published/20141009 Linux or UNIX wget command with practical examples.md rename to published/201410/20141009 Linux or UNIX wget command with practical examples.md diff --git a/published/20141013 UbuTricks 14.10.08.md b/published/201410/20141013 UbuTricks 14.10.08.md similarity index 100% rename from published/20141013 UbuTricks 14.10.08.md rename to published/201410/20141013 UbuTricks 14.10.08.md diff --git a/published/20141013 Ubuntu's Unity Turns 4 Happy Birthday.md b/published/201410/20141013 Ubuntu's Unity Turns 4 Happy Birthday.md similarity index 100% rename from published/20141013 Ubuntu's Unity Turns 4 Happy Birthday.md rename to published/201410/20141013 Ubuntu's Unity Turns 4 Happy Birthday.md diff --git a/published/20141013 What is good reference management software on Linux.md b/published/201410/20141013 What is good reference management software on Linux.md similarity index 100% rename from published/20141013 What is good reference management software on Linux.md rename to published/201410/20141013 What is good reference management software on Linux.md diff --git a/published/20141014 Linux FAQs with Answers--How to burn an ISO or NRG image to a DVD from the command line on Linux.md b/published/201410/20141014 Linux FAQs with Answers--How to burn an ISO or NRG image to a DVD from the command line on Linux.md similarity index 100% rename from published/20141014 Linux FAQs with Answers--How to burn an ISO or NRG image to a DVD from the command line on Linux.md rename to published/201410/20141014 Linux FAQs with Answers--How to burn an ISO or NRG image to a DVD from the command line on Linux.md diff --git a/published/20141014 Linux FAQs with Answers--How to detect DVD writer' s device name and its writing speed from the command line on Linux.md b/published/201410/20141014 Linux FAQs with Answers--How to detect DVD writer' s device name and its writing speed from the command line on Linux.md similarity index 100% rename from published/20141014 Linux FAQs with Answers--How to detect DVD writer' s device name and its writing speed from the command line on Linux.md rename to published/201410/20141014 Linux FAQs with Answers--How to detect DVD writer' s device name and its writing speed from the command line on Linux.md diff --git a/published/20141014 Linux FAQs with Answers--How to detect and patch Shellshock vulnerability in bash.md b/published/201410/20141014 Linux FAQs with Answers--How to detect and patch Shellshock vulnerability in bash.md similarity index 100% rename from published/20141014 Linux FAQs with Answers--How to detect and patch Shellshock vulnerability in bash.md rename to published/201410/20141014 Linux FAQs with Answers--How to detect and patch Shellshock vulnerability in bash.md diff --git a/published/20141017 Linus Torvalds Regrets Alienating Developers with Strong Language.md b/published/201410/20141017 Linus Torvalds Regrets Alienating Developers with Strong Language.md similarity index 100% rename from published/20141017 Linus Torvalds Regrets Alienating Developers with Strong Language.md rename to published/201410/20141017 Linus Torvalds Regrets Alienating Developers with Strong Language.md diff --git a/published/20141017 Linux FAQs with Answers--How to create a video DVD on Linux desktop.md b/published/201410/20141017 Linux FAQs with Answers--How to create a video DVD on Linux desktop.md similarity index 100% rename from published/20141017 Linux FAQs with Answers--How to create a video DVD on Linux desktop.md rename to published/201410/20141017 Linux FAQs with Answers--How to create a video DVD on Linux desktop.md diff --git a/published/20141017 Munich sheds light on the cost of dropping Linux and returning to Windows.md b/published/201410/20141017 Munich sheds light on the cost of dropping Linux and returning to Windows.md similarity index 100% rename from published/20141017 Munich sheds light on the cost of dropping Linux and returning to Windows.md rename to published/201410/20141017 Munich sheds light on the cost of dropping Linux and returning to Windows.md diff --git a/published/20141021 Debian 7.7 Is Out with Security Fixes.md b/published/201410/20141021 Debian 7.7 Is Out with Security Fixes.md similarity index 100% rename from published/20141021 Debian 7.7 Is Out with Security Fixes.md rename to published/201410/20141021 Debian 7.7 Is Out with Security Fixes.md diff --git a/published/20141021 Nifty Free Image Viewers.md b/published/201410/20141021 Nifty Free Image Viewers.md similarity index 100% rename from published/20141021 Nifty Free Image Viewers.md rename to published/201410/20141021 Nifty Free Image Viewers.md diff --git a/published/20141023 Claws Mail 3.11.0 Brings a Ton of Changes and Fixes for POODLE Exploit.md b/published/201410/20141023 Claws Mail 3.11.0 Brings a Ton of Changes and Fixes for POODLE Exploit.md similarity index 100% rename from published/20141023 Claws Mail 3.11.0 Brings a Ton of Changes and Fixes for POODLE Exploit.md rename to published/201410/20141023 Claws Mail 3.11.0 Brings a Ton of Changes and Fixes for POODLE Exploit.md diff --git a/published/How to Achieve Better Security With Proper Management of Open Source.md b/published/201410/How to Achieve Better Security With Proper Management of Open Source.md similarity index 100% rename from published/How to Achieve Better Security With Proper Management of Open Source.md rename to published/201410/How to Achieve Better Security With Proper Management of Open Source.md diff --git a/published/How to configure SNMPv3 on ubuntu 14.04 server.md b/published/201410/How to configure SNMPv3 on ubuntu 14.04 server.md similarity index 100% rename from published/How to configure SNMPv3 on ubuntu 14.04 server.md rename to published/201410/How to configure SNMPv3 on ubuntu 14.04 server.md diff --git a/published/Linux FAQs with Answers--How to build a RPM or DEB package from the source with CheckInstall.md b/published/201410/Linux FAQs with Answers--How to build a RPM or DEB package from the source with CheckInstall.md similarity index 100% rename from published/Linux FAQs with Answers--How to build a RPM or DEB package from the source with CheckInstall.md rename to published/201410/Linux FAQs with Answers--How to build a RPM or DEB package from the source with CheckInstall.md diff --git a/published/Linux Performance Monitoring with Vmstat and Iostat Commands.md b/published/201410/Linux Performance Monitoring with Vmstat and Iostat Commands.md similarity index 100% rename from published/Linux Performance Monitoring with Vmstat and Iostat Commands.md rename to published/201410/Linux Performance Monitoring with Vmstat and Iostat Commands.md diff --git a/published/Sysstat – All-in-One System Performance and Usage Activity Monitoring Tool For Linux.md b/published/201410/Sysstat – All-in-One System Performance and Usage Activity Monitoring Tool For Linux.md similarity index 100% rename from published/Sysstat – All-in-One System Performance and Usage Activity Monitoring Tool For Linux.md rename to published/201410/Sysstat – All-in-One System Performance and Usage Activity Monitoring Tool For Linux.md diff --git a/published/Wine 1.7.29 (Development Version) Released – Install in RedHat and Debian Based Systems.md b/published/201410/Wine 1.7.29 (Development Version) Released – Install in RedHat and Debian Based Systems.md similarity index 100% rename from published/Wine 1.7.29 (Development Version) Released – Install in RedHat and Debian Based Systems.md rename to published/201410/Wine 1.7.29 (Development Version) Released – Install in RedHat and Debian Based Systems.md From 3d3e7d432cb6d2e58545228c2ecfddb3be5a1fb3 Mon Sep 17 00:00:00 2001 From: wxy Date: Sat, 1 Nov 2014 21:03:57 +0800 Subject: [PATCH 095/108] PUB:20140812 How to set up a USB network printer and scanner server on Debian @GOLinux --- ...rk printer and scanner server on Debian.md | 60 ++++++++++--------- 1 file changed, 31 insertions(+), 29 deletions(-) rename {translated/tech => published}/20140812 How to set up a USB network printer and scanner server on Debian.md (79%) diff --git a/translated/tech/20140812 How to set up a USB network printer and scanner server on Debian.md b/published/20140812 How to set up a USB network printer and scanner server on Debian.md similarity index 79% rename from translated/tech/20140812 How to set up a USB network printer and scanner server on Debian.md rename to published/20140812 How to set up a USB network printer and scanner server on Debian.md index 20d69fb363..3783deed01 100644 --- a/translated/tech/20140812 How to set up a USB network printer and scanner server on Debian.md +++ b/published/20140812 How to set up a USB network printer and scanner server on Debian.md @@ -25,33 +25,35 @@ 然后,编辑原始文件(下面只显示了最为有关联的部分): - **Listen**:监听指定的地址和端口,或者域套接口路径。 -- **Location /path**:为命名的位置指定访问控制。 +- **Location /path**:为该名字所代表的位置指定访问控制。 - **Order**:指定HTTP访问控制顺序(allow,deny或deny,allow)。Order allow,deny是说允许规则先于(并且优先处理)拒绝规则。 - **DefaultAuthType** (也可以用**AuthType**): 指定默认使用的认证类型。Basic是指使用/etc/passwd文件来认证CUPS中的用户。 -- **DefaultEncryption**:指定认证请求说使用的加密类型。 +- **DefaultEncryption**:指定认证请求所使用的加密类型。 - **WebInterface**:指定是否启用网页接口。 - # Listen for connections from the local machine - Listen 192.168.0.15:631 +--- + + # Listen for connections from the local machine + Listen 192.168.0.15:631 - # Restrict access to the server - - Order allow,deny - Allo 192.168.0.0/24 - + # Restrict access to the server + + Order allow,deny + Allow 192.168.0.0/24 + - # Default authentication type, when authentication is required - DefaultAuthType Basic - DefaultEncryption IfRequested + # Default authentication type, when authentication is required + DefaultAuthType Basic + DefaultEncryption IfRequested - # Web interface setting - WebInterface Yes + # Web interface setting + WebInterface Yes - # Restrict access to the admin pages - - Order allow,deny - Allow 192.168.0.0/24 - + # Restrict access to the admin pages + + Order allow,deny + Allow 192.168.0.0/24 + 现在,让我们重启CUPS来应用修改: @@ -66,27 +68,27 @@ ### 通过网页接口配置网络打印机 ### -1. 启动网页浏览器,并打开CUPS接口http://:Port,这里在我们的例子中是http://192.168.0.15:631: +1、 启动网页浏览器,并打开CUPS接口http://:Port,这里在我们的例子中是http://192.168.0.15:631: ![](https://farm4.staticflickr.com/3878/14889544591_284015bcb5_z.jpg) -2. 转到**管理**标签,然后点击*添加打印机*: +2、 转到**管理**标签,然后点击*添加打印机*: ![](https://farm4.staticflickr.com/3910/14705919940_fe0a08a8f7_o.png) -3. 选择你的打印机;在本例中,**EPSON Stylus CX3900 @ debian (Inkjet Inkjet Printer)**,然后点击**继续**: +3、 选择你的打印机;在本例中,**EPSON Stylus CX3900 @ debian (Inkjet Inkjet Printer)**,然后点击**继续**: ![](https://farm6.staticflickr.com/5567/14706059067_233fcf9791_z.jpg) -4. 是时候为打印机取个名字,并指定我们是否想要从当前工作站共享它: +4、 是时候为打印机取个名字,并指定我们是否想要从当前工作站共享它: ![](https://farm6.staticflickr.com/5570/14705957499_67ea16d941_z.jpg) -5. 安装驱动——选择品牌并点击**继续**。 +5、 安装驱动——选择品牌并点击**继续**。 ![](https://farm6.staticflickr.com/5579/14889544531_77f9f1258c_o.png) -6. 如果打印机如果不被CUPS支持(没有在下一页中列出来),我们必须从生产厂家的网站上下载驱动(如[http://download.ebz.epson.net/dsc/search/01/search/?OSC=LX][2]),安装完后回到该页。 +6、 如果打印机如果不被CUPS支持(没有在下一页中列出来),我们必须从生产厂家的网站上下载驱动(如[http://download.ebz.epson.net/dsc/search/01/search/?OSC=LX][2]),安装完后回到该页。 ![](https://farm4.staticflickr.com/3896/14706058997_e2a2214338_z.jpg) @@ -94,11 +96,11 @@ ![](https://farm4.staticflickr.com/3837/14706058977_e494433068_o.png) -7. 注意,预编译的.deb文件必须从我们使用的机器上发送(例如,通过sftp或scp)到打印服务器(当然,如果我们有一个直接的下载链接就更加简单了,而不用下载按钮了): +7、 注意,预编译的.deb文件必须从我们使用的机器上发送(例如,通过sftp或scp)到打印服务器(当然,如果我们有一个直接的下载链接就更加简单了,而不用下载按钮了): ![](https://farm6.staticflickr.com/5581/14706000878_f202497d0a_z.jpg) -8. 在将.deb文件放到服务器上后,我们就可以安装了: +8、 在将.deb文件放到服务器上后,我们就可以安装了: # dpkg -i epson-inkjet-printer-escpr_1.4.1-1lsb3.2_i386.deb @@ -111,7 +113,7 @@ # aptitude install lsb # dpkg -i epson-inkjet-printer-escpr_1.4.1-1lsb3.2_i386.deb -9. 现在,我们可以返回到第五步并安装打印机: +9、 现在,我们可以返回到第五步并安装打印机: ![](https://farm6.staticflickr.com/5569/14705957349_3acdc26f91_z.jpg) @@ -161,7 +163,7 @@ via: http://xmodulo.com/2014/08/usb-network-printer-and-scanner-server-debian.ht 作者:[Gabriel Cánepa][a] 译者:[GOLinux](https://github.com/GOLinux) -校对:[校对者ID](https://github.com/校对者ID) +校对:[wxy](https://github.com/wxy) 本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 From face865b70ef17d27afe7fd5796e1d362dec34dd Mon Sep 17 00:00:00 2001 From: wxy Date: Sat, 1 Nov 2014 23:02:01 +0800 Subject: [PATCH 096/108] PUB:20140821 How to configure a network printer and scanner on Ubuntu desktop @disylee --- ...twork printer and scanner on Ubuntu desktop.md | 32 +++++-------------- 1 file changed, 8 insertions(+), 24 deletions(-) rename translated/tech/[翻译完成]20140821 How to configure a network printer and scanner on Ubuntu desktop.md => published/20140821 How to configure a network printer and scanner on Ubuntu desktop.md (92%) diff --git a/translated/tech/[翻译完成]20140821 How to configure a network printer and scanner on Ubuntu desktop.md b/published/20140821 How to configure a network printer and scanner on Ubuntu desktop.md similarity index 92% rename from translated/tech/[翻译完成]20140821 How to configure a network printer and scanner on Ubuntu desktop.md rename to published/20140821 How to configure a network printer and scanner on Ubuntu desktop.md index c4218936dd..d405588726 100644 --- a/translated/tech/[翻译完成]20140821 How to configure a network printer and scanner on Ubuntu desktop.md +++ b/published/20140821 How to configure a network printer and scanner on Ubuntu desktop.md @@ -2,8 +2,7 @@ 如何在ubuntu桌面配置一个网络打印机和扫描仪 ================================================================================ - -在[之前的文章中](注:这篇文章在2014年8月12号的原文里做过,不知道翻译了没有,如果翻译发布了,发布此文章的时候可改成翻译后的链接), 我们讨论过如何在Linux服务器安装各种各样的打印机(当然也包括网络扫描仪)。今天我们将来处理另一端:如何通过桌面客户端来访问网络打印机/扫描仪。 +在[之前的文章中][1], 我们讨论过如何在Linux服务器安装各种各样的打印机(当然也包括网络扫描仪)。今天我们将来处理另一端:如何通过桌面客户端来访问网络打印机/扫描仪。 ### 网络环境 ### @@ -31,49 +30,39 @@ ![](https://farm4.staticflickr.com/3903/14777969919_7b7b25a4a4_z.jpg) - - ### 在Ubuntu桌面安装网络打印机 ### - 在我们的Ubuntu 12.04的客户端,我们将打开"Printing"菜单(Dash -> Printing).你会注意到在其它发行版中,这个名字也许会有一点差别(例如会叫做"Printers" 或者 "Print & Fax"): ![](https://farm4.staticflickr.com/3837/14964314992_d8bd0c0d04_o.png) - 还没有打印机添加到我们的客户端: ![](https://farm4.staticflickr.com/3887/14941655516_80430529b5_o.png) 下面是在Ubuntu桌面客户端安装一台网络打印机的一些步骤。 - -**1)** “Add”按钮将弹出New Printer" 菜单。我们将选择"Network printer" -> "Find Network Printer"并输入我们服务器的IP地址,接着点击"Find": +**1)** “Add”按钮将弹出 "New Printer" 菜单。我们将选择"Network printer" -> "Find Network Printer"并输入我们服务器的IP地址,接着点击"Find": ![](https://farm6.staticflickr.com/5581/14777977730_74c29a99b2_z.jpg) - **2)** 在最下面我们将会看到可使用的打印机的名称。我们来选择这台三星打印机并按"Forward": ![](https://farm6.staticflickr.com/5585/14941655566_c1539a3ea0.jpg) - **3)** 我们将会被要求填写一些关于我们打印机的信息。当我们输入完成时,将点击 "Apply"按钮。 ![](https://farm4.staticflickr.com/3908/14941655526_0982628fc9_z.jpg) - **4)** 我们接下来将被询问是否打印一张测试页。让我们点击"Print test page"吧: ![](https://farm4.staticflickr.com/3853/14964651435_cc83bb35aa.jpg) - 这个打印任务将被创建为本地id 2: ![](https://farm6.staticflickr.com/5562/14777977760_b01c5338f2.jpg) - 5)适用我们服务器上的CUPS网络借口,我们可以观察到打印任务已经提交成功了(打印机 -> SamsungML1640系列 -> 显示完成任务): ![](https://farm4.staticflickr.com/3887/14778110127_359009cbbc_z.jpg) @@ -91,7 +80,6 @@ 这个page_log日志显示每一页被打印过的信息,只包括哪些用户发送这些打印任务,打印日期&时间,以及客户端的IPv4地址。 - 要安装Epson喷墨和PDF打印机,我们只需重复第1-5的步骤即可,并每一次选择左边的打印队列。例如,在下图中选择PDF打印机: ![](https://farm4.staticflickr.com/3926/14778046648_c094c8422c_o.png) @@ -112,17 +100,12 @@ #### 实例 #1 #### - - 从Ubuntu12.04中打印,通常在本地用gacanepa(具有相同名字存在打印机服务器上)。 ![](https://farm4.staticflickr.com/3845/14778046698_57b6e552f3_z.jpg) - 打印到PDF打印机之后,让我们来检查打印机服务器上的/home/gacanepa/PDF目录下的内容: - - root@debian:~# ls -l /home/gacanepa/PDF ---------- @@ -133,7 +116,6 @@ -rw------- 1 gacanepa gacanepa 74911 Aug 18 14:36 Welcome_to_Conference_-_Thomas_S__Monson.pdf - 这个PDF文件被创建时的,权限已经设置为600(-rw-------),这意味着只有打印任务的所有者(在这个例子中是gacanepa )可以访问它们。我们可以通过修改the /etc/cups/cups-pdf.conf文件**UserUMask**变量的值来改变这种行为。例如,0033的umask值将可以使PDF打印者以及其它所有者拥有创建文件的权限,但是只读权限也会赋予给其它所有者。 root@debian:~# grep -i UserUMask /etc/cups/cups-pdf.conf @@ -190,7 +172,8 @@ **2)** 现在我们需要启用saned进程,用来预装Ubuntu桌面。要启用它,我们需要编辑/etc/default/saned文件,并设置RUN变量为yes: - $ sudo vim /etc/default/saned + + $ sudo vim /etc/default/saned ---------- @@ -205,7 +188,8 @@ **4)** 重启saned进程: - $ sudo service saned restart + + $ sudo service saned restart @@ -235,11 +219,11 @@ via: http://xmodulo.com/2014/08/configure-network-printer-scanner-ubuntu-desktop 作者:[Gabriel Cánepa][a] 译者:[disylee](https://github.com/disylee) -校对:[校对者ID](https://github.com/校对者ID) +校对:[wxy](https://github.com/wxy) 本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 [a]:http://xmodulo.com/author/gabriel -[1]:http://xmodulo.com/2014/08/usb-network-printer-and-scanner-server-debian.html +[1]:http://linux.cn/article-4139-1.html [2]:http://www.cups-pdf.de/documentation.shtml [3]:http://xmodulo.com/2014/08/usb-network-printer-and-scanner-server-debian.html#scanner From 2d3b17c4b6d5ccdc79c521a4664b455772641523 Mon Sep 17 00:00:00 2001 From: wxy Date: Sat, 1 Nov 2014 23:23:44 +0800 Subject: [PATCH 097/108] PUB:20140910 How to monitor server memory usage with Nagios Remote Plugin Executor (NRPE) @geekpi --- ...sage with Nagios Remote Plugin Executor (NRPE).md | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) rename {translated/tech => published}/20140910 How to monitor server memory usage with Nagios Remote Plugin Executor (NRPE).md (85%) diff --git a/translated/tech/20140910 How to monitor server memory usage with Nagios Remote Plugin Executor (NRPE).md b/published/20140910 How to monitor server memory usage with Nagios Remote Plugin Executor (NRPE).md similarity index 85% rename from translated/tech/20140910 How to monitor server memory usage with Nagios Remote Plugin Executor (NRPE).md rename to published/20140910 How to monitor server memory usage with Nagios Remote Plugin Executor (NRPE).md index d0ace6a56b..f6707b0080 100644 --- a/translated/tech/20140910 How to monitor server memory usage with Nagios Remote Plugin Executor (NRPE).md +++ b/published/20140910 How to monitor server memory usage with Nagios Remote Plugin Executor (NRPE).md @@ -1,8 +1,8 @@ 如何用Nagios远程执行插件(NRPE)来检测服务器内存使用率 ================================================================================ -在[先前的教程中][1]注:此篇文章在同一个更新中,如果也翻译了,发布的时候可修改相应的链接,我们已经见到了如何在Nagios设置中设置Nagios远程执行插件(NRPE)。然而,监控内存使用率的脚本和插件并没有在原生的Nagios中。本篇中,我们会看到如何配置NRPE来监控远程服务器上的内存使用率。 +在[先前的教程中][1],我们已经见到了如何在Nagios设置中设置Nagios远程执行插件(NRPE)。然而,监控内存使用率的脚本和插件并没有在原生的Nagios中。本篇中,我们会看到如何配置NRPE来监控远程服务器上的内存使用率。 -我们要用的监控内存的脚本在[Nagios 市场][2]上,也在创建者的[Github仓库][3]中。 +我们要用的监控内存的脚本在[Nagios 市场][2]上,在创建者的[Github仓库][3]中也可以找到。 假设我们已经安装了NRPE,我们首先在我们想要监控的服务器上下载脚本。 @@ -133,8 +133,8 @@ Nagios应该开始在使用NRPE的远程服务器上检查内存使用率了。 - 确保NRPE的端口在远程主机上是总是允许的。默认NRPE的端口是TCP 5666。 -- 你可以尝试通过执行check_nrpe 命令: /usr/lib/nagios/plugins/check_nrpe -H remote-server 手工检查NRPE操作。 -- 你同样可以尝试运行check_mem 命令:/usr/lib/nagios/plugins/check_nrpe -H remote-server –c check_mem +- 你可以尝试通过执行check\_nrpe 命令: /usr/lib/nagios/plugins/check\_nrpe -H remote-server 手工检查NRPE操作。 +- 你同样可以尝试运行check\_mem 命令:/usr/lib/nagios/plugins/check\_nrpe -H remote-server –c check\_mem - 在远程服务器上,在/etc/nagios/nrpe.cfg中设置debug=1。重启NRPE服务并检查这些日志文件,/var/log/messages (RHEL/CentOS)或者/var/log/syslog (Debain/Ubuntu)。如果有任何的配置或者权限错误,日志中应该包含了相关的信息。如果日志中没有反映出什么,很有可能是由于请求在某些端口上有过滤而没有到达远程服务器上。 总结一下,这边教程描述了我们该如何调试NRPE来监控远程服务器的内存使用率。过程只需要下载脚本、定义命令和重启服务就行了。希望这对你们有帮助。 @@ -145,11 +145,11 @@ via: http://xmodulo.com/2014/09/monitor-server-memory-usage-nagios-remote-plugin 作者:[Sarmed Rahman][a] 译者:[geekpi](https://github.com/geekpi) -校对:[校对者ID](https://github.com/校对者ID) +校对:[wxy](https://github.com/wxy) 本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 [a]:http://xmodulo.com/author/sarmed -[1]:http://xmodulo.com/2014/03/nagios-remote-plugin-executor-nrpe-linux.html +[1]:http://linux.cn/article-4101-1.html [2]:http://exchange.nagios.org/directory/Plugins/Operating-Systems/Solaris/check_mem-2Epl/details [3]:https://github.com/justintime/nagios-plugins/blob/master/check_mem/check_mem.pl \ No newline at end of file From 3063528bc6d5d4240a961f39907dce30191e92cd Mon Sep 17 00:00:00 2001 From: disylee Date: Sun, 2 Nov 2014 03:40:46 +0800 Subject: [PATCH 098/108] Translated Over: disylee --- ...ntOS box into a BGP router using Quagga.md | 313 ------------------ 1 file changed, 313 deletions(-) delete mode 100644 sources/tech/20141023 How to turn your CentOS box into a BGP router using Quagga.md diff --git a/sources/tech/20141023 How to turn your CentOS box into a BGP router using Quagga.md b/sources/tech/20141023 How to turn your CentOS box into a BGP router using Quagga.md deleted file mode 100644 index 366d5a2861..0000000000 --- a/sources/tech/20141023 How to turn your CentOS box into a BGP router using Quagga.md +++ /dev/null @@ -1,313 +0,0 @@ -disylee占一个 -How to turn your CentOS box into a BGP router using Quagga -================================================================================ -In a [previous tutorial][1](注:此文原文做过,文件名:“20140928 How to turn your CentOS box into an OSPF router using Quagga.md”,如果前面翻译发布了,可以修改此链接), I described how we can easily turn a Linux box into a fully-fledged OPSF router using Quagga, an open source routing software suite. In this tutorial, I will focus on **converting a Linux box into a BGP router, again using Quagga**, and demonstrate how to set up BGP peering with other BGP routers. - -Before we get into details, a little background on BGP may be useful. Border Gateway Protocol (or BGP) is the de-facto standard inter-domain routing protocol of the Internet. In BGP terminology, the global Internet is a collection of tens of thousands of interconnected Autonomous Systems (ASes), where each AS represents an administrative domain of networks managed by a particular provider. - -To make its networks globally routable, each AS needs to know how to reach all other ASes in the Internet. That is when BGP comes into play. BGP is the language used by an AS to exchange route information with other neighboring ASes. The route information, often called BGP routes or BGP prefixes, contains AS number (ASN; a globally unique number) and its associated IP address block(s). Once all BGP routes are learned and populated in local BGP routing tables, each AS will know how to reach any public IP addresses on the Internet. - -The ability to route across different domains (ASes) is the primary reason why BGP is called an Exterior Gateway Protocol (EGP) or inter-domain protocol. Whereas routing protocols such as OSPF, IS-IS, RIP and EIGRP are all Interior Gateway Protocols (IGPs) or intra-domain routing protocols. - -### Test Scenarios ### - -For this tutorial, let us consider the following topology. - -![](https://farm6.staticflickr.com/5598/15603223841_4c76343313_z.jpg) - -We assume that service provider A wants to establish a BGP peering with service provider B to exchange routes. The details of their AS and IP address spaces are like the following. - -- **Service provider A**: ASN (100), IP address space (100.100.0.0/22), IP address assigned to eth1 of a BGP router (100.100.1.1) -- **Service provider B**: ASN (200), IP address space (200.200.0.0/22), IP address assigned to eth1 of a BGP router (200.200.1.1) - -Router A and router B will be using the 100.100.0.0/30 subnet for connecting to each other. In theory, any subnet reachable from both service providers can be used for interconnection. In real life, it is advisable to use a /30 subnet from service provider A or service provider B's public IP address space. - -### Installing Quagga on CentOS ### - -If Quagga is not already installed, we install Quagga using yum. - - # yum install quagga - -If you are using CentOS 7, you need to apply the following policy change for SELinux. Otherwise, SELinux will prevent Zebra daemon from writing to its configuration directory. You can skip this step if you are using CentOS 6. - - # setsebool -P zebra_write_config 1 - -The Quagga software suite contains several daemons that work together. For BGP routing, we will focus on setting up the following two daemons. - -- **Zebra**: a core daemon responsible for kernel interfaces and static routes. -- **BGPd**: a BGP daemon. - -### Configuring Logging ### - -After Quagga is installed, the next step is to configure Zebra to manage network interfaces of BGP routers. We start by creating a Zebra configuration file and enabling logging. - - # cp /usr/share/doc/quagga-XXXXX/zebra.conf.sample /etc/quagga/zebra.conf - -On CentOS 6: - - # service zebra start - # chkconfig zebra on - -For CentOS 7: - - # systemctl start zebra - # systemctl enable zebra - -Quagga offers a dedicated command-line shell called vtysh, where you can type commands which are compatible with those supported by router vendors such as Cisco and Juniper. We will be using vtysh shell to configure BGP routers in the rest of the tutorial. - -To launch vtysh command shell, type: - - # vtysh - -The prompt will be changed to hostname, which indicates that you are inside vtysh shell. - - Router-A# - -Now we specify the log file for Zebra by using the following commands: - - Router-A# configure terminal - Router-A(config)# log file /var/log/quagga/quagga.log - Router-A(config)# exit - -Save Zebra configuration permanently: - - Router-A# write - -Repeat this process on Router-B as well. - -### Configuring Peering IP Addresses ### - -Next, we configure peering IP addresses on available interfaces. - - Router-A# show interface - ----------- - - Interface eth0 is up, line protocol detection is disabled - . . . . . - Interface eth1 is up, line protocol detection is disabled - . . . . . - -Configure eth0 interface's parameters: - - site-A-RTR# configure terminal - site-A-RTR(config)# interface eth0 - site-A-RTR(config-if)# ip address 100.100.0.1/30 - site-A-RTR(config-if)# description "to Router-B" - site-A-RTR(config-if)# no shutdown - site-A-RTR(config-if)# exit - -Go ahead and configure eth1 interface's parameters: - - site-A-RTR(config)# interface eth1 - site-A-RTR(config-if)# ip address 100.100.1.1/24 - site-A-RTR(config-if)# description "test ip from provider A network" - site-A-RTR(config-if)# no shutdown - site-A-RTR(config-if)# exit - -Now verify configuration: - - Router-A# show interface - ----------- - - Interface eth0 is up, line protocol detection is disabled - Description: "to Router-B" - inet 100.100.0.1/30 broadcast 100.100.0.3 - Interface eth1 is up, line protocol detection is disabled - Description: "test ip from provider A network" - inet 100.100.1.1/24 broadcast 100.100.1.255 - ----------- - - Router-A# show interface description - ----------- - - Interface Status Protocol Description - eth0 up unknown "to Router-B" - eth1 up unknown "test ip from provider A network" - -If everything looks alright, don't forget to save. - - Router-A# write - -Repeat to configure interfaces on Router-B as well. - -Before moving forward, verify that you can ping each other's IP address. - - Router-A# ping 100.100.0.2 - ----------- - - PING 100.100.0.2 (100.100.0.2) 56(84) bytes of data. - 64 bytes from 100.100.0.2: icmp_seq=1 ttl=64 time=0.616 ms - -Next, we will move on to configure BGP peering and prefix advertisement settings. - -### Configuring BGP Peering ### - -The Quagga daemon responsible for BGP is called bgpd. First, we will prepare its configuration file. - - # cp /usr/share/doc/quagga-XXXXXXX/bgpd.conf.sample /etc/quagga/bgpd.conf - -On CentOS 6: - - # service bgpd start - # chkconfig bgpd on - -For CentOS 7 - - # systemctl start bgpd - # systemctl enable bgpd - -Now, let's enter Quagga shell. - - # vtysh - -First verify that there are no configured BGP sessions. In some versions, you may find a BGP session with AS 7675. We will remove it as we don't need it. - - Router-A# show running-config - ----------- - - ... ... ... - router bgp 7675 - bgp router-id 200.200.1.1 - ... ... ... - -We will remove any pre-configured BPG session, and replace it with our own. - - Router-A# configure terminal - Router-A(config)# no router bgp 7675 - Router-A(config)# router bgp 100 - Router-A(config)# no auto-summary - Router-A(config)# no synchronizaiton - Router-A(config-router)# neighbor 100.100.0.2 remote-as 200 - Router-A(config-router)# neighbor 100.100.0.2 description "provider B" - Router-A(config-router)# exit - Router-A(config)# exit - Router-A# write - -Router-B should be configured in a similar way. The following configuration is provided as reference. - - Router-B# configure terminal - Router-B(config)# no router bgp 7675 - Router-B(config)# router bgp 200 - Router-B(config)# no auto-summary - Router-B(config)# no synchronizaiton - Router-B(config-router)# neighbor 100.100.0.1 remote-as 100 - Router-B(config-router)# neighbor 100.100.0.1 description "provider A" - Router-B(config-router)# exit - Router-B(config)# exit - Router-B# write - -When both routers are configured, a BGP peering between the two should be established. Let's verify that by running: - - Router-A# show ip bgp summary - -![](https://farm6.staticflickr.com/5614/15420135700_e3568d2e5f_z.jpg) - -In the output, we should look at the section "State/PfxRcd." If the peering is down, the output will show 'Idle' or 'Active'. Remember, the word 'Active' inside a router is always bad. It means that the router is actively seeking for a neighbor, prefix or route. When the peering is up, the output under "State/PfxRcd" should show the number of prefixes received from this particular neighbor. - -In this example output, the BGP peering is just up between AS 100 and AS 200. Thus no prefixes are being exchanged, and the number in the rightmost column is 0. - -### Configuring Prefix Advertisements ### - -As specified at the beginning, AS 100 will advertise a prefix 100.100.0.0/22, and AS 200 will advertise a prefix 200.200.0.0/22 in our example. Those prefixes need to be added to BGP configuration as follows. - -On Router-A: - - Router-A# configure terminal - Router-A(config)# router bgp 100 - Router-A(config)# network 100.100.0.0/22 - Router-A(config)# exit - Router-A# write - -On Router-B: - - Router-B# configure terminal - Router-B(config)# router bgp 200 - Router-B(config)# network 200.200.0.0/22 - Router-B(config)# exit - Router-B# write - -At this point, both routers should start advertising prefixes as required. - -### Testing Prefix Advertisements ### - -First of all, let's verify whether the number of prefixes has changed now. - - Router-A# show ip bgp summary - -![](https://farm6.staticflickr.com/5608/15419095659_0ebb384eee_z.jpg) - -To view more details on the prefixes being received, we can use the following command, which shows the total number of prefixes received from neighbor 100.100.0.2. - - Router-A# show ip bgp neighbors 100.100.0.2 advertised-routes - -![](https://farm6.staticflickr.com/5597/15419618208_4604e5639a_z.jpg) - -To check which prefixes we are receiving from that neighbor: - - Router-A# show ip bgp neighbors 100.100.0.2 routes - -![](https://farm4.staticflickr.com/3935/15606556462_e17eae7f49_z.jpg) - -We can also check all the BGP routes: - - Router-A# show ip bgp - -![](https://farm6.staticflickr.com/5609/15419618228_5c776423a5_z.jpg) - -These commands below can be used to check which routes in the routing table are learned via BGP. - - Router-A# show ip route - ----------- - - Codes: K - kernel route, C - connected, S - static, R - RIP, O - OSPF, - I - ISIS, B - BGP, > - selected route, * - FIB route - - C>* 100.100.0.0/30 is directly connected, eth0 - C>* 100.100.1.0/24 is directly connected, eth1 - B>* 200.200.0.0/22 [20/0] via 100.100.0.2, eth0, 00:06:45 - ----------- - - Router-A# show ip route bgp - ----------- - - B>* 200.200.0.0/22 [20/0] via 100.100.0.2, eth0, 00:08:13 - -The BGP-learned routes should also be present in the Linux routing table. - - [root@Router-A~]# ip route - ----------- - - 100.100.0.0/30 dev eth0 proto kernel scope link src 100.100.0.1 - 100.100.1.0/24 dev eth1 proto kernel scope link src 100.100.1.1 - 200.200.0.0/22 via 100.100.0.2 dev eth0 proto zebra - -Finally, we are going to test with ping command. ping should be successful. - - [root@Router-A~]# ping 200.200.1.1 -c 2 - -To sum up, this tutorial focused on how we can run basic BGP on a CentOS box. While this should get you started with BGP, there are other advanced settings such as prefix filters, BGP attribute tuning such as local preference and path prepend. I will be covering these topics in future tutorials. - -Hope this helps. - --------------------------------------------------------------------------------- - -via: http://xmodulo.com/centos-bgp-router-quagga.html - -作者:[Sarmed Rahman][a] -译者:[译者ID](https://github.com/译者ID) -校对:[校对者ID](https://github.com/校对者ID) - -本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 - -[a]:http://xmodulo.com/author/sarmed -[1]:http://xmodulo.com/turn-centos-box-into-ospf-router-quagga.html From 38e5c246850f40ec03e90cb91fef50fa41ae69ea Mon Sep 17 00:00:00 2001 From: disylee Date: Sun, 2 Nov 2014 03:42:47 +0800 Subject: [PATCH 099/108] Translated Over: disylee --- ...ntOS box into a BGP router using Quagga.md | 365 ++++++++++++++++++ 1 file changed, 365 insertions(+) create mode 100644 translated/tech/20141023 How to turn your CentOS box into a BGP router using Quagga.md diff --git a/translated/tech/20141023 How to turn your CentOS box into a BGP router using Quagga.md b/translated/tech/20141023 How to turn your CentOS box into a BGP router using Quagga.md new file mode 100644 index 0000000000..261abb7767 --- /dev/null +++ b/translated/tech/20141023 How to turn your CentOS box into a BGP router using Quagga.md @@ -0,0 +1,365 @@ +How to turn your CentOS box into a BGP router using Quagga +如何使用Quagga把你的CentOS系统变成一个BGP路由器? +================================================================================ + + +在[之前的教程中][1](注:此文原文做过,文件名:“20140928 How to turn your CentOS box into an OSPF router using Quagga.md”,如果前面翻译发布了,可以修改此链接),我对如何简单地使用Quagga把CentOS系统变成一个不折不扣地OSPF路由器做了一些描述,Quagga是一个开源路由软件套件.在这个教程中,我将会着重**把一个Linux系统变成一个BGP路由器,又是使用Quagga**,演示如何建立BGP与其它BGP路由器对等. + + +在我们进入细节之前,一些BGP的背景知识还是必要的.边界网关协议(或者BGP)是互联网的域间路由协议的实际标准。在BGP术语中,全球互联网是由成千上万相关联的自治系统(ASE)组成,其中每一个AS代表每一个特定运营商提供的一个网络管理域. + + + +为了使其网络在全球范围内路由可达,每一个AS需要知道如何在英特网中到达其它的AS.这时候BGP出来取代这个角色了.BGP作为一种语言用于一个AS去与相邻的AS交换路由信息的一种工具.这些路由信息通常被称为BGP线路或者BGP前缀,包括AS号(ASN;全球唯一号码)以及相关的IP地址块.一旦所有的BGP线路被当地的BGP路由表学习和填充,每一个AS将会知道如何到达互联网的任何公网IP. + + +路由在不同域(ASes)的能力是BGP被称为外部网关协议(EGP)或者域间协议的主要原因.就如一些路由协议例如OSPF,IS-IS,RIP和EIGRP都是内部网关协议(IGPs)或者域内路由协议. + + +### 测试方案 ### + + +在这个教程中,让我们来关注以下拓扑. + +![](https://farm6.staticflickr.com/5598/15603223841_4c76343313_z.jpg) + + +我们假设运营商A想要建立一个BGP来与运营商B对等交换路由.它们的AS号和IP地址空间登细节如下所示. + +- **运营商 A**: ASN (100), IP地址空间 (100.100.0.0/22), 分配给BGP路由器eth1网卡的IP地址(100.100.1.1) + + +- **运营商 B**: ASN (200), IP地址空间 (200.200.0.0/22), 分配给BGP路由器eth1网卡的IP地址(200.200.1.1) + + +路由器A和路由器B使用100.100.0.0/30子网来连接到对方.从理论上来说,任何子网从运营商那里都是可达的,可互连的.在真实场景中,建议使用掩码为30位的公网IP地址空间来实现运营商A和运营商B之间的连通. + + +### 在 CentOS中安装Quagga ### + +如果Quagga还没被安装,我们可以使用yum来安装Quagga. + + # yum install quagga + + +如果你正在使用的是CentOS7系统,你需要应用一下策略来设置SELinux.否则,SElinux将会阻止Zebra守护进程写入它的配置目录.如果你正在使用的是CentOS6,你可以跳过这一步. + + # setsebool -P zebra_write_config 1 + + + +Quagga软件套件包含几个守护进程,这些进程可以一起工作.关于BGP路由,我们将把重点放在建立一下2个守护进程. + + +- **Zebra**:一个核心守护进程用于内核接口和静态路由. +- **BGPd**:一个BGP守护进程. + + +### 配置日志记录 ### + +在Quagga被安装猴,下一步就是配置Zebra来管理BGP路由器的网络接口.我们通过创建一个Zebra配置文件和启用日志记录来开始第一步. + + # cp /usr/share/doc/quagga-XXXXX/zebra.conf.sample /etc/quagga/zebra.conf + + +在CentOS6系统中: + + # service zebra start + # chkconfig zebra on + + +在CentOS7系统中: + # systemctl start zebra + # systemctl enable zebra + + +Quagga提供了一个叫做vtysh特有的命令行工具,你可以输入路由器厂商(例如Cisco和Juniper)兼容和支持的命令.我们将使用vtysh shell来配置BGP路由在教程的其余部分. + +启动vtysh shell 命令,输入: + + # vtysh + + +提示将被改成主机名,这表明你是在vtysh shell中. + + + Router-A# + +现在我们将使用以下命令来为Zebra配置日志文件: + + Router-A# configure terminal + Router-A(config)# log file /var/log/quagga/quagga.log + Router-A(config)# exit + +永久保存Zebra配置: + + Router-A# write + +在路由器B操作同样的步骤. + + +### 配置对等的IP地址 ### + + +下一步,我们将在可用的接口上配置对等的IP地址. + + Router-A# show interface #显示接口信息 + +---------- + + Interface eth0 is up, line protocol detection is disabled + . . . . . + Interface eth1 is up, line protocol detection is disabled + . . . . . + +配置eth0接口的参数: + + site-A-RTR# configure terminal + site-A-RTR(config)# interface eth0 + site-A-RTR(config-if)# ip address 100.100.0.1/30 + site-A-RTR(config-if)# description "to Router-B" + site-A-RTR(config-if)# no shutdown + site-A-RTR(config-if)# exit + + +继续配置eth1接口的参数: + + site-A-RTR(config)# interface eth1 + site-A-RTR(config-if)# ip address 100.100.1.1/24 + site-A-RTR(config-if)# description "test ip from provider A network" + site-A-RTR(config-if)# no shutdown + site-A-RTR(config-if)# exit + +现在确认配置: + + Router-A# show interface + +---------- + + Interface eth0 is up, line protocol detection is disabled + Description: "to Router-B" + inet 100.100.0.1/30 broadcast 100.100.0.3 + Interface eth1 is up, line protocol detection is disabled + Description: "test ip from provider A network" + inet 100.100.1.1/24 broadcast 100.100.1.255 + +---------- + + Router-A# show interface description #现实接口描述 + +---------- + + Interface Status Protocol Description + eth0 up unknown "to Router-B" + eth1 up unknown "test ip from provider A network" + + +如果一切看起来正常,别忘记保存配置. + + Router-A# write + +同样地,在路由器B重复一次配置. + + +在我们继续下一步之前,确认下彼此的IP是可以ping通的. + + Router-A# ping 100.100.0.2 + +---------- + + PING 100.100.0.2 (100.100.0.2) 56(84) bytes of data. + 64 bytes from 100.100.0.2: icmp_seq=1 ttl=64 time=0.616 ms + +下一步,我们将继续配置BGP对等和前缀设置. + + +### 配置BGP对等 ### + + + +Quagga守护进程负责BGP的服务叫bgpd.首先我们来准备它的配置文件. + + # cp /usr/share/doc/quagga-XXXXXXX/bgpd.conf.sample /etc/quagga/bgpd.conf + + +在CentOS6系统中: + + # service bgpd start + # chkconfig bgpd on + + +在CentOS7中 + + # systemctl start bgpd + # systemctl enable bgpd + +现在,让我们来进入Quagga 的shell. + + # vtysh + + +第一步,我们要确认当前没有已经配置的BGP会话.在一些版本,我们可能会发现一个AS号为7675的BGP会话.由于我们不需要这个会话,所以把它移除. + + Router-A# show running-config + +---------- + + ... ... ... + router bgp 7675 + bgp router-id 200.200.1.1 + ... ... ... + + +我们将移除一些预先配置好的BGP会话,并建立我们所需的会话取而代之. + + Router-A# configure terminal + Router-A(config)# no router bgp 7675 + Router-A(config)# router bgp 100 + Router-A(config)# no auto-summary + Router-A(config)# no synchronizaiton + Router-A(config-router)# neighbor 100.100.0.2 remote-as 200 + Router-A(config-router)# neighbor 100.100.0.2 description "provider B" + Router-A(config-router)# exit + Router-A(config)# exit + Router-A# write + + + +路由器B将用同样的方式来进行配置,以下配置提供作为参考. + + Router-B# configure terminal + Router-B(config)# no router bgp 7675 + Router-B(config)# router bgp 200 + Router-B(config)# no auto-summary + Router-B(config)# no synchronizaiton + Router-B(config-router)# neighbor 100.100.0.1 remote-as 100 + Router-B(config-router)# neighbor 100.100.0.1 description "provider A" + Router-B(config-router)# exit + Router-B(config)# exit + Router-B# write + + +当相关的路由器都被配置好,两台路由器之间的对等将被建立.现在让我们通过运行下面的命令来确认: + + Router-A# show ip bgp summary + +![](https://farm6.staticflickr.com/5614/15420135700_e3568d2e5f_z.jpg) + + +从输出中,我们可以看到"State/PfxRcd"部分.如果对等关闭,输出将会现实"空闲"或者"活动'.请记住,单词'Active'这个词在路由器中总是不好的意思.它意味着路由器正在积极地寻找邻居,前缀或者路由.当对等是up状态,"State/PfxRcd"下的输出状态将会从特殊邻居接收到前缀号. + +在这个例子的输出中,BGP对等知识在AS100和AS200之间呈up状态.因此,没有前缀被更改,所以最右边列的数值是0. + + +### 配置前缀通告 ### + +正如一开始提到,AS 100将以100.100.0.0/22作为通告,在我们的例子中AS 200将同样以200.200.0.0/22作为通告.这些前缀需要被添加到BGP配置如下. + +在路由器-A中: + + Router-A# configure terminal + Router-A(config)# router bgp 100 + Router-A(config)# network 100.100.0.0/22 + Router-A(config)# exit + Router-A# write + + +在路由器-B中: + Router-B# configure terminal + Router-B(config)# router bgp 200 + Router-B(config)# network 200.200.0.0/22 + Router-B(config)# exit + Router-B# write + + +在这一点上,两个路由器会根据需要开始通告前缀. + + +### 测试前缀通告 ### + +首先,让我们来确认前缀的数量是否被改变了. + + Router-A# show ip bgp summary + +![](https://farm6.staticflickr.com/5608/15419095659_0ebb384eee_z.jpg) + + + +为了查看所接收的更多前缀细节,我们可以使用一下命令,这个命令用于显示邻居100.100.0.2所接收到的前缀总数. + + Router-A# show ip bgp neighbors 100.100.0.2 advertised-routes + +![](https://farm6.staticflickr.com/5597/15419618208_4604e5639a_z.jpg) + + +查看哪一个前缀是我们从邻居接收到的: + + Router-A# show ip bgp neighbors 100.100.0.2 routes + +![](https://farm4.staticflickr.com/3935/15606556462_e17eae7f49_z.jpg) + + +我们也可以查看所有的BGP路由器: + + Router-A# show ip bgp + +![](https://farm6.staticflickr.com/5609/15419618228_5c776423a5_z.jpg) + + +以上的命令都可以被用于检查哪个路由器通过BGP在路由器表中被学习到. + + Router-A# show ip route + +---------- + + + 代码: K - 内核路由, C - 已链接 , S - 静态 , R - 路由信息协议 , O - 开放式最短路径优先协议, + + + I - 中间系统到中间系统的路由选择协议, B - 边界网关协议, > - 选择路由, * - FIB 路由 + + C>* 100.100.0.0/30 is directly connected, eth0 + C>* 100.100.1.0/24 is directly connected, eth1 + B>* 200.200.0.0/22 [20/0] via 100.100.0.2, eth0, 00:06:45 + +---------- + + Router-A# show ip route bgp + +---------- + + B>* 200.200.0.0/22 [20/0] via 100.100.0.2, eth0, 00:08:13 + + +BGP学习到的路由也将会在Linux路由表中出现. + + [root@Router-A~]# ip route + +---------- + + 100.100.0.0/30 dev eth0 proto kernel scope link src 100.100.0.1 + 100.100.1.0/24 dev eth1 proto kernel scope link src 100.100.1.1 + 200.200.0.0/22 via 100.100.0.2 dev eth0 proto zebra + + +最后,我们将使用ping命令来测试连通.结果将成功ping通. + + [root@Router-A~]# ping 200.200.1.1 -c 2 + + +总而言之,该教程将重点放在如何运行一个基本的BGP在CentOS系统中.当这个教程让你开始BGP的配置,那么一些更高级的设置例如设置过滤器,BGP属性调整,本地优先级和预先路径准备等.我将会在后续的教程中覆盖这些主题. + +希望这篇教程能给大家一些帮助. + +-------------------------------------------------------------------------------- + +via: http://xmodulo.com/centos-bgp-router-quagga.html + +作者:[Sarmed Rahman][a] +译者:[disylee](https://github.com/译者ID) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[a]:http://xmodulo.com/author/sarmed +[1]:http://xmodulo.com/turn-centos-box-into-ospf-router-quagga.html From 3d81ca12f0cd42882287e1f1bd682b7afda87a8c Mon Sep 17 00:00:00 2001 From: zhengsihua Date: Sun, 2 Nov 2014 10:24:05 +0800 Subject: [PATCH 100/108] [Translating] How to Install MariaDB in Ubuntu 14.04 LTS --- .../tech/20141029 How to Install MariaDB in Ubuntu 14.04 LTS.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/sources/tech/20141029 How to Install MariaDB in Ubuntu 14.04 LTS.md b/sources/tech/20141029 How to Install MariaDB in Ubuntu 14.04 LTS.md index 3392cfdc8c..fb48c9a2fe 100644 --- a/sources/tech/20141029 How to Install MariaDB in Ubuntu 14.04 LTS.md +++ b/sources/tech/20141029 How to Install MariaDB in Ubuntu 14.04 LTS.md @@ -1,3 +1,5 @@ +Translating----geekpi + How to Install MariaDB in Ubuntu 14.04 LTS ================================================================================ MariaDB is an Open Source database Server & It is 100 % compatible with MySQL, drop-in replacement to MySQL database server. From 74c0745509b9c8d17da0354fa7dcd3e233fa46f0 Mon Sep 17 00:00:00 2001 From: barney-ro Date: Sun, 2 Nov 2014 10:45:59 +0800 Subject: [PATCH 101/108] [translated]20141027 Handy Disk Image Tools --- .../share/20141027 Handy Disk Image Tools.md | 172 ------------------ .../share/20141027 Handy Disk Image Tools.md | 168 +++++++++++++++++ 2 files changed, 168 insertions(+), 172 deletions(-) delete mode 100644 sources/share/20141027 Handy Disk Image Tools.md create mode 100644 translated/share/20141027 Handy Disk Image Tools.md diff --git a/sources/share/20141027 Handy Disk Image Tools.md b/sources/share/20141027 Handy Disk Image Tools.md deleted file mode 100644 index 6cbd2caf33..0000000000 --- a/sources/share/20141027 Handy Disk Image Tools.md +++ /dev/null @@ -1,172 +0,0 @@ -barney-ro translating - -Handy Disk Image Tools -================================================================================ -Disk images are computer files of a disk volume or an entire data storage device, such as a hard drive, optical disk (e.g. DVD, CD, Blu-ray), tape drive, USB flash drive, or floppy disk. A disk image represents the content exactly as it is on the original storage device, including both data and structure information. - -Disk image file formats can be open standards, such as the ISO image format for optical disk images, or proprietary to particular software applications. The name "ISO" is taken from the ISO 9660 file system used with CD-ROM media. Converting from a proprietary image format to an open format often crops up as an issue when users migrate to Linux. - -Disk images have many different uses such as burning optical media, system backup, data recovery, disk cloning, computer forensics, and operating systems (as Live CD/DVDs). - -There are a number of different ways of mounting an ISO image under Linux. The venerable mount command offers an easy solution. But if you need tools that offer more functionality for working with disk images, try some of the following excellent open source tools. - -Most of the tools have not seen a recent release, so if you are looking to get involved with a good open source tool, you could pitch in. - ----------- - -![](http://www.linuxlinks.com/portal/content2/png/FuriusISOMount.png) - -![](http://www.linuxlinks.com/portal/content/reviews/Utilities/Screenshot-FuriusISOMountTool.png) - -Furius ISO Mount is a simple open source application for mounting .iso, .img, .bin, .mdf and .nrg image files without burning them to disk. - -Features include: - -- Automatically mounts ISO, IMG, BIN, MDF and NRG image files -- Supports mounting UDF images through loop -- Automatically creates a mount point in your home directory -- Automatically unmounts the Image files -- Automatically removes the mount directory to return your home directory to its previous state -- Automatically saves the history of the last 10 images mounted -- Mounts multiple images -- Burn ISO and IMG Files to optical disk -- Generate MD5 and SHA1 checksums -- Automatically retrieves any previously unmounted images -- Automatically generates a log file of all commands needed to mount and unmount images manually -- Language support (currently Bulgarian, Chinese (Simplified), Czech, Dutch, French, German, Hungarian, Italian, Greek, Italian, Japanese, Polish, Portuguese, Russian, Slovenian, Spanish, Swedish and Turkish) - -- Website: [launchpad.net/furiusisomount/][1] -- Developer: Dean Harris (Marcus Furius) -- License: GNU GPL v3 -- Version Number: 0.11.3.1 - - ----------- - -![](http://www.linuxlinks.com/portal/content2/png/fuseiso.png) - -![](http://www.linuxlinks.com/portal/content/reviews/Utilities/Screenshot-fuseiso.png) - -fuseiso is an open source FUSE module to mount ISO filesystem images. - -With FUSE it is possible to implement a fully functional filesystem in a userspace program. - -Features include: - -- Read ISO, BIN and NRG images containing ISO9660 filesystems -- Supports plain ISO9660 Level 1 and 2 -- Supports some common extensions, like Joliet, RockRidge and zisofs -- Supports non-standard images, like CloneCD's IMGs and Alcohol 120%'s MDFs, as their format looks exactly like BIN images - -- Website: [sourceforge.net/projects/fuseiso][2] -- Developer: Dmitry Morozhnikov -- License: GNU GPL v2 -- Version Number: 20070708 - ----------- - -![](http://www.linuxlinks.com/portal/content2/png/iat.png) - -![](http://www.linuxlinks.com/portal/content/reviews/Utilities/Screenshot-iat.png) - -iat (Iso9660 Analyzer Tool) is a versatile, open source tool for detecting the structure of many types of image file formats, such as BIN, MDF, PDI, CDI, NRG, and B5I, and converting them into ISO-9660. - -Features include: - -- Supports reading (input) NRG, MDF, PDI, CDI, BIN, CUE and B5I images -- Burn disc images directly using cdrecord -- Outputs information including a progress-bar, Block size, ECC sector (size), header sector (size), image offset start and more - -- Website: [sourceforge.net/projects/iat.berlios][3] -- Developer: Salvatore Santagati -- License: GNU GPL v2 -- Version Number: 0.1.3 - ----------- - -![](http://www.linuxlinks.com/portal/content2/png/AcetoneISO.png) - -![](http://www.linuxlinks.com/portal/content/reviews/Utilities/Screenshot-AcetoneISO.png) - -AcetoneISO is a feature-rich open source graphical application to mount and manage CD/DVD images. - -The utility opens a graphical file manager to mount image formats, including proprietary image formats, including ISO, BIN, NRG, MDF, IMG etc, and lets you perform a number of actions. - -AcetoneISO is written with Qt 4, which means that it integrates well in Qt-based desktop environments like KDE, LXQt or Razor-qt. - -This software is meant for all those people looking for a "Daemon Tools for Linux". - -Features include: - -- Mount most common Windows images in a clean and easy GUI -- Convert all known images to ISO or extract the contents to a folder -- Encrypt, compress, split any type of image -- Convert DVD video to xvid avi and any generic video to xvid avi -- Extract audio from a video -- Extract images content to a folder: bin mdf nrg img daa dmg cdi b5i bwi pdi -- Play a DVD Movie Image with Kaffeine / VLC / SMplayer with auto-cover download from Amazon -- Generate an ISO from a Folder or CD/DVD -- Check MD5 file of an image and/or generate it to a text file -- Calculate ShaSums of images in 128, 256, and 384 bit -- Encrypt / Decrypt an image -- Split / Merge image in X megabyte -- Compress with high ratio an image in 7z format -- Rip a PSX CD to *.bin to make it work with ePSXe/pSX emulators -- Restore a lost CUE file of *.bin *.img -- Convert Mac OS *.dmg to a mountable image -- Mount an image in a specified folder from the user -- Create a database of images to manage big collections -- Extract the Boot Image file of a CD/DVD or ISO -- Backup a CD-Audio to a *.bin image -- Quick and simple utility to rip a DVD to Xvid AVI -- Quick and simple utility to convert a generic video (avi, mpeg, mov, wmv, asf) to Xvid AVI -- Quick and simple utility to convert a FLV video to AVI -- Utility to download videos from YouTube and Metacafe -- Extract audio from a video file -- Extract a *.rar archive that has a password -- Utility to convert any video for Sony PSP PlayStation Portable -- Internationalization support English, Italian, Polish, Spanish, Romanian, Hungarian, German, Czech, and Russian - -- Website: [sourceforge.net/projects/acetoneiso][4] -- Developer: Marco Di Antonio -- License: GNU GPL v3 -- Version Number: 2.3 - ----------- - -![](http://www.linuxlinks.com/portal/content2/png/ISOMaster.png) - -![](http://www.linuxlinks.com/portal/content/reviews/Utilities/Screenshot-ISOMaster.png) - -ISO Master is an open-source, easy to use, graphical CD image editor for Linux and BSD. This tool extracts files from an ISO, add files to an ISO, and create bootable ISOs - all in a graphical user interface. It can open ISO, NRG, and some MDF files but can only save as ISO. - -ISO Master is based on bkisofs, a simple and stable library for reading, modifying and writing ISO images which supports the Joliet, RockRidge, and EL Torito extensions. - -Features include: - -- Reads .ISO files (ISO9660, Joliet, RockRidge, and El Torito), most .NRG files, and some single-track .MDF files; it can save only as .ISO -- Create or customise CD/DVD images -- Add or remove files and directories to/from a CD image -- Make bootable CDs/DVDs -- Internationalization support - -- Website: [www.littlesvr.ca/isomaster/][5] -- Developer: Andrew Smith -- License: GNU GPL v2 -- Version Number: 1.3.11 - --------------------------------------------------------------------------------- - -via: http://www.linuxlinks.com/article/20141025082352476/DiskImageTools.html - -作者:Frazer Kline -译者:[barney-ro](https://github.com/barney-ro) -校对:[校对者ID](https://github.com/校对者ID) - -本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 - -[1]:https://launchpad.net/furiusisomount/ -[2]:http://sourceforge.net/projects/fuseiso/ -[3]:http://sourceforge.net/projects/iat.berlios/ -[4]:http://sourceforge.net/projects/acetoneiso/ -[5]:http://www.littlesvr.ca/isomaster/ \ No newline at end of file diff --git a/translated/share/20141027 Handy Disk Image Tools.md b/translated/share/20141027 Handy Disk Image Tools.md new file mode 100644 index 0000000000..4f96bccede --- /dev/null +++ b/translated/share/20141027 Handy Disk Image Tools.md @@ -0,0 +1,168 @@ +不得不说的磁盘镜像工具 +================================================================================ +磁盘镜像包括整个磁盘卷的文件或者是全部的存储设备的数据,比如说硬盘,光盘(DVD,CD,蓝光光碟),磁带机,USB闪存,软盘。一个完整的磁盘镜像应该像在原来的存储设备上一样完整、准确,包括数据和结构信息。 + +磁盘镜像文件格式可以是开放的标准,像ISO格式的光盘镜像,或者是专有的特别的软件应用程序。"ISO"这个名字来源于用CD存储的ISO 9660文件系统。但是,当用户转向Linux的时候,经常遇到这样的问题,需要把专有的的镜像格式转换为开放的格式。 + +磁盘镜像有很多不同的用处,像烧录光盘,系统备份,数据恢复,硬盘克隆,电子取证和提供操作系统(即LiveCD/DVDs)。 + +有很多不同非方法可以把ISO镜像挂载到Linux系统下。强大的mount 命令给我们提供了一个简单的解决方案。但是如果你需要很多工具来操作磁盘镜像,你可以试一试下面的这些完美的开源工具。 + +很多工具还没有看到最新的版本,所以如果你正在寻找一个很好用的开源工具,你也可以加入,一起来为开源做出一点贡献。 + +---------- + +![](http://www.linuxlinks.com/portal/content2/png/FuriusISOMount.png) + +![](http://www.linuxlinks.com/portal/content/reviews/Utilities/Screenshot-FuriusISOMountTool.png) + +Furius ISO Mount是一个简单易用的开源应用程序用来挂载镜像文件,它支持直接打开ISO,IMG,BIN,MDF和NRG格式的镜像而不用把他们烧录到磁盘。 + +特性: + +- 支持自动挂载ISO, IMG, BIN, MDF and NRG镜像文件 +- 支持通过loop 挂载 UDF 镜像 +- 自动在根目录创建挂载点 +- 自动解挂镜像文件 +- 自动删除挂载目录,并返回到主目录之前的状态 +- 自动存档最近10次挂载历史 +- 支持挂载多个镜像文件 +- 支持烧录ISO文件及IMG文件到光盘 +- 支持MD5校验和SHA1校验 +- 自动检索之前解挂的镜像 +- 自动创建手动挂载和解挂的日志文件 +- 语言支持(目前支持保加利亚语,中文(简体),捷克语,荷兰语,法语,德语,匈牙利语,意大利语,希腊语,日语,波兰语,葡萄牙语,俄语,斯洛文尼亚语,西班牙语,瑞典语和土耳其语) + +- 项目网址: [launchpad.net/furiusisomount/][1] +- 开发者: Dean Harris (Marcus Furius) +- 许可: GNU GPL v3 +- 版本号: 0.11.3.1 + +---------- + +![](http://www.linuxlinks.com/portal/content2/png/fuseiso.png) + +![](http://www.linuxlinks.com/portal/content/reviews/Utilities/Screenshot-fuseiso.png) + +fuseiso 是用来挂载ISO文件系统的一个开源的安全模块。 + +使用FUSE,我们完全可以在用户空间里运行一个完整的文件系统。 + +特性: + +- 支持读ISO,BIN和NRG镜像,包括ISO9660文件系统 +- 支持普通的ISO9660级别1和级别2 +- 支持一些常用的扩展,想Joliet,RockRidge和zisofs +- 支持非标准的镜像,包括CloneCD's IMGs 、Alcohol 120%'s MDFs 因为他们的格式看起来恰好像BIN镜像一样 + +- 项目网址: [sourceforge.net/projects/fuseiso][2] +- 开发者: Dmitry Morozhnikov +- 许可: GNU GPL v2 +- 版本号: 20070708 + +---------- + +![](http://www.linuxlinks.com/portal/content2/png/iat.png) + +![](http://www.linuxlinks.com/portal/content/reviews/Utilities/Screenshot-iat.png) + +iat(Iso9660分析工具)是一个通用的开源工具,能够检测很多不同镜像格式文件的结构,包括BIN,MDF,PDI,CDI,NRG和B5I,并转化成ISO-9660格式. + +特性: + +- 支持读(输入)NRG,MDF,PDI,CDI,BIN,CUE 和B5I镜像 +- 支持用cd 刻录机直接烧录光盘镜像 +- 输出信息包括:进度条,块大小,ECC扇形分区(大小),头分区(大小),镜像偏移地址等等 + +- 项目网址: [sourceforge.net/projects/iat.berlios][3] +- 开发者: Salvatore Santagati +- 许可: GNU GPL v2 +- 版本号: 0.1.3 + +---------- + +![](http://www.linuxlinks.com/portal/content2/png/AcetoneISO.png) + +![](http://www.linuxlinks.com/portal/content/reviews/Utilities/Screenshot-AcetoneISO.png) + +AcetoneISO 是一个功能丰富的开源图形化应用程序,用来挂载和管理CD/DVD镜像。 + +当你打开这个程序,你就会看到一个图形化的文件管理器用来挂载镜像文件,包括专有的镜像格式,也包括像ISO, BIN, NRG, MDF, IMG 等等,并且允许您执行一系列的动作。 + +AcetoneISO是用QT 4写的,也就是说,对于基于QT的桌面环境能很好的兼容,像KDE,LXQT或是Razor-qt。 + +这个软件适用于所有正在寻找Linux版本的Daemon Tools的人。 + +特性: + +- 支持挂载大多数windowns 镜像,在一个简洁易用的界面 +- 支持所有镜像格式转换到ISO,或者是从中提取内容。 +- 支持加密,压缩,解压任何类型的镜像 +- 支持转换DVD成xvid avi,支持任何格式的转换成xvid avi +- 支持从录像里提取声音 +- 支持从不同格式中提取镜像文件,包括bin mdf nrg img daa dmg cdi b5i bwi pdi +- 支持用Kaffeine / VLC / SMplayer播放DVD镜像,可以从Amazon 自动下载。 +- 支持从文件夹或者是CD/DVD生成ISO镜像 +- 支持文件MD5校验,或者是生成一个MD5校验码 +- 支持计算镜像的ShaSums,以128,256和384位的速度 +- 支持加密,解密一个镜像文件 +- 支持以M字节的速度,分开、合并镜像 +- 支持高比例压缩镜像成7z 格式 +- 支持翻录PSX CD成BIN格式,以便在ePSXe/pSX模拟器里运行 +- 支持修复CUE文件为BIN和IMG格式 +- 支持把MAC OS的DMG镜像转换成可挂载的镜像 +- 支持从指定的文件夹中挂载镜像 +- 支持创建数据库来管理一个大的镜像集合 +- 支持从CD/DVD 或者是ISO镜像中提取启动文件 +- 支持备份CD成BIN镜像 +- 支持简单快速的把DVD翻录成Xvid AVI +- 支持简单快速的把常见的视频(avi, mpeg, mov, wmv, asf)转换成Xvid AVI +- 支持简单快速的把FLV 换换成AVI 格式 +- 支持从YouTube和一些视频网站下载视频 +- 支持提取一个有密码的RAR存档 +- 支持转换任何的视频到索尼便携式PSP上 +- 国际化的语言支持支持(英语,意大利语,波兰语,西班牙语,罗马尼亚语,匈牙利语,德语,捷克语和俄语) + +- 项目网址: [sourceforge.net/projects/acetoneiso][4] +- 开发者: Marco Di Antonio +- 许可: GNU GPL v3 +- 版本号: 2.3 + +---------- + +![](http://www.linuxlinks.com/portal/content2/png/ISOMaster.png) + +![](http://www.linuxlinks.com/portal/content/reviews/Utilities/Screenshot-ISOMaster.png) + +ISO Master是一个开源、易用的、图形化CD 镜像编辑器,适用于Linux 和BSD 。可以从ISO 里提取文件,给ISO 添加文件,创建一个可引导的ISO,这些都是在一个可视化的用户界面完成的。可以打开ISO,NRG 和一些MDF文件,但是只能保存成ISO 格式。 + +ISO Master 是基于bkisofs 创建的,一个简单、稳定的阅读库,修改和编写ISO 镜像,支持Joliet, RockRidge 和EL Torito扩展, + +特性: + +- 支持读ISO 格式文件(ISO9660, Joliet, RockRidge 和 El Torito),大多数的NRG 格式文件和一些单向的MDF文件,但是,只能保存成ISO 格式 +- 创建和修改一个CD/DVD 格式文件 +- 支持CD 格式文件的添加或删除文件和目录 +- 支持创建可引导的CD/DVD +- 国际化的支持 + +- 项目网址: [www.littlesvr.ca/isomaster/][5] +- 开发者: Andrew Smith +- 许可: GNU GPL v2 +- 版本号: 1.3.11 + +-------------------------------------------------------------------------------- + +via: http://www.linuxlinks.com/article/20141025082352476/DiskImageTools.html + +作者:Frazer Kline +译者:[barney-ro](https://github.com/barney-ro) +校对:[校对者ID](https://github.com/校对者ID) + +本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 + +[1]:https://launchpad.net/furiusisomount/ +[2]:http://sourceforge.net/projects/fuseiso/ +[3]:http://sourceforge.net/projects/iat.berlios/ +[4]:http://sourceforge.net/projects/acetoneiso/ +[5]:http://www.littlesvr.ca/isomaster/ \ No newline at end of file From ede3a6ea00d83db147b76fac6486d0351a2aec0c Mon Sep 17 00:00:00 2001 From: zhengsihua Date: Sun, 2 Nov 2014 11:28:43 +0800 Subject: [PATCH 102/108] [Translated] How to Install MariaDB in Ubuntu 14.04 LTS --- ... to Install MariaDB in Ubuntu 14.04 LTS.md | 24 +++++++++---------- 1 file changed, 11 insertions(+), 13 deletions(-) rename {sources => translated}/tech/20141029 How to Install MariaDB in Ubuntu 14.04 LTS.md (50%) diff --git a/sources/tech/20141029 How to Install MariaDB in Ubuntu 14.04 LTS.md b/translated/tech/20141029 How to Install MariaDB in Ubuntu 14.04 LTS.md similarity index 50% rename from sources/tech/20141029 How to Install MariaDB in Ubuntu 14.04 LTS.md rename to translated/tech/20141029 How to Install MariaDB in Ubuntu 14.04 LTS.md index fb48c9a2fe..cbc1f4bd69 100644 --- a/sources/tech/20141029 How to Install MariaDB in Ubuntu 14.04 LTS.md +++ b/translated/tech/20141029 How to Install MariaDB in Ubuntu 14.04 LTS.md @@ -1,31 +1,29 @@ -Translating----geekpi - -How to Install MariaDB in Ubuntu 14.04 LTS +如何在Ubuntu 14.04 LTS上安装MariaDB ================================================================================ -MariaDB is an Open Source database Server & It is 100 % compatible with MySQL, drop-in replacement to MySQL database server. +MariaDB是一个开源数据库且100%与MySQL兼容,目标是替代MySQL数据库。 -### Background of MariaDB : ### +### MariaDB的背景 : ### -In 2008, MySQL was acquired by **Sun Microsystems**, which was in turn acquired by Oracle Corporation in 2010. While the initial acquisition by Sun was hailed by many in the MySQL community as exactly what the project needed, that sentiment did not last, and the subsequent acquisition by Oracle was unfortunately met with far lower expectations. Many of MySQL’s developers left Sun and Oracle to work on new projects . Among them was **Michael ‘Monty’ Widenius**, creator of MySQL and one of the project’s longtime technical lead. Monty and his team created a fork (offshoot) of the MySQL code base and named his new DBMS **MariaDB** +2008年,MySQL被后来被Oracle在2010年收购的**Sun Microsystems**收购了。 最初被Sun公司的收购由于符合项目的需要受到MySQL社区的欢呼,但是这种情绪并没有持续他热爱就,接下来被Oracle的收购不幸期望远远低于预期。许多MySql的开发者离开了Sun和Oracle公司开始新的项目。在他们中间就有MySQL的创建者以及项目长期技术带头人之一的**Michael ‘Monty’ Widenius**。Monty和他的团队创建了MySQL的一个fork版本并且命名它为**MariaDB**。 -In this Post we will discuss how to install MariaDB in Ubuntu Linux. By default mariadb packages are not included in Ubuntu Repositories. So to install mariadb , we we have set MariaDB repository. +本篇我们会讨论如何在Ubuntu上安装MariaDB。默认上MariaDB的包并没有在Ubuntu仓库中。要安装MariaDB,我们首先要设置MariaDB仓库。 -#### Setting Up MariaDB Repository #### +#### 设置 MariaDB 仓库 #### $ sudo apt-get install software-properties-common $ sudo apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xcbcb082a1bb943db $ sudo add-apt-repository 'deb http://sfo1.mirrors.digitalocean.com/mariadb/repo/10.0/ubuntu trusty main' -#### Installation of MariaDB : #### +#### 安装 MariaDB : #### $ sudo apt-get update $ sudo apt-get install mariadb-server -While Installing MariaDB , you will be asked to set Maria DB root Password. +在安装中,你会被要求设置MariaDB的root密码。 ![](http://www.linuxtechi.com/wp-content/uploads/2014/10/mariadb-root-1024x442-1.jpg) -#### Connect To MariaDB From the Command Line : #### +#### 从命令行连接到MariaDB : #### linuxtechi@mail:~$ mysql -uroot -p Enter password: @@ -36,7 +34,7 @@ While Installing MariaDB , you will be asked to set Maria DB root Password. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. MariaDB [(none)]> -#### Maria DB Service #### +#### Maria DB 服务 #### $ sudo /etc/init.d/mysql stop $ sudo /etc/init.d/mysql start @@ -46,7 +44,7 @@ While Installing MariaDB , you will be asked to set Maria DB root Password. via: http://www.linuxtechi.com/install-mariadb-in-ubuntu/ 作者:[Pradeep Kumar][a] -译者:[译者ID](https://github.com/译者ID) +译者:[geekpi](https://github.com/geekpi) 校对:[校对者ID](https://github.com/校对者ID) 本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 From c20a22934fbf473dc463d603b486b2cd56a251fe Mon Sep 17 00:00:00 2001 From: wxy Date: Sun, 2 Nov 2014 14:31:06 +0800 Subject: [PATCH 103/108] PUB:20140818 How to Take 'Snapshot of Logical Volume and Restore' in LVM--Part III @GOLinux --- ...al Volume and Restore' in LVM--Part III.md | 112 ++++++++++-------- 1 file changed, 63 insertions(+), 49 deletions(-) rename {translated/tech => published}/20140818 How to Take 'Snapshot of Logical Volume and Restore' in LVM--Part III.md (64%) diff --git a/translated/tech/20140818 How to Take 'Snapshot of Logical Volume and Restore' in LVM--Part III.md b/published/20140818 How to Take 'Snapshot of Logical Volume and Restore' in LVM--Part III.md similarity index 64% rename from translated/tech/20140818 How to Take 'Snapshot of Logical Volume and Restore' in LVM--Part III.md rename to published/20140818 How to Take 'Snapshot of Logical Volume and Restore' in LVM--Part III.md index 6213ea22d4..5f34b81685 100644 --- a/translated/tech/20140818 How to Take 'Snapshot of Logical Volume and Restore' in LVM--Part III.md +++ b/published/20140818 How to Take 'Snapshot of Logical Volume and Restore' in LVM--Part III.md @@ -1,20 +1,19 @@ -在LVM中“录制逻辑卷快照并恢复”——第三部分 +在 LVM中 录制逻辑卷快照并恢复(第三部分) ================================================================================ -**LVM快照**是空间有效指向时间的lvm卷副本。它只在lvm中工作,并只在源逻辑卷发生改变时消耗快照卷的空间。如果源卷的变化达到1GB这么大,快照卷同样也会产生这样大的改变。因而,对于空间有效利用的最佳途径,就是总是进行小的修改。如果快照将存储空间消耗殆尽,我们可以使用lvextend来扩容。而如果我们需要缩减快照,可以使用lvreduce。 +**LVM快照**是以空间换时间时间的方式制作的lvm卷副本。它只在lvm中工作,并只在源逻辑卷发生改变时占用快照卷的空间。如果源卷的变化达到1GB这么大,快照卷同样也会产生这样大的改变。因而,对于空间有效利用的最佳途径,就是总是进行小的修改。如果快照将存储空间消耗殆尽,我们可以使用lvextend来扩容。而如果我们需要缩减快照所占用卷的大小,可以使用lvreduce。 ![Take Snapshot in LVM](http://www.tecmint.com/wp-content/uploads/2014/08/Take-Snapshot-in-LVM.jpg) -在LVM中录制快照 -如果我们在创建快照后意外地删除了无论什么文件,我们没有必要担心,因为快照里包含了我们所删除的文件的原始文件。创建快照时,很有可能文件每次都在那。不要改变快照卷,保持创建时的样子,因为它用于快速恢复。 +*在LVM中录制快照* + +如果我们在创建快照后意外地删除了无论什么文件,我们没有必要担心,因为快照里包含了我们所删除的文件的原始文件。创建快照时,很有可能文件已经存在了。不要改变快照卷,保持创建时的样子,因为它用于快速恢复。 快照不可以用于备份选项。备份是某些数据的基础副本,因此我们不能使用快照作为备份的一个选择。 -#### 需求 #### +#### 前置阅读 #### -注:此两篇文章如果发布后可换成发布后链接,原文在前几天更新中 - -- [在Linux中使用LVM创建磁盘存储 — 第一部分][1] -- [在Linux中扩展/缩减LVM — 第二部分][2] +- [在Linux中使用LVM构建灵活的磁盘存储(第一部分)][1] +- [在Linux中扩展/缩减LVM(第二部分)][2] ### 我的服务器设置 ### @@ -29,9 +28,10 @@ # lvs ![Check LVM Disk Space](http://www.tecmint.com/wp-content/uploads/2014/08/Check-LVM-Disk-Space.jpg) -检查LVM磁盘空间 -正如你所见,在**vgs**命令输出中,我们可以看到有8GB的剩余空闲空间。所以,让我们为我的名为**tecmint_datas**的卷之一创建快照。处于演示的目的,我将会使用以下命令来创建1GB的快照卷。 +*检查LVM磁盘空间* + +正如你所见,在**vgs**命令输出中,我们可以看到有8GB的剩余空闲空间。所以,让我们为我的名为**tecmint_datas**的卷创建快照。处于演示的目的,我将会使用以下命令来创建1GB的快照卷。 # lvcreate -L 1GB -s -n tecmint_datas_snap /dev/vg_tecmint_extra/tecmint_datas @@ -45,79 +45,87 @@ - **-n** – 为快照命名 ![Create LVM Snapshot](http://www.tecmint.com/wp-content/uploads/2014/08/Create-LVM-Snapshot.jpg) -创建LVM快照 + +*创建LVM快照* 此处,是对上面高亮要点的说明。 -- 我在此创建的快照的大小。 -- 创建快照。 -- 创建快照名。 -- 新的快照名。 -- 要创建快照的卷。 +1. 我在此创建的快照的大小。 +2. 创建快照。 +3. 创建快照名。 +4. 新的快照名。 +5. 要创建快照的卷。 如果你想要移除快照,可以使用‘**lvremove**’命令。 -# lvremove /dev/vg_tecmint_extra/tecmint_datas_snap + # lvremove /dev/vg_tecmint_extra/tecmint_datas_snap ![Remove LVM Snapshot](http://www.tecmint.com/wp-content/uploads/2014/08/Remove-LVM-Snapshot.jpg) -移除LVM快照 + +*移除LVM快照* 现在,使用以下命令列出新创建的快照。 - # lvs + # lvs ![Verify LVM Snapshot](http://www.tecmint.com/wp-content/uploads/2014/08/Verify-LVM-Snapshot.jpg) -验证LVM快照 + +*验证LVM快照* 上面的你看到了吧,成功创建了一个快照。上面我用箭头标出了快照创建的源,它就是**tecmint_datas**。是的,因为我已经为**tecmint_datas l-volume**创建了一个快照。 ![Check LVM Snapshot Space](http://www.tecmint.com/wp-content/uploads/2014/08/Check-LVM-Snapshot-Space.jpg) -检查LVM快照空间 + +*检查LVM快照空间* 让我们添加一些新文件到**tecmint_datas**里头。现在卷里大概有650MB左右的数据,而我我们的快照有1GB大。因此,有足够的空间在快照卷里备份我们的修改。这里我们可以使用下面的命令来查看到,我们的快照当前的状态。 # lvs ![Check Snapshot Status](http://www.tecmint.com/wp-content/uploads/2014/08/Check-Snapshot-Status.jpg) -检查快照状态 + +*检查快照状态* 你看到了,现在已经用掉了**51%**的快照卷,你要对你的文件作更多的修改都没有问题。使用下面的命令来查看更多详细信息。 # lvdisplay vg_tecmint_extra/tecmint_data_snap ![View Snapshot Information](http://www.tecmint.com/wp-content/uploads/2014/08/Snapshot-Information.jpg) -查看快照信息 + +*查看快照信息* 再来对上面图片中高亮的要点作个清楚的说明。 -- 快照逻辑卷名称。 -- 当前使用的卷组名。 -- 读写模式下的快照卷,我们甚至可以挂载并使用该卷。 -- 快照创建时间。这个很重要,因为快照将跟踪此时间之后的每个改变。 -- 该快照属于tecmint_datas逻辑卷。 -- 逻辑卷在线并可用。 -- 我们录制快照的源卷大小。 -- 写时复制表大小,Cow = copy on Write,这是说对tecmint_data卷所作的任何改变都会写入此快照。 -- 当前使用的快照大小,我们的tecmint_data有10GB,而我们的快照大小是1GB,这就意味着我们的数据大概有650MB。所以,如果tecmint_datas中的文件增长到2GB,现在的51%中的内容将增加到超过所分配的快照的大小,当然,我们在创建快照时会出现问题。这就意味着我们需要扩展逻辑卷大小(快照逻辑卷) -- 给出快照组块的大小。 +1. 快照逻辑卷名称。 +2. 当前使用的卷组名。 +3. 读写模式下的快照卷,我们甚至可以挂载并使用该卷。 +4. 快照创建时间。这个很重要,因为快照将跟踪此时间之后的每个改变。 +5. 该快照属于tecmint_datas逻辑卷。 +6. 逻辑卷在线并可用。 +7. 我们录制快照的源卷大小。 +8. 写时复制表大小,Cow = copy on Write,这是说对tecmint_data卷所作的任何改变都会写入此快照。 +9. 当前使用的快照大小,我们的tecmint_data有10GB,而我们的快照大小是1GB,这就意味着我们的数据大概有650MB。所以,如果tecmint_datas中的文件增长到2GB,现在的51%中的内容将增加到超过所分配的快照的大小,当然,我们在创建快照时会出现问题。这就意味着我们需要扩展逻辑卷大小(快照逻辑卷) +10. 给出快照组块的大小。 现在,让我们复制超过1GB的文件到**tecmint_datas**。让我们看看会发生什么。如果你那么做了,你将会见到‘**Input/output error**’这样的错误信息,它告诉你快照超出空间大小了。 ![Add Files to Snapshot](http://www.tecmint.com/wp-content/uploads/2014/08/Add-Files-to-Snapshot.jpg) -添加文件到快照 -如果逻辑卷满了,它就会自动下线,我们就不能再使用了,就算我们去扩展快照卷的大小也不行。最好的方法就是在创建快照时,创建一个和源一样大小的快照卷。**tecmint_datas**的大小是10GB,如果我们创建一个10GB大小的快照,它就永远都不会像上面那样超载,因为它有足够的空间来录制你的逻辑卷的快照。 +*添加文件到快照* + +如果该逻辑卷满了,它就会自动丢失新的数据,我们就不能再使用了,就算我们去扩展快照卷的大小也不行。最好的方法就是在创建快照时,创建一个和源一样大小的快照卷。**tecmint_datas**的大小是10GB,如果我们创建一个10GB大小的快照,它就永远都不会像上面那样超载,因为它有足够的空间来录制你的逻辑卷的快照。 #### 步骤2: 在LVM中扩展快照 #### -如果我们需要在超载前扩展快照大小,我们可以使用以下命令来完成此项任务。 +如果我们需要在超过容量前扩展快照卷的大小,我们可以使用以下命令来完成此项任务。 # lvextend -L +1G /dev/vg_tecmint_extra/tecmint_data_snap 现在,那里有总计2GB大小的快照空间。 ![Extend LVM Snapshot](http://www.tecmint.com/wp-content/uploads/2014/08/Extend-LVM-Snapshot.jpg) -扩展LVM快照 + +*扩展LVM快照* 接下来,使用以下命令来验证新的大小和写时复制表。 @@ -128,7 +136,8 @@ # lvs ![Check Size of Snapshot](http://www.tecmint.com/wp-content/uploads/2014/08/Check-Size-of-Snapshot.jpg) -检查快照大小 + +*检查快照大小* 然而,如果你的快照大小和源卷一样,我们就没有必要担心这些问题了。 @@ -139,21 +148,24 @@ # unmount /mnt/tecmint_datas/ ![Un-mount File System](http://www.tecmint.com/wp-content/uploads/2014/08/Unmount-File-System.jpg) -卸载文件系统 -只想检查挂载点是否卸载,可以使用下面的命令。 +*卸载文件系统* + +只想检查挂载点是否卸载成功,可以使用下面的命令。 # df -h ![Check File System Mount Points](http://www.tecmint.com/wp-content/uploads/2014/08/Check-Mount-Points.jpg) -检查文件系统挂载点 + +*检查文件系统挂载点* 这里,我们的挂载已经被卸载,所以我们可以继续恢复快照。要恢复快照,可以使用**lvconvert**命令。 # lvconvert --merge /dev/vg_tecmint_extra/tecmint_data_snap ![Restore LVM Snapshot](http://www.tecmint.com/wp-content/uploads/2014/08/Restore-Snapshot.jpg) -恢复LVM快照 + +*恢复LVM快照* 在合并完成后,快照卷将被自动移除。现在我们可以使用**df**命令来查看分区大小。 @@ -166,7 +178,8 @@ # lvs ![Check Size of Logical Volume](http://www.tecmint.com/wp-content/uploads/2014/08/Check-Size-of-LV.jpg) -检查逻辑卷大小 + +*检查逻辑卷大小* **重要**:要自动扩展快照,我们可以通过修改配置文件来进行。对于手动扩展,我们可以使用lvextend。 @@ -177,13 +190,14 @@ 搜索单词autoextend。默认情况下,该值和下图中的类似。 ![LVM Configuration](http://www.tecmint.com/wp-content/uploads/2014/08/LVM-Configuration.jpg) -LVM配置 + +*LVM配置* 修改此处的**100**为**75**,这样自动扩展的起始点就是**75**,而自动扩展百分比为20,它将自动扩容**百分之20**。 如果快照卷达到**75%**,它会自动为快照卷扩容**20%**。这样,我们可以自动扩容了。使用**wq!**来保存并退出。 -这将把快照从超载下线中拯救出来,这也会帮助你节省更多时间。LVM是我们扩容以及获得其它众多特性如精简资源调配、拆卸、虚拟卷和使用精简池的唯一方法,让我们在下一个话题中来讨论吧。 +这将把快照从超载导致下线事故中拯救出来,这也会帮助你节省更多时间。LVM是我们扩容以及获得其它众多特性如精简资源调配、拆卸、虚拟卷和使用精简池的唯一方法,让我们在下一个话题中来讨论吧。 -------------------------------------------------------------------------------- @@ -191,10 +205,10 @@ via: http://www.tecmint.com/take-snapshot-of-logical-volume-and-restore-in-lvm/ 作者:[Babin Lonston][a] 译者:[GOLinux](https://github.com/GOLinux) -校对:[校对者ID](https://github.com/校对者ID) +校对:[wxy](https://github.com/wxy) 本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 [a]:http://www.tecmint.com/author/babinlonston/ -[1]:http://www.tecmint.com/create-lvm-storage-in-linux/ -[2]:http://www.tecmint.com/extend-and-reduce-lvms-in-linux/ +[1]:http://linux.cn/article-3965-1.html +[2]:http://linux.cn/article-3974-1.html From c6faef5ffdc784046aafffa11f82ae642b427070 Mon Sep 17 00:00:00 2001 From: wxy Date: Sun, 2 Nov 2014 14:49:17 +0800 Subject: [PATCH 104/108] PUB:20140919 Network Installation of Debian 7 (Whezzy) on Client Machines using DNSMASQ Network Boot Server @GOLinux --- ...hines using DNSMASQ Network Boot Server.md | 40 +++++++++---------- 1 file changed, 20 insertions(+), 20 deletions(-) rename {translated/tech => published}/20140919 Network Installation of Debian 7 (Whezzy) on Client Machines using DNSMASQ Network Boot Server.md (89%) diff --git a/translated/tech/20140919 Network Installation of Debian 7 (Whezzy) on Client Machines using DNSMASQ Network Boot Server.md b/published/20140919 Network Installation of Debian 7 (Whezzy) on Client Machines using DNSMASQ Network Boot Server.md similarity index 89% rename from translated/tech/20140919 Network Installation of Debian 7 (Whezzy) on Client Machines using DNSMASQ Network Boot Server.md rename to published/20140919 Network Installation of Debian 7 (Whezzy) on Client Machines using DNSMASQ Network Boot Server.md index 1d7ac429a0..684dd87fbd 100644 --- a/translated/tech/20140919 Network Installation of Debian 7 (Whezzy) on Client Machines using DNSMASQ Network Boot Server.md +++ b/published/20140919 Network Installation of Debian 7 (Whezzy) on Client Machines using DNSMASQ Network Boot Server.md @@ -1,16 +1,16 @@ -客户机通过DNSMASQ网络启动服务器网络安装“Debian 7(Wheezy)” +通过网络方式安装 Debian 7(Wheezy) ================================================================================ -本教程将指引你直接通过使用**DNSMASQ**作为**PXE服务器(预启动执行环境)**的网络位置安装**Debian 7(Wheezy)**,此种情况是假定你的服务器不提供任何CD/DVD/USB介质驱动器,或者它只能通过相连的监视器、键盘和鼠标操作。 +本教程将指引你直接通过使用**DNSMASQ**作为**PXE服务器(预启动执行环境)**,以网络方式安装**Debian 7(Wheezy)**,此种情况是假定你的服务器不提供任何CD/DVD/USB介质驱动器,或者它只能通过相连的监视器、键盘和鼠标操作。 ![Debian 7 Network Installation on Client Machines](http://www.tecmint.com/wp-content/uploads/2014/09/Network-Debian-Instalaltion.png) -客户机上的Debian 7网络安装 +*客户机上的Debian 7网络安装* **DNSMASQ**是一个轻量级网络基础架构服务器,它可以通过内建的DNS、DHCP和TFTP服务器提供如DNS、DHCP和网络启动等关键服务。 一旦PXE服务器启动并运行,你可以指示你所有的客户机直接从网络启动,前提是你的客户机必须拥有一张支持网络启动的网卡,网络启动可以从BIOS的网络启动或启动服务选项中启用。 -### 需求 ### +### 前置阅读 ### - [Debian 7 (Wheezy)安装指南][1] @@ -22,7 +22,7 @@ ![Install Dnsmasq Package](http://www.tecmint.com/wp-content/uploads/2014/09/Install-Dnsmasq-in-Debian.png) -安装Dnsmasq包 +*安装Dnsmasq包* **2.** 安装好DNSMASQ包后,你可以开始编辑配置文件。首先创建一个主配置文件的备份,然后使用下面的命令对**dnsmasq.conf**文件进行编辑。 @@ -31,9 +31,9 @@ ![Backup Dnsmasq Configuration](http://www.tecmint.com/wp-content/uploads/2014/09/Backup-dnsmasq-Configuration-file.png) -备份Dnsmasq配置 +*备份Dnsmasq配置* -**3.** 上面的备份过程适合重命名配置文件,所以新的文件应该是空,你可以使用以下下面描述的**DNSMASQ**配置文件节录。 +**3.** 上面的备份过程适合重命名配置文件,所以新的文件应该是空,你可以使用以下描述的**DNSMASQ**配置文件节录。 interface=eth0 domain=debian.lan @@ -47,7 +47,7 @@ ![Configuration of Dnsmasq](http://www.tecmint.com/wp-content/uploads/2014/09/Configure-dnsmasq.png) -Dnsmasq配置 +*Dnsmasq配置* - **interface** – 服务器监听的网络接口。 - **domain** – 用你自己的域名替换。 @@ -79,7 +79,7 @@ Dnsmasq配置 ![Download Debian NetBoot Files](http://www.tecmint.com/wp-content/uploads/2014/09/Download-Debian-NetBoot-Files.png) -下载Debian网络启动文件 +*下载Debian网络启动文件* 使用以下变量用于**Debian网络安装**镜像和架构。 @@ -95,9 +95,10 @@ Dnsmasq配置 ![Start Dnsmasq Service](http://www.tecmint.com/wp-content/uploads/2014/09/Start-Dnsmasq-Service.png) -启动Dnsmasq服务 +*启动Dnsmasq服务* **6.** 基于Debian的发行版通常附带了**UFW防火墙**包。使用以下命令来打开需要的**DNSMASQ**端口号:**67**(Bootps),**69**(TFTP),**53**(DNS)**4011**(代理DHCP)udp和**53** tcp(DNS)。 + # ufw allow 69/udp # ufw allow 4011/udp ## Only if you have a ProxyDHCP on the network # ufw allow 67/udp @@ -106,9 +107,8 @@ Dnsmasq配置 ![Open Dnsmasq Ports](http://www.tecmint.com/wp-content/uploads/2014/09/Open-Dnsmasq-Ports-620x303.png) -开启Dnsmasq端口 +*开启Dnsmasq端口* -Now, the PXE loader located on your client network interface will load **pxelinux** configuration files from **/srv/tftp/pxelinux.cfg** directory using this order. 现在,位于你的客户机网络接口上的PXE加载器将使用按以下顺序从**/srv/tftp/pxelinux.cfg**目录加载**pxelinux**配置文件。 - GUID文件 @@ -123,7 +123,7 @@ Now, the PXE loader located on your client network interface will load **pxelinu ![Select BIOS Settings](http://www.tecmint.com/wp-content/uploads/2014/09/Select-BIOS-Settings.png) -选择BIOS设置 +*选择BIOS设置* **8。** 在编辑启动顺序后,通常按**F10**来保存BIOS设置。重启后,你的客户端计算机应该可以直接从网络启动了,应该会出第一个**PXE**提示,要求你按**F8**键进入菜单。 @@ -131,15 +131,15 @@ Now, the PXE loader located on your client network interface will load **pxelinu ![Boot Menu Selection](http://www.tecmint.com/wp-content/uploads/2014/09/Boot-Menu-Selection.png) -启动菜单选择 +*启动菜单选择* ![Select Debian Installer Boot](http://www.tecmint.com/wp-content/uploads/2014/09/Select-Debian-Installer-Boot.png) -选择Debian安装器启动 +*选择Debian安装器启动* ![Select Debian Install](http://www.tecmint.com/wp-content/uploads/2014/09/Select-Debian-Install.png) -选择Debian安装 +*选择Debian安装* 从这里开始,你可以使用Debian 7 Wheezy安装进程将Debian安装到你的机器上了(安装链接见上面)。然而,为了能够完成安装进程,你也需要确保你的机器上互联网连接已经激活。 @@ -151,7 +151,7 @@ Now, the PXE loader located on your client network interface will load **pxelinu ![Debug DNSMASQ Server](http://www.tecmint.com/wp-content/uploads/2014/09/Debbug-DNSMASQ-Server.png) -DNSMASQ服务器排障 +*DNSMASQ服务器排障* **10.** 如果服务器测试中已一切就绪,你现在可以在**sysv-rc-conf**包的帮助下,启用**DNSMASQ**守护进程自启动,以使该进程在系统重启后自动启动。 @@ -160,11 +160,11 @@ DNSMASQ服务器排障 ![Enable DNSMASQ Daemon](http://www.tecmint.com/wp-content/uploads/2014/09/Enable-DNSMASQ-Daemon.png) -启用DNSMASQ守护进程 +*启用DNSMASQ守护进程* 到此为止吧!现在你的**PXE**服务器已经整装待发,随时准备好分配IP地址了(**DHCP**),并为你所有网段中的客户端提供需要的启动信息,这些信息配置用来从网络启动并安装Debian Wheezy。 -使用PXE网络启动安装在服务器主机数量增长时很有优势,因为你可以在短时间内火同时设置整个网络基础架构,为版本升级提供了方便,也可以通过kickstart文件使整个安装的全自动化。 +使用PXE网络启动安装在服务器主机数量很多时很有优势,因为你可以在短时间内火同时设置整个网络基础架构,为版本升级提供了方便,也可以通过kickstart文件使整个安装的全自动化。 -------------------------------------------------------------------------------- @@ -172,7 +172,7 @@ via: http://www.tecmint.com/network-installation-of-debian-7-on-client-machines/ 作者:[Matei Cezar][a] 译者:[GOLinux](https://github.com/GOLinux) -校对:[校对者ID](https://github.com/校对者ID) +校对:[wxy](https://github.com/wxy) 本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 From bcb77309c8158928a5b4a226ab7258ef49097e7e Mon Sep 17 00:00:00 2001 From: wxy Date: Sun, 2 Nov 2014 14:59:10 +0800 Subject: [PATCH 105/108] PUB:20141022 Linux FAQs with Answers--How to fix fatal error--openssl or aes.h--No such file or directory @geekpi --- ...l error--openssl or aes.h--No such file or directory.md | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) rename {translated/tech => published}/20141022 Linux FAQs with Answers--How to fix fatal error--openssl or aes.h--No such file or directory.md (86%) diff --git a/translated/tech/20141022 Linux FAQs with Answers--How to fix fatal error--openssl or aes.h--No such file or directory.md b/published/20141022 Linux FAQs with Answers--How to fix fatal error--openssl or aes.h--No such file or directory.md similarity index 86% rename from translated/tech/20141022 Linux FAQs with Answers--How to fix fatal error--openssl or aes.h--No such file or directory.md rename to published/20141022 Linux FAQs with Answers--How to fix fatal error--openssl or aes.h--No such file or directory.md index 99d2cc28c6..c91b027cb7 100644 --- a/translated/tech/20141022 Linux FAQs with Answers--How to fix fatal error--openssl or aes.h--No such file or directory.md +++ b/published/20141022 Linux FAQs with Answers--How to fix fatal error--openssl or aes.h--No such file or directory.md @@ -1,10 +1,10 @@ -Linux 有问必答 -- 如何修复“fatal error: openssl/aes.h: No such file or directory” +Linux 有问必答:如何修复“fatal error: openssl/aes.h: No such file or directory” ================================================================================ > **Question**:我尝试在Linux编译一个程序,但是编译失败并报了一个错,“fatal error: openssl/aes.h: No such file or directory”。我该怎样安装要求的头文件并在我的Linux上解决这个问题? fatal error: openssl/aes.h: No such file or directory -如果你在编译时遇到这个错误,这可能是下面的原因:你尝试编译的程序使用OpenSSL,但是需要和OpenSSL链接的文件(库和头文件)在你Linux平台上缺少。 +如果你在编译时遇到这个错误,这可能是下面的原因:你尝试编译的程序使用OpenSSL,但是需要和OpenSSL链接的文件(库和头文件)在你Linux平台上缺少。(LCTT 译注:其它类似的错误也可以照此处理) 要解决这个问题,你需要安装**OpenSSL 开发包**,这在所有的现代Linux发行版的标准软件仓库中都有。 @@ -22,8 +22,7 @@ Linux 有问必答 -- 如何修复“fatal error: openssl/aes.h: No such file or via: http://ask.xmodulo.com/fix-fatal-error-openssl.html -作者:[作者名][a] 译者:[geekpi](https://github.com/geekpi) -校对:[校对者ID](https://github.com/校对者ID) +校对:[wxy](https://github.com/wxy) 本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 \ No newline at end of file From 7b4d669c07ea3659be6d3930619126e49be40694 Mon Sep 17 00:00:00 2001 From: wxy Date: Sun, 2 Nov 2014 15:16:24 +0800 Subject: [PATCH 106/108] PUB:How to sniff HTTP traffic from the command line on Linux @SPccman --- ... traffic from the command line on Linux.md | 24 +++++++++---------- 1 file changed, 12 insertions(+), 12 deletions(-) rename {translated/tech => published}/How to sniff HTTP traffic from the command line on Linux.md (73%) diff --git a/translated/tech/How to sniff HTTP traffic from the command line on Linux.md b/published/How to sniff HTTP traffic from the command line on Linux.md similarity index 73% rename from translated/tech/How to sniff HTTP traffic from the command line on Linux.md rename to published/How to sniff HTTP traffic from the command line on Linux.md index 7b8ba77878..849ed9e86d 100644 --- a/translated/tech/How to sniff HTTP traffic from the command line on Linux.md +++ b/published/How to sniff HTTP traffic from the command line on Linux.md @@ -1,14 +1,14 @@ -使用Linux命令行嗅探HTTP流量 +Linux 命令行下嗅探 HTTP 流量的工具:httpry ================================================================================ 假设由于某种原因,你需要嗅探HTTP站点的流量(如HTTP请求与响应)。举个例子,你可能在测试一个web服务器的实验性功能,或者你在为某个web应用或RESTful服务排错,又或者你正在为PAC(proxy auto config)排错或寻找某个站点下载的恶意软件。不论什么原因,在这些情况下,进行HTTP流量嗅探对于系统管理、开发者、甚至最终用户来说都是很有帮助的。 -数据包嗅工具tcpdump被广泛用于实时数据包的导出,但是你需要设置过滤规则来捕获HTTP流量,甚至它的原始输出通常不能方便的停在HTTP协议层。实时web服务器日志解析器如[ngxtop][3]提供可读的实时web流量跟踪痕迹,但这仅适用于可完全访问live web服务器日志的情况。 +数据包嗅工具tcpdump被广泛用于实时数据包的导出,但是你需要设置过滤规则来捕获HTTP流量,甚至它的原始输出通常不能方便的停在HTTP协议层。实时web服务器日志解析器如[ngxtop][3]可以提供可读的实时web流量跟踪痕迹,但这仅适用于可完全访问live web服务器日志的情况。 -要是有一个仅用于抓取HTTP流量的类tcpdump的数据包嗅探工具就非常好了。事实上,[httpry][4]就是:**HTTP包嗅探工具**。httpry捕获HTTP数据包,并且将HTTP协议层的数据内容以可读形式列举出来。通过这篇指文章,让我们了解如何使用httpry工具嗅探HTTP流量。 +要是有一个仅用于抓取HTTP流量的类似tcpdump的数据包嗅探工具就非常好了。事实上,[httpry][4]就是:**HTTP包嗅探工具**。httpry捕获HTTP数据包,并且将HTTP协议层的数据内容以可读形式列举出来。通过这篇指文章,让我们了解如何使用httpry工具嗅探HTTP流量。 ###在Linux上安装httpry### -基于Debian系统(Ubuntu 或 LinuxMint),基础仓库中没有httpry安装包(译者注:本人ubuntu14.04,仓库中已有包,可直接安装)。所以我们需要通过源码安装: +基于Debian系统(Ubuntu 或 LinuxMint),基础仓库中没有httpry安装包(译者注:本人ubuntu14.04,仓库中已有包,可直接安装)。所以我们需要通过源码安装: $ sudo apt-get install gcc make git libpcap0.8-dev $ git clone https://github.com/jbittel/httpry.git @@ -16,7 +16,7 @@ $ make $ sudo make install -在Fedora,CentOS 或 RHEL系统,可以使用如下yum命令安装httpry。在CentOS/RHEL系统上,运行yum之前使齐能够[EPEL repo][5]。 +在Fedora,CentOS 或 RHEL系统,可以使用如下yum命令安装httpry。在CentOS/RHEL系统上,运行yum之前使其能够访问[EPEL repo][5]。 $ sudo yum install httpry @@ -62,11 +62,11 @@ httpry就会监听指定的网络接口,并且实时的显示捕获到的HTTP ![](https://farm6.staticflickr.com/5551/14799184220_3b449d422c_z.jpg) -如果你下载了httpry的源码,你会发现源码下有一系Perl脚本,这些脚本用于分析httpry输出。脚本位于目录httpry/scripts/plugins。如果你想写一个定制的httpry输出分析器,则这些脚可以作为很好的例子。其中一些有如下的功能: +如果你下载了httpry的源码,你会发现源码下有一些Perl脚本,这些脚本用于分析httpry输出。脚本位于目录httpry/scripts/plugins。如果你想写一个定制的httpry输出分析器,则这些脚可以作为很好的例子。其中一些有如下的功能: -- **hostnames**: 显示唯一主机名列表. -- **find_proxies**: 探测web代理. -- **search_terms**: 查找及计算在搜索服务里面的搜索词。 +- **hostnames**: 显示唯一主机名列表。 +- **find_proxies**: 探测web代理。 +- **search_terms**: 查找及统计在搜索服务里面的搜索词。 - **content_analysis**: 查找含有指定关键的URL。 - **xml_output**: 将输出转换为XML形式。 - **log_summary**: 生成日志汇总。 @@ -77,9 +77,9 @@ httpry就会监听指定的网络接口,并且实时的显示捕获到的HTTP $ cd httpry/scripts $ perl parse_log.pl -d ./plugins -你可能在使用插件的时候遇到警告。比如,如果你没有安装带有DBI接口的MySQL数据库那么使用db_dump插件时可能会失败。如果一个插件初始化失败的话,那么这个插件不能使用。所以你可以忽略那些警告。 +你可能在使用插件的时候遇到警告。比如,如果你没有安装带有DBI接口的MySQL数据库,那么使用db\_dump插件时可能会失败。如果一个插件初始化失败的话,那么只是这个插件不能使用,所以你可以忽略那些警告。 -当parse_log.pl完成后,你将在httpry/scripts 目录下看到数个分析结果。例如,log_summary.txt 与如下内容类似。 +当parse\_log.pl完成后,你将在httpry/scripts 目录下看到数个分析结果。例如,log\_summary.txt 与如下内容类似。 ![](https://farm4.staticflickr.com/3845/14799162189_b85abdf21d_z.jpg) @@ -91,7 +91,7 @@ via: http://xmodulo.com/2014/08/sniff-http-traffic-command-line-linux.html 作者:[Dan Nanni][a] 译者:[DoubleC](https://github.com/DoubleC) -校对:[校对者ID](https://github.com/校对者ID) +校对:[wxy](https://github.com/wxy) 本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 From 05e8be79873de3c6f57b12b49f5968193c13e8a6 Mon Sep 17 00:00:00 2001 From: carolinewuyan <309866211@qq.com> Date: Sun, 2 Nov 2014 17:46:07 +0800 Subject: [PATCH 107/108] =?UTF-8?q?=E6=A0=A1=E5=AF=B9=E4=B8=AD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../20141024 How To Upgrade Ubuntu 14.04 To Ubuntu 14.10.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/translated/tech/20141024 How To Upgrade Ubuntu 14.04 To Ubuntu 14.10.md b/translated/tech/20141024 How To Upgrade Ubuntu 14.04 To Ubuntu 14.10.md index 1fd579521d..a0b92babb0 100644 --- a/translated/tech/20141024 How To Upgrade Ubuntu 14.04 To Ubuntu 14.10.md +++ b/translated/tech/20141024 How To Upgrade Ubuntu 14.04 To Ubuntu 14.10.md @@ -43,9 +43,9 @@ Ubuntu 14.04是长期支持(LTS)版本。这意味着更长的支持周期 via: http://itsfoss.com/upgrade-ubuntu-14-04-to-14-10/ 作者:[Abhishek][a] -译者:[geekpi](https://github.com/geekpi) +译者:[geekpi](https://github.com/geekpi) 校对:[校对者ID](https://github.com/校对者ID) 本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 -[a]:http://itsfoss.com/author/Abhishek/ \ No newline at end of file +[a]:http://itsfoss.com/author/Abhishek/ From 7ca88d9fe2711e0c0f7085ce6eafb4152d5a28ce Mon Sep 17 00:00:00 2001 From: carolinewuyan <309866211@qq.com> Date: Sun, 2 Nov 2014 19:10:22 +0800 Subject: [PATCH 108/108] =?UTF-8?q?=E5=B7=B2=E6=A0=A1=E5=AF=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ... To Upgrade Ubuntu 14.04 To Ubuntu 14.10.md | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/translated/tech/20141024 How To Upgrade Ubuntu 14.04 To Ubuntu 14.10.md b/translated/tech/20141024 How To Upgrade Ubuntu 14.04 To Ubuntu 14.10.md index a0b92babb0..0283522090 100644 --- a/translated/tech/20141024 How To Upgrade Ubuntu 14.04 To Ubuntu 14.10.md +++ b/translated/tech/20141024 How To Upgrade Ubuntu 14.04 To Ubuntu 14.10.md @@ -1,16 +1,16 @@ -如何升级Ubuntu 14.04 到Ubuntu 14.10 +如何从 Ubuntu 14.04 升级到 Ubuntu 14.10 ================================================================================ ![](http://itsfoss.itsfoss.netdna-cdn.com/wp-content/uploads/2014/04/Ubuntu_Unicorn_Utopia.jpeg) -Ubuntu 14.10已于昨日发布。想知道**如何从Ubuntu 14.04升级到Ubuntu 14.10**么?别担心,这很容易升级到Ubuntu 14.10。事实上,它只是点击几下和有良好的互联网连接的事情而已。 +Ubuntu 14.10已于前段时间发布。想知道**如何从 Ubuntu 14.04 升级到 Ubuntu 14.10 **么?别担心,这很容易做到。事实上,只要网络连接速度好,升级只是点击几下鼠标的事情而已。 -### 你需要从Ubuntu 14.04 切换到Ubuntu 14.10么? ### +### 你需要从 Ubuntu 14.04 切换到 Ubuntu 14.10 么? ### -在你升级到Ubuntu 14.10之前,请确保你真的想为14.10抛弃Ubuntu14.04。一个很重要的原因是你不能从Ubuntu 14.10 降级到14.04。 你需要完全重新安装。 +在你升级到Ubuntu 14.10之前,请确定你真的想为升级 14.10 而抛弃 Ubuntu 14.04。一个很重要的原因是你不能从Ubuntu 14.10 回归到14.04。 你需要完全重新安装。 -Ubuntu 14.04是长期支持(LTS)版本。这意味着更长的支持周期和更稳定和支持。如果升级到14.10,你将被迫在9个月后从Ubuntu 14.10 升级到15.04,而14.04将会持续3年以上。 +Ubuntu 14.04是长期支持(LTS)版本。这意味着有更多的稳定性和更长的支持周期。如果升级到14.10,你将被迫在9个月后从Ubuntu 14.10 升级到15.04,而14.04将会持续3年以上。 -此外,目前Ubuntu的14.10没有很多使用户迫切切换到14.10 的新功能。但是,你肯定会得到最前沿的操作系统。所以,在这之前是否升级到Ubuntu 14.10是你自己的决定。 +此外,目前Ubuntu 14.10没有很多的新功能使吸引用户切换到14.10。当然了,你肯定会得到最前沿的操作系统。所以,在这之前是否升级到Ubuntu 14.10是你自己的决定。 ### 从Ubuntu 14.04 升级到 Ubuntu 14.10 ### @@ -22,7 +22,7 @@ Ubuntu 14.04是长期支持(LTS)版本。这意味着更长的支持周期 ![](http://itsfoss.itsfoss.netdna-cdn.com/wp-content/uploads/2014/08/Software_Update_Ubuntu.jpeg) -进入**更新**选项卡。这里要确保**Ubuntu新版本通知我** 设置成**对于任何新版本**。默认Ubuntu只会在另一个LTS发布时通知你。你必须要把它改成在任何中间版本都升级。 +进入**更新**选项卡。这里要确保**Ubuntu有新版本时通知我** 设置成**对于任何新版本**。默认Ubuntu只会在另一个LTS发布时通知你。你必须要把它改成在任何中间版本都升级。 ![](http://itsfoss.itsfoss.netdna-cdn.com/wp-content/uploads/2014/08/Upgrade_Ubuntu.png) @@ -36,7 +36,7 @@ Ubuntu 14.04是长期支持(LTS)版本。这意味着更长的支持周期 ![](http://itsfoss.itsfoss.netdna-cdn.com/wp-content/uploads/2014/08/Upgrade_to_Ubuntu_1410.jpeg) -我希望本篇可以帮助你**从Ubuntu 14.04 升级到 Ubuntu 14.10**。虽然本教程是为Ubuntu写的,但是你可以用同样的步骤升级到Xubuntu 14.10和Kubuntu 14.10或者Lubuntu。敬请期待下一篇Ubuntu 14.10相关文章。 +我希望本篇教程可以帮助你**从 Ubuntu 14.04 升级到 Ubuntu 14.10**。虽然本教程是为Ubuntu写的,但是你可以用同样的步骤升级到 Xubuntu 14.10、Kubuntu 14.10 或者Lubuntu。敬请期待下一篇Ubuntu 14.10相关文章。 -------------------------------------------------------------------------------- @@ -44,7 +44,7 @@ via: http://itsfoss.com/upgrade-ubuntu-14-04-to-14-10/ 作者:[Abhishek][a] 译者:[geekpi](https://github.com/geekpi) -校对:[校对者ID](https://github.com/校对者ID) +校对:[Caroline](https://github.com/carolinewuyan) 本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出