Linux中国
1.73K subscribers
777 photos
6.34K links
Linux 中国官方 Telegram 频道
Download Telegram
命令行乐趣:嘲讽输错 Bash 命令的用户

你可以通过配置 sudo 命令去嘲讽输入错误密码的用户。但是现在,当用户在 shell 输错命令时,就能嘲讽他了(滥用?)。Media

via https://linux.cn/article-9497-1.html
如何在 Linux 中查找最大的 10 个文件

当系统的磁盘空间不足时,您可能会使用 df、du 或 ncdu 命令进行检查,但这些命令只会显示当前目录的文件,并不会显示整个系统范围的文件。Media

via https://linux.cn/article-9495-1.html
你没听过的 10 个免费的 Linux 生产力应用程序

高效率的应用程序确实可以让你工作变得更轻松。如果你是一位 Linux 用户,这 10 个不太知名的 Linux 桌面应用程序可以帮助到你。Media

via https://linux.cn/article-9498-1.html
chkservice:在 Linux 终端管理 systemd 单元的工具

chkservice 是一个基于 ncurses 的在终端中管理 systemd 单元的工具。它提供了一个非常全面的 systemd 服务的视图,使得它们非常容易修改。Media

via https://linux.cn/article-9499-1.html
为初学者准备的 ln 命令教程(5 个示例)

当我们在命令行上工作时,您可能需要在文件之间创建链接。Media

via https://linux.cn/article-9501-1.html
使用 Vagrant 测试 Ansible 剧本

我需要一种简单而迅速的方法来在我的本地笔记本上测试 Ansible 剧本的部署情况,尤其在刚开始写一个新剧本的时候,因为直接部署到生产服务器上不仅特别慢而且风险还很大。Media

via https://linux.cn/article-9502-1.html
六个例子带你入门 size 命令

正如你所知道的那样,Linux 中的目标文件或着说可执行文件由多个段组成(比如文本段和数据段)。若你想知道每个段的大小,那么确实存在这么一个命令行工具 —— 那就是 size。Media

via https://linux.cn/article-9504-1.html
计算机语言的巨变

我的上一篇博文《与 C 语言长别离》引来了我的老朋友,一位 C++ 专家的评论。在评论里,他推荐把 C++ 作为 C 的替代品。这是不可能发生的,如果 C++ 代替 C 是趋势的话,那么 Go 和 Rust 也就不会出现了。Media

via https://linux.cn/article-9503-1.html
容器环境中的代理模型

我们大多数人都熟悉代理如何工作,但在基于容器的环境中有什么不同?让我们来看看有什么改变。Media

via https://linux.cn/article-9505-1.html
如何配置 Apache Web 服务器

学习如何在 Apache 上托管你自己的网站,这是一个可靠、流行且易于配置的 Web 服务器。Media

via https://linux.cn/article-9506-1.html
深入理解 BPF:一个阅读清单

我收集了非常多的关于 BPF 的阅读材料:介绍、文档,也有教程或者示例。这里有很多的材料可以去阅读Media

via https://linux.cn/article-9507-1.html
在 Ubuntu 16.04 上配置 msmtp

我使用 msmtp 发送来自这个博客的邮件俩通知我评论和更新等。这里我会记录如何配置它通过 Google Apps 帐户发送电子邮件,虽然这应该与标准的 Google 帐户一样。Media

via https://linux.cn/article-9509-1.html
在 Ubuntu 16.04 上配置 msmtp

Media这篇文章是在我之前的博客中发表过的在 Ubuntu 16.04 上配置 MSMTP 的一个副本。我再次发表是为了后续,我并不知道它是否能在更高版本上工作。由于我没有再托管自己的 Ubuntu/MSMTP 服务器了,所以我现在看不到有需要更新的地方,但是如果我需要重新设置,我会创建一个更新的帖子!无论如何,这是我现有的。我之前写了一篇在 Ubuntu 12.04 上配置 msmtp 的文章,但是正如我在之前的文章中暗示的那样,当我升级到 Ubuntu 16.04 后出现了一些问题。接下来的内容基本上是一样的,但 16.04 有一些小的更新。和以前一样,这里假定你使用 Apache 作为 Web 服务器,但是我相信如果你选择其他的 Web 服务器,也应该相差不多。我使用 msmtp 发送来自这个博客的邮件俩通知我评论和更新等。这里我会记录如何配置它通过 Google Apps 帐户发送电子邮件,虽然这应该与标准的 Google 帐户一样。首先,我们需要安装 3 个软件包:
sudo apt-get install msmtp msmtp-mta ca-certificates
安装完成后,就需要一个默认配置。默认情况下,msmtp 会在 /etc/msmtprc 中查找,所以我使用 vim 创建了这个文件,尽管任何文本编辑器都可以做到这一点。这个文件看起来像这样:
# Set defaults.defaults# Enable or disable TLS/SSL encryption.tls ontls_starttls ontls_trust_file /etc/ssl/certs/ca-certificates.crt# Setup WP account's settings.account GMAILhost smtp.gmail.comport 587auth loginuser YOUR USERNAMEpassword YOUR PASSWORDfrom FROM@ADDRESSlogfile /var/log/msmtp/msmtp.logaccount default :
任何大写选项都是需要替换为你特定的配置。日志文件是一个例外,当然你也可以将活动/警告/错误放在任何你想要的地方。文件保存后,我们将更新上述配置文件的权限 ,如果该文件的权限过于开放,msmtp 将不会运行,并且创建日志文件的目录。
sudo mkdir /var/log/msmtpsudo chown -R www-data:adm /var/log/msmtpsudo chmod 0600 /etc/msmtprc
接下来,我选择为 msmtp 日志配置 logrotate,以确保日志文件不会太大并让日志目录更加整洁。为此,我们创建 /etc/logrotate.d/msmtp 并使用按以下内容配置。请注意,这是可选的,你可以选择不这样做,或者你可以选择以不同方式配置日志。
/var/log/msmtp/*.log { rotate 12 monthly compress missingok notifempty}
现在配置了日志,我们需要通过编辑 /etc/php/7.0/apache2/php.ini 告诉 PHP 使用 msmtp,并将 sendmail 路径从
sendmail_path =
变成
sendmail_path = "/usr/bin/msmtp -C /etc/msmtprc -a -t"
这里我遇到了一个问题,即使我指定了帐户名称,但是当我测试它时,它并没有正确发送电子邮件。这就是为什么 account default : 这行被放在 msmtp 配置文件的末尾。要测试配置,请确保 PHP 文件已保存并运行 sudo service apache2 restart,然后运行 php -a 并执行以下命令
mail ('personal@email.com', 'Test Subject', 'Test body text');exit();
此时发生的任何错误都将显示在输出中,因此错误诊断会相对容易。如果一切顺利,你现在应该可以使用 PHP sendmail(至少 WordPress 可以)中用 Gmail(或 Google Apps)从 Ubuntu 服务器发送电子邮件。我没有说这是最安全的配置,所以当你看到并且意识要这个非常不安全,或者有其他严重的错误,请让我知道,我会相应地更新。via: https://codingproductivity.wordpress.com/2018/01/18/configuring-msmtp-on-ubuntu-16-04-again/作者:JOE 译者:geekpi 校对:wxy本文由 LCTT 原创编译,Linux中国 荣誉推出Media

via https://linux.cn/article-9509-1.html?utm_source=rss&utm_medium=rss
10 个增加 UNIX/Linux Shell 脚本趣味的工具

shell 脚本可以使用一些 GUI 组件(菜单、警告框、进度条等),你可以控制终端输出、光标位置以及各种输出效果等等。利用下面的工具,你可以构建强壮的、可交互的、对用户友好的 UNIX/Linux bash 脚本。Media

via https://linux.cn/article-9510-1.html
为什么开源在计算机专业的学生中不那么流行?

高中和大学生们或许因先入为主的观念而畏于参与开源项目。Media

via https://linux.cn/article-9511-1.html
在 Debian 9 上使用 Rsyslog 安装一台中央日志服务器

在 Linux 中,可以配置运行一个 Rsyslog 服务器来中央化管理日志,在流行的服务端—客户端模式中,通过 TCP 或者 UDP 传输协议基于网络来发送日志信息,或者从网络设备、服务器、路由器、交换机、以及其它系统或嵌入式设备中接受生成的日志。Media

via https://linux.cn/article-9512-1.html
Oh My Fish! 让你的 Shell 漂亮起来

如何使用 Oh My Fish (简称 omf ) ,让我们的 Fish shell 变得漂亮且优雅。Media

via https://linux.cn/article-9515-1.html
如何知道 CPU 是否支持虚拟化技术(VT)

在安装虚拟化程序(如 VirtualBox 或 VMWare workstation)以在 Linux 系统上运行虚拟机之前,你应该首先验证这一点。Media

via https://linux.cn/article-9516-1.html
如何记录 Linux 的系统运行时间的统计信息

Linux/Unix 系统管理员对服务器的系统运行时间有一种奇怪的痴迷。Media

via https://linux.cn/article-9518-1.html
给初学者的 type 命令教程

你可以使用 type 命令轻松找出给定的命令是否是别名、shell 内置命令、文件、函数或关键字。另外,你也可以找到命令的实际路径。Media

via https://linux.cn/article-9519-1.html
给初学者的 type 命令教程

Mediatype 命令用于查找 Linux 命令的信息。顾名思义,你可以使用 type 命令轻松找出给定的命令是否是别名、shell 内置命令、文件、函数或关键字。另外,你也可以找到命令的实际路径。为什么有人需要找到命令类型?例如,如果你经常在共享的计算机上工作,则某些人可能会故意或意外地为特定的 Linux 命令创建别名来执行不需要的操作,例如 alias ls = rm -rf /。因此,在发生更糟糕的事情之前检查它们总是一个好主意。这是 type 命令有用的地方。让我给你看一些例子。不带任何选项运行 type 命令。
$ type lsls is aliased to `ls --color=auto'
正如你在上面的输出中看到的那样,ls 命令已被别名为 ls -color-auto。但是,它是无害的。但只要想想 ls 如果被别名为了其他一些危险的命令。你不想那样,是吗?你可以使用 -t 选项仅找出 Linux 命令的类型。例如:
$ type -t lsalias$ type -t mkdirfile$ type -t pwdbuiltin$ type -t ifkeyword$ type -t rvmfunction
该命令仅显示命令的类型,例如别名。它不显示被别名的内容。如果该命令找不到,你将在终端中看不到任何内容。type 命令的另一个有用的地方是我们可以很容易地找出给定 Linux 命令的绝对路径。为此,请使用 -p 选项,如下所示。
$ type -p cal/usr/bin/cal
这与 which ls 命令类似。如果给定的命令是别名,则不会打印任何内容。要显示命令的所有信息,请使用 -a 选项。
$ type -a lsls is aliased to `ls --color=auto'ls is /usr/bin/lsls is /bin/ls
如你所见,-a 标志显示给定命令的类型及其绝对路径。有关更多详细信息,请参阅手册页。
$ man type
希望这有帮助。会有更多的好东西。请继续访问!干杯!via: https://www.ostechnix.com/the-type-command-tutorial-with-examples-for-beginners/作者:SK 译者:geekpi 校对:wxy本文由 LCTT 原创编译,Linux中国 荣誉推出Media

via https://linux.cn/article-9519-1.html?utm_source=rss&utm_medium=rss