技术

grep 命令系列:如何只查看配置文件中未被注释的有效配置行

grep 命令系列:如何只查看配置文件中未被注释的有效配置行

大多数的Linux和类Unix系统的配置文件中都有许多的注释行,但是有时候我只想看其中的有效配置行。那我怎么才能只看到quid.conf或httpd.conf这样的配置文件中的非注释命令行呢?怎么去掉这些注释或者空行呢? 我们可以使用 UNIX/BSD/OS X/Linux 这些操作系统自身提供的 grep,sed,awk,perl或者其他文本处理工具来查看配置文件中的有效配置命令行。 grep 命令示例去掉注释 可以按照如下示例使用grep命令: $ grep -v "^#" /path/to/config/file $ grep -v "^#" /etc/apache2/apache2.conf 示例输出: ServerRoot "/etc/apache2" LockFile
IPv6 互联网中的隐私保护和网络管理器

IPv6 互联网中的隐私保护和网络管理器

IPv6 的使用量正在不断增加,让我们始料未及的是,伴随这个协议不断增加的使用量,大量的隐私问题涌现出来。互联网社区在积极发布相关解决方案。当前状况是怎样的呢?网络管理器(NetworkManager)又是如何跟上的呢?让我们来瞧瞧吧! 通过 IPv6 方式连接的主机的特性 启用了 IPv6 的节点(LCTT 译注:节点在网络中指一个联网的设备)并不需要类似 IPv4 网络中 DHCP 服务器的中央机构来配置他们的地址。它们发现(discover)自己所在的网络,然后通过生成主机部分来自主生成地址。这种方式使得网络配置更加简单,并且能够更好的扩展到更
哪个文件系统最适合你的 Linux 系统?

哪个文件系统最适合你的 Linux 系统?

文件系统: 它们不是世界上最激动人心的技术,但是仍然很重要。本文我们将细数那些流行的 Linux 文件系统 - 它们是什么,它们能够做什么,以及它们的目标用户。 Ext4 如果你曾经安装过 Linux,你可能在安装过程中看到过Ext4字样。用它有一个不错的理由: 它是当前每个可用的 Linux 发行版所选择的文件系统。当然,还有其他的一些选择,但是不可否认的是,Ext4(Extended 4)几乎是所有 Linux 用户都会选择的文件系统。 它能做什么? Ext4 拥有之前的文件系统(Ext2/Ext3)中你所期待的所有优点, 同时还带来了一些改进。还有很多内容可以发
Grub 2:拯救你的 bootloader

Grub 2:拯救你的 bootloader

没有什么事情比 bootloader 坏掉更气人的了。充分发挥 Grub 2 的作用,让 bootloader 安分工作吧。
jobs 命令示例

jobs 命令示例

我是个新的 Linux/Unix 用户。我该如何在 Linux 或类 Unix 系统中使用 BASH/KSH/TCSH 或者基于 POSIX 的 shell 来查看当前正在进行的作业(job)?在 Unix/Linux 上怎样显示当前作业的状态?(LCTT 译注:job,也常称为任务) 作业控制是一种能力,可以停止/暂停进程(命令)的执行并按你的要求继续/恢复它们的执行。这是通过你的操作系统和诸如 bash/ksh 或 POSIX shell 等 shell 来执行的。 shell 会将当前所执行的作业保存在一个表中,可以用 jobs 命令来显示。 用途 在当前 shell 会话中显示作业的状态。 语法 其基本语法如下: jobs
如何更新 ISPConfig 3 SSL 证书

如何更新 ISPConfig 3 SSL 证书

本教程描述了如何在 ISPConfig3控制面板中更新 SSL 证书。有两个可选的方法: 用 OpenSSL 创建一个新的 OpenSSL 证书和 CSR。 用 ISPConfig updater 更新 SSL 证书 我将从用手工的方法更新 SSL 证书开始。 1)用 OpenSSL 创建一个新的 ISPConfig 3 SSL 证书 用 root 用户登录你的服务器。在创建一个新的 SSL 证书之前,先备份现有的。SSL 证书是安全敏感的,因此我将它存储在 /root/ 目录下。 tar pcfz /root/ispconfig_ssl_backup.tar.gz /usr/local/ispconfig/interface/ssl chmod 600 /root/ispconfig_ssl_backup.tar.gz 现在创建
将 Tor socks 转换成 http 代理

将 Tor socks 转换成 http 代理

你可以通过不同的 Tor 工具来使用 Tor 服务,如 Tor 浏览器、Foxyproxy 和其它东西,像 wget 和 aria2 这样的下载管理器不能直接使用 Tor socks 开始匿名下载,因此我们需要一些工具来将 Tor socks 转换成 http 代理,这样就能用它来下载了。 注意:本教程基于 Debian ,其他发行版会有些不同,因此如果你的发行版是基于 Debian 的,就可以直接使用下面的配置了。 Polipo 这个服务会使用 8123 端口和 127.0.0.1 的 IP 地址,使用下面的命令来在计算机上安装 Polipo: sudo apt install polipo 现在使用如下命令打开 Polipo 的配置文件:
黑客利用 Wi-Fi 攻击你的七种方法

黑客利用 Wi-Fi 攻击你的七种方法

黑客利用 Wi-Fi 侵犯你隐私的七种方法 Wi-Fi 啊,你是如此的方便,却又如此的危险! 这里给大家介绍一下通过 Wi-Fi 连接慷慨捐赠你的身份信息的七种方法和反制措施。 利用免费热点 它们似乎无处不在,而且它们的数量会在接下来四年里增加三倍。但是它们当中很多都是不值得信任的,从你的登录凭证、email 甚至更加敏感的账户,都能被黑客用嗅探器(sniffers)软件截获 这种软件能截获到任何你通过该连接提交的信息。防止被黑客盯上的最好办法就是使用VPN(虚拟私有网virtual private network),它加密了你所输入的信息,因此能够保护你
如何在 CentOS 上启用 软件集 Software Collections(SCL)

如何在 CentOS 上启用 软件集 Software Collections(SCL)

红帽企业版 linux(RHEL)和它的社区版分支CentOS,提供10年的生命周期,这意味着 RHEL/CentOS 的每个版本会提供长达10年的安全更新。虽然这么长的生命周期为企业用户提供了迫切需要的系统兼容性和可靠性,但也存在一个缺点:随着底层的 RHEL/CentOS 版本接近生命周期的结束,核心应用和运行时环境变得陈旧过时。例如 CentOS 6.5,它的生命周期结束时间是2020年11月30日,其所携带的 Python 2.6.6和 MySQL 5.1.73,以今天的标准来看已经非常古老了。 另一方面,在 RHEL/CentOS 上试图手动升级开发工具链和运行时环境存在使系统崩溃的潜在
在 Centos/RHEL 6.X 上安装 Wetty

在 Centos/RHEL 6.X 上安装 Wetty

Wetty 是什么? Wetty = Web + tty 作为系统管理员,如果你是在 Linux 桌面下,你可以用它像一个 GNOME 终端(或类似的)一样来连接远程服务器;如果你是在 Windows 下,你可以用它像使用 Putty 这样的 SSH 客户端一样来连接远程,然后同时可以在浏览器中上网并查收邮件等其它事情。 (LCTT 译注:简而言之,这是一个基于 Web 浏览器的远程终端) 第1步: 安装 epel 源 # wget http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm # rpm -ivh epel-release-6-8.noarch.rpm 第2步:安装依赖 # yum install epe
《Linux 工作站安全检查清单》——来自 Linux 基金会内部

《Linux 工作站安全检查清单》——来自 Linux 基金会内部

目标受众 这是一套 Linux 基金会为其系统管理员提供的推荐规范。 这个文档用于帮助那些使用 Linux 工作站来访问和管理项目的 IT 设施的系统管理员团队。 如果你的系统管理员是远程员工,你也许可以使用这套指导方针确保系统管理员的系统可以通过核心安全需求,降低你的IT 平台成为攻击目标的风险。 即使你的系统管理员不是远程员工,很多人也会在工作环境中通过便携笔记本完成工作,或者在家中设置系统以便在业余时间或紧急时刻访问工作平台。不论发生何种情况,你都能调整这个推荐规范来适应你的环境。 限制 但是,这并不是一个详细的
如何在命令行中使用 ftp 命令上传和下载文件

如何在命令行中使用 ftp 命令上传和下载文件

本文中,介绍在 Linux shell 中如何使用 ftp 命令。包括如何连接 FTP 服务器,上传或下载文件以及创建文件夹。尽管现在有许多不错的 FTP 桌面应用,但是在服务器、SSH、远程会话中命令行 ftp 命令还是有很多应用的。比如。需要服务器从 ftp 仓库拉取备份。 步骤 1: 建立 FTP 连接 想要连接 FTP 服务器,在命令上中先输入ftp然后空格跟上 FTP 服务器的域名 ‘domain.com’ 或者 IP 地址 例如: ftp domain.com ftp 192.168.0.1 ftp user@ftpdomain.com 注意: 本例中使用匿名服务器。 替换下面例子中 IP 或域名为你的服务器地址。 步骤 2:
如何使用 pv 命令监控 linux 命令的执行进度

如何使用 pv 命令监控 linux 命令的执行进度

如果你是一个 linux 系统管理员,那么毫无疑问你必须花费大量的工作时间在命令行上:安装和卸载软件,监视系统状态,复制、移动、删除文件,查错,等等。很多时候都是你输入一个命令,然后等待很长时间直到执行完成。也有的时候你执行的命令挂起了,而你只能猜测命令执行的实际情况。 通常 linux 命令不提供和进度相关的信息,而这些信息特别重要,尤其当你只有有限的时间时。然而这并不意味着你是无助的现在有一个命令,pv,它会显示当前在命令行执行的命令的进度信息。在本文我们会讨论它并用几个简单的例子说明其特性。 PV 命令 PV 由A
使用 netcat [nc] 命令对 Linux 和 Unix 进行端口扫描

使用 netcat [nc] 命令对 Linux 和 Unix 进行端口扫描

我如何在自己的服务器上找出哪些端口是开放的?如何使用 nc 命令进行端口扫描来替换 Linux 或类 Unix 中的 nmap 命令? nmap (Network Mapper)是一个用于网络探测和安全审核的开源工具。如果 nmap 没有安装或者你不希望使用 nmap,那你可以用 netcat/nc 命令进行端口扫描。它对于查看目标计算机上哪些端口是开放的或者运行着服务是非常有用的。你也可以使用 nmap 命令进行端口扫描 。 如何使用 nc 来扫描 Linux,UNIX 和 Windows 服务器的端口呢? 如果未安装 nmap,试试 nc/netcat 命令,如下所示。-z 参数用来告诉 nc 报告开放的端口,
RHCE 系列(十):在 RHEL/CentOS 7 中设置 NTP(网络时间协议)服务器

RHCE 系列(十):在 RHEL/CentOS 7 中设置 NTP(网络时间协议)服务器

网络时间协议 - NTP - 是运行在传输层 123 号端口的 UDP 协议,它允许计算机通过网络同步准确时间。随着时间的流逝,计算机内部时间会出现漂移,这会导致时间不一致问题,尤其是对于服务器和客户端日志文件,或者你想要复制服务器的资源或数据库。 在 CentOS 和 RHEL 7 上安装 NTP 服务器 前置要求: CentOS 7 安装过程 RHEL 安装过程 额外要求: 注册并启用 RHEL 7 更新订阅 在 CentOS/RHCE 7 上配置静态 IP 在 CentOS/RHEL 7 上停用并移除不需要的服务 这篇指南会告诉你如何在 CentOS/RHCE 7 上安装和配置 NTP 服务器,并使用 NTP
RHCE 系列(九):如何使用无客户端配置 Postfix 邮件服务器(SMTP)

RHCE 系列(九):如何使用无客户端配置 Postfix 邮件服务器(SMTP)

尽管现在有很多在线联系方式,电子邮件仍然是一个人传递信息给远在世界尽头或办公室里坐在我们旁边的另一个人的有效方式。 下面的图描述了电子邮件从发送者发出直到信息到达接收者收件箱的传递过程。 电子邮件如何工作 要实现这一切,背后发生了好多事情。为了使电子邮件信息从一个客户端应用程序(例如 Thunderbird、Outlook,或者 web 邮件服务,例如 Gmail 或 Yahoo 邮件)投递到一个邮件服务器,并从其投递到目标服务器并最终到目标接收人,每个服务器上都必须有 SMTP(简单邮件传输协议)服务。 这就是为什么我们要在这篇博文中介绍
RHCE 系列(八):在 Apache 上使用网络安全服务(NSS)实现 HTTPS

RHCE 系列(八):在 Apache 上使用网络安全服务(NSS)实现 HTTPS

如果你是一个负责维护和确保 web 服务器安全的系统管理员,你需要花费最大的精力确保服务器中处理和通过的数据任何时候都受到保护。 RHCE 系列:第八部分 - 使用网络安全服务(NSS)为 Apache 通过 TLS 实现 HTTPS 为了在客户端和服务器之间提供更安全的连接,作为 HTTP 和 SSL(Secure Sockets Layer(安全套接层))或者最近称为 TLS(Transport Layer Security(传输层安全))的组合,产生了 HTTPS 协议。 由于一些严重的安全漏洞,SSL 已经被更健壮的 TLS 替代。由于这个原因,在这篇文章中我们会解析如何通过 TLS 实现你 web 服务
基础:tar 命令使用介绍

基础:tar 命令使用介绍

Linux tar 命令是归档或分发文件时的强大武器。GNU tar 归档包可以包含多个文件和目录,还能保留其文件权限,它还支持多种压缩格式。Tar 表示 "Tape Archiver",这种格式是 POSIX 标准。 Tar 文件格式 tar 压缩等级简介: 无压缩 没有压缩的文件用 .tar 结尾。 Gzip 压缩 Gzip 格式是 tar 使用最广泛的压缩格式,它能快速压缩和提取文件。用 gzip 压缩的文件通常用 .tar.gz 或 .tgz 结尾。这里有一些如何创建和解压 tar.gz 文件的例子。 Bzip2 压缩 和 Gzip 格式相比 Bzip2 提供了更好的压缩比。创建压缩文件也比较慢,通常采用 .tar.bz
如何在 Linux 终端下创建新的文件系统/分区

如何在 Linux 终端下创建新的文件系统/分区

在 Linux 中创建分区或新的文件系统通常意味着一件事:安装 Gnome Parted 分区编辑器(GParted)。对于大多数 Linux 用户而言,这是唯一的办法。不过,你是否考虑过在终端创建这些分区和文件系统?当然可以!以下就是方法! 使用 CFdisk 创建一个基本的 Linux 分区 以下是如何在命令行中创建一个基本的 Linux 分区的正确方案。要做的第一件事就是先打开你的终端。若你已打开,你需要找到你想要创建分区的磁盘。这可以使用一个简单的命令来找到。 lsblk 当你运行了 lsblk,你应该会看到当前系统上每个磁盘的详细列表。看看这个列表,然后
Linux 有问必答:如何知道当前正在使用的 shell 是哪个?

Linux 有问必答:如何知道当前正在使用的 shell 是哪个?

问题: 我经常在命令行中切换 shell。是否有一个快速简便的方法来找出我当前正在使用的 shell 呢?此外,我怎么能找到当前 shell 的版本? 找到你当前正在使用的 Shell 版本 有多种方式可以查看你目前在使用什么 shell,最简单的方法就是通过使用 shell 的特殊参数。 其一,一个名为 "$$" 的特殊参数 表示当前你正在运行的 shell 实例的 PID。此参数是只读的,不能被修改。所以,下面的命令也将显示你正在运行的 shell 的名字: $ ps -p $$ PID TTY TIME CMD 21666 pts/4 00:00:00 bash 上述命令可在所有可用的 shell 中工作。 如果你不
如何在 Linux 上从 NetworkManager 切换为 systemd-network

如何在 Linux 上从 NetworkManager 切换为 systemd-network

在 Linux 世界里,对 systemd 的采用一直是激烈争论的主题,它的支持者和反对者之间的战火仍然在燃烧。到了今天,大部分主流 Linux 发行版都已经采用了 systemd 作为默认的初始化(init)系统。 正如其作者所说,作为一个 从未完成、从未完善、但一直追随技术进步 的系统,systemd 已经不只是一个初始化进程,它被设计为一个更广泛的系统以及服务管理平台,这个平台是一个包含了不断增长的核心系统进程、库和工具的生态系统。 systemd 的其中一部分是 systemd-networkd,它负责 systemd 生态中的网络配置。使用 systemd-networkd,你可以
RHCE 系列(七):在 Linux 客户端配置基于 Kerberos 身份验证的 NFS 服务器

RHCE 系列(七):在 Linux 客户端配置基于 Kerberos 身份验证的 NFS 服务器

在本系列的前一篇文章,我们回顾了如何在可能包括多种类型操作系统的网络上配置 Samba 共享。现在,如果你需要为一组类 Unix 客户端配置文件共享,很自然的你会想到网络文件系统,或简称 NFS。 RHCE 系列:第七部分 - 设置使用 Kerberos 进行身份验证的 NFS 服务器 在这篇文章中我们会介绍配置基于 Kerberos 身份验证的 NFS 共享的整个流程。假设你已经配置好了一个 NFS 服务器和一个客户端。如果还没有,可以参考 安装和配置 NFS 服务器 - 它列出了需要安装的依赖软件包并解释了在进行下一步之前如何在服务器上进行初始化配置。 另外,
Linux 有问必答:如何在 Linux 上自动设置 JAVA_HOME 环境变量

Linux 有问必答:如何在 Linux 上自动设置 JAVA_HOME 环境变量

问题:我需要在我的 Linux 机器上编译 Java 程序。为此我已经安装了 JDK (Java Development Kit),而现在我正试图设置 JAVA_HOME 环境变量使其指向安装好的 JDK 。关于在 Linux 上设置 JAVA_HOME 环境变量,最受推崇的办法是什么? 许多 Java 程序或基于 Java 的集成开发环境 (IDE)都需要设置好 JAVA_HOME 环境变量。该变量应指向 Java 开发工具包 (JDK)或 Java 运行时环境 (JRE)的安装目录。JDK 不仅包含了 JRE 提供的一切,还带有用于编译 Java 程序的额外的二进制代码和库文件(例如编译器,调试器及 JavaDoc 文档生成器)。JDK 是用
如何在 Linux 上使用 SSHfs 挂载一个远程文件系统

如何在 Linux 上使用 SSHfs 挂载一个远程文件系统

你曾经想过用安全 shell 挂载一个远程文件系统到本地吗?如果有的话,SSHfs 也许就是你所需要的。它通过使用 SSH 和 Fuse(LCTT 译注:Filesystem in Userspace,用户态文件系统,是 Linux 中用于挂载某些网络空间,如 SSH,到本地文件系统的模块) 允许你挂载远程计算机(或者服务器)到本地。 注意: 这篇文章假设你明白SSH 如何工作并在你的系统中配置 SSH。 准备 在使用 SSHfs 挂载之前,需要进行一些设置 - 在你的系统上安装 SSHfs 以及 fuse 软件包。你还需要为 fuse 创建一个组,添加用户到组,并创建远程文件系统将会驻留的目录
Linux 有问必答:如何在debian及其衍生发行版中改变默认的 Java 版本

Linux 有问必答:如何在debian及其衍生发行版中改变默认的 Java 版本

提问:当我尝试在Linux中运行一个Java程序时,我遇到了一个错误。看上去像程序编译所使用的Java版本与我本地的不同。我该如何在Linux上切换默认的Java版本? 当Java程序编译时,编译环境会设置一个target变量来设置程序可以运行的最低Java版本。如果你Linux系统上运行的程序不能满足最低的JRE版本要求,那么你会在运行的时候遇到下面的错误。 Exception in thread "main" java.lang.UnsupportedClassVersionError: com/xmodulo/hmon/gui/NetConf : Unsupported major.minor version 51.0 比如,程序在Java JRE 1.7下编译,但是系统只有J
SSL/TLS 加密新纪元 - Let's Encrypt

SSL/TLS 加密新纪元 - Let's Encrypt

根据 Let’s Encrypt 官方博客消息,Let’s Encrypt 服务将在下周(11 月 16 日)正式对外开放。 Let’s Encrypt 项目是由互联网安全研究小组(ISRG,Internet Security Research Group)主导并开发的一个新型数字证书认证机构(CA,Certificate Authority)。该项目旨在开发一个自由且开放的自动化 CA 套件,并向公众提供相关的证书免费签发服务以降低安全通讯的财务、技术和教育成本。在过去的一年中,互联网安全研究小组拟定了 ACME 协议草案,并首次实现了使用该协议的应用套件:服务端 Boulder 和客户端 letsencrypt。 至于为什么 Let’s
RHCE 系列(四): 使用 Shell 脚本自动化 Linux 系统维护任务

RHCE 系列(四): 使用 Shell 脚本自动化 Linux 系统维护任务

之前我听说高效的系统管理员的一个特点是懒惰。一开始看起来很矛盾,但作者接下来解释了其中的原因: RHCE 系列:第四部分 - 自动化 Linux 系统维护任务 如果一个系统管理员花费大量的时间解决问题以及做重复的工作,你就应该怀疑他这么做是否正确。换句话说,一个高效的系统管理员/工程师应该制定一个计划使得其尽量花费少的时间去做重复的工作,以及通过使用本系列中第三部分 使用 Linux 工具集监视系统活动报告 介绍的工具来预见问题。因此,尽管看起来他/她没有做很多的工作,但那是因为 shell 脚本帮助完成了他的/她的大部分任务,
RHCE 系列(三):如何使用 Linux 工具集生成和发送系统活动报告

RHCE 系列(三):如何使用 Linux 工具集生成和发送系统活动报告

作为一个系统工程师,你经常需要生成一些显示系统资源利用率的报告,以便确保:1)正在合理利用系统,2)防止出现瓶颈,3)确保可扩展性,以及其它原因。 RHCE 第三部分:监视 Linux 性能活动报告 除了著名的用于检测磁盘、内存和 CPU 使用率的原生 Linux 工具 - 可以给出很多例子,红帽企业版 Linux 7 还提供了另外两个可以为你的报告更多数据的工具套装:sysstat 和 dstat。 在这篇文章中,我们会介绍两者,但首先让我们来回顾一下传统工具的使用。 原生 Linux 工具 使用 df,你可以报告磁盘空间以及文件系统的 inode 使用情况。你需要
Linux有问必答:如何找出Linux中内置模块的信息

Linux有问必答:如何找出Linux中内置模块的信息

提问:我想要知道Linux系统中内核内置的模块,以及每个模块有哪些参数。有什么方法可以得到内置模块和设备驱动的列表,以及它们的详细信息呢? 现代Linux内核正在随着时间变化而迅速增长,以支持大量的硬件、文件系统和网络功能。在此期间,可加载模块(loadable kernel modules,)的引入防止内核变得越来越臃肿,以及在不同的环境中灵活地扩展功能及硬件支持,而不必重新构建内核。 最新的Linux发行版的内核只带了相对较小的内置模块(built-in modules),其余的特定硬件驱动或者自定义功能作为可加载模块来让你选择地加载或卸载。 内
Linux有问必答:如何强制在下次登录Linux时更换密码

Linux有问必答:如何强制在下次登录Linux时更换密码

提问:我管理着一台多人共享的Linux服务器。我刚使用默认密码创建了一个新用户,但是我想用户在第一次登录时更换密码。有没有什么方法可以让他/她在下次登录时修改密码呢? 在多用户Linux环境中,标准实践是使用一个默认的随机密码创建一个用户账户。成功登录后,新用户自己改变默认密码。出于安全考虑,经常建议强制用户在第一次登录时修改密码来确保这个一次性使用的密码不会再被使用。 下面是如何强制用户在下次登录时修改他/她的密码。 每个Linux用户都关联这不同的密码相关配置和信息。比如,记录着上次密码更改的日期、最小/最大
10 个 Linux 中的 passwd 命令示例

10 个 Linux 中的 passwd 命令示例

正如 passwd 命令的名称所示,其用于改变系统用户的密码。如果 passwd 命令由非 root 用户执行,那么它会询问当前用户的密码,然后设置调用该命令的用户的新密码。当此命令由超级用户 root 执行的话,就可以重新设置任何用户的密码,包括不知道当前密码的用户。 在这篇文章中,我们将用实例来介绍 passwd 命令。 语法 : # passwd {options} {user_name} 可以在 passwd 命令使用不同的选项,列表如下: 例1:更改系统用户的密码 当你使用非 root 用户登录时,比如我使用 linuxtechi 登录的情况下,运行 passwd 命令它会重置当前登录用户
10 个给 Linux 用户的有用工具

10 个给 Linux 用户的有用工具

引言 在本教程中,我已经收集了10个给 Linux 用户的有用工具,其中包括各种网络监控,系统审计和一些其它实用的命令,它可以帮助用户提高工作效率。我希望你会喜欢他们。 1. w 显示谁登录了系统并执行了哪些程序。 $ w 不显示头部信息(LCTT译注:原文此处有误) $ w -h 显示指定用户的信息 $ w username 2. nmon Nmon(nigels monitor 的简写)是一个显示系统性能信息的工具。 $ sudo apt-get install nmon $ nmon nmon 可以显示与 netwrok,cpu, memory 和磁盘使用情况的信息。 nmon 显示 cpu 信息 (按 c) nmon 显示 network
Linux 中 df 命令的11个例子

Linux 中 df 命令的11个例子

df 即可用磁盘(disk free),用于显示文件系统的磁盘使用情况。默认情况下 df 命令将以每块 1K 的单位进行显示所有当前已挂载的文件系统,如果你想以人类易读的格式显示 df 命令的输出,像这样df -h使用 -h 选项。 在这篇文章中,我们将讨论 df 命令在 Linux 下11种不同的实例。 在 Linux 下 df 命令的基本格式为: # df {options} {mount_point_of_filesystem} 在 df 命令中可用的选项有: df 的样例输出 : # df Filesystem 1K-blocks Used Available Use% Mounted on /dev/mapper/vg00-root 17003304 804668 15311852 5% / devtmpfs
如何在 Ubuntu 中设置 IonCube Loaders

如何在 Ubuntu 中设置 IonCube Loaders

IonCube Loaders是一个PHP中用于加解密的工具,并带有加速页面运行的功能。它也可以保护你的PHP代码不会查看和运行在未授权的计算机上。要使用ionCube编码、加密的PHP文件,需要在web服务器上安装一个叫ionCube Loader的文件,并需要让 PHP 可以访问到,很多 PHP 应用都在用它。它可以在运行时读取并执行编码过后的代码。PHP只需在php.ini中添加一行就可以使用这个loader。 前提条件 在这篇文章中,我们将在Ubuntu14.04/15.04安装Ioncube Loaders ,以便它可以在所有PHP模式中使用。本教程的唯一要求就是你系统安装了LEMP,并有php.ini文
Linux 有问必答:如何在 Linux 中永久修改 USB 设备权限

Linux 有问必答:如何在 Linux 中永久修改 USB 设备权限

提问:当我尝试在 Linux 中运行 USB GPS 接收器时我遇到了下面来自 gpsd 的错误。 gpsd: gpsd:ERROR: read-only device open failed: Permission denied gpsd: gpsd:ERROR: /dev/ttyUSB0: device activation failed. gpsd: gpsd:ERROR: device open failed: Permission denied - retrying read-only 看上去 gpsd 没有权限访问 USB 设备(/dev/ttyUSB0)。我该如何永久修改它在Linux上的权限? 当你在运行一个会读取或者写入USB设备的进程时,进程的用户/组必须有权限这么做才行。当然你可以手动用chmod命令改变 USB 设备的权限,但是手
如何使用 GRUB 2 直接从硬盘运行 ISO 文件

如何使用 GRUB 2 直接从硬盘运行 ISO 文件

大多数 Linux 发行版都会提供一个可以从 USB 启动的 live 环境,以便用户无需安装即可测试系统。我们可以用它来评测这个发行版或仅仅是当成一个一次性系统,并且很容易将这些文件复制到一个 U 盘上,在某些情况下,我们可能需要经常运行同一个或不同的 ISO 镜像。GRUB 2 可以配置成直接从启动菜单运行一个 live 环境,而不需要烧录这些 ISO 到硬盘或 USB 设备。 获取和检查可启动的 ISO 镜像 为了获取 ISO 镜像,我们通常应该访问所需的发行版的网站下载与我们架构兼容的镜像文件。如果这个镜像可以从 U 盘启动,那它也应该可以从 GRUB 菜
pyinfo():一个像 phpinfo 一样的 Python 脚本

pyinfo():一个像 phpinfo 一样的 Python 脚本

作为一个热衷于 php 的家伙,我已经习惯了使用 phpinfo() 函数来让我轻松访问 php.ini 里的配置和加载的模块等信息。当然我也想要使用一个不存在的 pyinfo() 函数,但没有成功。按下 CTRL-E,google 一下是否有人实现了它? 是的,有人已经实现了。但是,对我来说它非常难看。荒谬!因为我无法忍受丑陋的布局,咳咳,我不得不亲自动手来改改。我用找到的代码,并重新进行布局使之更好看点。Python 官方网站的布局看起来不错,那么何不借用他们的颜色和背景图片呢?是的,这听起来像一个计划。 Gist 代码地址 下载地址 例子 提醒你下,我
在 SSD 上使用 btrfs 文件系统的相关优化

在 SSD 上使用 btrfs 文件系统的相关优化

优化挂载参数 在 Linux 中挂载 SSD 上的 btrfs,可以采用各种参数进行优化: # file system mount point type options dump pass UUID=略 / btrfs defaults,ssd,discard,noatime,compress=lzo,subvol=@ 0 1 这些参数各有优缺点,酌情添加。 ssd btrfs 文件系统有对 SSD 进行优化,在挂载参数中加入 ssd 即可。该参数不会自动启用 TRIM/discard。 discard 可以通过以下命令确认 SSD 是否支持 TRIM: sudo hdparm -I /dev/sdX | grep TRIM * Data Set Management TRIM supported (limit 8 blocks) 若 SSD 支持 TRIM 命令,可以在 /etc/fs
Zorin OS:Linux新手最应该使用的个人桌面系统

Zorin OS:Linux新手最应该使用的个人桌面系统

Zorin OS 是一款基于 Ubuntu 的 Linux 发行版,特别为 Linux 新手而设计。它拥有类似 Windows 的图形用户界面,以及很多类似 Windows 下的应用软件。Zorin OS 还带有能让用户运行很多Windows 软件的程序。该发行版的终极目标是提供一份可作为 Windows 替换的 Linux 选择,并让 Windows 用户在避免烦琐的同时享受 Linux 的所有特性。 这一段话是几乎所有的中国的 Linux 网站上对 Zorin OS 的描述。 本人是 linux 新手,在 Linux 中国的新手群里得到各位大神的指点,安装了很多适合个人用的 linux 桌面系统(Ubuntu/fedora/麒麟,还有一些非
为什么 Chrome 会说你的 SHA-2 证书链是“肯定不安全的”

为什么 Chrome 会说你的 SHA-2 证书链是“肯定不安全的”

假如你已经完全配好了你的 SSL:使用了强加密算法、禁用了废弃的协议,而且你提供了100% SHA-2的证书链。SSL Labs给了你一个 A+ 评分,shaaaaaaaaaaaaa.com也没发现你使用了 SHA-1。但是,有些情况下,当你访问你的网站时,Chrome 仍旧会在 URL 栏处显示一个红叉,并且说你的网站提供了 SHA-1 证书,是肯定不安全的(affirmatively insecure) 的: 这可能吗?不幸的是,有可能。你的服务器所发送的证书也许并不是你的浏览器所使用的。在迁移到 SHA-2 的过程中不应该是这样的,但是由于某些 CA 糟糕的做法和用户使用了老旧的软件,有时候
5 个在 Linux 中管理文件类型和系统时间的有用命令

5 个在 Linux 中管理文件类型和系统时间的有用命令

对于想学习 Linux 的初学者来说要适应使用命令行或者终端可能非常困难。由于终端比图形用户界面程序更能帮助用户控制 Linux 系统,我们必须习惯在终端中运行命令。因此为了有效记忆 Linux 不同的命令,你应该每天使用终端并明白怎样将命令和不同选项以及参数一同使用。 在 Linux 中管理文件类型并设置时间 请先查看我们 Linux 小技巧系列之前的文章: 5 个有趣的 Linux 命令行技巧 给新手的 10 个有用 Linux 命令行技巧 在这篇文章中,我们打算看看终端中 5 个和文件以及时间相关的提示和技巧。 Linux 中的文件类型 在 Linux 中,一切
RHCSA 系列(十五): 虚拟化基础和使用 KVM 进行虚拟机管理

RHCSA 系列(十五): 虚拟化基础和使用 KVM 进行虚拟机管理

假如你在词典中查一下单词 虚拟化(virtualize),你将会发现它的意思是 创造某些事物的一个虚拟物(而非真实的)。在计算机行业中,术语虚拟化(virtualization)指的是:在相同的物理(硬件)系统上,同时运行多个操作系统,且这几个系统相互隔离的可能性,而那个硬件在虚拟化架构中被称作宿主机(host)。 RHCSA 系列: 虚拟化基础和使用 KVM 进行虚拟机管理 Part 15 通过使用虚拟机监视器(也被称为虚拟机管理程序(hypervisor)),虚拟机(被称为 guest)由底层的硬件来供给虚拟资源(举几个例子来说,如 CPU,RAM,存储介质,网
RHCSA 系列(十四): 在 RHEL 7 中设置基于 LDAP 的认证

RHCSA 系列(十四): 在 RHEL 7 中设置基于 LDAP 的认证

在这篇文章中,我们将首先罗列一些 LDAP 的基础知识(它是什么,它被用于何处以及为什么会被这样使用),然后向你展示如何使用 RHEL 7 系统来设置一个 LDAP 服务器以及配置一个客户端来使用它达到认证的目的。 RHCSA 系列:设置 LDAP 服务器及客户端认证 Part 14 正如你将看到的那样,关于认证,还存在其他可能的应用场景,但在这篇指南中,我们将只关注基于 LDAP 的认证。另外,请记住,由于这个话题的广泛性,在这里我们将只涵盖它的基础知识,但你可以参考位于总结部分中列出的文档,以此来了解更加深入的细节。 基于相同的原因,你
RHCSA 系列(十三): 在 RHEL 7 中使用 SELinux 进行强制访问控制

RHCSA 系列(十三): 在 RHEL 7 中使用 SELinux 进行强制访问控制

在本系列的前面几篇文章中,我们已经详细地探索了至少两种访问控制方法:标准的 ugo/rwx 权限(RHCSA 系列(三): 如何管理 RHEL7 的用户和组) 和访问控制列表(RHCSA 系列(七): 使用 ACL(访问控制列表) 和挂载 Samba/NFS 共享)。 RHCSA 认证:SELinux 精要和控制文件系统的访问 尽管作为第一级别的权限和访问控制机制是必要的,但它们同样有一些局限,而这些局限则可以由安全增强 Linux(Security Enhanced Linux,简称为 SELinux)来处理。 这些局限的一种情形是:某个用户可能通过一个泛泛的 chmod 命令将文件或目录暴露出现了安
RHCSA 系列(十二): 使用 Kickstart 完成 RHEL 7 的自动化安装

RHCSA 系列(十二): 使用 Kickstart 完成 RHEL 7 的自动化安装

无论是在数据中心还是实验室环境,Linux 服务器很少是独立的机器,很可能有时你需要安装多个以某种方式相互联系的机器。假如你将在单个服务器上手动安装 RHEL 7 所花的时间乘以你需要配置的机器数量,这将导致你必须做出一场相当长的努力,而通过使用被称为 kicksta 的无人值守安装工具则可以避免这样的麻烦。 在这篇文章中,我们将向你展示使用 kickstart 工具时所需的一切,以便在安装过程中,不用你时不时地照看处在襁褓中的服务器。 RHCSA: RHEL 7 的自动化 Kickstart 安装 Kickstart 和自动化安装简介 Kickstart 是一种被用来执行
RHCSA 系列(十一): 使用 firewalld 和 iptables 来控制网络流量

RHCSA 系列(十一): 使用 firewalld 和 iptables 来控制网络流量

简单来说,防火墙就是一个基于一系列预先定义的规则(例如流量包的目的地或来源,流量的类型等)的安全系统,它控制着一个网络中的流入和流出流量。 RHCSA: 使用 FirewallD 和 Iptables 来控制网络流量 Part 11 在本文中,我们将回顾 firewalld 和 iptables 的基础知识。前者是 RHEL 7 中的默认动态防火墙守护进程,而后者则是针对 Linux 的传统的防火墙服务,大多数的系统和网络管理员都非常熟悉它,并且在 RHEL 7 中也可以用。 FirewallD 和 Iptables 的一个比较 在后台, firewalld 和 iptables 服务都通过相同的接口来与内核中的 ne
给新手的 10 个有用 Linux 命令行技巧

给新手的 10 个有用 Linux 命令行技巧

我记得我第一次使用 Linux 的时候,我还习惯于 Windows 的图形界面,我真的很讨厌 Linux 终端。那时候我觉得命令难以记忆,不能正确使用它们。随着时间推移,我意识到了 Linux 终端的优美、灵活和可用性,说实话,我没有一天不使用它。今天,我很高兴和刚开始接触 Linux 的人一起来分享一些有用的技巧和提示,希望能帮助他们更好的向 Linux 过渡,并帮助他们学到一些新的东西(希望如此)。 10 个 Linux 命令行技巧 5 个有趣的 Linux 命令行技巧 管理 Linux 文件类型的 5 个有用命令 这篇文章希望向你展示一些不需要很高的技术就可以像
使用 tuptime 工具查看 Linux 服务器系统的开机时间的历史和统计

使用 tuptime 工具查看 Linux 服务器系统的开机时间的历史和统计

你可以使用下面的工具来查看 Linux 或类 Unix 系统运行了多长时间: uptime : 告诉你服务器运行了多长的时间。 lastt : 显示重启和关机时间。 tuptime : 报告系统的运行时间历史和运行时间统计,这是指重启之间的运行时间。和 uptime 命令类似,不过输出结果更有意思。 找出系统上次重启时间和日期 你可以使用下面的命令来获取Linux操作系统的上次重启和关机时间及日期(在OSX/类Unix系统上也可以用): ### 显示系统重启和关机时间 who -b last reboot last shutdown ### 开机信息 uptime cat /proc/uptime awk ‘{ print "up " $1 /
Linux 有问必答:如何知道进程运行在哪个 CPU 内核上?

Linux 有问必答:如何知道进程运行在哪个 CPU 内核上?

问题:我有个 Linux 进程运行在多核处理器系统上。怎样才能找出哪个 CPU 内核正在运行该进程? 当你在 多核 NUMA 处理器上运行需要较高性能的 HPC(高性能计算)程序或非常消耗网络资源的程序时,CPU/memory 的亲和力是限度其发挥最大性能的重要因素之一。在同一 NUMA 节点上调度最相关的进程可以减少缓慢的远程内存访问。像英特尔 Sandy Bridge 处理器,该处理器有一个集成的 PCIe 控制器,你可以在同一 NUMA 节点上调度网络 I/O 负载(如网卡)来突破 PCI 到 CPU 亲和力限制。 作为性能优化和故障排除的一部分,你可能想知道特定的进