ruchi 发布的文章

Linux-Dash是一个用于GNU/Linux机器的,低开销的监控仪表盘。您可以安装试试!Linux Dash的界面提供了您的服务器的所有关键信息的详细视图,可监测的信息包括RAM、磁盘使用率、网络、安装的软件、用户、运行的进程等。所有的信息都被分成几类,您可以通过主页工具栏中的按钮跳到任何一类中。Linux Dash并不是最先进的监测工具,但它十分适合寻找灵活、轻量级、容易部署的应用的用户。

Linux-Dash的功能

  • 使用一个基于Web的漂亮的仪表盘界面来监控服务器信息
  • 实时的按照你的要求监控RAM、负载、运行时间、磁盘配置、用户和许多其他系统状态
  • 支持基于Apache2/niginx + PHP的服务器
  • 通过点击和拖动来重排列控件
  • 支持多种类型的linux服务器

当前控件列表

  • 通用信息
  • 平均负载
  • RAM
  • 磁盘使用量
  • 用户
  • 软件
  • IP
  • 网络速率
  • 在线状态
  • 处理器
  • 日志

在Ubuntu server 14.10上安装Linux-Dash

首先您需要确认您安装了Ubuntu LAMP server 14.10,接下来您需要安装下面的包:

sudo apt-get install php5-json unzip

安装这个模块后,需要在apache2中启用该模块,所以您需要使用下面的命令重启apache2服务器:

sudo service apache2 restart

现在您需要下载linux-dash的安装包并安装它:

wget https://github.com/afaqurk/linux-dash/archive/master.zip

unzip master.zip

sudo mv linux-dash-master/ /var/www/html/

接下来您需要使用下面的命令来改变权限:

sudo chmod 755 /var/www/html/linux-dash-master/

现在您便可以访问http://serverip/linux-dash-master/了。您应该会看到类似下面的输出:


via: http://www.ubuntugeek.com/install-linux-dash-web-based-monitoring-tool-on-ubntu-14-10.html

作者:ruchi 译者:wwy-hust 校对:wxy

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

Mydumper 是 MySQL 数据库服务器备份工具,它比 MySQL 自带的 mysqldump 快很多。它还有在转储的同时获取远程服务器二进制日志文件的能力。

Mydumper 的优势

  • 并行能力 (因此有高速度) 和性能 (高效的代码避免了耗费 CPU 处理能力的字符集转换过程)
  • 更容易管理输出 (每个表都对应独立的文件,转储元数据等,便于查看/解析数据)
  • 一致性 :跨线程维护快照, 提供精确的主从日志定位等。
  • 可管理性 : 支持用 PCRE 来包含/排除指定的数据库和表(LCTT译注:PCRE,Perl Compatible Regular Expression,Perl兼容正则表达式)

在Ubuntu上安装 mydumper

打开终端运行以下命令

sudo apt-get install mydumper

使用 Mydumper

语法

mydumper [options]

应用程序选项:

  • -B, --database 要转储的数据库
  • -T, --tables-list 逗号分隔的转储表列表(不会被正则表达式排除)
  • -o, --outputdir 保存输出文件的目录
  • -s, --statement-size 插入语句的字节大小, 默认是1000000个字节
  • -r, --rows 把表按行数切块
  • -c, --compress 压缩输出文件
  • -e, --build-empty-files 空表也输出文件
  • -x, --regex 匹配‘db.table’的正则表达式
  • -i, --ignore-engines 以逗号分隔的被忽略的存储引擎列表
  • -m, --no-schemas 不转储表架构
  • -k, --no-locks 不执行临时共享读锁。警告: 这会导致备份的不一致性
  • -l, --long-query-guard 设置长查询的计时器秒数,默认是60秒
  • --kill-long-queries 杀死长查询 (而不是退出程序)
  • -b, --binlogs 获取二进制日志文件快照并转储数据
  • -D, --daemon 开启守护进程模式
  • -I, --snapshot-interval 每个转储快照之间的间隔时间(分钟), 需要开启 --daemon, 默认是60分钟
  • -L, --logfile 日志文件的名字,默认是stdout
  • -h, --host 要连接的主机
  • -u, --user 有转储权限的用户名
  • -p, --password 用户密码
  • -P, --port 连接的TCP/IP端口
  • -S, --socket 用于连接的Unix套接字文件
  • -t, --threads 使用的线程数,默认是4
  • -C, --compress-protocol 在MySQL连接上使用压缩
  • -V, --version 查看程序版本号
  • -v, --verbose 输出信息的等级, 0 = silent, 1 = errors, 2 = warnings, 3 = info, 默认是2

Mydumper 例子

mydumper \
--database=$DB_NAME \
--host=$DB_HOST \
--user=$DB_USER \
--password=$DB_PASS \
--outputdir=$DB_DUMP \
--rows=500000 \
--compress \
--build-empty-files \
--threads=2 \
--compress-protocol

Mydumper 输出数据的说明

Mydumper 不直接指定输出的文件,而是输出到文件夹的文件中。--outputdir 选项指定要使用的目录名称。

输出分为两部分

表结构

对数据库中的每个表,创建一个包含 CREATE TABLE 语句的文件。文件命名为:

dbname.tablename-schema.sql.gz

数据

每个表名跟着按 --rows 参数所切块的数量, 创建文件名字为:

dbname.tablename.0000n.sql.gz

"n"从0开始.

你可以使用Myloader恢复这些备份

myloader \
--database=$DB_NAME \
--directory=$DB_DUMP \
--queries-per-transaction=50000 \
--threads=10 \
--compress-protocol \
--verbose=3

via: http://www.ubuntugeek.com/mydumper-mysql-database-backup-tool.html

作者:ruchi 译者:ictlyh 校对:wxy

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

prips是一个可以打印出指定范围内所有ip地址的一个工具。它可以增强那些只能同时工作在一个主机上的工具的可用性。

在ubuntu上安装prips

打开终端并输入下面的命令

sudo apt-get install prips

使用prips

prips语法

prips [-c] [-d delim] [-e exclude] [-f format] [-i incr] start end
prips [-c] [-d delim] [-e exclude] [-f format] [-i incr] CIDR-block

可用选项

prips接受下面的命令行选项:

  • -c -- 以CIDR形式打印范围。
  • -d 分隔符 -- 用ASCII码作为分隔符,0 <= 分隔符 <= 255。
  • -e -- 排除输出的范围。
  • -f 格式 -- 设置地址格式 (hex:16进制, dec:10进制, 或者dot:以点分隔).
  • -i 增长 -- 设置增长上限

Prips示例

显示保留的子网内的所有地址:

prips 192.168.32.0 192.168.32.255

同上面一样,使用CIDR标示:

prips 192.168.32/24

只显示A类保留子网内所有可用的地址,用空格而不是换行作为分隔符:

prips -d 32 10.0.0.1 10.255.255.255

每块显示4个ip地址:

prips -i 4 192.168.32.7 192.168.33.5

打印包含两个地址的最小CIDR块。

prips -c 192.168.32.5 192.168.32.11

via: http://www.ubuntugeek.com/prips-print-ip-address-on-a-given-range.html

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

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

2015年1月27日,GNU C库(glibc)的一个漏洞也称鬼影漏洞(GHOST)被公诸于众。总的来说,这个漏洞允许远程攻击者利用glibc中的GetHOST函数的缓冲区溢出漏洞来获得系统的完全控制。点击这里获得更多细节。

鬼影漏洞可在版本在glibc-2.18之前的Linux系统上被利用。也就是说没有打过补丁的版本2.2到2.17都是有风险的。

检查系统漏洞

你可以使用下面的命令来检查glib的版本

ldd --version

输出

ldd (Ubuntu GLIBC 2.19-10ubuntu2) 2.19 Copyright (C) 2014 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. Written by Roland McGrath and Ulrich Drepper.

glib的版本应该高于2.17,我们的输出是2.19。如果你看到glib的版本在2.2到2.17之间。你应该运行下面的命令。

sudo apt-get update

sudo apt-get dist-upgrade

安装完之后,你应该用下面的命令重启系统。

sudo reboot

重启完成之后,你可以用同样的命令来检查glib的版本。


via: http://www.ubuntugeek.com/how-to-protect-ubuntu-server-against-the-ghost-vulnerability.html

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

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

Ramlog 以系统守护进程的形式运行。在系统启动时它创建虚拟磁盘(ramdisk),将 /var/log 下的文件复制到虚拟磁盘中,同时把虚拟磁盘挂载为/var/log。然后所有的日志就会更新到虚拟磁盘上。而当 ramlog 重启或停止时,需要记录到硬盘上的日志就会保留在目录/var/log.hdd中。而关机的时候,(ramdisk上的)日志文件会重新保存到硬盘上,以确保日志一致性。Ramlog 2.x默认使用tmpfs文件系统,同时也可以支持ramfs和内核ramdisk。使用rsync(译注:Linux数据镜像备份工具)这个工具来同步日志。

注意:如果突然断电或者内核崩溃(kernel panic)时,没有保存进硬盘的日志将会丢失。

如果你拥有够多的可用内存,而又想把日志放进虚拟磁盘,就安装ramlog吧。它是笔记本用户、带有UPS的系统或是直接在flash中运行的系统的优良选择,可以节省日志的写入时间。

Ramlog的运行机制以及步骤如下:

  1. Ramlog 由第一个守护进程(这取决于你所安装过的其它守护进程)启动。
  2. 然后创建目录/var/log.hdd并将其硬链至/var/log。
  3. 如果使用的是tmpfs(默认)或者ramfs 文件系统,将其挂载到/var/log上。
  4. 而如果使用的是内核ramdisk,ramdisk会在/dev/ram9中创建,并将其挂载至/var/log。默认情况下ramlog会占用所有ramdisk的内存,其大小由内核参数"ramdisk\_size"指定。
  5. 接着其它的守护进程被启动,并在ramdisk中更新日志。Logrotate(译注:Linux日志轮替工具)和 ramdisk 配合的也很好。
  6. 重启(默认一天一次)ramlog时,目录/var/log.hdd将借助rsync与/var/log保持同步。日志自动保存的频率可以通过cron(译注:Linux例行性工作调度)来控制。默认情况下,ramlog 的调度任务放置在目录/etc/cron.daily下。
  7. 系统关机时,ramlog在最后一个守护进程关闭之前关闭。
  8. 在ramlog关闭期间,/var/log.hdd中的文件将被同步至/var/log,接着/var/log和/var/log.hdd都被卸载,然后删除空目录/var/log.hdd。

注意:- 此文仅面向高级用户

在Ubuntu中安装Ramlog

首先需要用以下命令,从这里下载.deb安装包:

wget http://www.tremende.com/ramlog/download/ramlog_2.0.0_all.deb

下载ramlog\_2.0.0\_all.deb安装包完毕,使用以下命令进行安装:

sudo dpkg -i ramlog_2.0.0_all.deb

这一步会完成整个安装,现在你需要运行以下命令:

sudo update-rc.d ramlog start 2 2 3 4 5 . stop 99 0 1 6 .

现在,在更新sysklogd的初始化顺序,使之能在ramlog停止运行前正确关闭:

sudo update-rc.d -f sysklogd remove

sudo update-rc.d sysklogd start 10 2 3 4 5 . stop 90 0 1 6 .

然后重启系统:

sudo reboot

系统重启完毕,运行'ramlog getlogsize'来获取你当前的/var/log的空间大小。在此基础之上多分配40%的空间,确保ramdisk有足够的空间(这整个都将作为ramdisk的空间大小)。

编辑引导配置文件,如/etc/grub.conf,、/boot/grub/menu.lst 或/etc/lilo.conf(译注:具体哪个配置文件视不同引导加载程序而定),给你的当前内核的新增选项 'ramdisk\_size=xxx' ,其中xxx是ramdisk的空间大小。

配置Ramlog

基于deb的系统中,Ramlog的配置文件位于/etc/default/ramlog,你可以在该配置文件中设置以下变量:

RAMDISKTYPE=0
# 取值:
# 0 -- tmpfs (可被交换到交换分区) -- 默认
# 1 -- ramfs (旧内核不能设置最大空间大小, 
# 不能被交换到交换分区,和 SELinux 不兼容)
# 2 -- 老式的内核 ramdisk
TMPFS_RAMFS_SIZE=
# 可以用于 tmpfs 或 ramfs 的最大内存大小
# 这个值可以是百分比或数值(单位是 Mb),例如:
# TMPFS_RAMFS_SIZE=40%
# TMPFS_RAMFS_SIZE=100m
# 该值为空表示 tmpfs/ramfs 的大小是全部内存的 50%
# 更多选项可以参考 ‘man mount' 中的‘Mount options for tmpfs' 一节
# (补充,在较新的内核中,ramfs  支持大小限制,
# 虽然 man 中说没有这个挂载选项)
# 该选项仅用于 RAMDISKTYPE=0 或 1 时
KERNEL_RAMDISK_SIZE=MAX
#以 kb 为单位指定的内核 ramdisk 大小,或者使用 MAX 来使用整个 ramdisk。
#该选项仅用于 RAMDISKTYPE=2 时
LOGGING=1
# 0=关闭, 1=打开 。记录自身的日志到 /var/log/ramdisk
LOGNAME=ramlog
# 自身的日志文件名 (用于 LOGGING=1时)
VERBOSE=1
# 0=关闭, 1=打开 (设置为 1时,启动或停止失败时会调用 teststartstop 将细节
# 写到日志中) 

在Ubuntu中卸载ramlog

打开终端运行以下命令:

sudo dpkg -P ramlog

注意:如果ramlog卸载之前仍在运行,需要重启系统完成整个卸载工作。


via: http://www.ubuntugeek.com/improve-system-performance-by-moving-your-log-files-to-ram-using-ramlog.html

作者:ruchi 译者:soooogreen 校对:wxy

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

前面我们已经讨论了如何清理 Ubuntu GNU/Linux 系统,这篇教程将在原有教程的基础上,增加对新的 Ubuntu 发行版本的支持,并介绍更多的工具。

假如你想清理你的 Ubuntu 主机,你可以按照以下的一些简单步骤来移除所有不需要的垃圾文件。

(题图来自:amysplaceforyouth.org)

移除多余软件包

这又是一个内置功能,但这次我们不必使用新得立包管理软件(Synaptic Package Manager),而是在终端中达到目的。

现在,在终端窗口中键入如下命令:

sudo apt-get autoclean

这便激活了包清除命令。这个命令所做的工作是: 自动清除那些当你安装或升级程序时系统所缓存的 .deb 包(即清除 /var/cache/apt/archives 目录,不过只清理过时的包)。如果需要使用清除命令,只需在终端窗口中键入以下命令:

sudo apt-get clean

然后你就可以使用自动移除命令。这个命令所做的工作是:清除那些 在系统中被某个已经卸载的软件 作为依赖所安装的软件包。要使用自动移除命令,在终端窗口中键入以下命令:

sudo apt-get autoremove

移除不需要的本地化数据

为达到此目的,我们需要安装 localepurge 软件,它将自动移除一些不需要的本地化数据(LCTT 译注:即各种语言翻译)。这个软件是一个简单的脚本,它将从那些不再需要的本地化文件和本地化联机手册( man pages ) 所占用的空间中回收磁盘空间。这个软件将在任何 apt 安装命令运行时 被自动激活。

在 Ubuntu 中安装 localepurge:

sudo apt-get install localepurge

在通过 apt-get install 安装任意软件后, localepurge 将移除所有不是使用你系统中所设定语言的翻译文件和翻译的联机手册。

假如你想设置 localepurge,你需要编辑 /ect/locale.nopurge 文件。

根据你已经安装的软件,这将为你节省几兆的磁盘空间。

例子:

假如我试着使用 apt-get 来安装 dicus软件:

sudo apt-get install discus

在软件安装完毕之后,你将看到如下提示:

localepurge: Disk space freed in /usr/share/locale: 41860K

移除孤包

假如你想移除孤包,你需要安装 deborphan 软件:

在 Ubuntu 中安装 deborphan :

sudo apt-get install deborphan

使用 deborphan,打开终端并键入如下命令即可:

sudo deborphan | xargs sudo apt-get -y remove --purge

使用 GtkOrphan 来移除孤包

GtkOrphan (一个针对 debian 系发行版本的 Perl/Gtk2 应用) 是一个分析用户安装过程状态并查找孤立库文件的图形化工具,它为 deborphan 提供了一个 GUI 前端,并具备移除软件包的功能。

在 Ubuntu 中安装 GtkOrphan,打开终端并运行如下命令:

sudo apt-get install gtkorphan

一张截图

使用 Wajig 移除孤包

Wajig是 Debian 包管理系统中一个简单的软件包管理前端。它将 apt、apt-cache、 dpkg、 /etc/init.d 中的脚本等 通过一个单一命令集成在一起,它的设计初衷是使用简单和为它的所有功能提供丰富的文档。

通过适当的 sudo配置,大多数(如果不是全部)的软件包安装和创建等任务可以通过一个用户 shell 来完成。Wajig 也适用于一般的系统管理。另外,一个 Gnome GUI 命令 gjig也被囊括在这个软件包之中。

在 Ubuntu 中安装 Wajig,打开终端并运行如下命令:

sudo apt-get install wajig

Debfoster --- 跟踪你在安装过程中的操作

debfoster 将会维护一个列有被明确需要安装的软件包的列表,但不包括那些作为某个软件的依赖而被安装的软件包。参数是完全可选的,你甚至可以使得在 dpkg 和/或 apt-get 每次运行之后马上激活 debfoster 。

另外,你还可以在命令行中使用 debfoster 来安装或移除某些特定的软件包。那些后缀为 --- 的软件包将会被移除,而没有后缀的软件包将会被安装。

假如一个新的软件包或 debfoster 注意到作为某个软件包的依赖的软件包是一个孤包,则 debfoster 将会询问你下一步如何操作。若你决定保留这个孤包, debfoster 将只会进行记录并继续安装过程;若你觉得这个软件包不足以引起你的兴趣,在 debfoster 询问这个问题后,它将移除这个软件包。进一步的,如果你的决定使得其他的软件包变为孤包,更多的提问将会接踵而来。

在 Ubuntu 中安装 debfoster,打开终端并运行如下命令:

sudo apt-get install debfoster

使用 debfoster

为了创建一个初始跟踪文件,可以使用如下命令:

sudo debfoster -q

你总可以编辑 /var/lib/debfoster/keepers 文件,来定义那些你想留在系统中的软件包。

为了编辑这个文件,可以键入:

sudo vi /var/lib/debfoster/keepers

要强制使 debfoster 去移除所有没有被列在上面这个文件的软件包,或安装作为某些列在这个文件中的软件包的依赖,它也同时会添加所有在这个列表中没有被安装的软件包。若要根据这个列表来执行相关操作,只需执行:

sudo debfoster -f

若需要跟踪你新安装的软件包,你需要时不时地执行如下命令:

sudo debfoster

xdiskusage -- 查看你的硬盘空间都去哪儿了

图形化地展示磁盘使用情况的 du。xdiskusage 是一个用户友好型的程序,它将为你展示你所有磁盘的使用情况。 它是在 Phillip C. Dykstra 所写的 “xdu” 程序的基础上设计的。做了一些修改以使得它可以为你运行 “du”命令,并显示磁盘的剩余空间,并且假如你想清晰地了解你的磁盘空间都去哪儿了,它还可以生成一个 PostScript 格式的名为 display.xdiskusage 的文件。

在 Ubuntu 中安装 xdiskusage,只需使用如下命令:

sudo apt-get install xdiskusage

若你想打开这个应用,你需要使用如下命令:

sudo xdiskusage

一旦这个应用被打开,你将看到如下图所示的界面:

Bleachbit

BleachBit 能快速地释放磁盘空间并不知疲倦地保护你的隐私。它可以释放缓存,删除 cookie,清除 Internet 上网历史,粉碎临时文件,删除日志,丢弃你所不知道存在何处的垃圾。为 Linux 和 Windows 系统而设计,它支持擦除清理数以千计的应用程序,如 Firefox, Internet Explorer, Adobe Flash, Google Chrome, Opera, Safari 等等。除了简单地删除文件,BleachBit 还包括许多高级功能,诸如粉碎文件以防止恢复,擦除磁盘空间来隐藏被其他应用程序所删除文件的痕迹,为火狐“除尘”,使其速度更快等。比免费更好,BleachBit 是一个开源软件。

在 Ubuntu 中安装 Bleachbit,打开终端并运行如下命令:

sudo apt-get install bleachbit

一张截图

使用 Ubuntu-Tweak

最后,你也可以使用 Ubuntu-Tweak 来清理你的系统。


via: http://www.ubuntugeek.com/cleaning-up-a-ubuntu-gnulinux-system-updated-with-ubuntu-14-10-and-more-tools-added.html

作者:ruchi 译者:FSSlc 校对:wxy

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