新用户不可不知的Linux命令

译文
系统 Linux 系统运维
本文将介绍新的Linux用户应该知道的一些基本命令,如何在三个主要的发行版:Unbuntu(它还包括诸多版本和衍生版以及Debian)、openSUSE和Fedora上,使用命令行来更新系统、管理软件、处理文件和切换到根用户。

Fedora上使用dnf命令,通过命令行来管理系统更新。

基于Linux系统的魅力之一就是,你可以直接从终端使用命令行来管理整个系统。而使用命令行的优点就是,你可以使用同样的知识和技能来管理任何一个Linux发行版。

这不可能通过图形用户界面(GUI)来做到,因为每个发行版和桌面环境提供了各自的用户界面。确切地说,有些情况下你需要不同的命令在不同的发行版上执行某些任务,不过概念和想法多少仍然一样。

我们在本文中将介绍新的Linux用户应该知道的一些基本命令。我会介绍如何在三个主要的发行版:Unbuntu(它还包括诸多版本和衍生版以及Debian)、openSUSEFedora上,使用命令行来更新系统、管理软件、处理文件和切换到根用户。

闲话少说!

让系统保持安全和***

Linux从设计上来说很安全,不过这是不争的事实:所有软件都有缺陷(bug),可能还有安全漏洞。所以时常更新系统至关重要。不妨这么来考虑:运行过时的操作系统就好比待在门没有上锁的装甲坦克。装甲保护得了你吗?谁都可以通过敞开的门进入,大搞破坏。同样,你的操作系统里面可能会有未打上补丁的漏洞,它们会危及你的系统。不像专有软件社区,开源社区极其积极地打补丁,所以如果你时常更新系统,就可以保持安全。

平时要关注新闻网站,留意安全漏洞。要是发现了某个漏洞,阅读关于漏洞的新闻,一旦发布了补丁,要***时间更新系统。不管怎样,都要养成每星期在生产机器上至少运行一次更新命令的习惯。如果你在运行一台复杂的服务器,格外要注意,仔细检查变更日志(changelog),确保更新没有破坏你的定制。

Ubuntu请牢记一点,你必须在升级系统或安装任何软件之前总是要更新软件库(即repo)。在Ubuntu上,你可以使用下列命令来更新系统。***个命令更新软件库:

  1. sudo apt-get update 

一旦软件库更新完毕,现在就可以运行系统更新命令了:

  1. sudo apt-get upgrade 

然而,这个命令并不更新内核和另外一些程序包,所以你还要运行这个命令:

  1. sudo apt-get dist-upgrade 

openSUSE如果你是在openSUSE上,可以使用这些命令来更新系统(如往常一样,***个命令用来更新软件库)

 

  1. sudo zypper refresh 
  2. sudo zypper up 

Fedora如果你是在Fedora上,可以使用“dnf”命令,它“有点”相当于zypperapt-get

  1. sudo dnf update 
  2. sudo dnf upgrade 

 

软件安装和删除

你只能安装你系统上已被启用的软件库里面才有的那些程序包。每个发行版在默认情况下都启用了某些官方软件库或第三方软件库。

Ubuntu想把任何程序包安装到Ubuntu上,先更新软件库,然后使用这个语法:

  1. sudo apt-get install [package_name] 

例子:

  1. sudo apt-get install gimp 

openSUSE这些命令将是:

  1. sudo zypper install [package_name] 

FedoraFedora丢弃了“yum”,现在使用“dnf”,于是命令将是:

  1. sudo dnf install [package_name] 

删除软件的过程一样,只要将“install”换成“remove”就行。

Ubuntu

  1. sudo apt-get remove [package_name] 

openSUSE

  1. sudo zypper remove [package_name] 

Fedora

  1. sudo dnf remove [package_name] 

如何管理第三方软件?

Linux有庞大的开发者社区,广大开发者向用户提供软件。不同的发行版使用不同的机制将第三方软件提供给用户。它还取决于开发者如何将软件提供给用户;一些开发者提供二进制代码,另一些通过软件库来提供。

Ubuntu高度依赖PPA(个人程序包归档),但是遗憾的是,没有内置工具可以帮助用户搜索PPA。你需要用谷歌搜索PPA,然后手动添加软件库,之后才能安装软件。你将任何PPA添加到系统上的方法如下:

  1. sudo add-apt-repository ppa:<repository-name

例子:假设我想把LibreOffice PPA添加到自己的系统上。我会用谷歌搜索该PPA,然后从Launchpad获得软件库名称,这里是“libreoffice/ppa”。然后,使用下面这个命令来添加该PPA

  1. sudo add-apt-repository ppa:libreoffice/ppa 

它会要求你按回车键,以便导入密钥。一旦导入完毕,用“update”命令更新软件库,然后安装程序包。

openSUSE为第三方应用程序提供了一个巧妙的解决方案。你可以访问software.opensuse.org,搜索程序包,然后点击一下鼠标即可安装它。它会将软件库自动添加到系统上。如果你想手动添加任何软件库,则使用这个命令:

 

  1. sudo zypper ar -f url_of_the_repo name_of_repo 
  2. sudo zypper ar -f 
  3. http://download.opensuse.org/repositories/LibreOffice:Factory/openSUSE_13.2/LibreOffice:Factory.repo LOF 

然后更新软件库,安装软件:

  1. sudo zypper refresh 
  2. sudo zypper install libreoffice 

 

Fedora用户只要添加RPMFusion(包括免费和非免费的软件库),里面含有大多数应用程序。万一你确实需要添加软件库,就使用这个命令:

dnf config-manager --add-repo http://www.example.com/example.repo

#p#

一些基本命令

我之前写过几篇文章,介绍如何使用命令行接口管理系统上的文件,下面是在所有发行版当中通用的几个基本命令。

将文件或目录拷贝到新位置:

  1. cp path_of_file_1 path_of_the_directory_where_you_want_to_copy/ 

将某个目录的所有文件拷贝到新位置(请注意斜杠和星号,这表明该目录下的所有文件):

  1. cp path_of_files/* path_of_the_directory_where_you_want_to_copy/ 

将文件从一个位置移到另一个位置(末尾斜杠意味着该目录下):

  1. mv path_of_file_1 path_of_the_directory_where_you_want_to_move/ 

将所有文件从一个位置移到另一个位置:

  1. mv path_of_directory_where_files_are/* path_of_the_directory_where_you_want_to_move/ 

删除文件:

  1. rm path_of_file 

删除目录:

  1. rm -r path_of_directory 

清除目录中的所有内容,只留下目录文件夹:

  1. rm -r path_of_directory/* 

创建新目录

想创建新目录,先要输入你想要创建目录的所在位置。假设你想在Documents目录里面创建一个“foundation”文件夹。不妨使用cd(更改目录)命令,更改目录:

  1. cd /home/swapnil/Documents 

(把“swapnil”换成你系统上的用户)

然后用mkdir命令创建目录:

  1. mkdir foundation 

你还可以从任何地方创建目录,只要给出目录路径。比如说:

  1. mdkir /home/swapnil/Documents/foundation 

如果你想创建父-子目录,这意味着其他目录里面的目录,那么使用-p选项。它会在特定的路径下创建所有目录:

  1. mdkir -p /home/swapnil/Documents/linux/foundation 

成为根用户

你需要成为根用户或者用户拥有sudo权利,才能执行一些管理任务,比如管理程序包,或者更改根目录或根文件。一个例子就是编辑详细记录已挂载硬驱的“fstab”文件。它在“etc”目录里面,该目录又在根目录里面。你只有以超级用户的身份来更改这个文件。在大多数发行版中,只要“switching user”(切换用户)就能成为根用户。假设在openSUSE上,我想成为根用户,以便可以在根目录里面进行一番操作。你可以使用命令:

  1. sudo su - 

或者

  1. su - 

这会要求输入密码,然后你就拥有根权限。牢记一点:千万不要以根用户的身份运行系统,除非你知道自己在干什么。要注意的另一个重要事项就是,你以根用户身份改动文件或目录后,那些文件的所有权也会从某个对应用户或特定服务改成根用户。你得恢复那些文件的所有权,要不然服务或用户无法访问或写入那些文件。想更改用户,使用这个命令:

  1. sudo chown -R user:user /path_of_file_or_directory 

如果你的分区来自挂载在系统上的其他发行版,可能需要这个命令。如果你试图访问这类分区上的文件,就会遇到拒绝访问错误。只要更改这类分区的所有权,就可以访问它们。务必要格外小心,别随意更改根目录的权限或所有权。

以上就是任何新的Linux用户需要知道的一些基本命令。要是你还有什么问题,或者希望我们探讨某个话题,欢迎留言交流。

原文标题:Must-Know Linux Commands For New Users

 

责任编辑:火凤凰 来源: 51CTO
相关推荐

2015-08-03 16:17:25

技术周刊

2020-11-30 13:12:04

Linux文本命令

2012-03-20 15:06:12

Linux服务器服务器监控

2023-12-16 22:21:42

Linux网络命令

2010-06-11 14:46:38

可路由协议

2015-01-15 09:34:28

2010-04-09 09:15:23

Linux管理员

2013-07-25 10:27:45

Linux系统管理员sudo

2010-10-27 10:39:44

求职

2014-06-20 14:35:48

浪潮数据

2019-08-18 23:10:14

数据科学算法数学

2020-01-17 06:12:10

物联网IOT技术

2024-03-21 08:57:39

语言软件开发

2021-01-27 09:45:17

负载均衡

2020-11-11 21:27:55

缓冲文件调用

2018-06-12 11:05:33

2010-04-16 17:09:18

Oracle查看锁

2014-06-09 13:21:27

2019-12-02 14:14:20

缓冲系统调用函数

2012-04-28 15:52:39

点赞
收藏

51CTO技术栈公众号