2017年1月

在本文中,我们将解释两个简单的命令行小技巧,它可以帮你只列出所有的今天的文件。

Linux 用户在命令行上遇到的常见问题之一是定位具有特定名称的文件,如果你知道确定的文件名则可能会容易得多。

不过,假设你忘记了白天早些时候创建的文件的名称(在你包含了数百个文件的 home 文件夹中),但现在你有急用。

下面用不同的方式只列出所有你今天创建或修改的文件(直接或间接)。

1、 使用 ls 命令,只列出你的 home 文件夹中今天的文件。

# ls  -al --time-style=+%D | grep 'date +%D'

其中:

  • -a - 列出所有文件,包括隐藏文件
  • -l - 启用长列表格式
  • --time-style=FORMAT - 显示指定 FORMAT 的时间
  • +%D - 以 %m/%d/%y (月/日/年)格式显示或使用日期

Find Recent Files in Linux

在Linux中找出最近的文件

此外,你使用可以 -X 标志来按字母顺序对结果排序

# ls -alX --time-style=+%D | grep 'date +%D'

你也可以使用 -S 标志来基于大小(由大到小)来排序:

# ls -alS --time-style=+%D | grep 'date +%D'

2、 另外,使用 find 命令会更灵活,并且提供比 ls 更多的选项,可以实现相同的目的。

  • -maxdepth 级别用于指定在搜索操作的起点下(在这个情况下为当前目录)的搜索层级(子目录层级数)。
  • -newerXY,用于所寻找的文件的时间戳 X 比参照文件的时间戳 Y 更新一些的文件。 XY 表示以下任何字母: - a - 参照文件的访问时间 - B - 参照文件的创建时间 - c - 参照文件的 inode 状态改变时间 - m - 参照文件的修改时间 - t - 直接指定一个绝对时间

下面的命令意思是只找出 2016-12-06 这一天修改的文件:

# find . -maxdepth 1 -newermt "2016-12-06"

Find Today's Files in Linux

在 Linux 中找出今天的文件

重要:在上面的 find 命令中使用正确的日期格式作为参照时间,一旦你使用了错误的格式,你会得到如下错误:

# find . -maxdepth 1 -newermt "12-06-2016"
find: I cannot figure out how to interpret '12-06-2016' as a date or time

或者,使用下面的正确格式:

# find . -maxdepth 1 -newermt "12/06/2016"
或者
# find . -maxdepth 1 -newermt "12/06/16"

Find Todays Modified Files in Linux

在 Linux 中找出今天修改的文件

你可以在我们的下面一系列文章中获得 lsfind 命令的更多使用信息。

在本文中,我们解释了如何使用 ls 和 find 命令帮助只列出今天的文件。 请使用以下反馈栏向我们发送有关该主题的任何问题或意见。 你也可以提醒我们其他可以用于这个目的的命令。


作者简介:Aaron Kili是一名 Linux 和 F.O.S.S 的爱好者,未来的 Linux 系统管理员、网站开发人员,目前是 TecMint 的内容创作者,他喜欢用电脑工作,并乐于分享知识。


via: http://www.tecmint.com/find-recent-modified-files-in-linux/

作者:Aaron Kili 译者:geekpi 校对:jasminepeng

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

这一节的Samba4 AD DC 架构系列文章,我们将会讨论如何把 Windows 10 系统的电脑添加到 Samba4 域环境中,以及如何在 Windows 10 系统下管理域环境。

一旦 Windows 10 系统加入到 Samba4 AD DC ,我们就可以在 Windows 10 系统中创建、删除或者禁用域用户和组了,可以创建新的组织单元,创建、编辑和管理域策略,还可以管理 Samba4 域 DNS 服务。

上面所有的功能和其它一些复杂的与域管理相关的工作都可以通过 Windows 环境下的 RSAT 工具来完成—— Microsoft 远程服务器管理工具。

要求

1、 在 Ubuntu 系统上使用 Samba4 来创建活动目录架构(一)

2、 在 Linux 命令行下管理 Samba4 AD 架构(二)

第一步:配置域时间同步

1、在使用 Windows 10 系统的 RSAT 工具来管理 Samba4 ADDC 之前,我们需要了解与活动目录相关的一个很重要的服务,该服务要求精确的时间同步

在大多数的 Linux 发行版中,都由 NTP 进程提供时间同步机制。AD 环境默认允许最大的时间差距是 5 分钟。

如果时间差距超过 5 分钟,你将会遇到各种各样的异常报错,最严重的会影响到 AD 用户、域成员服务器或共享访问等。

为了在 Ubuntu 系统中安装网络时间协议进程和 NTP 客户端工具,可执行以下命令:

$ sudo apt-get install ntp ntpdate

Install NTP on Ubuntu

在 Ubuntu 系统下安装 NTP 服务

2、下一步,修改 NTP 配置文件,使用一个离你最近的 NTP 服务地址列表替换默认的 NTP 池服务列表。

NTP 服务器地址列表可以从 NTP 地址库项目官方网站获取:http://www.pool.ntp.org/en/

$ sudo nano /etc/ntp.conf

在每一行 pool 前添加一个 # 符号以注释默认的服务器列表,并替换为适合你的 NTP 服务器地址,如下图所示:

pool 0.ro.pool.ntp.org iburst
pool 1.ro.pool.ntp.org iburst
pool 2.ro.pool.ntp.org iburst
# Use Ubuntu's ntp server as a fallback.
pool 3.ro.pool.ntp.org

Configure NTP Server in Ubuntu

在 Ubuntu 系统下配置 NTP 服务

3、此时,先不要关闭该文件。移动光标到文件顶部,在 driftfile 参数后面添加下面一行内容。该设置是为了让客户端查询该服务时使用 AD 的 NTP 签署请求。

ntpsigndsocket /var/lib/samba/ntp_signd/

Sync AD with NTP

使用 NTP 来同步 AD

4、最后,移动光标到文件底部并添加如下一行内容,如截图所示,仅允许网络客户端查询该服务器上的时间。

restrict default kod nomodify notrap nopeer mssntp

Query Clients to NTP Server

限制 NTP 服务的查询客户端

5、设置完成之后,保存并关闭 NTP 配置文件,为了让 NTP 服务读取 ntp_signed 目录,需要授予 NTP 服务合适的权限。

以下是 Samba NTP socket 的系统路径。之后,重启 NTP 服务以应用更改,并使用 netstat 命令grep 过滤相接合来检查 NTP 服务是否正常。

$ sudo chown root:ntp /var/lib/samba/ntp_signd/
$ sudo chmod 750 /var/lib/samba/ntp_signd/
$ sudo systemctl restart ntp
$ sudo netstat –tulpn | grep ntp

Grant Permission to NTP

给 NTP 服务授权

使用 ntpq 命令行工具来监控 NTP 进程,加上 -p 参数来显示摘要信息。

$ ntpq -p

Monitor NTP Server Pool

监控 NTP 服务器池

第二步:处理 NTP 时间同步异常问题

6、有时候 NTP 进程在尝试与上游 ntp 服务端同步时间的计算过程中会卡住,导致客户端使用 ntpdate 工具手动强制同步时间时报如下错误:

# ntpdate -qu adc1
ntpdate[4472]: no server suitable for synchronization found

NTP Time Synchronization Error

NTP 时间同步异常

ntpdate 命令加上 -d 调试选项:

# ntpdate -d adc1.tecmint.lan
Server dropped: Leap not in sync

NTP Server Dropped Leap Not in Sync

NTP Server Dropped Leap Not in Sync

7、为了避免出现该问题,使用下面的方法来解决这个问题:在服务器上停止 NTP 服务,使用 ntpdate 客户端工具加上 -b 参数指定外部 peer 地址来手动强制同步时间,如下图所示:

# systemctl stop ntp.service
# ntpdate -b 2.ro.pool.ntp.org  [你的 ntp peer]
# systemctl start ntp.service
# systemctl status ntp.service

Force NTP Time Synchronization

强制 NTP 时间同步

8、当时间正确同步之后,启动服务器上的 NTP 服务,并且在客户端服务器上执行如下命令来验证 NTP 时间同步服务是否可用:

# ntpdate -du adc1.tecmint.lan    [你的 AD DC 服务器]

Verify NTP Time Synchronization

验证 NTP 时间同步

至此, NTP 服务应该已经工作正常了。

第三步:把 Windows 10 系统加入域环境

9、从我们的前一篇文章可以看出,Samba4 活动目录可以使用 samba-tool 工具在命令行下管理,可以直接在服务器上的 VTY 控制台或者通过 SSH 工具远程连接到服务器上进行管理。

另外,更直观更灵活的方式是使用已加入域的 Windows 电脑中的微软远程服务器管理工具(RSAT)来管理我们的 Samba4 AD 域控制器。这些工具在当前的大多数 Windows 系统中都可以使用。

把 Windows 10 或是之前版本的微软操作系统加入到 Samba4 AD DC 环境中的过程也是非常容易的。首先,确保你的 Windows 10 电脑已经设置了正确的 Samba4 DNS 服务器的 IP 地址,以查询出准确的域解析结果。

打开“控制面板 -> 网络和 Internet -> 网络和共享中心 -> 网卡设置 -> 属性 -> IPv4 -> 属性 -> 使用下面的 DNS 服务器地址”,并且手动输入 Samba4 AD 服务器的 IP 地址,如下图所示:

join Windows to Samba4 AD

把 Windows 10 加入到 Samba4 AD 环境

Add DNS and Samba4 AD IP Address

添加 DNS 和 Samba4 AD 服务器地址

这里的 192.168.1.254 是 Samba4 AD 域控服务器的地址,用于域名解析。相应替换该 IP 地址。

10、下一步,点击 OK 按钮以应用网络设置,打开 CMD 命令行窗口,通过 ping 域名和 Samba4 服务器的 FQDN 地址来测试通过 DNS 解析到域是否连通。

ping tecmint.lan
ping adc1.tecmint.lan

Check Network Connectivity Between Windows and Samba4 AD

检查 Windows 和 Samb4 AD 服务器的网络连通性

11、如果 Windows 客户端 DNS 查询的结果解析正确,那么,你还需要确认客户端时间是否已跟域环境同步。

打开“控制面板 -> 时钟、语言和区域 -> 设置时间和日期 -> Internet 时间页 -> 更改设置”,输入你同步时间的域名和 Internet 时间服务器字段。

点击立即更新按钮来强制与域同步时间,点击 OK 关闭窗口。

Synchronize Time with Internet Server

与 Internet 服务器同步时间

12、最后,通过打开“系统属性 -> 更改 -> 域成员 -> 输入域名”,点击 OK,输入你的域管理员账号和密码,再次点击 OK。

应该弹出一个新的窗口通知你已经是一个域成员了。点击 OK 关闭弹出窗口,并且重启机器以应用域更改。

下面的截图将说明这些操作步骤。

Join Windows Domain to Samba4 AD

把 Windows 域加入到 Samba4 AD 环境

Enter Domain Administration Login

输入域管理员账号登录

Domain Joined to Samba4 AD Confirmation

确认域已加入到 Samba4 AD 环境

Restart Windows Server for Changes

重启 Windows 服务器以应用更改

13、重启之后,单击其它用户并且使用具有管理员权限的 Samba4 域账号登录到 Windows 系统,你已经准备好进入到后边几个步骤了。

Login to Windows Using Samba4 AD Account

使用 Samba4 AD 账号登录到 Windows

第四步:使用 RSAT 工具来管理 Samba4 AD DC

14、微软远程服务器管理工具(RSAT)被广泛地用来管理 Samba4 活动目录,你可以根据你的 Windows 系统版本从下面的地址来下载该工具:

  1. Windows 10: https://www.microsoft.com/en-us/download/details.aspx?id=45520
  2. Windows 8.1: http://www.microsoft.com/en-us/download/details.aspx?id=39296
  3. Windows 8: http://www.microsoft.com/en-us/download/details.aspx?id=28972
  4. Windows 7: http://www.microsoft.com/en-us/download/details.aspx?id=7887

一旦 Windows 10 独立安装包下载完成,运行安装包,等待安装完成并重启机器以应用所有更新。

重启之后,打开“控制面板 -> 程序(卸载程序) -> 启用或关闭 Windows 功能”,勾选所有的远程服务器管理工具。

点击 OK 开始安装,安装完成之后重启系统。

Administer Samba4 AD from Windows

从 Windows 系统下管理 Samba4 AD

15、要进入 RSAT 工具集,打开“控制面板 -> 系统和安全 -> 管理工具”。

这些工具也可以在开始工菜单的管理工具菜单中找到。另外,你也可以打开 Windows MMC 工具和管理单元,从“文件 -> 添加/删除管理单元”菜单中访问它们。

Access Remote Server Administration Tools

访问远程服务器管理工具集

最常用的工具,比如 AD UC ,DNS 和组策略管理工具可以通过从右键菜单发送到功能来新建快捷方式到桌面直接运行。

16、你可以通过 AD UC 和列出域里的电脑(新加入的 Windows 机器应该出现在列表中)来验证 RSAT 功能,创建一个组织单元或组。

在 Samba4 服务器上使用 wbinf 命令来检查用户和组是否已经创建成功。

Active Directory Users and Computers

活动目录用户和计算机

Create Organizational Units and New Users

创建组织单元和新用户

Confirm Samba4 AD Users

确认 Samba4 AD 用户

就这些吧!该主题的下一篇文章将包含其它 Samba4 活动目录的重要内容,包括通过 RSAT 工具来管理 Samba4 活动目录,比如,如何管理 DNS 服务器,添加 DNS 记录和创建 DNS 解析查询区,如何管理及应用域策略以及域用户如何创建交互式登录提示信息。


作者简介:我是一个电脑迷,开源软件及 Linux 系统爱好者,有近4年的 Linux 桌面和服务器系统及 bash 编程经验。


via: http://www.tecmint.com/manage-samba4-ad-from-windows-via-rsat/

作者:Matei Cezar 译者:rusking 校对:wxy

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

随着 Ubuntu 16.10 的发布,Unity 8 越来越吸引到了更多人的关注。这是因为在这个大家最爱的 Linux 发行版的最新版本中可以体验其带有的试验性桌面。桌面发行版是人们最熟悉的 Unity 环境,但有一点点不同。它不再使用 X11 图形技术,Ubuntu 的开发者选择了另一种截然不同的方式。

原来,Unity 8 用的是 Mir,这是 Ubuntu 为了在 Linux 上提供显示服务而做出的努力。这项技术已经在 Ubuntu phone 和平板上大量使用,但是这次新版是我们在桌面环境上第一次见到 Mir 。

这项技术相当新颖,结果是没多少 Linux 程序能运行在它之上。不是所有,那也是大部分的程序设计在 Xorg 和 X11 之上运行。如果你想要试试在 Unity 8 上运行这些程序,你肯定会为在 Unity 8上确实能够运行之前的 Xorg 程序而高兴。接下来是如何做!

登录进 Unity 8

Unity 8 在 Ubuntu 16.10 上是一个可选会话。在使用之前只须牢记一件事情:它不会加载 AMD 的图形驱动,Intel 的同样不会加载。唯一支持的图形驱动是 Nvidia 的开源驱动。要用 Unity 8 的话,只要像往常那样启动 Ubuntu,然后,在登录进去之前,点击用户名上面的 Ubuntu 图标,选择 Unity8 选项。如果万事顺利的话,这个新的、试验性的桌面环境将会加载。

注意: Unity 8 非常新而且不稳定,自行承担使用风险。

安装 Libertine

Xorg 程序(例如 Firefox 等)确实能在 Unity 8 上使用,在使用之前需要一点小调整。在 Mir 桌面上用终端打开 Libertine ,在 Scopes 窗口中点击终端图标就能完成。一旦打开,输入你的密码。接下来,输入以下的命令:

sudo apt install libertine-tools libertine-scope libertine

当这些程序完成安装后,点击并拖动 Scopes 窗口以刷新内容。然后,在面板上点击来启动 libertine。

新建 Xorg 容器

打开 Libertine,就可以新建一些(应用)容器了。这些容器很特别,因为它们能让基于 X11 的 Linux 程序在 Mir/Unity 8 桌面上的容器之中运行。另外,如果需要支持 32 位应用,勾选“i386 multiarch support”复选框。否则,什么都不要动(或者输入名字和密码),点击“OK”。

在这之后,这个 Xorg 容器就准备好,可以使用了。在 Libertine 找到它并启动。删除也很容易,右键点击容器,选择“删除”选项。

注意:每一个 Xorg 容器有 500 MB的最大内存限制。所以多个容器是有必要的。

安装软件

在 Libertine 容器中安装软件有两个方法。第一种是允许用户启动容器后选择“输入包名或者 Debian 文件”,这意味着用户可以在软件中心或者终端找到一个软件的名字,然后在 Libertine 中输入它来安装。也可以指定特定的 DEB 文件来安装,可以在Libertine LXC 容器中直接搜索安装包。

注意:Unity 8 非常新,一些程序或许不能在 Libertine 里加载或者完全安装。

结论

Unity 8 展现了不少的新特性,它现代、时髦,而且比之前任何一个 Unity 迭代版本都快。唯一限制它的就是使用率。事实是大部分用户更乐意选择实用的应用程序,而不是一个别致新颖的桌面环境。某种程度上来说,使用 Libertine 能解决这个问题,但它不会永久有效。早晚有一天,Canonical 都需要自行移植这些程序或者向社区求助来彻底解决这个问题。


via: https://www.maketecheasier.com/use-old-xorg-apps-unity-8/

作者:Derrik Diener 译者:ypingcn 校对:wxy

本文由 LCTT 组织编译,Linux中国 荣誉推出

NTP 是通过网络来同步时间的一种 TCP/IP 协议。通常客户端向服务器请求当前的时间,并根据结果来设置其时钟。

这个描述是挺简单的,实现这一功能却是极为复杂的 - 首先要有多层 NTP 服务器,第一层 NTP 服务器连接原子时钟,第二层、第三层服务器则担起负载均衡的责任,以处理因特网传来的所有请求。另外,客户端可能也超乎你想象的复杂 - 它必须排除通讯延迟,调整时间的同时不干扰其它在服务器中运行的进程。幸运的是,所有的这些复杂性都进行了封装,你是不可见也不需要见到的。

在 Ubuntu 中,是使用 ntpdatentpd 来同步时间的。

timedatectl

在最新的 Ubuntu 版本中,timedatectl 替代了老旧的 ntpdate。默认情况下,timedatectl 在系统启动的时候会立刻同步时间,并在稍后网络连接激活后通过 socket 再次检查一次。

如果已安装了 ntpdate / ntptimedatectl 会退而让你使用之前的设置。这样确保了两个时间同步服务不会相互冲突,同时在你升级的时候还保留原本的行为和配置。但这也意味着从旧版本的发行版升级时 ntp/ntpdate 仍会安装,因此会导致新的基于 systemd 的时间服务被禁用。

timesyncd

在最新的 Ubuntu 版本中,timesyncd 替代了 ntpd 的客户端的部分。默认情况下 timesyncd 会定期检测并同步时间。它还会在本地存储更新的时间,以便在系统重启时做时间单步调整。

通过 timedatectltimesyncd 设置的当前时间状态和时间配置,可以使用 timedatectl status 命令来进行确认。

timedatectl status
      Local time: Fri 2016-04-29 06:32:57 UTC
  Universal time: Fri 2016-04-29 06:32:57 UTC
        RTC time: Fri 2016-04-29 07:44:02
       Time zone: Etc/UTC (UTC, +0000)
 Network time on: yes
NTP synchronized: no
 RTC in local TZ: no

如果安装了 NTP,并用它替代 timedatectl 来同步时间,则 NTP synchronized 将被设置为 yes

timedatectltimesyncd 用来获取时间的 nameserver 可以通过 /etc/systemd/timesyncd.conf 来指定,另外在 /etc/systemd/timesyncd.conf.d/ 下还有灵活的附加配置文件。

ntpdate

由于 timedatectl 的存在,各发行版已经弃用了 ntpdate,默认不再进行安装。如果你安装了,它会在系统启动的时候根据 Ubuntu 的 NTP 服务器来设置你电脑的时间。之后每当一个新的网络接口启动时,它就会重新尝试同步时间 —— 在这期间只要其涵盖的时间差不是太大,它就会慢慢偏移时间。该行为可以通过 -B/-b 开关来进行控制。

ntpdate ntp.ubuntu.com

时间服务器

默认情况下,基于 systemd 的工具都是从 ntp.ubuntu.com 请求时间同步的。经典的基于 ntpd 的服务基本上都是使用 [0-3].ubuntu.pool.ntp.org 池中的 2.ubuntu.pool.ntp.org,还有 ntp.ubuntu.com,此外需要的话还支持 IPv6。如果想强制使用 IPv6,可以使用 ipv6.ntp.ubuntu.com,不过这并非默认配置。

ntpd

ntp 的守护进程 ntpd 会计算你的系统时钟的时间偏移量并且持续的进行调整,所以不会出现时间差距较大的更正,比如说,不会导致不连续的日志。该进程只花费少量的进程资源和内存,但对于现代的服务器来说实在是微不足道的了。

安装

要安装 ntpd,在终端命令行中输入:

sudo apt install ntp

配置

编辑 /etc/ntp.conf —— 增加/移除 server 行。默认配置有以下服务器:

# Use servers from the NTP Pool Project. Approved by Ubuntu Technical Board
# on 2011-02-08 (LP: #104525). See http://www.pool.ntp.org/join.html for
# more information.
server 0.ubuntu.pool.ntp.org
server 1.ubuntu.pool.ntp.org
server 2.ubuntu.pool.ntp.org
server 3.ubuntu.pool.ntp.org

修改配置文件之后,你需要重新加载 ntpd

sudo systemctl reload ntp.service

查看状态

使用 ntpq 来查看更多信息:

# sudo ntpq -p
     remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
+stratum2-2.NTP. 129.70.130.70    2 u    5   64  377   68.461  -44.274 110.334
+ntp2.m-online.n 212.18.1.106     2 u    5   64  377   54.629  -27.318  78.882
*145.253.66.170  .DCFa.           1 u   10   64  377   83.607  -30.159  68.343
+stratum2-3.NTP. 129.70.130.70    2 u    5   64  357   68.795  -68.168 104.612
+europium.canoni 193.79.237.14    2 u   63   64  337   81.534  -67.968  92.792

PPS 支持

从 Ubuntu 16.04 开始,ntp 支持 PPS 规范,给 ntp 提供了本地时间源,以提供更高的精度。查看下边列出的链接来获取更多配置信息。

参考资料


via: https://help.ubuntu.com/lts/serverguide/NTP.html

作者:Ubuntu 译者:GHLandy 校对:jasminepeng

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

据 CVE Details 的数据显示,Android、Debian Linux 和 Ubuntu Linux 是 2016 年出现安全缺陷最多的三个产品。CVE Details 是一个收集和存储软件安全缺陷方面的在线数据库。

2016 年安全缺陷榜单

在这一年中, Android 被发现了最多的安全缺陷,多达 523 个,紧随其后的是 Debian Linux 的 319 个和 Ubuntu Linux 的 278 个。令人吃惊的是,曾经多次蝉联第一名“宝座”的安全缺陷大户 Adobe Flash Player 以 266 个缺陷“屈居”第四。

“冠军” Android 的安全缺陷包括了最近大家比较关注的 DoS 缺陷以及内存破坏缺陷,而且,DoS 缺陷数量从 2015 的 56 个跃升至 104 个,而内存破坏缺陷则从 46 个降至 38 个。 Android 中还有 99 个缺陷是关于信息泄露的,而在一年前才发现了 19 个;权限提升缺陷则令人吃惊的从 2015 年的 17 个剧增至 250 个。

Android 的缺陷

微软的缺陷更少一些

让我们来看看微软的产品,在该列表中,排名最高的微软产品是 Windows 10 ,有 172 个缺陷,连前十名都没进去。

如果根据厂商来比较,谷歌的产品缺陷最多,有 695 个,而 Debian 和 Canonical 以 319 和 278 分列二、三名。

厂商缺陷排行榜

上图中,虽然 Adobe 和微软的安全缺陷总数非常高,但是其实这里包含的安全缺陷很多是重复的——同一个安全缺陷出现在多个产品之中。

当然, 产品的安全缺陷数高也并不意味着该产品就比其它的产品更不安全,许多产品的安全缺陷是私下报告的,并在被公开之前就修复了,所以在大多数情况下使用这些产品是安全的。

当一个公司发展壮大时,相应地对计算资源的需求也会与日俱增。无论是普通公司还是服务提供商,包括那些出租服务器的公司,当服务器数量过多时都不得不面对很多问题。

如何盘存服务器和备件?如何维护使数据中心保持健康运作,及时定位并修复潜在的威胁?如何快速找到宕机设备的机架位置?如何准备物理机上线工作?做完这些事情需要花费大量的时间,或者需要 IT 部门有一大帮管理员支持才能办到。

现在有一个更好的方案解决这些问题,使用特定软件来实现数据中心管理自动化,下文将介绍当前市场上已有的一些数据中心管理工具。

1、 Opendcim

这是该类目前唯一的自由软件,该软件开源并且按照商业化 数据中心基础设施管理 Data Center Infrastructure Management (DCIM)解决方案的替代方案来设计。该软件可以管理库存、生成数据中心的地图和监控机房温度与电力消耗。

不过,它不支持远程关机、服务器重启、操作系统安装等功能。尽管如此,它仍然被全球很多非商业机构使用。

由于该软件开源,有研发能力的公司可以修改它,使 opendcim 更适合自己的公司。

openDCIM

openDCIM

2、 NOC-PS

这是一款可以管理物理和虚拟设备的商业软件。它有很多可以用于初始化设备的工具,比如:操作系统和其他软件安装、网络配置,并且集成了 WHMCS 和 Blesta。美中不足的是,如果你希望能够看到数据中心设备地图或者机架位置,那该软件就不是你的最佳选择了。

NOC-PS 每 100 台服务器每年管理费需要 100€,比较适合中小企业使用。

NOC-PS

NOC-PS

3、 DCImanager

DCImanager 是一个专用的解决方案,正如宣传所说的,考虑了 DC 工程师和托管服务提供商的需求。该软件集成了很多有名的计费软件,比如 WHMCS、Hostbill、BILLmanager 等。

该软件的主要功能有:服务器配置、模板化安装操作系统、传感器监控、流量和电力消耗报告、VLAN 管理。除此之外,企业版还可以生成数据中心服务器地图、以及对服务器和备件进行盘点管理。

你可以试用免费版,但是免费版最多支持 5 台物理服务器管理,而收费版每 100 台服务器每年的授权使用费是 120€。

根据版本不同,收费版可适用中小企业或者大企业。

DCImanager

DCImanager

4、 EasyDCIM

EasyDCIM 是一款主要面向服务提供商的收费软件。拥有可以安装操作系统或其他软件的特点,并且能方便地生成机房目录及机架分布图。

该软件本身并不支持对 IP 和 DNS 进行管理。不过可以通过安装模块的方式获得这些功能,这些模块可能付费或者免费(包括 WHMCS 集成模块)。

该软件每 100 台服务器每年的服务费起步价 $999。对于小公司来说这个价格有点贵,不过中型或者大型企业可以尝试使用。

EasyDCIM

EasyDCIM

5、 Ansible Tower

Ansible Tower 是红帽出品的企业级计算中心管理软件。该解决方案的核心思想是实现对服务器和不同用户设备的集中式部署。

由于 Ansible Tower 能够通过集成软件的方式使用几乎所有的工具程序,并且该软件的数据统计收集模块特别好用。不好的一面则是缺乏和当前比较流行的计费软件的集成,而且价格也不便宜。

每 100 台设备每年的服务器费是 $5000,这个价格估计只有大公司才能接受。

Ansible Tower

Ansible Tower

6、 Puppet Enterprise

在商业基础上发展而来并作为 IT 部门的辅助软件。该软件用于在服务器或者用户设备上安装操作系统及其他软件,无论是初步部署或者进一步开发都适用。

不幸的是,盘存和其他更好的交互方案(电缆连接、协议等)仍然处于开发中。

Puppet Enterprise 对于小于 10 台服务器的管理免费并且开放全部功能。而收费版则是每台服务器每年 $120。

这个价格适合大公司使用。

Puppet Enterprise

Puppet Enterprise

7、 Device 42

该软件主要用于数据中心监控。有一个很棒的盘存工具,自动创建软硬件依赖关系图。通过 Device 42 生成数据中心地图,给不同机架标特定颜色,并可以通过图表方式反映温度、空闲空间情况和机架的其他指标。但是不支持软件安装和计费软件的集成。

每 100 台服务器每年的收费是 $1499,这个价位比较适合大中型企业。

Device42

Device42

8、 CenterOS

这是一款适合数据中心管理的操作系统,主要功能是设备盘点。除此之外可以生成数据中心地图及机架方案,并连接了一个评价不错的服务器状态监控系统,方便内部技术管理工作。

该软件还有一个特性就是能够通过简单的几次点击就可以找到某个设备对应的人(可能是设备所有人、技术管理员或者该设备的制造商),当出现紧急问题时这个就特别有用了。

该软件不是开源的,并且价格也只能在咨询后才能知道。

该软件价格的神秘性也决定了软件的目标客户,极有可能这个软件是给大公司用的。

CenterOS

CenterOS

9、 LinMin

这是一款用于初始化物理设备以便后期使用的软件。使用 PXE 安装选定的操作系统,并可随后部署一系列必要的软件安装。

与同类软件不同的是,LinMin 有一个开发完善的硬盘备份系统,可以迅速在系统崩溃后恢复以及大规模部署相同配置的服务器。

该软件每 100 台服务器一年的收费是 $1999,这价格也只有大中型企业能用了。

LinMin

LinMin

现在来总结下,当前市场上大部分能够自动化管理大量的基础设施的软件,可以分为两类。

第一类,主要用于完成设备的准备工作,以便能够进一步管理。另一类就是设备的盘点管理。找到一个通用的包含所有功能的软件并不容易,你在选择的时候可以放弃一些设备提供商提供的那些功能比较有限的工具。

现在你知道了这些解决方案,那么你可以逐个尝试下。值得注意的是这里列出的开源产品,如果你有好的开发人员,那么可以尝试定制软件来满足你需求。

希望通过这篇回顾能够帮你找到适合的软件让你的工作更轻松。另,祝您的服务器永不出错。


作者简介:

Nikita Nesmiyanov

我是一名俄罗斯西伯利亚托管软件开发公司的技术专家。我希望能够在新的 Linux 软件工具和托管行业的发展趋势、可能性、发展历史和发展机遇等方面拓展我的知识。


via: http://www.tecmint.com/data-center-server-management-tools/

作者:Nikita Nesmiyanov 译者:beyondworld 校对:jasminepeng

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