linux中国_ 发布的文章

我最近新买了一台Dell Inspiron 7437,我第一时间做的一些事情之一就是让预装的Windows 8和Ubuntu 14.04双启动。我旧的笔记本没有蓝牙,听起来很奇怪但事实就是这样。这就是我为何从来没有注意到蓝牙总是在Ubuntu的每次启动时自动开启

从节能和安全目的来说这都不是件好事。而且,我几乎不使用蓝牙,所以我为何要让蓝牙默认启用?尽管在Ubuntu中只要一次点击就能关闭蓝牙,但每次登录都要这样重复地做一遍真是件令人泄气的任务。更简单的解决方案是在Ubuntu启动的时候关闭蓝牙

在今天的帖子中,我将与您分享如何在每次启动是默认禁用蓝牙。

在Ubuntu 14.04中默认关闭蓝牙:

打开一个终端并使用以下命令来安装gksu(如果你还没有安装它的话)(译注:如果你已经有了gksu,那么可以使用它;如果还没有,也不想安装,那你使用sudo一样可以)。

sudo apt-get install gksu

gksu是用来在以root权限运行程序时输入密码的程序。当你已经安装了gksu之后,使用下列命令:

gksudo gedit /etc/rc.local

它会打开rc.local这个文件。只需在文件中的exit 0之前加入下列命令:

rfkill block bluetooth

就这样,你的rc.local文件看起来就像这样:

这就是全部步骤了。重新启动电脑,您应该能够看到蓝牙已经被禁用了。当然您需要使用它的时候可以从指示器面板的蓝牙标志打开它。

小说明:

这一小部分只是对我们做了什么进行简短的解释。您并不一定要阅读完这一部分。您可以直接跳到评论部分留下您的建议和感谢 :)

rc.local文件是用来记录在系统启动的时候运行的各种shell命令的。这些命令是用户定义的。在一个新的安装中,rc.local文件中没有任何命令。我们做的就是在这里面加入命令 rfkill block bluetoothrfkill是一个用来查询各种开关,按钮和底层系统接口状态的工具。我们在rc.local中使用这个命令来在每次启动的时候软关闭(译注:与其对应的是硬关闭,指通过硬件开关来关闭)蓝牙。我希望这些能把原理解释的清楚一点。


via: http://itsfoss.com/turn-off-bluetooth-by-default-in-ubuntu-14-04/

译者:alim0x 校对:wxy

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

linux的ip命令和ifconfig类似,但前者功能更强大,并旨在取代后者。使用ip命令,只需一个命令,你就能很轻松地执行一些网络管理任务。ifconfig是net-tools中已被废弃使用的一个命令,许多年前就已经没有维护了。iproute2套件里提供了许多增强功能的命令,ip命令即是其中之一。

Net tools vs Iproute2

要安装ip,请点击这里下载iproute2套装工具 。不过,大多数Linux发行版已经预装了iproute2工具。

你也可以使用git命令来下载最新源代码来编译:

$ git clone https://kernel.googlesource.com/pub/scm/linux/kernel/git/shemminger/iproute2.git

iproute2 git clone

设置和删除Ip地址

要给你的机器设置一个IP地址,可以使用下列ip命令:

$ sudo ip addr add 192.168.0.193/24 dev wlan0

请注意IP地址要有一个后缀,比如/24。这种用法用于在无类域内路由选择(CIDR)中来显示所用的子网掩码。在这个例子中,子网掩码是255.255.255.0。

在你按照上述方式设置好IP地址后,需要查看是否已经生效。

$ ip addr show wlan0

set ip address

你也可以使用相同的方式来删除IP地址,只需用del代替add。

$ sudo ip addr del 192.168.0.193/24 dev wlan0

delete ip address

列出路由表条目

ip命令的路由对象的参数还可以帮助你查看网络中的路由数据,并设置你的路由表。第一个条目是默认的路由条目,你可以随意改动它。

在这个例子中,有几个路由条目。这个结果显示有几个设备通过不同的网络接口连接起来。它们包括WIFI、以太网和一个点对点连接。

$ ip route show

ip route show

假设现在你有一个IP地址,你需要知道路由包从哪里来。可以使用下面的路由选项(译注:列出了路由所使用的接口等):

$ ip route get 10.42.0.47

ip route get

更改默认路由

要更改默认路由,使用下面ip命令:

$ sudo ip route add default via 192.168.0.196

default route

显示网络统计数据

使用ip命令还可以显示不同网络接口的统计数据。

ip statistics all interfaces

当你需要获取一个特定网络接口的信息时,在网络接口名字后面添加选项ls即可。使用多个选项-s会给你这个特定接口更详细的信息。特别是在排除网络连接故障时,这会非常有用。

$ ip -s -s link ls p2p1

ip link statistics

ARP条目

地址解析协议(ARP)用于将一个IP地址转换成它对应的物理地址,也就是通常所说的MAC地址。使用ip命令的neigh或者neighbour选项,你可以查看接入你所在的局域网的设备的MAC地址。

$ ip neighbour

ip neighbour

监控netlink消息

也可以使用ip命令查看netlink消息。monitor选项允许你查看网络设备的状态。比如,所在局域网的一台电脑根据它的状态可以被分类成REACHABLE或者STALE。使用下面的命令:

$ ip monitor all

ip monitor all

激活和停止网络接口

你可以使用ip命令的up和down选项来激某个特定的接口,就像ifconfig的用法一样。

在这个例子中,当ppp0接口被激活和在它被停止和再次激活之后,你可以看到相应的路由表条目。这个接口可能是wlan0或者eth0。将ppp0更改为你可用的任意接口即可。

$ sudo ip link set ppp0 down

$ sudo ip link set ppp0 up

ip link set up and down

获取帮助

当你陷入困境,不知道某一个特定的选项怎么用的时候,你可以使用help选项。man页面并不会提供许多关于如何使用ip选项的信息,因此这里就是获取帮助的地方。

比如,想知道关于route选项更多的信息:

$ ip route help

ip route help

小结

对于网络管理员们和所有的Linux使用者们,ip命令是必备工具。是时候抛弃ifconfig命令了,特别是当你写脚本时。


via: http://linoxide.com/linux-command/use-ip-command-linux/

译者:KayGuoWhu 校对:wxy

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

在 Linux 系统中,top 命令用来显示系统中正在运行的进程的实时状态,它显示了一些非常有用的信息,比如 CPU 利用情况、内存消耗情况,以及每个进程情况等。但是,你知道吗?还有另外一个命令行工具 'htop',它与传统的 top 命令功能一样,但它有更加强大的功能及能显示更多的信息。这篇文章,我们会用实例来讨论这个 'htop' 命令。

Linux 中的 htop 命令

下面是从 htop 的手册页摘抄下来的相关描述:

它类似于 top 命令,但可以让你在垂直和水平方向上滚动,所以你可以看到系统上运行的所有进程,以及他们完整的命令行。

可以不用输入进程的 PID 就可以对此进程进行相关的操作 (killing, renicing)。

首先明白它的输出

htop 命令以直观的格式来显示信息。下面是 HTOP 的输出快照:

htop

如果你观察窗口的左上角部分,你会看到显示的是 CPU 负载、内存消耗及交换空间的实时信息,右上角包含的是任务、线程、平均负载及系统运行时间的信息。

平均负载部分提供了三个数字,这仅仅表示的是过去的5分钟、10分钟和15分钟系统的平均负载而已,在单核的系统中,平均负载为1表示的是百分之百的 CPU 利用率。最后,运行时间 (uptime)标示的数字是从系统启动起到当前的运行总时间。

下面,我们将用例子来进一步讨论这个命令。

1. 用 F2 键编辑配置

htop 命令提供了许多自定义选项,你所要做的就是从主窗口中按下 F2 键。

下面所示的是可用的自定义选项:

htop-settings

只需使用箭头键选择和更改特定的设置。

2. 通过 F9 键发送信号

htop 命令可以让你很容易地在 htop 窗口内给一个进程发送任意的信号。按下 F9 键即可。

signals

如你所见,窗口的左边部分列出的是所有可用的信号,右边部分列出的是进程。只要选中信号,并选择一个进程,然后按下 enter 键,选中的信号就会发送到此进程。

3. 显示进程的树状视图

htop 命令也提供了进程的树状视图查看功能。按下 F5 键切换。

下面是 htop 显示树形视图信息的例子:

treeView

要退出树状视图模式,请再一次按下 F5 键。

4. 通过 F3 键搜索进程

htop 命令提供了易用的方式来搜索进程。按下 F3 键,一个文本框就会出现在窗口底部。

下面是例子:

search

如您所见,一条名为‘搜索’的文本提示框出现在窗口底部,您可以在这儿输入进程的名字然后回车搜索。如果找到,它会在列出的进程列表里高亮选中此进程。

5. 通过空格键来设置颜色标注进程条目

在系统中运行着的实时进程视图中,要追踪某个进程是个大问题。因为整个列表在不停的刷新着,进程的排列顺序也在变动着。为了这个问题, htop 提供了一个很简单的解决方案:颜色标注。是的,你可以标注一个进程条目,它会以不同的颜色显示,因此要追踪它就变得容易了。

要标注某个进程条目,需要做的就是选中此条目,然后按下‘空格’键。例如,在下面的截图示例中,我已经颜色标注了三个进程条目:

color-tag

所以通过此方法,你就能很轻松地追踪想查看的进程。

6. 命令行选项

除了上面介绍的一些热键,htop 还提供了很有用的命令行选项。下面是其中一部分:

  • -s 选项 : 按指定的列排序。例如,htop -s PID 命令会按 PID 列的大小排序来显示。
  • -u 选项 : 显示指定的用户的进程信息列表。例如,htop -u himanshu 命令会只显示出用户名为 himanshu 的相关进程。
  • -d 选项 : 设置刷新的延迟时间。例如,htop -d 100 命令会使输出在1秒后才会刷新(参数 -d 的单位是10微秒)。

via: http://linoxide.com/linux-command/linux-htop-command/

译者:runningwater 校对:Caroline

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

与其记笔记或是把看到的内容发送给其他人,我们更经常通过截屏来帮助我们记忆。 但是通常情况下,如果一个网页超出了屏幕高度,我们就得用多张截图去截取其全部内容。

对于 Linux,你将会有一个更好的解决方案:使用一个 GNOME 的应用来截取某个链接的整个页面。 这个应用叫做 gnome-web-photo,这篇文章将介绍如何安装和使用它。

在 Ubuntu 和 Debian 的分支下:

$ sudo apt-get install gnome-web-photo

在 Fedora 下:

$ sudo yum install gnome-web-photo

但是对于 CentOS 和其他 RedHat 分支的用户,请注意 gnome-web-photo 依赖 GTK+ 3.0 这个软件包。 也就是说 gnome-web-photo 是和 CentOS/RHEL 6 自带的 GNOME 2 不相兼容的

要为一个网页截图:

$ gnome-web-photo -t 0 --mode=photo http://www.unixmen.com output.png

上面这条命令将为 Unixmen 的主页截取一个完整长度的截图,并保存在当前工作目录下。

输出样例:

-t 这个参数可以设置生成截图的超时时间。-t 0 则表示禁用超时参数。

通过 gnome-web-photo,你可以用下面的命令为一个网页生成一个缩略图:(默认大小是 256×256,但是可以通过 “-s” 来指定缩略图的大小)

$ gnome-web-photo -t 0 -s 128 --mode=thumbnail http://www.unixmen.com output.png

输出样例:

如果你想将网页截取成一个可供打印的多页 PDF 文档,你可以输入下面的命令:

$ gnome-web-photo -t 0 --mode=print http://www.unixmen.com output.pdf

注意这个应用并不支持 .jpg 格式。

这个应用应该对各类用户都有所帮助。我经常对网页进行缩略图和完整长度的截图,希望对你也有所帮助。


via: http://www.unixmen.com/take-full-length-screenshots-websites-via-terminal/

译者:VizV 校对:Caroline

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

当前,完全硬件虚拟化技术(KVM、Xen、Hyper-V 等)能在一个物理主机上很好地运行多个互相独立的操作系统,但这也带来一些问题:性能不佳,资源浪费,系统反应迟缓等。有时候对用户来说,完全的硬件虚拟化并不是最好的选择。

一种替代方案是使用轻量级虚拟化技术 —— 所谓的 LinuX Container 容器 (LXC),它提供的是系统级虚拟化。与跑虚拟机相比,LXC 可以在一个轻量级沙箱容器里面跑多个 Linux 操作系统。当你需要设置一些易于克隆的开发环境、测试环境,或想在安全沙盒里安装应用时,LXC 就非常有用了。

Docker 是一个开源工具,可以让用户方便地布署 Linux Container 容器。Docker 很快变成了 container 技术的非官方标准,从而被 UbuntuRed Hat等众多发行版吸收进去。

本教程中我会向你们演示如何在 Ubuntu 14.04 中使用 Docker 来管理 LXC。需要注意的是,本教程的一些内容可能会与其他 Ubuntu 版本下的操作会稍微有些出入。

当前Ubuntu 系统下的 Docker 的安装包只提供64位。如果你想运行32位的 Docker,你需要使用源码编译32位 Docker 工具

安装 Docker

通过 apt-get 安装 Docker 简直是小菜一碟。

$ sudo apt-get install docker.io

如果你不是 root 组的用户,你可以把自己加入到 docker 用户组。下面的命令可以让没有 root 权限的用户使用 Docker:

$ sudo usermod -a -G docker $USER

重新登录,以便让你的用户组权限生效。

下一步是编辑 Docker 配置文件,确定 Docker 可执行文件的路径:

$ sudo vi /etc/default/docker.io

DOCKER="/usr/bin/docker.io"

重启 Docker 服务:

$ sudo service docker.io restart

管理 Docker Container 容器

如果你想在新的 Docker 容器下创建一个新的 Ubuntu 操作系统,你首先需要 pull 一个 Ubuntu 的 Docker 镜像。下面的命令可以通过网络下载 Docker 镜像:

$ docker pull ubuntu

你可以使用下面的命令启动 Docker 里面的 Ubuntu 系统。最后的参数“/bin/bash”表示一旦容器启动,首先会执行简单的 bash。

$ docker run -i -t ubuntu /bin/bash

上面的命令会立即启动 Ubuntu container 容器(这是一个完美的容器!),然后它会提供一个 shell 提示符运行环境给你。现在开始你可以通过这个沙箱环境访问一个完整的 Ubuntu 系统了。

输入“exit”命令退出 Docker 容器。

你也可以用下面的命令进入不同的系统。比如 Fedora:

$ docker.io run -i -t fedora /bin/bash

如果系统中还不存在 Fedora Docker 镜像,这个命令会自动下载它,然后启动这个 Fedora 的 Docker 容器。

如果你想要开启指定版本的系统,比如 Ubuntu 13.04,你可以使用下面的命令:

$ docker.io run -i -t ubuntu:13.04 /bin/bash

Container 容器网络设置

Docker 使用 Linux 桥接技术与其他容器通信,以及连通外网。安装完 Docker 后你应该可以看到 docker0 这个网桥,这是 Docker 默认创建的。你创建的每个容器都会通过这个网桥连接到网络。

自定义 Linux 网桥

如果你想自定义网桥,你可以执行以下步骤。你可以在这个网桥后面分配一个子网,并为这个子网分配地址。下面的命令会为 Docker 子网分配 10.0.0.0/24 地址段:

$ sudo apt-get install bridge-utils
$ sudo brctl addbr br0
$ sudo ifconfig br0 10.0.0.1 netmask 255.255.255.0

然后在 /etc/default/docker.io 文件的 DOCKER\_OPTS 变量里添加“-b=br0”选项,并重启 Docker 服务:

$ sudo service docker.io restart

到目前为止,任何创建的容器都会连上 br0 网桥,它们的 IP 地址会从 10.0.0.0/24 中自动分配(译注:在10.0.0.2到10.0.0.254之间随机分配)。

其他自定义设置

你可以通过 /etc/default/docker.io 文件的 DOCKER\_OPTS 变量设置其他一些属性:

  • "-dns 8.8.8.8 -dns 8.8.4.4": 为容器指定 DNS 服务器。
  • "-icc=false": 将容器与其他容器隔离出来

疑难解答

1、当你运行 docker.io 命令时,你可能会遇到以下问题:

dial unix /var/run/docker.sock: no such file or directory

这个错误可能是由于 Docker 后台进程没有启动。检查下 Docker 后台进程的状态,确认它已经处于启动状态:

$ sudo service docker.io status
$ sudo service docker.io start 

via: http://xmodulo.com/2014/05/manage-linux-containers-docker-ubuntu.html

译者:bazz2 校对:wxy

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

安装Ubuntu 14.04之后,先要做的几件事情中其中一项是安装Adobe Flash Player。一般来说,如果安装了Ubuntu Restricted Extras,Flash Player应该可以工作而且你应该能够在网上观看在线视频,比如You Tube等网站上。

其实这不是因为Chromium是在Ubuntu 14.04上使用才出现的问题。当你用其他的网页浏览器比如火狐、Chrome时,你可以轻松地播放You Tube等网站视频,但在Chromium中你将会看到Adobe Flash player缺失插件的通知:

Adobe Flash Player is required to display some elements on this page. Install plug-in..

只有在Chromium中出现flash player问题的原因:

只有在Chromium中发生这个问题的原因是,之前Chromium使用Netscape Plugin API构架来支持Flash,从Ubuntu 14.04开始,Chromium将会停止使用Netscape Plugin API。因此,我们才遇到Chromium的Adobe Flash Player的问题。

那么,为什么这个问题没有发生在其他浏览器上?答案是,因为它们使用 Flash Player 11.2。

修复Chromium上Adobe Flash Player的问题:

修复这个问题,我们应该使用Pepper Flash Player,一个来自Google更安全更稳定的版本的Flash Player。在Ubuntu 14.04的源里有Adobe Flash Player Pepper 安装器。这个安装器会下载Google Chrome,提取出Pepper Flash Player然后设置给Chromium使用。

要在Ubuntu 14.04安装Pepper Flash Player,打开一个终端,使用下面的命令:

sudo apt-get install pepperflashplugin-nonfree
sudo update-pepperflashplugin-nonfree --install

之后重启Chromium。不用重启系统。我希望这个帖子能够帮助你解决Chromium上Adobe Flash Player的问题。欢迎提出任何问题和建议。


via: http://itsfoss.com/fix-flash-player-issue-chromium-in-ubuntu-14-04/

译者:linuhap 校对:wxy

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