分类 技术 下的文章

Yum 是 Centos/RHEL/Fedora 中最重要的工具之一。尽管在 Fedora 的最新版本中,它已经被 DNF 所取代,但这并不意味着它自生自灭了。它仍然被广泛用于安装 rpm 包,我们已经在前面的教程(在这里阅读)中用示例讨论了 Yum。

在本教程中,我们将学习创建一个本地 Yum 仓库,首先使用系统的 ISO 镜像,然后创建一个在线 Yum 仓库的镜像。

用 DVD ISO 创建 Yum

我们在本教程中使用 Centos 7 dvd,同样的过程也应该可以用在 RHEL 7 上。

首先在根文件夹中创建一个名为 Yum 的目录

$ mkdir /YUM

然后挂载 Centos 7 ISO:

$ mount -t iso9660 -o loop /home/dan/Centos-7-x86_x64-DVD.iso /mnt/iso/

接下来,从挂载的 ISO 中复制软件包到 /YUM 中。当所有的软件包都被复制到系统中后,我们将安装创建 Yum 所需的软件包。打开 /YUM 并安装以下 RPM 包:

$ rpm -ivh deltarpm
$ rpm -ivh python-deltarpm
$ rpm -ivh createrepo

安装完成后,我们将在 /etc/yum.repos.d 中创建一个名 为 local.repo 的文件,其中包含所有的 Yum 信息。

$ vi /etc/yum.repos.d/local.repo
LOCAL REPO]
Name=Local YUM
baseurl=file:///YUM
gpgcheck=0
enabled=1

保存并退出文件。接下来,我们将通过运行以下命令来创建仓库数据。

$ createrepo -v /YUM

创建仓库数据需要一些时间。一切完成后,请运行:

$ yum clean all

清理缓存,然后运行:

$ yum repolist

检查所有仓库列表。你应该在列表中看到 local.repo

使用在线仓库创建镜像 Yum 仓库

创建在线 Yum 的过程与使用 ISO 镜像创建 Yum 类似,只是我们将从在线仓库而不是 ISO 中获取 rpm 软件包。

首先,我们需要找到一个在线仓库来获取最新的软件包。建议你找一个离你位置最近的在线 Yum 仓库,以优化下载速度。我们将使用下面的镜像,你可以从 CENTOS 镜像列表中选择一个离你最近的镜像。

选择镜像之后,我们将使用 rsync 将该镜像与我们的系统同步,但在此之前,请确保你服务器上有足够的空间。

$ rsync -avz rsync://mirror.fibergrid.in/centos/7.2/os/x86_64/Packages/s/ /YUM

同步将需要相当长一段时间(也许一个小时),这取决于你互联网的速度。同步完成后,我们将更新我们的仓库数据。

$ createrepo - v /YUM

我们的 Yum 已经可以使用了。我们可以创建一个 cron 任务来根据你的需求每天或每周定时地自动更新仓库数据。

要创建一个用于同步仓库的 cron 任务,请运行:

$ crontab -e

并添加以下行

30 12 * * * rsync -avz http://mirror.centos.org/centos/7/os/x86_64/Packages/ /YUM

这会在每晚 12:30 同步 Yum。还请记住在 /etc/yum.repos.d 中创建仓库配置文件,就像我们上面所做的一样。

就是这样,你现在使用你自己的 Yum 仓库了。如果你喜欢它,请分享这篇文章,并在下面的评论栏留下你的意见/疑问。


via: http://linuxtechlab.com/creating-yum-repository-iso-online-repo/

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

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

在 Linux 系统上搜索文件的方法有很多,有的命令很简单,有的很详细。我们的目标是:缩小搜索范围,找到您正在寻找的文件,又不受其他文件的干扰。在今天的文章中,我们将研究一些对文件搜索最有用的命令和选项。我们将涉及:

  • 快速搜索
  • 更复杂的搜索条件
  • 组合条件
  • 反转条件
  • 简单和详细的回应
  • 寻找重复的文件

有很多有用的命令可以搜索文件,find 命令可能是其中最有名的,但它不是唯一的命令,也不一定总是找到目标文件的最快方法。

快速搜索命令:which 和 locate

搜索文件的最简单的命令可能就是 whichlocate 了,但二者都有一些局限性。which 命令只会在系统定义的搜索路径中,查找可执行的文件,通常用于识别命令。如果您对输入 which 时会运行哪个命令感到好奇,您可以使用命令 which which,它会指出对应的可执行文件。

$ which which
/usr/bin/which

which 命令会显示它找到的第一个以相应名称命名的可执行文件(也就是使用该命令时将运行的那个文件),然后停止。

locate 命令更大方一点,它可以查找任意数量的文件,但它也有一个限制:仅当文件名被包含在由 updatedb 命令构建的数据库时才有效。该文件可能会存储在某个位置,如 /var/lib/mlocate/mlocate.db,但不能用 locate 以外的任何命令读取。这个文件的更新通常是通过每天通过 cron 运行的 updatedb 进行的。

简单的 find 命令没有太多限制,不过它需要指定搜索的起点和搜索条件。最简单的 find 命令:按文件名搜索文件。如下所示:

$ find . -name runme
./bin/runme

如上所示,通过文件名搜索文件系统的当前位置将会搜索所有子目录,除非您指定了搜索深度。

不仅仅是文件名

find 命令允许您搜索除文件名以外的多种条件,包括文件所有者、组、权限、大小、修改时间、缺少所有者或组,和文件类型等。除了查找文件外,您还可以删除文件、对其进行重命名、更改所有者、更改权限和对找到的文件运行几乎任何命令。

下面两条命令会查找:在当前目录中 root 用户拥有的文件,以及不被指定用户(在本例中为 shs)所拥有的文件。在这个例子中,两个输出是一样的,但并不总是如此。

$ find . -user root -ls
 396926 0 lrwxrwxrwx 1 root root 21 Sep 21 09:03 ./xyz -> /home/peanut/xyz
$ find . ! -user shs -ls
 396926 0 lrwxrwxrwx 1 root root 21 Sep 21 09:03 ./xyz -> /home/peanut/xyz

感叹号 ! 字符代表“非”:反转跟随其后的条件。

下面的命令将查找具有特定权限的文件:

$ find . -perm 750 -ls
 397176 4 -rwxr-x--- 1 shs shs 115 Sep 14 13:52 ./ll
 398209 4 -rwxr-x--- 1 shs shs 117 Sep 21 08:55 ./get-updates
 397145 4 drwxr-x--- 2 shs shs 4096 Sep 14 15:42 ./newdir

接下来的命令显示具有 777 权限的非符号链接文件:

$ sudo find /home -perm 777 ! -type l -ls
 397132 4 -rwxrwxrwx 1 shs shs 18 Sep 15 16:06 /home/shs/bin/runme
 396949 4 -rwxrwxrwx 1 root root 558 Sep 21 11:21 /home/oops

以下命令将查找大小超过千兆字节的文件。请注意,我们找到了一个非常有趣的文件。它以 ELF core 文件格式表示了该系统的物理内存。

$ sudo find / -size +1G -ls
 4026531994 0 -r-------- 1 root root 140737477881856 Sep 21 11:23 /proc/kcore
 1444722 15332 -rw-rw-r-- 1 shs shs 1609039872 Sep 13 15:55 /home/shs/Downloads/ubuntu-17.04-desktop-amd64.iso

只要您知道 find 命令是如何描述文件类型的,就可以通过文件类型来查找文件。

b = 块设备文件
c = 字符设备文件
d = 目录
p = 命名管道
f = 常规文件
l = 符号链接
s = 套接字
D = 门(仅限 Solaris)

在下面的命令中,我们要寻找符号链接和套接字:

$ find . -type l -ls
 396926 0 lrwxrwxrwx 1 root root 21 Sep 21 09:03 ./whatever -> /home/peanut/whatever
$ find . -type s -ls
 395256 0 srwxrwxr-x 1 shs shs 0 Sep 21 08:50 ./.gnupg/S.gpg-agent

您还可以根据 inode 号来搜索文件:

$ find . -inum 397132 -ls
 397132 4 -rwx------ 1 shs shs 18 Sep 15 16:06 ./bin/runme

另一种通过 inode 搜索文件的方法是使用 debugfs 命令。在大的文件系统上,这个命令可能比 find 快得多,您可能需要安装 icheck。

$ sudo debugfs -R 'ncheck 397132' /dev/sda1
debugfs 1.42.13 (17-May-2015)
Inode Pathname
397132 /home/shs/bin/runme

在下面的命令中,我们从主目录(~)开始,限制搜索的深度(即我们将搜索子目录的层数),并只查看在最近一天内创建或修改的文件(mtime 设置)。

$ find ~ -maxdepth 2 -mtime -1 -ls
 407928 4 drwxr-xr-x 21 shs shs 4096 Sep 21 12:03 /home/shs
 394006 8 -rw------- 1 shs shs 5909 Sep 21 08:18 /home/shs/.bash_history
 399612 4 -rw------- 1 shs shs 53 Sep 21 08:50 /home/shs/.Xauthority
 399615 4 drwxr-xr-x 2 shs shs 4096 Sep 21 09:32 /home/shs/Downloads

不仅仅是列出文件

使用 -exec 选项,在您使用 find 命令找到文件后可以以某种方式更改文件。您只需参照 -exec 选项即可运行相应的命令。

$ find . -name runme -exec chmod 700 {} \;
$ find . -name runme -ls
 397132 4 -rwx------ 1 shs shs 18 Sep 15 16:06 ./bin/runme

在这条命令中,{} 代表文件名。此命令将更改当前目录和子目录中任何名为 runme 的文件的权限。

把您想运行的任何命令放在 -exec 选项之后,并使用类似于上面命令的语法即可。

其他搜索条件

如上面的例子所示,您还可以通过其他条件进行搜索:文件的修改时间、所有者、权限等。以下是一些示例。

根据用户查找文件

$ sudo find /home -user peanut
/home/peanut
/home/peanut/.bashrc
/home/peanut/.bash_logout
/home/peanut/.profile
/home/peanut/examples.desktop

根据权限查找文件

$ sudo find /home -perm 777
/home/shs/whatever
/home/oops

根据修改时间查找文件

$ sudo find /home -mtime +100
/home/shs/.mozilla/firefox/krsw3giq.default/gmp-gmpopenh264/1.6/gmpopenh264.info
/home/shs/.mozilla/firefox/krsw3giq.default/gmp-gmpopenh264/1.6/libgmpopenh264.so

通过比较修改时间查找文件

像这样的命令可以让您找到修改时间较近的文件。

$ sudo find /var/log -newer /var/log/syslog
/var/log/auth.log

寻找重复的文件

如果您正在清理磁盘空间,则可能需要删除较大的重复文件。确定文件是否真正重复的最好方法是使用 fdupes 命令。此命令使用 md5 校验和来确定文件是否具有相同的内容。使用 -r(递归)选项,fdupes 将在一个目录下并查找具有相同校验和而被确定为内容相同的文件。

如果以 root 身份运行这样的命令,您可能会发现很多重复的文件,但是很多文件都是创建时被添加到主目录的启动文件。

# fdupes -rn /home > /tmp/dups.txt
# more /tmp/dups.txt
/home/jdoe/.profile
/home/tsmith/.profile
/home/peanut/.profile
/home/rocket/.profile

/home/jdoe/.bashrc
/home/tsmith/.bashrc
/home/peanut/.bashrc
/home/rocket/.bashrc

同样,您可能会在 /usr 中发现很多重复的但不该删除的配置文件。所以,请谨慎利用 fdupes 的输出。

fdupes 命令并不总是很快,但是要记住,它正在对许多文件运行校验和来做比较,你可能会意识到它是多么有效。

总结

有很多方法可以在 Linux 系统上查找文件。如果您可以描述清楚您正在寻找什么,上面的命令将帮助您找到目标。


via: https://www.networkworld.com/article/3227075/linux/mastering-file-searches-on-linux.html

作者:Sandra Henry-Stocker 译者:jessie-pang 校对:wxy

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

 title=

Nigel's monitor,也叫做 “Nmon”,是一个很好的监控、记录和分析 Linux/*nix 系统性能随时间变化的工具。Nmon 最初由 IBM 开发并于 2009 年夏天开源。时至今日 Nmon 已经在所有 Linux 平台和架构上都可用了。它提供了很棒的当前系统统计信息的基于命令行的实时可视化报告,这些统计信息包括 CPU、RAM、网络和磁盘 I/O。然而,Nmon 最棒的特性是可以随着时间的推移记录系统性能快照。

比如:nmon -f -s 1

nmon CPU and Disk utilization

会创建一个日志文件,该日志文件最开头是一些系统的元数据(AAA - BBBV 部分),后面是所监控的系统属性的定时快照,比如 CPU 和内存的使用情况。这个输出的文件很难直接由电子表格应用来处理,因此诞生了 Nmon\_Analyzer excel 宏。如果你用的是 Windows/Mac 并安装了 Microsoft Office,那么这个工具非常不错。如果没有这个环境那也可以使用 Nmon2rrd 工具,这个工具能将日志文件转换 RRD 输入文件,进而生成图形。这个过程很死板而且有点麻烦。现在出现了一个更灵活的工具,我向你们介绍一下 pyNmonAnalyzer,它提供了一个可定制化的解决方案来生成结构化的 CSV 文件和带有用 matplotlib 生成的图片的简单 HTML 报告。

入门介绍

系统需求:

从名字中就能看出我们需要有 python。此外 pyNmonAnalyzer 还依赖于 matplotlib 和 numpy。若你使用的是 debian 衍生的系统,则你需要先安装这些包:

$ sudo apt-get install python-numpy python-matplotlib

获取 pyNmonAnalyzer:

你可以克隆 git 仓库:

$ git clone [email protected]:madmaze/pyNmonAnalyzer.git

或者,直接从这里下载:pyNmonAnalyzer-1.0.zip 。(LCTT 译注:这是个 5 年前的项目但是一直在陆陆续续的进行维护)

接下来我们需要一个 Nmon 文件,如果没有的话,可以使用发行版中提供的实例或者自己录制一个样本:nmon -F test.nmon -s 1 -c 120,会录制 120 个快照,每秒一个,存储到 test.nmon 文件中。

让我们来看看基本的帮助信息:

$ ./pyNmonAnalyzer.py -h
usage: pyNmonAnalyzer.py [-h] [-x] [-d] [-o OUTDIR] [-c] [-b] [-r CONFFNAME]
 input_file

nmonParser converts Nmon monitor files into time-sorted
CSV/Spreadsheets for easier analysis, without the use of the
MS Excel Macro. Also included is an option to build an HTML
report with graphs, which is configured through report.config.

positional arguments:
 input_file Input NMON file

optional arguments:
 -h, --help show this help message and exit
 -x, --overwrite overwrite existing results (Default: False)
 -d, --debug debug? (Default: False)
 -o OUTDIR, --output OUTDIR
 Output dir for CSV (Default: ./data/)
 -c, --csv CSV output? (Default: False)
 -b, --buildReport report output? (Default: False)
 -r CONFFNAME, --reportConfig CONFFNAME
 Report config file, if none exists: we will write the
 default config file out (Default: ./report.config)

该工具有两个主要的选项

  1. 将 nmon 文件传唤成一系列独立的 CSV 文件
  2. 使用 matplotlib 生成带图形的 HTML 报告

下面命令既会生成 CSV 文件,也会生成 HTML 报告:

$ ./pyNmonAnalyzer.py -c -b test.nmon

这会创建一个 ./data 目录,其中有一个存放 CSV 文件的目录 (./data/csv/),一个存放 PNG 图片的目录 (./data/img/) 以及一个 HTML 报告 (./data/report.html)。

默认情况下,HTML 报告中会用图片展示 CPU、磁盘繁忙程度、内存使用情况和网络传输情况。所有这些都定义在一个不言自明的配置文件中 (report.config)。目前这个工具还不是特别的灵活,因为 CPU 和 MEM 除了 onoff 外,无法做其他的配置。不过下一步将会改进作图的方法并允许用户灵活地指定针对哪些数据使用哪种作图方法。

目前这些报告还十分的枯燥而且只能打印出基本的几种标记图表,不过它的功能还在不断的完善中。目前在开发的是一个向导来让配置调整变得更容易。如果有任何建议,找到任何 bug 或者有任何功能需求,欢迎与我交流。


via: https://matthiaslee.com/python-nmon-analyzer-moving-away-from-excel-macros/

作者:Matthias Lee 译者:lujun9972 校对:wxy

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

Q:我需要将所有包含 *.c 文件的文件夹从名为 hostA 的本地笔记本复制到 hostB。我使用的是下面的 scp 命令,但不知道如何排除特定的文件(如 *.out):

$ scp -r ~/projects/ user@hostB:/home/delta/projects/

如何告诉 scp 命令在 Linux/Unix 命令行中排除特定的文件或目录?

人们可以使用 scp 命令在网络主机之间安全地复制文件。它使用 ssh 进行数据传输和身份验证。典型的语法是:

scp file1 user@host:/path/to/dest/
scp -r /path/to/source/ user@host:/path/to/dest/ 

scp 排除文件

我不认为你可以在使用 scp 命令时过滤或排除文件。但是,有一个很好的解决方法来排除文件并使用 ssh 安全地复制它。本页面说明如何在使用 scp 递归复制目录时过滤或排除文件。

如何使用 rsync 命令排除文件

语法是:

rsync av -e ssh --exclude='*.out' /path/to/source/ user@hostB:/path/to/dest/

这里:

  1. -a :递归到目录,即复制所有文件和子目录。另外,打开归档模式和所有其他选项(相当于 -rlptgoD
  2. -v :详细输出
  3. -e ssh :使用 ssh 作为远程 shell,这样所有的东西都被加密
  4. --exclude='*.out' :排除匹配模式的文件,例如 *.out 或 *.c 等。

rsync 命令的例子

在这个例子中,从 ~/virt/ 目录递归地复制所有文件,但排除所有 *.new 文件:

$ rsync -av -e ssh --exclude='*.new' ~/virt/ root@centos7:/tmp

示例输出:

Scp exclude files but using rsync exclude command

如果远程服务器上找不到 rsync,那么 rsync 命令将失败。在这种情况下,请尝试使用以下 scp 命令,该命令在当前目录中使用 bash shell 模式匹配 (它不能与 -r 选项一起使用):

$ ls

示例输出:

centos71.log centos71.qcow2 centos71.qcow2.new centos71.v2.qcow2.new meta-data user-data

复制除 .new 之外的当前目录中的所有内容:

$ shopt -s extglob
$ scp !(*.new) root@centos7:/tmp/

示例输出:

centos71.log 100 % 4262 1.3MB/s 00:00
centos71.qcow2 100 % 836MB 32.7MB/s 00: 25 
meta-data 100 % 47 18.5KB/s 00:00
user-data 100 % 1543 569.7KB/s 00:00

有关更多信息,请参阅以下手册页:

$ man rsync
$ man bash
$ man scp

via: https://www.cyberciti.biz/faq/scp-exclude-files-when-using-command-recursively-on-unix-linux/

作者:Vivek Gite 译者:geekpi 校对:wxy

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

这篇文章对 Linux 图形环境做了一番介绍,展示了在不同的 Linux 发行版上的各种选择。

这是我们迁移到 Linux 系统系列的第三篇文章。如果你错过了先前的两篇,这里有两文的链接《入门介绍》 和 《磁盘、文件、和文件系统》。本文中,我们将讨论图形操作环境。在 Linux 系统中,你可以依照喜好选择并且定制一个图形界面,你有很大的选择余地,这也是 Linux 优越的体验之一。

一些主流的 Linux 图形界面包括:Cinnamon、Gnome、KDE Plasma、Xfce 和 MATE,总之这里有很多选择。

有一点经常混淆 Linux 新手,虽然某个 Linux 系统分配了一个缺省的图形环境,但是一般你可以随时更换这个图形界面。这和 Windows 或 Mac OS 的惯用者的定势思维不同。安装图形环境是一件独立的事情,很多时候,Linux 和其图形环境的连接并不紧密。此外,你在一个图形环境构建运行的程序同样适用于另一个图形环境。比如说一个为 KDE Plasma 图形环境编写的应用程序完全适用于 Gnome 桌面图形环境。

由于人们熟悉 Windows 和 MacOS 系统,部分 Linux 操作系统的图形环境在一定程度上尝试着去模仿它们,但另一些 Linux 图形界面则是独特的。

下面,我将就一些不同的 Linux 发行版,展示几个 Linux 图形环境。如果你不确定应该采用那个 Linux 发行版,那我建议你从 Ubuntu 开始,获取其长期支持(LTS)的版本(Ubuntu 16.04.3 LTS 正在开发)。Ubuntu 稳定且真的非常好用。

由 Mac 过渡

Elementary OS 发行版提供了和 Mac 系统风格很接近的界面。它的默认图形环境被称作 Pantheon,是一款很适合 Mac 用户过渡使用的图形环境。这款图形界面发行版的屏幕底部有一个停靠栏,专为极简者使用而设计。为了保持简约的风格,很多默认的应用程序甚至都不会有自己的菜单。相反,它们的按钮和控件在应用程序的标题栏上(图 1)。

 title=

图 1: Elementary OS Pantheon.

Ubuntu 发行版提供的一个默认的图形界面,也和 Mac 相似。Ubuntu 17.04 或者更老的版本都使用 Unity 图形环境,Unity 停靠栏的默认位置在屏幕的左边,屏幕顶部有一个全局应用程序共享的菜单栏。

由 Windows 过渡

ChaletOS 亦步亦趋模仿 Windows 界面,可以帮助 Windows 用户轻松的过渡到 Linux。ChaletOS 使用的图形环境是 Xfce(图 2)。在屏幕的左下角有一个开始(主)菜单和搜索栏。屏幕的右下角是一个桌面图标和一些通知信息。这看起来和 Windows 非常像,乍一看,可能都会以为桌面跑的是 Windows。

ChaletOS

图 2: ChaletOS with Xfce.

Zorin OS 发行版同样尝试模仿 Windows。 Zorin OS 使用的 Gnome 的改进桌面,工作起来和 Windows 的图形界面很相似。左下角的开始按钮、右下角的通知栏和信息通知栏。开始按钮会弹出一个和 Windows 无异的应用程序列表和搜索框。

独有的图形环境

Gnome 桌面(图 3)是最常用的图形环境之一。许多发行版将 Gnome 作为默认的图形环境。Gnome 并不打算模仿 Windows 或是 MacOS,而是以其自身的优雅和易用为目标。

图 3:openSUSE with Gnome.

Gnome 桌面环境从版本 2 到 版本 3 发生了巨变,Cinnamon 环境为消除该改变带来的不利影响而创造。尽管 Cinnamon 和前辈 Gnome 2 外观不相似,但是它依旧尝试提供一个简约的界面,而且它的功能和 Windows XP 类似。

MATE 图形环境直接模仿于 Gnome 2,在它的屏幕顶部有一个用作设置和存放应用的菜单栏,底部提供了一个应用程序运行选项卡和一些其他组件。

KDE plasma 围绕组件界面而构建,组件可以安装在桌面或是面板上(图 4)。

 title=

图 4: 安装了 KDE Plasma 的 Kubuntu 操作系统。

没有那个图形环境比另外一个更好。不同的风格适用不同的用户风格。另外,如果选择太多无从下手,那就从 Ubuntu 开始吧。

相似与不同

不同的操作系统处理方式不同,这会给使用者的过渡带来挑战。比如说,菜单栏可能出现在不同的位置,然后设置有可能用不同的选项入口路径。我列举了一些相似或不同地方来帮助减少 Linux 调整。

鼠标

Linux 的鼠标通常和 Windows 与 MacOS 的工作方式有所差异。在 Windows 或 Mac,双击标签,你几乎可以打开任何事物,而这在 Linux 图形界面中很多都被设置为单击。

此外在 Windows 系统中,你通常通过单击窗口获取焦点。在 Linux,很多窗口的焦点获取方式被设置为鼠标悬停,即便鼠标悬停下的窗口并不在屏幕顶端。这种微妙的差异有时候会让人很吃惊。比如说,在 Windows 中,假如有一个后台应用(不在屏幕顶层),你移动鼠标到它的上面,不点击鼠标仅仅转动鼠标滚轮,顶层窗口会滚动。而在 Linux 中,后台窗口(鼠标悬停的那个窗口)会滚动。

菜单

应用菜单是电脑程序的一个主要集中位置,最近似乎可以调整移动菜单栏到不碍事的地方,甚至干脆完全删除。大概,当你迁移到 Linux,你可能找不到你期待的菜单。应用程序菜单会像 MacOS一样出现在全局共享菜单栏内。和很多移动应用程序一样,该菜单可能在“更多选项”的图标里。或者,这个菜单干脆被完全移除被一个按钮取代,正如在 Elementary OS Pantheon 环境里的一些程序一样。

工作空间

很多 Linux 图形环境提供了多个工作空间。一个工作空间包含的正在运行的程序窗口充盈了整个屏幕。切换到不同的工作空间将会改变程序的可见性。这个概念是把当前项目运行使用的全部应用程序分组到一个工作空间,而一些为另一个项目使用的应用程序会被分组到不同的工作空间。

不是每一个人都需要甚至是喜欢工作空间,但是我提到它是因为,作为一个新手,你可能无意间通过一个组合键切换了工作空间,然后,“喂!我的应用程序哪去了?” 如果你看到的还是你熟悉的桌面壁纸,那你可能只是切换了工作空间,你所有的应用程序还在一个工作空间运行,只是现在不可见而已。在很多 Linux 环境中,通过敲击 Alt+Ctrl 和一个箭头(上、下、左或右)可以切换工作空间。很有可能发现你的应用程序一直都在另一个工作空间里运行。

当然,如果你刚好喜欢工作空间(很多人都喜欢),然后你就发现了一个 Linux 很有用的默认功能。

设置

许多 Linux 图形环境提供一些类型的设置程序或是面板让你在机器上配置设置。值得注意的是类似 Windows 和 MacOS,Linux 可以配置好很多细节,但不是所有的详细设置都可以在设置程序上找到。但是这些设置项已经足够满足大部分典型的桌面系统,比如选择桌面壁纸,改变熄屏时间,连接打印机等其他一些设置。

和 Windows 或者 MacOS 相比,Linux 的应用程序设置的分组或是命名都有不同的方式。甚至同是 Linux 系统,不同的图形界面也会出现不同的设置,这可能需要时间适应。当然,在你的图形环境中设置配置的问题可以通过在线查询这样不错的方法解决。

应用程序

最后,Linux 的应用程序也可能不同。你可能会发现一些熟悉的应用程序,但是对你来说更多的将会是崭新的应用。比如说,你能在 Linux 上找到 Firefox、Chrome 和 Skype。如果不能找到特定的应用程序,通常你能使用一些替代程序。如果还是不能,那你可以使用 WINE 这样的兼容层来运行 Windows 的应用程序。

在很多 Linux 图形环境中,你可以通过敲击 Windows 的标志键来打开应用程序菜单栏。在其他一些情况中,你不得不点击开始(主)按钮或应用程序菜单。很多图形环境中,你可以通过分类搜索到应用程序而不一定需要它的特定程序名。比如说,你要使用一个你不清楚名字的编辑器程序,这时候,你可以在应用程序菜单栏键的搜索框中键入“editor”字样,它将为你展示一个甚至更多的被认为是编辑器类的应用程序。

为帮你起步,这里列举了一点可能成为 Linux 系统使用的替代程序。

请注意,Linux 提供了大量的满足你需求的选择,这张表里列举的一点也不完整。


via: https://www.linux.com/blog/learn/2017/12/migrating-linux-graphical-environments

作者:John Bonesio 译者:CYLeft 校对:wxy

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

《黑客帝国》是 1999 年,由 Wachowki 兄弟编导的科幻动作片。这部电影的荧屏里有无尽的绿色字符降落。数字雨模拟着《黑客帝国》中的虚拟现实活动。现在,Linux 和 Unix 终端上,你也可以通过 CMatrix 模仿出矩阵数字雨。

安装 cmatrix

根据你的 Linux/Unix 发行版或操作系统安装并且设置 CMatrix。

如何在 Debian/Ubuntu Linux 发行版中安装 cmatrix

在 Debian/Ubuntu/Mint 系统中键入以下命令 apt-get 命令/apt 命令

$ sudo apt install cmatrix

示例输出:

[sudo] password for vivek: 
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Suggested packages:
  cmatrix-xfont
The following NEW packages will be installed:
  cmatrix
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
Need to get 15.8 kB of archives.
After this operation, 50.2 kB of additional disk space will be used.
Get:1 http://in.archive.ubuntu.com/ubuntu artful/universe amd64 cmatrix amd64 1.2a-5build2 [15.8 kB]
Fetched 15.8 kB in 0s (19.7 kB/s)
Selecting previously unselected package cmatrix.
(Reading database ... 205388 files and directories currently installed.)
Preparing to unpack .../cmatrix_1.2a-5build2_amd64.deb ...
Unpacking cmatrix (1.2a-5build2) ...
Setting up cmatrix (1.2a-5build2) ...
Processing triggers for man-db (2.7.6.1-2) ...

如何在 Arch Linux 发行版安装 cmatrix

键入 pacman 命令:

$ sudo pacman -S cmatrix

如何在 FreeBCD 系统中安装 cmatrix

运行如下命令安装 port:

# cd /usr/ports/misc/cmatrix/ && make install clean

或者使用 pkg 命令添加二进制包:

# pkg install cmatrix

如何在 macOS Unix 发行版中安装 cmatrix

键入下列命令:

$ brew install cmatrix

如何在 OpenBSD 系统中安装 cmatrix

键入 pkg\_add 命令:

# pkg_add cmatrix

使用 cmatrix

简单键入命令:

$ cmatrix

cmtarix 运转中

使用键盘

在执行期间,下列按键有效(-s 模式下,按键无效):

按键说明
a切换异步滚动
b随机字符加粗
B全部字符加粗
n关闭字符加粗
0-9调整更新时间
! @ # $ % ^ & )改变对应的矩阵颜色: ! – 红、@ – 绿、# – 黄、$ – 蓝、% – 洋红、^ – 青、 & – 白、 ) – 黑。
q退出程序

你可以通过以下命令获取 cmatrix 选项:

$ cmatrix -h
  • -a: 异步滚动
  • -b: 开启字符加粗
  • -B: 所有字符加粗(优先于 -b 选项)
  • -f: 强制开启 Linux $TERM 模式
  • -l: Linux 模式(使用 matrix 控制台字体)
  • -o: 启用旧式滚动
  • -h: 输出使用说明并退出
  • -n: 关闭字符加粗 (优先于 -b and -B,默认)
  • -s: “屏保”模式, 第一次按键时退出
  • -x: X 窗口模式,如果你使用的时 mtx.pcf 终端
  • -V: 输出版本信息并且退出
  • -u delay (0 - 10,默认 4): 屏幕更新延时
  • -C [color]: 调整 matrix 颜色(默认绿色)

现在,你拥有了一款最炫酷的终端应用!


via: https://www.cyberciti.biz/open-source/command-line-hacks/matrix-digital-rain-on-linux-macos-unix-terminal/

作者:nixCraft 译者:CYLeft 校对:校对者ID

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