2014年1月

如果在之前你询问过经验丰富的 Linux 用户如何在 Ubuntu 下挂载磁盘分区,他们可能会告诉你使用在 /etc 目录里的fstab文件。这似乎是 Linux 系统包括 Ubuntu 挂载分区的唯一方式。

呵呵,幸亏有了GNOME Disk Utility,让挂载分区变得更加多样化。使用这个磁盘工具,你就可以在图形界面下轻松的挂载分区,不需要再在命令行下修改 fstab 文件。fstab 文件是一个用来列出可用磁盘和分区的 Linux 文件,同时指示出他们的挂载情况。

mount 命令查找 fstab 文件中的配置,它决定了设备挂载的方式和位置。这只能通过系统管理员或 root 来修改。

这个简短的教程将会展示给你如何在 Ubuntu 下轻松的挂载分区,在不主动修改 fstab 文件的前提下。对于新手和那些刚开始使用 Ubuntu 的用户,他们会发现这个方法易于挂载额外的分区和设备。

虽然有一些工具也许能帮助你构建 fstab 文件,但是在 Ubuntu 下很少有像这个磁盘工具那么高效的。

如果你在 Ubuntu 下打开了fstab 文件, 你会看到类似下面的内容。

#             
/dev/fd0      /media/floppy0    vfat    rw,user,noauto    0   0       

上列只是 Ubuntu 分区挂载的一个样例。每一个设备都有它自己的文件类型和挂载点。对于刚接触 Ubuntu 的用户,可能会感到生畏。

对于经验丰富的 Linux 用户来说,管理 fstab 并不困难。如果你已经做过一次了,那么下次会更加的轻松。

所以,接下来动手吧。在 fstab 文件中添加一个条目或挂载一个分区,打开 Unity Dash 搜索Disk app并打开。当程序打开后,选择你想要挂载和格式化的驱动器。在格式完后,选择选项 -> 编辑挂载选项

最后,关闭自动挂载选项并手动指定你的挂载选项。磁盘会自动的将这些选项写入到 fstab 文件中,这样 mount 命令才可以读取挂载的分区。

保存你的设置并重启,或用 mount 命令挂载分区。

上面的选项在 fstab 文件中会像这样显示。

/dev/sdb /media/richard/ExtPartition ntfs-3g rw,auto,user,fmask=0111,dmask=0000 0 0

好了,这些就是今天全部内容!每当你启动你的机子是新分区将会自动挂载上。

Enjoy!

好好享受吧!


via: http://www.liberiangeek.net/2014/01/daily-ubuntu-tips-mount-partitions-in-ubuntu-from-your-desktop-gui/

译者:Luoxcat 校对:wxy

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

用户帐号管理是系统管理员最重要的工作之一。而密码安全是系统安全中最受关注的一块。在本教程中,我将为大家介绍如何在 Linux 上设置密码策略

假设你已经在你的 Linux 系统上使用了 PAM (Pluggable Authentication Modules,插入式验证模块),因为这些年所有的 Linux 发行版都在使用它。

准备工作

安装 PAM 的 cracklib 模块,cracklib 能提供额外的密码检查能力。

Debian、Ubuntu 或 Linux Mint 系统上:

$ sudo apt-get install libpam-cracklib

CentOS、Fedora、RHEL 系统已经默认安装了 cracklib PAM 模块,所以在这些系统上无需执行上面的操作。

为了强制实施密码策略,我们需要修改 /etc/pam.d 目录下的 PAM 配置文件。一旦修改,策略会马上生效。

注意:此教程中的密码策略只对非 root 用户有效,对 root 用户无效。

禁止使用旧密码

找到同时有 “password” 和 “pam\_unix.so” 字段并且附加有 “remember=5” 的那行,它表示禁止使用最近用过的5个密码(己使用过的密码会被保存在 /etc/security/opasswd 下面)。

Debian、Ubuntu 或 Linux Mint 系统上:

$ sudo vi /etc/pam.d/common-password

password [success=1 default=ignore] pam\_unix.so obscure sha512 remember=5

CentOS、Fedora、RHEL 系统上:

$ sudo vi /etc/pam.d/system-auth

password sufficient pamunix.so sha512 shadow nullok tryfirstpass useauthtok remember=5

设置最短密码长度

找到同时有 “password” 和 “pam\_cracklib.so” 字段并且附加有 “minlen=10” 的那行,它表示最小密码长度为(10 - 类型数量)。这里的 “类型数量” 表示不同的字符类型数量。PAM 提供4种类型符号作为密码(大写字母、小写字母、数字和标点符号)。如果你的密码同时用上了这4种类型的符号,并且你的 minlen 设为10,那么最短的密码长度允许是6个字符。

Debian、Ubuntu 或 Linux Mint 系统上:

$ sudo vi /etc/pam.d/common-password

password requisite pam\_cracklib.so retry=3 minlen=10 difok=3

CentOS、Fedora、RHEL 系统上:

$ sudo vi /etc/pam.d/system-auth

password requisite pam\_cracklib.so retry=3 difok=3 minlen=10

设置密码复杂度

找到同时有 “password” 和 “pam\_cracklib.so” 字段并且附加有 “ucredit=-1 lcredit=-2 dcredit=-1 ocredit=-1” 的那行,它表示密码必须至少包含一个大写字母(ucredit),两个小写字母(lcredit),一个数字(dcredit)和一个标点符号(ocredit)。

Debian、Ubuntu 或 Linux Mint 系统上:

$ sudo vi /etc/pam.d/common-password

password requisite pam\_cracklib.so retry=3 minlen=10 difok=3 ucredit=-1 lcredit=-2 dcredit=-1 ocredit=-1

CentOS、Fedora、RHEL 系统上:

$ sudo vi /etc/pam.d/system-auth

password requisite pam\_cracklib.so retry=3 difok=3 minlen=10 ucredit=-1 lcredit=-2 dcredit=-1 ocredit=-1

设置密码过期期限

编辑 /etc/login.defs 文件,可以设置当前密码的有效期限,具体变量如下所示:

$ sudo vi /etc/login.defs

PASSMAXDAYS 150 PASSMINDAYS 0 PASSWARNAGE 7

这些设置要求用户每6个月改变他们的密码,并且会提前7天提醒用户密码快到期了。

如果你想为每个用户设置不同的密码期限,使用 chage 命令。下面的命令可以查看某个用户的密码限期:

$ sudo chage -l xmodulo

Last password change : Dec 30, 2013 Password expires : never Password inactive : never Account expires : never Minimum number of days between password change : 0 Maximum number of days between password change : 99999 Number of days of warning before password expires : 7

默认情况下,用户的密码永不过期。

下面的命令用于修改 xmodulo 用户的密码期限:

$ sudo chage -E 6/30/2014 -m 5 -M 90 -I 30 -W 14 xmodulo

上面的命令将密码期限设为2014年6月3日。另外,修改密码的最短周期为5天,最长周期为90天。密码过期前14天会发送消息提醒用户,过期后帐号会被锁住30天。


via: http://xmodulo.com/2013/12/set-password-policy-linux.html

译者:bazz2 校对:Caroline

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

自从理查德·斯托曼宣布编写名为 GNU 的完全兼容 UNIX 的软件系统以来已经过去 30 年了,GNU 点燃了软件自由之理念,并使开源斗争延续至今

GNU 不是第一款分布式免费软件,却是第一款宣布永久免费,以及“不受政治约束的自由软件”。

在 GNU 宣言中,斯托曼描述了美好的愿景。“从长远角度来看,”他写道,“软件自由是步入后稀缺世界的必经之道,在后稀缺世界任何人都无需为生计奔波。人们可以自愿投身于一些他们感兴趣的活动,比如软件开发,代价只是每周花费十个小时完成诸如法律制定、家庭协商、机器人修理、小行星观察等工作任务。”

在现实世界中,GNU 因为'EMACS 社区'以及由詹姆斯·高斯林编写 UNIX 版 Emacs 所引发的争论而发展迅速。在'针对 ITS 用户的 Emacs 手册'里,标示着 1981 年 10 月 22 日起,斯托曼就表明了授权 GPL 的想法。

“Emacs 并未抄袭任何软件,”他写道。“与之相反,你正在加入 Emacs 软件分享社区。加入社区的条件是你必须提交对 Emacs 作出的改进,包括任何你所写的插件。”

最初,高斯林基于其他人已经做出贡献的原因,允许自由分发高斯林版本 Emacs 的源代码。但是,1983 年 4 月,斯托曼就此谈道:“他通过申请版权的方式伤害了每一个人,他不允许任何人进行二次发布,接着把软件贩卖给软件公司。”

斯托曼被此种背叛的行为所伤害,但是高斯林,不久后作为 Java 之父而闻名于世,说道:“他对我的处理方式反映了他是一个既胆小又卑鄙的人,你可以从他做过的事看出来。”

围绕这件事的反击与法律威胁直接促成了 GNU 的成立,以及之后的 GPL 协议。高斯林版 Emacs 不久之后就被 GNU 版 Emacs 所吞并。GPL 出现的标志是 1985 年的 'GNU Emacs 分发许可事项',经过几次修改重新发布,直到 1989 年 GPL 1.0 颁布。

斯托曼之后讲述当他创建 GNU 的时候,人们说:“噢,这是一项艰难地任务;你不可能写出一个像 UNIX 那样的完整系统来。我们能为之做出多少呢?这个主意很棒,但是很不现实。”然而斯托曼的回应是无论如何他都会去做。“这就是我强大的地方。我强大在我非常非常坚决,我会忽视各种诸如为什么你应该改变你的目标等理由,忽略许多其他人会为之动摇的因素。许多人都想成为胜利的一方。我并不反对这种想法。我只想成为正确的一方,即使甚至我没有成为胜利的一方,直到最后我仍将全力以赴。”

“这和钱没有关系”,他在 1999 年说道,“这关乎自由。如果你认为这和钱有关就已经偏离讨论方向了。我只想自由地使用电脑,使用电脑去合作,在使用电脑分享的过程中不会被限制或是禁止。GNU/Linux 系统现在或多或少已经做到了一些。系统因为付诸实践的原因正变得越来越流行。它是很好的操作系统。危险是人们将会喜欢上它,因为它是实用的,它将会变得流行,只要没有人在背后对这些理想产生含糊的念头,当然这些念头将会是具有讽刺意味的失败。”

自由软件归因于斯托曼的固执以及洞察力,但是正如同他过去在 GNU 项目中建议的一样,软件自由的斗争与成果很大程度上来自于他人的贡献,对它的威胁将会继续存在。

“当其他人怀疑我是否能够胜任工作,不确定我那么做将是否足够实现目标时,我已经完成了我的大部分工作。我尝试了各种手段,因为在我的同伴和敌人之间除了我什么都没有。我自己都感到很惊讶,有时候我竟然成功了。

“有时候我会失败; 我的一些同伴会突然离去。接着我会寻找其他受到威胁的同伴,准备好另一场战役。随着时间的流逝,我学会了寻找恐惧并将之置于我和我的同伴中,号召其他黑客来加入我。”

“如今,很多时候我不是唯一的。当我看着这么多黑客不断参与进来并坚持下去,这是一种救赎、也是一种乐趣,我知道,这片乐土将会幸存下来 – 不只是现在。因为危险每年都会扩增。”


via: http://www.linuxuser.co.uk/features/gnu-toward-the-post-scarcity-world-the-free-software-column

译者:SteveArcher 校对:wxy

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

Ubuntu的创始人表示,六个月一次的Ubuntu发布传统可能会成为过去。

‘也许我们会减轻这6个月的事而把它们分布到各个时间段里’

PCPro说到Canonical的融合计划 —— 我们将会看到一个供手机、平板和台式机等全平台使用的Ubuntu 15.04 —— Mark Shuttleworth解释说移动终端用户已经习惯于在任何时候接受升级,这部分原因可能会带来 “也许我们会减轻这6个月的事而把它们分布到各个时间段里”

这已经不是第一次提出关于更改Ubuntu更新周期的问题了。今年早些时候的讨论都涉及到移动发行版的滚动发布,Ubuntu 13.04的发布带给用户更新方式的改变

手机平台覆盖的优势

这并不是这次简单采访中提到的唯一的点,Shuttleworth还表示,他相信Ubuntu将领先于微软实现真正的移动/桌面融合。那个总部在雷蒙德的公司曾说过在Windows Phone和Windows8平台上的统一因Windows RT的不良反馈而解散

Shuttleworth指出当涉及到招揽应用开发商时,Ubuntu的Linux基础,可以给Ubuntu带来巨大优势。

“Android的原生应用及web应用相比Windows平台而言更接近于在Ubuntu上的程序。许多Android开发人员使用Ubuntu,并在ubuntu上开发他们的软件,所以Ubuntu更容易成为开发人员的目标平台。”

‘没有公布硬件合作伙伴’

当被问及是否有硬件合作伙伴愿意生产的Ubuntu手机和平板电脑,Mark有几分躲闪,他说,虽然目前“没有宣布合作伙伴”,但目前已经有几个“家用品牌”的“前沿设备”将Ubuntu作为内部测试操作系统。

他表示,这个独立的测试是一种“强烈利益信号”,带给产品更“舒适”的体验。

此前,在十二月份的巴黎Le Web会议上Mark告诉记者,与硬件合作伙伴达成协议2014年将发布一款高端手机。该公司生产的手机的名称尚未透露(译注:现在我们已经知道了~)。


via: http://www.omgubuntu.co.uk/2013/12/ubuntu-touch-plans-2014

译者:乌龙茶 校对:wxy

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

对于一些用惯了Windows的用户来说,刚开始接触Ubuntu的时候会面临这样的一个问题,这个问题在很多论坛里面也经常出现,前段时间也有位读者问到相同的问题:

在 Ubuntu 中有和 Windows 下的磁盘管理一样的工具么?

对于那些不太清楚磁盘管理的用户,下面有个简单介绍。

磁盘管理是一个从 Windows XP 起就有的默认工具,其主要负责磁盘相关的任务,比如:创建和格式化磁盘、初始化磁盘,重新划分磁盘大小和指定分区号以及删除分区。

在 Windows 下用户使用和磁盘分区管理相关的命令行工具进行磁盘操作,这个工具很高大上。

问题是在 Ubuntu 系统下有这样的工具么,答案是肯定滴。

Ubuntu 下有个很相似的软件叫做 GNOME Disk Utility ,这个工具同样能尽心查看/管理你的磁盘分区,以及创建和恢复分区。你同样可以用它进行创建和格式化分区,挂载和卸载卷组以及其它相关的磁盘操作。

尽管这和Windows下的管理工具相似,但是它不允许用户重新定义分区和卷组大小,因为 ubuntu 不支持驱动器号。

所以,想在 Ubuntu 系统下使用类似 windows 下的磁盘管理工具,那就试试 GNOME Disk Utility 吧。

你可以在 Unity Dash 中搜索 硬盘 ,打开时,它会自己识别你电脑上的外部硬盘和额外的硬盘驱动器。

一旦驱动器被选择你就可以进行磁盘相关的操作了,比如:格式化、创建分区,管理驱动器。另外在磁盘访问超时情况下一些待机模式的操作。

需要注意的是,当你格式化一个磁盘让它既可以在 Windows 下又可以在 Ubuntu 下使用时,一定要选择 NTFS 文件系统。

那么,在 Ubuntu 下使用磁盘配置你的驱动器吧。

慢慢享用,新年快乐!


via: http://www.liberiangeek.net/2014/01/daily-ubuntu-tips-windows-disk-management-equivalent-in-ubuntu/

译者:Timeszoro 校对:Caroline

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

在前四篇 “鲜为人知的Linux命令” 系列文章受到高度赞赏之后,我们将为广大读者呈上此系列的最后一篇文章,虽然是最后一篇,但是其重要性毫不逊于前几篇。

前几篇文章的地址如下:

42. lsb\_release

‘lsb\_release’ 命令会打印特殊发行版的信息。如果 lsb\_release 还没安装,你可以在基于 Debain 的发行版中用命令 apt 安装,在基于 Red Hat 系统下用 yum 来安装包。

# lsb_release -a
LSB Version:    :base-4.0-ia32:base-4.0-noarch:core-4.0-ia32:core-4.0-noarch:graphics-4.0-ia32:
Distributor ID: CentOS
Description:    CentOS release 6.3 (Final)
Release:        6.3
Codename:       Final

注意:选项‘-a’,会显示有关版本、ID、详情、发行号研发代号的全部可用信息。

43. nc -zv localhost 80

检查 80 端口是否被打开。我们可以用任何其他端口号替换‘80’来检查端口是否被打开或关闭。

$ nc -zv localhost 80
Connection to localhost 80 port [tcp/http] succeeded!

(译注:出现该信息表示80端口已被打开。)

检查 8080 端口是否启用

$ nc -zv localhost 8080
nc: connect to localhost port 8080 (tcp) failed: Connection refused

(译注:该信息显示了8080端口并未打开。)

44. curl ipinfo.io

该命令会输出并提供 IP 地址‘地理位置’

$ curl ipinfo.io 

"ip": "xx.xx.xx.xx", "hostname": "triband-del-aa.bbb.cc.ddd.bol.net.in", "city": "null", "region": "null", "country": "IN", "loc": "20,77", "org": "AS17813 Mahanagar Telephone Nigam Ltd".

45. find . -user root

该命令会输出当前目录下( root )用户所拥有的文件(译注:即owner为root)。下面是在当前目录下列出的所有 ‘root’用户拥有的文件。

# find . -user root
./.recently-used.xbel
./.mysql_history
./.aptitude
./.aptitude/config
./.aptitude/cache
./.bluefish
./.bluefish/session-2.0
./.bluefish/autosave
./.bash_history

在当前路径下列出所有 ‘avi’ 用户拥有的文件

# find . -user avi
./.cache/chromium/Cache/f_002b66
./.cache/chromium/Cache/f_001719
./.cache/chromium/Cache/f_001262
./.cache/chromium/Cache/f_000544
./.cache/chromium/Cache/f_002e40
./.cache/chromium/Cache/f_00119a
./.cache/chromium/Cache/f_0014fc
./.cache/chromium/Cache/f_001b52
./.cache/chromium/Cache/f_00198d
./.cache/chromium/Cache/f_003680

46. sudo apt-get build-dep ffmpeg

该命令会在相应的包安装时自动构建依赖关系。因此包安装的过程将非常流畅,也是非常容易的。

# apt-get build-dep ffmpeg
libxinerama-dev libxml-namespacesupport-perl libxml-sax-expat-perl
libxml-sax-perl libxml-simple-perl libxrandr-dev libxrender-dev
x11proto-render-dev x11proto-xinerama-dev xulrunner-dev
The following packages will be upgraded:
libpixman-1-0

1 upgraded, 143 newly installed, 0 to remove and 6 not upgraded.
Need to get 205 MB of archives.
After this operation, 448 MB of additional disk space will be used.
Do you want to continue [Y/n]?

47. lsof -iTCP:80 -sTCP:LISTEN

该命令会输出所用正在使用 80 端口的 进程/服务 的名称。在 80 端口运行下列命令会更好理解这个命令,它会列出所用运行在该端口的 进程/服务

root@localhost:/home/avi# lsof -iTCP:80 -sTCP:LISTEN
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
apache2 1566 root 5u IPv6 5805 0t0 TCP *:www (LISTEN)
apache2 1664 www-data 5u IPv6 5805 0t0 TCP *:www (LISTEN)
apache2 1665 www-data 5u IPv6 5805 0t0 TCP *:www (LISTEN)
apache2 1666 www-data 5u IPv6 5805 0t0 TCP *:www (LISTEN)
apache2 1667 www-data 5u IPv6 5805 0t0 TCP *:www (LISTEN)
apache2 1668 www-data 5u IPv6 5805 0t0 TCP *:www (LISTEN)

同样,你可以检查运行在端口 22 的进程/服务。

root@localhost:/home/avi# lsof -iTCP:22 -sTCP:LISTEN
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
sshd 2261 root 3u IPv4 8366 0t0 TCP *:ssh (LISTEN)
sshd 2261 root 4u IPv6 8369 0t0 TCP *:ssh (LISTEN)

48. find -size +100M

这条find命令会在当前目录下列出所有超过指定大小的文件(这里指定为100 MB),递归查询。

# find -size +100M
./.local/share/Trash/files/linuxmint-15-cinnamon-dvd-32bit.iso
./Downloads/Fedora-Live-Desktop-i686-19-1.iso
./Downloads/Ant Videos/shakira 2.avi
./Downloads/Deewar.avi
./Desktop/101MSDCF/MOV02224.AVI
./Desktop/101MSDCF/MOV02020.AVI
./Desktop/101MSDCF/MOV00406.MP4
./Desktop/squeeze.iso

在当前目录递归的列出所用大于 1000 MB 的文件。

root@localhost:/home/avi# find -size +1000M
./Downloads/The Dark Knight 2008 hindi BRRip 720p/The Dark Knight.mkv.part
./Downloads/Saudagar - (1991) - DVDRiP - x264 - AAC 5.1 - Chapters - Esubs - [DDR]/Saudagar 
- (1991) - DVDRiP - x264 - AAC 5.1 - Chapters - Esubs - [DDR].mkv
./Downloads/Deewar.avi
./Desktop/squeeze.iso

49. pdftk

pdftk命令用来合并几个pdf文件。你必须安装有 pdftk 程序。如果还没有,请用apt或yum来获取相应的包。

$ pdftk 1.pdf 2.pdf 3.pdf …. 10.pdf cat output merged.pdf

50. ps -LF -u user\_name

该命令会输出一个用户的进程和线程。选项“L”(列出线程),选项“-F”(完整格式化)

$ ps -LF -u avi
avi 21645 3717 21766 0 5 66168 117164 1 18:58 ? 00:00:00 /usr/
avi 21645 3717 21768 0 5 66168 117164 1 18:58 ? 00:00:00 /usr/
avi 22314 3717 22314 0 2 42797 50332 0 19:00 ? 00:00:40 /usr/
avi 22314 3717 22316 0 2 42797 50332 1 19:00 ? 00:00:00 /usr/
avi 22678 24621 22678 0 1 969 1060 1 21:05 pts/1 00:00:00 ps -L
avi 23051 3717 23051 0 2 37583 45444 1 19:03 ? 00:00:52 /usr/
avi 23051 3717 23053 0 2 37583 45444 0 19:03 ? 00:00:03 /usr/
avi 23652 1 23652 0 2 22092 12520 0 19:06 ? 00:00:22 gnome
avi 23652 1 23655 0 2 22092 12520 0 19:06 ? 00:00:00 gnome

51. startx - :1

分享 X 会话。如果你需要频繁的(以不同用户身份)登入或登出桌面时,那就需要 startx 来救场。这个命令建立了一个新的会话从而避免了在一个会话中反复的登入和登出。为了在X会话间进行交换,我们可以通过‘ctrl+Alt+F7’和‘ctrl+Alt+F8’的组合键来完成。

注意:快捷键“ctrl+Alt+F1~F6“是为了控制台会话准备的,而“ctrl+Alt+F7~F12”则为X会话服务。因此我们有6个控制台会话和6个X会话,不需要频繁的登入登出。上面的顺序适用于大多数的发行版,然而不同发行版可能会有不同的实现。我在Debian中尝试过,运行的很好。

以上就是今天的所有内容。我们如有需要会在以后的文章中继续发布“鲜为人知的命令”,不要忘记留下你对我们文章和‘ 鲜为人知的Linux命令 ’系列的宝贵意见。我会很快带来我的新文章,敬请期待,记得常回来看看哦。


via: http://www.tecmint.com/10-lesser-known-useful-linux-commands-part-v/

译者:Luoxcat 校对:Caroline

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