2015年3月

ls命令是Linux系统中最被频繁使用的命令之一,我相信ls命令一定是你进入一台Linux系统的电脑打开命令提示符后第一个使用的命令。我们每天都在频繁地使用ls命令,即使我们可能没有意识也从来用不到所有可用的选项。本文中,我们将讨论下一些基本的ls命令并且覆盖尽可能多的有关参数来讲解。

Linux的ls命令

1. 不带任何选项列出文件

不带选项的ls命令来光秃秃地列出文件和目录,我们是不能看到像文件类型、大小、修改日期和时间、权限以及链接这样具体的信息的。

# ls

0001.pcap        Desktop    Downloads         index.html   install.log.syslog  Pictures  Templates
anaconda-ks.cfg  Documents  fbcmd_update.php  install.log  Music               Public    Videos

2 带 –l 选项列出文件列表

你看,ls -l(-l是字母不是“1”)就能展示出是文件还是目录,它的大小、修改日期和时间、文件或目录的名字以及文件的属主和它的权限。

# ls -l

total 176
-rw-r--r--. 1 root root   683 Aug 19 09:59 0001.pcap
-rw-------. 1 root root  1586 Jul 31 02:17 anaconda-ks.cfg
drwxr-xr-x. 2 root root  4096 Jul 31 02:48 Desktop
drwxr-xr-x. 2 root root  4096 Jul 31 02:48 Documents
drwxr-xr-x. 4 root root  4096 Aug 16 02:55 Downloads
-rw-r--r--. 1 root root 21262 Aug 12 12:42 fbcmd_update.php
-rw-r--r--. 1 root root 46701 Jul 31 09:58 index.html
-rw-r--r--. 1 root root 48867 Jul 31 02:17 install.log
-rw-r--r--. 1 root root 11439 Jul 31 02:13 install.log.syslog
drwxr-xr-x. 2 root root  4096 Jul 31 02:48 Music
drwxr-xr-x. 2 root root  4096 Jul 31 02:48 Pictures
drwxr-xr-x. 2 root root  4096 Jul 31 02:48 Public
drwxr-xr-x. 2 root root  4096 Jul 31 02:48 Templates
drwxr-xr-x. 2 root root  4096 Jul 31 02:48 Videos

3. 浏览隐藏文件

列出所有文件包括以‘.’开头的隐藏文件。

# ls -a

.                .bashrc  Documents         .gconfd          install.log         .nautilus     .pulse-cookie
..               .cache   Downloads         .gnome2          install.log.syslog  .netstat.swp  .recently-used.xbel
0001.pcap        .config  .elinks           .gnome2_private  .kde                .opera        .spice-vdagent
anaconda-ks.cfg  .cshrc   .esd_auth         .gtk-bookmarks   .libreoffice        Pictures      .tcshrc
.bash_history    .dbus    .fbcmd            .gvfs            .local              .pki          Templates
.bash_logout     Desktop  fbcmd_update.php  .ICEauthority    .mozilla            Public        Videos
.bash_profile    .digrc   .gconf            index.html       Music               .pulse        .wireshark

4. 用 -lh 选项来以易读方式列出文件

用-lh组合选项,以易读方式来显示大小。

# ls -lh

total 176K
-rw-r--r--. 1 root root  683 Aug 19 09:59 0001.pcap
-rw-------. 1 root root 1.6K Jul 31 02:17 anaconda-ks.cfg
drwxr-xr-x. 2 root root 4.0K Jul 31 02:48 Desktop
drwxr-xr-x. 2 root root 4.0K Jul 31 02:48 Documents
drwxr-xr-x. 4 root root 4.0K Aug 16 02:55 Downloads
-rw-r--r--. 1 root root  21K Aug 12 12:42 fbcmd_update.php
-rw-r--r--. 1 root root  46K Jul 31 09:58 index.html
-rw-r--r--. 1 root root  48K Jul 31 02:17 install.log
-rw-r--r--. 1 root root  12K Jul 31 02:13 install.log.syslog
drwxr-xr-x. 2 root root 4.0K Jul 31 02:48 Music
drwxr-xr-x. 2 root root 4.0K Jul 31 02:48 Pictures
drwxr-xr-x. 2 root root 4.0K Jul 31 02:48 Public
drwxr-xr-x. 2 root root 4.0K Jul 31 02:48 Templates
drwxr-xr-x. 2 root root 4.0K Jul 31 02:48 Videos

5. 以尾部以‘/’字符结尾的方式列出文件和目录

使用 ls 命令的 -F 选项,会在每个目录的末尾添加“/”字符显示。

# ls -F

0001.pcap        Desktop/    Downloads/        index.html   install.log.syslog  Pictures/  Templates/
anaconda-ks.cfg  Documents/  fbcmd_update.php  install.log  Music/              Public/    Videos/

6. 倒序列出文件

ls -r 选项能以倒序方式显示文件和目录。

# ls -r

Videos     Public    Music               install.log  fbcmd_update.php  Documents  anaconda-ks.cfg
Templates  Pictures  install.log.syslog  index.html   Downloads         Desktop    0001.pcap

7. 递归列出子目录

ls -R 选项能列出非常长的目录树,来看看示例输出:

# ls -R

total 1384
-rw-------. 1 root     root      33408 Aug  8 17:25 anaconda.log
-rw-------. 1 root     root      30508 Aug  8 17:25 anaconda.program.log

./httpd:
total 132
-rw-r--r--  1 root root     0 Aug 19 03:14 access_log
-rw-r--r--. 1 root root 61916 Aug 10 17:55 access_log-20120812

./lighttpd:
total 68
-rw-r--r--  1 lighttpd lighttpd  7858 Aug 21 15:26 access.log
-rw-r--r--. 1 lighttpd lighttpd 37531 Aug 17 18:21 access.log-20120819

./nginx:
total 12
-rw-r--r--. 1 root root    0 Aug 12 03:17 access.log
-rw-r--r--. 1 root root  390 Aug 12 03:17 access.log-20120812.gz

8. 以修改时间倒序列出

带-ltr组合选项能以文件或目录的最新修改时间的次序来显示它们。

# ls -ltr

total 176
-rw-r--r--. 1 root root 11439 Jul 31 02:13 install.log.syslog
-rw-r--r--. 1 root root 48867 Jul 31 02:17 install.log
-rw-------. 1 root root  1586 Jul 31 02:17 anaconda-ks.cfg
drwxr-xr-x. 2 root root  4096 Jul 31 02:48 Desktop
drwxr-xr-x. 2 root root  4096 Jul 31 02:48 Videos
drwxr-xr-x. 2 root root  4096 Jul 31 02:48 Templates
drwxr-xr-x. 2 root root  4096 Jul 31 02:48 Public
drwxr-xr-x. 2 root root  4096 Jul 31 02:48 Pictures
drwxr-xr-x. 2 root root  4096 Jul 31 02:48 Music
drwxr-xr-x. 2 root root  4096 Jul 31 02:48 Documents
-rw-r--r--. 1 root root 46701 Jul 31 09:58 index.html
-rw-r--r--. 1 root root 21262 Aug 12 12:42 fbcmd_update.php
drwxr-xr-x. 4 root root  4096 Aug 16 02:55 Downloads
-rw-r--r--. 1 root root   683 Aug 19 09:59 0001.pcap

9. 按文件大小排序

带-lS组合选项能按文件从大到小的次序显示。

# ls -lS

total 176
-rw-r--r--. 1 root root 48867 Jul 31 02:17 install.log
-rw-r--r--. 1 root root 46701 Jul 31 09:58 index.html
-rw-r--r--. 1 root root 21262 Aug 12 12:42 fbcmd_update.php
-rw-r--r--. 1 root root 11439 Jul 31 02:13 install.log.syslog
drwxr-xr-x. 2 root root  4096 Jul 31 02:48 Desktop
drwxr-xr-x. 2 root root  4096 Jul 31 02:48 Documents
drwxr-xr-x. 4 root root  4096 Aug 16 02:55 Downloads
drwxr-xr-x. 2 root root  4096 Jul 31 02:48 Music
drwxr-xr-x. 2 root root  4096 Jul 31 02:48 Pictures
drwxr-xr-x. 2 root root  4096 Jul 31 02:48 Public
drwxr-xr-x. 2 root root  4096 Jul 31 02:48 Templates
drwxr-xr-x. 2 root root  4096 Jul 31 02:48 Videos
-rw-------. 1 root root  1586 Jul 31 02:17 anaconda-ks.cfg
-rw-r--r--. 1 root root   683 Aug 19 09:59 0001.pcap

10. 显示文件或目录的索引节点号

我们有时候可以看到一些数字打印在文件或目录名之前,带-i选项就能列出文件或目录的索引节点号。

# ls -i

20112 0001.pcap        23610 Documents         23793 index.html          23611 Music     23597 Templates
23564 anaconda-ks.cfg  23595 Downloads            22 install.log         23612 Pictures  23613 Videos
23594 Desktop          23585 fbcmd_update.php     35 install.log.syslog  23601 Public

11. 显示ls命令的版本

查看ls命令的版本。

# ls --version

ls (GNU coreutils) 8.4
Copyright (C) 2010 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Written by Richard M. Stallman and David MacKenzie.

12. 显示帮助页面

列出ls命令的选项帮助页面。

# ls --help

Usage: ls [OPTION]... [FILE]...

13. 列出目录信息

用ls -l命令列出/tmp目录下的文件,其中-ld参数可以只显示/tmp目录的信息。

# ls -l /tmp
total 408
drwx------. 2 narad narad   4096 Aug  2 02:00 CRX_75DAF8CB7768
-r--------. 1 root  root  384683 Aug  4 12:28 htop-1.0.1.tar.gz
drwx------. 2 root  root    4096 Aug  4 11:20 keyring-6Mfjnk
drwx------. 2 root  root    4096 Aug 16 01:33 keyring-pioZJr
drwx------. 2 gdm   gdm     4096 Aug 21 11:26 orbit-gdm
drwx------. 2 root  root    4096 Aug 19 08:41 pulse-gl6o4ZdxQVrX
drwx------. 2 narad narad   4096 Aug  4 08:16 pulse-UDH76ExwUVoU
drwx------. 2 gdm   gdm     4096 Aug 21 11:26 pulse-wJtcweUCtvhn
-rw-------. 1 root  root     300 Aug 16 03:34 yum_save_tx-2012-08-16-03-34LJTAa1.yumtx

# ls -ld /tmp/

drwxrwxrwt. 13 root root 4096 Aug 21 12:48 /tmp/

14. 显示文件的UID和GID

用ls -n命令来显示文件和目录的UID(译者注:userid,用户ID)和GID(译者注:groupid,组ID)。

# ls -n

total 36
drwxr-xr-x. 2 500 500 4096 Aug  2 01:52 Downloads
drwxr-xr-x. 2 500 500 4096 Aug  2 01:52 Music
drwxr-xr-x. 2 500 500 4096 Aug  2 01:52 Pictures
-rw-rw-r--. 1 500 500   12 Aug 21 13:06 tmp.txt
drwxr-xr-x. 2 500 500 4096 Aug  2 01:52 Videos

15. ls命令和它的别名

我们给ls命令设置如下别名之后,当我们执行ls命令的时候它会默认执行-l选项并且像上文提到的那样显示长列表。

# alias ls="ls -l"

注意:我们可以通过不加任何参数的alias命令来看到目前系统中可用的所有alias设置,当然它们同时也可以unalias来取消。

# alias

alias cp='cp -i'
alias l.='ls -d .* --color=auto'
alias ll='ls -l --color=auto'
alias ls='ls --color=auto'
alias mv='mv -i'
alias rm='rm -i'
alias which='alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde'

删除一项之前定义的alias设置,只需用unalias命令即可。

# unalias ls

下篇文章我们将讨论更多更高级的ls命令以及示例,如果我们在本文有遗漏了任何东西,请通过评论让我们获悉。


via: http://www.tecmint.com/15-basic-ls-command-examples-in-linux/

作者:Ravi Saive 译者:ZTinoZ 校对:wxy

本文由 LCTT 原创翻译,Linux中国 荣誉推出

KDE Plasma 5.2已经发布一段时间了,在本篇中我们将看到如何在Ubuntu 14.10 上安装KDE Plasma 5.2。

Ubuntu的默认桌面环境Unity很漂亮还有很多特性,但是如果你问任何有经验的Linux用户关于桌面定制能力,他的回答将是KDE。KDE在定制上是王者并且它得到流行大概是由于Ubuntu有官方的KDE版本,也就是Kubuntu3

对于Ubuntu(或者任何其他的Linux系统)而言的一个好消息是它们没有绑定在任何特定的桌面环境上,你可以安装额外的桌面环境并在不同的桌面环境间切换。早先我们已经了解如下的桌面环境的安装。

今天我们要展示如何在Ubuntu 14.10 中如何安装KDE Plasma。

如何在Ubuntu 14.10 上安装KDE Plasma 5.2

在Ubuntu 14.10上安装Plasma之前,你要知道这会下载大概1GB的内容。因此在安装KDE之前要考虑速度和数据存放空间。我们下载所使用的PPA是KDE社区官方提供的。在终端中使用下面的命令:

sudo apt-add-repository ppa:kubuntu-ppa/next-backports
sudo apt-get update
sudo apt-get dist-upgrade
sudo apt-get install kubuntu-plasma5-desktop plasma-workspace-wallpapers

在安装中,我们要选择默认的显示管理器。我选择的是默认的LightDM。安装完成后,重启系统。在登录时,点击登录区域旁边的Ubuntu图标。这里选择Plasma。

你现在就登录到KDE Plasma了。这里有一个KDE Plasma 5.2在Ubuntu 14.10下的截图:

从Ubuntu中卸载KDE Plasma

如果你想要卸载它,使用下面的命令从Ubuntu 14.10中卸载KDE Plasma。

sudo apt-get install ppa-purge
sudo apt-get remove kubuntu-plasma5-desktop
sudo ppa-purge ppa:kubuntu-ppa/next

via: http://itsfoss.com/install-kde-plasma-ubuntu-1410/

作者:Abhishek 译者:geekpi 校对:wxy

本文由 LCTT 原创翻译,Linux中国 荣誉推出

本期为大家准备了一些安全方面的书籍,无论你的安全设备有多么坚不可摧,防御流程有多么高效严密,都应当拥有一本安全方面的“武林秘籍”,知己知彼,才能百战不殆。

即日起,新浪微博关注@Linux中国 @图灵教育 并@ 一位你的好友,即有机会获赠以下图书。

微博地址:http://weibo.com/1772191555/Ca3NYyp9L

活动时间:2015年3月24日-3月31日

特此注意:

微博用户参与活动,注意查看@Linux中国\_笑语彦然 微博公布的中奖名单或留意您的微博私信。我们会通过微博私信的方式获取您的邮寄信息。

1、《Kali Linux & BackTrack渗透测试实战》

图书简介:

《Kali Linux & BackTrack渗透测试实战》基于编写团队的实际经验,围绕渗透测试进行了全面介绍,并选择“Kali Linux ( 包含BackTrack)”Live CD 作为讲解工具。下载BackTrack Live CD 和Kali Linux Live CD 后根据书中讲解逐步实践,可有效提高漏洞诊断效率,迎合市场对于计算机安全技术的要求。本书多次介绍BackTrack 在实际业务中对渗透测试的影响,通过BackTrack 工具实操让读者了解各流程中应用到的主要工具。书中不仅讲解了攻击者立场上的技术和方法,而且对实际管理业务中可以有效应用的部分以及攻击应对策略也做了说明。
无论是刚刚接触渗透测试、想要把握渗透测试业务流程的读者,还是需要全面掌握BackTrack 工具、希望了解后续版本Kali Linux 工具的变化和使用方法的读者,都能从中获益。
渗透测试业务整体流程理解
咨询业务经验、技巧及项目经理必备知识
Kali Linux Live CD与BackTrack工具分析简易方法
利用Kali Linux与BackTrack的诊断业务高效强化方案
攻击者角度的技术技巧与实际管理业务中的有效应对方案
利用BackTrack进行渗透测试的基础知识
Kali Linux与BackTrack的比较
利用Kali Linux进行渗透测试深化诊断的方法

试读样章:【第一章】

购买链接:http://product.china-pub.com/3770628

2、《Web渗透测试:使用Kali Linux》

图书简介:

《Web渗透测试:使用Kali Linux》是一本Web 渗透测试实践指南,全面讲解如何使用Kali Linux 对Web 应用进行渗透测试。两位安全领域的专家站在攻击者的角度,一步步介绍了渗透测试基本概念、Kali Linux 配置方式,带大家了解如何收集信息并发现攻击目标,然后利用各种漏洞发起攻击,并在此基础之上学会渗透测试,掌握补救易受攻击系统的具体技术。此外,书中还给出了撰写报告的最佳实践,其中一些范例可作为撰写可执行报告的模板。
《Web渗透测试:使用Kali Linux》适合所有渗透测试及对Web 应用安全感兴趣的读者,特别是想学习使用Kali Linux 的人阅读参考。有BackTrack 经验的读者也可以通过本书了解这两代工具包的差异,学习下一代渗透测试工具和技术。

试读样章:【第一章】

购买链接:http://product.china-pub.com/3804007

3、《黑客攻防技术宝典. iOS实战篇》

图书简介:

《黑客攻防技术宝典:iOS 实战篇》全面介绍iOS 的安全性及工作原理,揭示了可能威胁iOS 移动设备的所有安全风险和漏洞攻击程序,致力于打造一个更安全的平台。《黑客攻防技术宝典. iOS实战篇》内容包括:iOS 设备和iOS 安全架构、iOS 在企业中的应用(企业管理和服务提供)、加密敏感数据的处理、代码签名、沙盒的相关机制与处理、用模糊测试从默认iOS 应用中查找漏洞、编写漏洞攻击程序、面向返回的程序设计(ROP)、iOS 内核调试与漏洞审查、越狱工作原理与工具、基带处理器。
《黑客攻防技术宝典. iOS实战篇》适合所有希望了解iOS 设备工作原理的人学习参考,包括致力于以安全方式存储数据的应用开发人员、保障iOS 设备安全的企业管理人员、从iOS 中寻找瑕疵的安全研究人员,以及希望融入越狱社区者。

试读样章:【第一章】

购买链接:http://product.china-pub.com/3802076

4、《逆向工程核心原理》

图书简介:

《逆向工程核心原理》十分详尽地介绍了代码逆向分析的核心原理。作者在Ahnlab 研究所工作多年,书中不仅包括其以此经验为基础亲自编写的大量代码,还包含了逆向工程研究人员必须了解的各种技术和技巧。彻底理解并切实掌握逆向工程这门技术,就能在众多IT 相关领域进行拓展运用,这本书就是通向逆向工程大门的捷径。
想成为逆向工程研究员的读者或正在从事逆向开发工作的开发人员一定会通过本书获得很大帮助。同时,想成为安全领域专家的人也可从本书轻松起步。

试读样章:【第二章】 【第二十三章】 【第四十九章】

购买链接:http://product.china-pub.com/3769828

5、《社会工程 卷2:解读肢体语言》

图书简介:

《社会工程 卷2:解读肢体语言》介绍社会工程实践中的基本技能——如何了解别人真正想表达的内容,具体内容包括:非语言交流是如何运作的,手部、躯干、腿脚等肢体语言是如何揭示情绪的,关于人类面部和大脑的研究以及案例,社会工程的核心——诱导。作者将毕生的研究以及他本人在社会工程实践中如何使用这些知识都囊括在了本书中。
《社会工程 卷2:解读肢体语言》适合社会工程方面的专业技术人员以及一切希望能成为更棒的沟通者的读者。

试读样章:【第三章】

购买链接:http://product.china-pub.com/3770954

6、《社会工程:安全体系中的人性漏洞》

图书简介:

《社会工程:安全体系中的人性漏洞》首次从技术层面剖析和解密社会工程手法,从攻击者的视角详细介绍了社会工程的所有方面,包括诱导、伪装、心理影响和人际操纵等,并通过凯文·米特尼克等社会工程大师的真实故事和案例加以阐释,探讨了社会工程的奥秘。主要内容包括黑客、间谍和骗子所使用的欺骗手法,以及防止社会工程威胁的关键步骤。
《社会工程:安全体系中的人性漏洞》适用于社会工程师、对社会工程及信息安全感兴趣的人。

试读样章:【第一章】

购买链接:http://product.china-pub.com/3768859

如果你读过我写的使用GDB命令行调试器调试C/C++程序,你就会明白一个调试器对一段C/C++程序来说有多么的重要和有用。然而,如果一个像GDB这样的命令行对你而言听起来更像一个问题而不是一个解决方案的话,那么你也许会对Nemiver更感兴趣。Nemiver 是一款基于 GTK+ 的用于C/C++程序的图形化的独立调试器,它以GDB作为其后端。最令人赞赏的是其速度和稳定性,Nemiver是一个非常可靠,具备许多优点的调试工具。

Nemiver的安装

基于Debian发行版,它的安装时非常直接简单,如下:

$ sudo apt-get install nemiver 

在Arch Linux中安装如下:

$ sudo pacman -S nemiver 

在Fedora中安装如下:

$ sudo yum install nemiver 

如果你选择自己编译,GNOME 网站上有最新源码包。

最令人欣慰的是,它能够很好地与GNOME环境像结合。

Nemiver的基本用法

启动Nemiver的命令:

$ nemiver 

你也可以通过执行一下命令来启动:

$ nemiver [需要调试的可执行程序的路径] 

注意,如果在调试模式下编译程序(在 GCC 中使用 -g 选项)将会对 nemiver 更有帮助。

还有一个优点是Nemiver的加载很快,所以你马上就可以看到主屏幕的默认布局。

默认情况下,断点通常位于主函数的第一行。这样就可以空出时间让你去认识调试器的基本功能:

  • 执行到下一行 (按键是F6)
  • 执行到函数内部即停止(F7)
  • 执行到函数外部即停止(Shift+F7)

不过我个人喜欢“Run to cursor(运行至光标所在行)”,该选项使你的程序准确的运行至你光标所在行,它的默认按键是F11。

断点是很容易使用的。最快捷的方式是在一行代码上按下F8来设置一个断点。但是Nemiver在“Debug”菜单下也有一个更复杂的菜单,它允许你在一个特定的函数,某一行,二进制文件中的位置,或者类似异常、分支或者exec的事件上设置断点。

你也可以通过追踪来查看一个变量。在“Debug”中,你可以用一个表达式的名字来检查它的值,然后也可以通过将其添加到列表中以方便访问。这可能是最有用的一个功能,虽然我从未有兴趣将鼠标悬停在一个变量来获取它的值。值得注意的是,虽然鼠标悬停可以取到值,如果想要让它更好地工作,Nemiver是可以看到结构并给出所有成员的变量的赋值。

谈到方便地访问信息,我也非常欣赏这个程序的布局。默认情况下,代码在上半部分,功能区标签在下半部分。这可以让你访问终端的输出、上下文追踪器、断点列表、注册器地址、内存映射和变量控制。但是请注意在“Edit”-“Preferences”-“Layout”下你可以选择不同的布局,包括一个可以修改的动态布局。

自然,当你设置了全部断点,观察点和布局,您可以在“File”菜单下很方便地保存该会话,以便你下次打开时恢复。

Nemiver的高级用法

到目前为止,我们讨论的都是Nemiver的基本特征,例如,你马上开始调试一个简单的程序需要了解什么。如果你有更高的需求,特别是对于一些更加复杂的程序,你应该会对接下来提到的这些特征更感兴趣。

调试一个正在运行的进程

Nemiver允许你驳接到一个正在运行的进程进行调试。在“File”菜单,你可以筛选出正在运行的进程,并驳接到某个进程。

通过TCP连接远程调试一个程序

Nemiver支持远程调试,你可以在一台远程机器上设置一个轻量级调试服务器,然后你在另外一台机器上启动 nemiver 去调试运行在调试服务器上的程序。如果出于某些原因,你不能在远程机器上很好地驾驭 Nemiver或者GDB,那么远程调试对于你来说将非常有用。在“File”菜单下,指定二进制文件、共享库位置、远程地址和端口。

使用你的GDB二进制程序进行调试

如果你的Nemiver是自行编译的,你可以在“Edit(编辑)”-“Preferences(首选项)”-“Debug(调试)”下给GDB指定一个新的位置。如果你想在Nemiver下使用定制版本的GDB,那么这个选项对你来说是非常实用的。

跟随一个子进程或者父进程

当你的程序分支时,Nemiver是可以设置为跟随子进程或者父进程的。想激活这个功能,请到“Debugger”下面的“Preferences(首选项)”。

总而言之,Nemiver大概是我最喜欢的不在IDE里面的调试程序。在我看来,它甚至可以击败GDB,它和命令行程序一样深深吸引了我。所以,如果你从未使用过的话,我会强烈推荐你使用。我十分感谢它背后的开发团队给了我这么一个可靠、稳定的程序。

你对Nemiver有什么见解?你是否也考虑它作为独立的调试工具?或者仍然坚持使用IDE?让我们在评论中探讨吧。


via: http://xmodulo.com/debug-program-nemiver-debugger.html

作者:Adrien Brochard 译者:disylee 校对:wxy

本文由 LCTT 原创翻译,Linux中国 荣誉推出

作为一名python极客,我喜欢在github上挖掘新的用于linux用户的python工具。今天我发现了一款用python写成的用于检测AP信号强度的工具:wifi-linux。

我已经在wifi-linux上实验了大约两个小时,并且它工作的很好,但是我希望在不久的将来在作者那里看到一些单元测试,因为命令plot无法在我的电脑上工作,并且会导致一些问题。

什么是wifi-linux

根据github上作者账号的官方的 readme.md文件, wifi-linux是一个简单的收集你周围AP的RSSI信息的python脚本,它还会画出RSSI活动图形。

作者说可以在该程序中可以使用plot命令绘制RSSI 活动图形,但是不幸的是,这对我不可行。wifi-linux也支持其他的命令,比如bp 来加入一个断点,print会打印一些统计和启动开关

wifi-linux程序有下面这些依赖:

  • dbus-python
  • gnuplot-py

首先我们需要安装所有的包依赖以使它可以运行在我们的linux机器上。

安装wifi-linux需要的包

我尝试使用python包管理工具pip安装python-dbus但是失败了,因为pip会查找setup.py,但是python-dbus中没有。因此下面的命令不工作。

pip install dbus-python

你可以试一下但是很有可能会在终端中出现下面的错误。

IOError: [Errno 2] No such file or directory: '/tmp/pip_build_oltjano/dbus-python/setup.py'

我该怎么解决这个问题呢?很简单,用下面命令中的系统包管理工具来安装Python DBUS。

sudo apt-get install python-dbus

上面的命令只有在有apt-get包管理器的机器中才可以使用,比如Debian和Ubuntu。

我们要安装的第二个依赖是gnuplot-py。下载并用tar解压,接着运行setup.py来安装包。

第一步是下载gnuplot-py。

wget http://prdownloads.sourceforge.net/gnuplot-py/gnuplot-py-1.8.tar.gz

接着使用tar工具解压。

tar xvf gnuplot-py-1.8.tar.gz

接着使用cd命令改变目录。

cd gnuplot-py-1.8

接着运行下面的命令在你的系统中安装gnuplot-py。

sudo setup.py install

安装完成后,你就可以在你的系统中运行wifi-linux了。只需下载并用下面的命令运行脚本。

用下面的命令下载wifi-linux到你的机器中。

wget https://github.com/dixel/wifi-linux/archive/master.zip

解压master.zip接着使用下面的命令运行list\_rsssi.py脚本。

python list_rssi.py

下面的截图说明wifi-linux在工作了。

wifi-linux to monitor wifi signal strength

命令bp用于像下面那样添加一个断点。

the bp command in wifi-linux

命令print可以用于在终端上显示你机器的状态。下面就是一个例子。

the print command


via: http://linoxide.com/linux-how-to/monitor-access-point-signal-strength-wifi-linux/

作者:Oltjano Terpollari 译者:geekpi 校对:wxy

本文由 LCTT 原创翻译,Linux中国 荣誉推出

nload 是一个 linux 自由软件工具,通过提供两个简单的图形来帮助linux用户和系统管理员来实时监控网络流量以及宽带使用情况:一个是进入流量,一个是流出流量。

我真的很喜欢用nload来在屏幕上显示当前的下载速度、总的流入量和平均下载速度等信息。nload工具的报告图非常容易理解,最重要的是这些信息真的非常有用。

在其使用手册上说到,在默认情况下它会监控所有网络设备。但是你可以轻松地指定你想要监控的设备,而且可以通过方向键在不同的网络设备之间进行转换。另外还有很多的选项可用,例如 ‘-t’选项以毫秒来设定刷新显示时间间隔(默认时间间隔值是500毫秒),‘-m’选项用来同时显示多个设备(在使用该选项时不会显示流量图),‘-u’选项用来设置显示流量数字的单位,另外还有许多其他的选项将会在本教程中探索和练习。

如何将 nload安装到你的linux机器上

UbuntuFedora 用户可以从默认的软件仓库中容易地安装。

在Ubuntu上使用以下命令进行安装。

sudo apt-get install nload

在Fedora上使用以下命令进行安装。

sudo yum install nload

CentOS用户该怎么办呢? 只需要在你的机器上输入以下命令就可以安装成功。

sudo yum install nload

以下的命令会帮助你在OpenBSD系统中安装nload。

sudo pkg_add -i nload

在 linux 机器上的另外一个非常有效的安装软件的方式就是编译源代码,下载并安装最新的版本意味着能够获得更好地性能、更酷的特性以及更少的bug。

如何通过源代码安装nload

在从源代码安装nload之前,你需要首先下载源代码。 我通常使用wget工具来进行下载--该工具在许多linux机器上默认可用。该免费工具帮助用户以非交互式的方式从网络上下载文件,并支持以下协议:

  • HTTP
  • HTTPS
  • FTP

通过以下命令来进入到/tmp目录中。

cd /tmp

然后在你的终端中输入以下命令就可以将最新版本的nload下载到你的linux机器上了。

wget http://www.roland-riegel.de/nload/nload-0.7.4.tar.gz

如果你不喜欢使用wget工具,也可以通过简单的一个鼠标点击轻松地从官网上下载其源代码。

由于该软件非常轻巧,其下载过程几乎在瞬间就会完成。接下来的步骤就是通过tar工具来将下载的源代码包进行解压。

tar归档工具可以用来从磁带或硬盘文档中存储或解压文件,该工具有许多可用的选项,但是我们只需要下面的几个选项来执行我们的操作。

  1. -x 从归档中解压文件
  2. -v 使用繁琐模式运行--用来显示详细信息
  3. -f 用来指定归档文件

例如(LCTT 译注:tar 命令的参数前的“-”可以省略):

tar xvf example.tar

现在你学会了如何使用tar工具,我可以非常肯定你知道了如何从命令行中解压这个.tar文档。

tar xvf nload-0.7.4.tar.gz

之后使用cd命令来进入到nload*目录中:

cd nload*

在我的系统上看起来是这样的:

oltjano@baby:/tmp/nload-0.7.4$

然后运行下面这个命令来为你的系统配置该软件包:

./configure

此时会有“一大波僵尸”会在你的屏幕上显示出来,下面的一个屏幕截图描述了它的样子。

configuring packages for nload

在上述命令完成之后,通过下面的命令来编译nload。

make

compiling nload

好了,终于....,通过以下命令可以将nload安装在你的机器上了。

sudo make install

installing nload from source

安装好nload之后就是让你学习如何使用它的时间了。

如何使用nload

我喜欢探索,所以在你的终端输入以下命令.

nload

看到了什么?

我得到了下面的结果。

running nload

如上述截图可以看到,我得到了以下信息:

流入量

当前下载速度

nload running on linux

平均下载速度

nload running on linux

最小下载速度

nload running on linux

最大下载速度

nload running on linux

总的流入量按字节进行显示

流出量

类似的同样适用于流出量

一些nload有用的选项

使用选项-u来设置显示流量单位。

下面的命令会帮助你使用MBit/s显示单元

nload -u m

下面的屏幕截图显示了上述命令的结果。

nload running on linux

尝试以下命令然后看看有什么结果。

nload -u g

nload running on linux

同时还有一个-U选项。根据手册描述,该选项基本上与-u选项类似,只是用在合计数据。 我测试了这个命令,老实说,当你需要检查总的流入与流出量时非常有用。

nload -U G

nload running on linux

从上面的截图中可以看到,nload -U G 使用Gbyte来显示数据总量。

另外一个我喜欢使用的有用选项是 -t。 该选项用来设置刷新显示事件间隔,单位为毫秒,默认值为500毫秒。

我会通过下面的命令做一些小的实验。

nload -t 130

那么上述命令做了什么呢?它将刷新显示时间间隔设置为130毫秒。 通常推荐不要将该时间间隔值设置为小于100毫秒,因为nload在生成报告时计算错误。

另外的一个选项为 -a, 在你想要设置计算平均值的时间窗口的秒数时使用,默认该值为300秒。

那么当你想要监控指定的网络设备该如何呢? 非常容易, 像下面这样简单地指定设备或者列出想要监控的设备列表即可。

nload wlan0

nload monitoring wlan0 on linux

下面的语法可帮助你监控指定的多个设备。

nload [options] device1 device2 devicen

例如,使用下面的命令来监控eth0和eth1。

nload wlan0 eth0

如果不带选项来运行nload,那么它会监控所有自动检测到的设备,你可以通过左右方向键来显示其中的任何一个设备的信息。


via: http://linoxide.com/monitoring-2/monitor-network-usage-nload/

作者:Oltjano Terpollari 译者:theo-l 校对:wxy

本文由 LCTT 原创翻译,Linux中国 荣誉推出