玩转Linux(一):发行版选择与入门

前言

今天有人问我怎么学习Linux,我回想了一下我的学习路子,突然感觉还是蛮曲折的

若不是凭着自己极大的热情摸索,或许没多久就放弃了

回顾一下我摸索的经历,以一些有趣的例子写出这一系列教程

仅以此篇呈献给以前没有接触过Linux但想学的朋友们

注意:本人也是一个Linux菜鸡,写出来的东西是想帮助大家入门以及发现Linux好玩的地方,有错误或不足的地方请多包涵

Linux的分类

刚一开始就跟新手大谈什么Cent OS,Ubuntu,Arch Linux,Debian,Fedora啥的我觉得是很不友好的,至少我当时只觉得头晕脑涨不知道该用哪个入门

你可以先这么理解:他们用的包管理器及软件包格式不一样。毕竟我们安装、卸载、升级软件都离不开包管理器,使用最多的可能也是包管理器。当然它们之间的不同肯定不止这些,其余不同的地方可以日后再慢慢了解。

什么是包管理器?

简单来讲,就是装软件的。在Windows上我们安装软件都是从各种下载站、或者官网下载,在手机上我们是通过软件商店下载,在Linux上我们通过包管理器下载。

有使用apt作为包管理器的,对应的软件包格式为deb,使用该包管理器的系统有:Debain,Ubuntu

有使用yum作为包管理器的,对应的软件包格式为rpm,使用该包管理器的系统有:Cent OS

也有使用其他管理器的如pacman,使用的系统为Arch。还有dnf,使用的系统是Fedora

谢谢指正

我该选那一个系统入门?

推荐大家先使用wsl(Windows Subsystem for Linux)来熟悉Linux,无需切换系统,方便。

关于如何安装wsl,这里有一篇博客讲的很详细,里面安装的是Ubuntu

那么用哪一款发行版合适呢?既然我用的Ubuntu来讲的,当然推荐Ubuntu啊

对于wsl来说,终端基本都大差不离,选择哪一款都可以,当然如果你选择Ubuntu的话会获得本教程的最佳体验

Linux终端基本指令

玩Linux,终端肯定是要接触的。如果你只是想体验图形界面,那么你现在最好关闭此博客,然后打开Windows,好好的打一打游戏放松一下。

这里先介绍最基本常用的,以后在涉及到的其他命令我会在后面慢慢都提到。

强烈建议你打开终端敲一敲指令自己试一试,毕竟实践出真知。

物理机Ubuntu终端的界面

Ubuntu终端的样子,我也使用过一阵Fedora,终端的样子都大差不离

列出当前目录下的所有文件:ls

ls会列出当前工作目录下的所有文件(不包含隐藏文件)

ls

终端提供了颜色显示功能,gnome的终端中文件夹是深蓝色的

想列出包含隐藏文件的所有文件需要在后面加-a参数

ls-a

你会发现多了许多名字前带”.“的文件和文件夹

是的,在Linux中默认名字前面带“.”的文件和文件夹是隐藏的,使用ls时不会列出来。如果你不想自己的文件在ls时列出来,那就命名成“.xxx”的形式吧

注意有两个文件夹比较特殊

父目录和本目录

一个点表示当前目录,两个点表示该目录的父目录,即上级目录。后面讲切换文件夹的命令时会再提到

创建文件夹:mkdir

使用以下指令在当前目录创建一个名为Test的文件夹

mkdir Test

创建Test文件夹

可以看到多出了一个Test文件夹

切换工作目录:cd

使用下面的命令将工作目录切换到Test

cd Test

切换工作目录

怎么判断工作目录变了呢

这时你一定会发现,之前一直显示为“\~”的地方变为了“\~/Test“,这里的”\~“表示你当前账户的家目录,而Test表示家目录下的Test文件夹,”\~/Test“就表示了你当前的工作目录是在家目录下的Test文件夹里

或许你还记得下面这两个特殊的文件夹

父目录和当前目录

执行下面的命令你会发现工作目录没有变化

cd .

执行下面的命令你会发现工作目录切换到了上层文件夹,就是所谓的父目录

cd ..

cd ..

创建一个文件:touch

使用下面的命令可以在当前目录创建一个名为test的文件

touch test

创建文件

这里闲扯一句

我们平常使用Windows时,经常会遇到某某类型文件用某某应用程序打开的问题,比如txt文件后缀是txt,需要用记事本打开,又比如我们写的c文件,需要用vs或者其他编辑器打开。有时这会给我们一种感觉,就是不同类型的文件有专有的后缀,有专有的打开的应用程序。

但是事实是这样吗?不。在接下来的学习过程中你会看到,在Linux中文件后缀的作用会变得弱化,甚至有些文件可以没有后缀,但依然可以使用

删除文件:rm

在上面我们创建了一个名为test的文件,下面我们来看看怎么删除它

执行下面的命令可以删除当前目录下的test文件

rm test

删除文件

rm指令可以删除文件,那它可以删除文件夹吗?我们来试一试,删除Test文件夹

首先要切换到父目录,然后在执行rm指令

删除文件夹失败

看来不行。因为删除文件夹需要额外加-r参数

删除文件夹

成功!

终端的指令繁多,再加上每个指令还可以赋予不同的参数以实现相应的功能,所以学习Linux将是一个漫长的过程。上面我讲到的这些仅仅是最最基本常用的命令,然而我只讲了最基本的用法,还没有说明可加的参数以及对应的功能。

如果你想深入的了解,就请记住一句话,善用man!!!

执行下面的指令,你就会了解到这句话的意思了

man ls

按Q退出

文本编辑器:nano和vim

nano

Ubuntu默认自带的文本编辑器是nano,所以我们先来讲nano

首先先来建立一个新文件夹吧,然后进到里面

mkdir Test
cd Test

前面讲到可以用touch创建一个新文件,但是如果我们想编辑文件的内容怎么办?

执行下面的命令,就可以编辑文件test。如果test不存在,则会创建一个新的名为test文件

nano test

编辑test

下面输入1234吧,然后按ctrl+o,回车保存,按ctrl+x退出

保存退出

出现了test文件

出现了新文件test。使用cat打印出文件的内容

cat test

cat

vim

由于Ubuntu不自带vim,想要使用vim需要先通过包管理器安装,所以你可以先看后面的包管理器的部分

使用vim打开文件的命令和nano类似

vim test

vim test

这时你会发现文件打开了,但是还不能编辑。因为vim有两种模式,命令模式和编辑模式,我们现在处于命令模式

按a或者i进入编辑模式,此时终端窗口左下方文字变为“--插入--”或者“--INSERT--”。

a和i的区别在于进入编辑模式后光标会不会后移一格

按a进入编辑模式

我们将文本改为abcd,然后按esc键退出编辑模式进入命令模式

按esc退出编辑模式

输入“:w”,窗口左下角显示你输入的指令,回车,保存文件

再次输入“:q”,回车,退出编辑

使用cat打印文件内容,发现已变为abcd

cat test

包管理器:apt

这里我默认大家使用的是Ubuntu或者是其他使用apt的发行版,yum的就不多述了

工作原理

apt的配置文件中写有仓库的地址,当安装特定软件时它会去仓库寻找相应的软件包下载安装,所以仓库下载速度的快慢决定了apt安装软件速度的快慢

由于apt默认仓库地址是国外的服务器,比较慢,所以这里我们先更改它的仓库地址,换为国内的镜像源,这里使用清华的镜像源作为例子

配置仓库

访问清华镜像源的 网址 ,选择适合的Ubuntu版本,复制下面的代码,然后通过nano打开配置文件

由于配置文件为系统文件,我们需要通过sudo提权,否则会提示permission denied

sudo nano /etc/apt/sources.list

密码就是你账户的密码

apt仓库文件

在原本的仓库前面全部加上#注释掉,然后移动光标到底部,将复制的地址粘上去,wsl下需要单击鼠标右键粘贴

然后ctrl+o,回车保存,ctrl+x退出

然后执行下列指令更新仓库

sudo apt update

到此为止,apt我们就配置好了

安装软件

如果你想安装软件,可以使用search寻找

apt search 软件名

比如我们搜一下vim

apt search vim 

apt search

apt会将相关的软件包搜索结果都列出来,按字母排序,向下找找可以看到我们搜索的vim

使用install安装软件包,如安装vim

sudo apt install vim 

输入y,回车,apt就开始下载软件包然后安装,耐心等待即可

卸载软件

使用remove卸载软件包,如卸载nano

sudo apt remove nano

apt remove

输入y,回车,apt就开始卸载,耐心等待卸载完成

小结

本篇介绍了Linux终端的一些基本指令,使用包管理器搜索、安装、卸载软件包,使用文本编辑器编辑文件

但是涉及到的都是最基本的方法,还有很多进阶的方法需要大家自己去搜索,或者阅读手册学习(man指令)

下节开始,我会讲讲学习了终端,我们可以做什么方便、好玩的事情

《玩转Linux(一):发行版选择与入门》上有4条评论

  1. 靠颜色鉴别文件也太真实了。。。Fedora现在默认的包管理器是dnf了。另外建议把各个发行版的名字写完整、正确。
    Cent OS,Fedora,Arch Linux 和 Ubuntu 等。
    中英文混排的时候中间最好多一个空格。

      1. 终端只是有显示颜色的能力,真正输出颜色的还是程序自身, 试试 ls –color=no;

        另外,Fedora 的 dnf 可以理解为一个全新版本的yum,后面都还是 rpm,对于用户来说,没什么差别

发表评论

电子邮件地址不会被公开。 必填项已用*标注