【Linux学习】零基础学习Linux

本文涉及的产品
云服务器 ECS,每月免费额度200元 3个月
云服务器ECS,u1 2核4GB 1个月
简介: 【Linux学习】零基础学习Linux

如果没有躺赢的命,那就要站起来奔跑。

前言:

从今天开始我们还将学习linux的相关知识,本节我将带领大家先认识Linux的一些基本概念,让不熟悉的小伙伴有个大概的了解!!!


1.认识Linux

在认识linux之前,我们需要先了解UNIX的一些知识,由于包含的内容太多,在这里我就直接给大家引用了:

链接:Unix发展史

Linux发展历史

1991年10月5日,赫尔辛基大学的一名研究生Linus Benedict Torvalds在一个Usenet新闻组(comp.os.minix)中宣布他编制出了一种类似UNIX的小操作系统,叫Linux。新的操作系统是受到另一个UNIX的小操作系统——Minix的启发,该系统是由一名叫Andrew S Tanenbaum的教师开发的。读者也许猜想所发布的这个系统应该是Linux的0.01版本,实际上不是这样。真正的Linux 0.01版本并没有被发布,原因是0.01版本不实用。Linus仅仅在第一个Linux的FTP站(ftp://nic.funet.fi)上提供过这个版本的的源代码。

2.Torvalds于10月5日发布的这个Linux版本被称为0.02版,它能够运行GNU Bourne Again Shell(bash)和GNU的C编译程序(gcc)以及为数不多的其它语言。Torvalds绝对没有想到他设想的一种能够针对高级业余爱好者和黑客们的操作系统已经产生,这就是人们所称的Linux。

3.Linux发布时的版本是0.02,后来又有0.03版,然后又跳到0.10版。因为世界各地越来越多的程序员都开始开发Linux,它已经达到0.95版。这就意味着正是公布1.0版本的时间已经为期不远了。正式的1.0版本是在1994年公布的

2.为什么要学习linux

1.因为作为日后的程序员来说,掌握Linux的运用是我们必须学会的一项技能,无论你未来是否从事Linux相关工作,只要你是个程序员,我觉得就必须要学习Linux,因为你从事开发工作的话,就一定是要参与项目的,当你的项目开发完后,大多数情况都会部署在Linux系统上。

2.其次,技术之间都是融会贯通的,你学了Linux,再去学习其他的技术的时候就会触类旁通,更加容易学,就像你去学C语言一样,你把C语言学好了,再去学习其他的编程语言的时候就不会那么有压力了,所以我还是建议大家一定要学好Linux!!!

3.Linux和Windows的区别

在这里我们有必要浅谈一下两者的区别,以便于大家更好的进行认识:

1.第一种很明显的区别就是Linux是一款开源的操作系统,它就兼具了安全性,稳定性和高效率的优点,数据的安全性相比Windows来说更加的安全可靠,而且Linux几乎是不收费的;

2.Linux具有很高的安全性,因为它易于识别错误并进行修复,而Windows具有庞大的用户群,并成为病毒和恶意软件开发人员的目标;

3.Linux有权访问源代码并根据用户需要更改代码,而Windows则无权访问源代码。即使在现代桌面环境和操作系统功能下,Linux的运行速度也比Windows最新版本快,而在较旧的硬件上,Windows运行速度较慢。

详细的对比我们参照以下:Linux和Windows的主要区别

4.发行版本

Debian

Debian运行起来极其稳定,这使得它非常适合用于服务器。

debian这款操作系统无疑并不适合新手用户,而是适合系统管理员和高级用户。

Ubuntu

Ubuntu是Debian的一款衍生版,也是当今最受欢迎的免费操作系统。Ubuntu侧重于它在这个市场的应用,在服务器、云计算、甚至一些运行Ubuntu

Linux的移动设备上很常见。Ubuntu是新手用户肯定爱不释手的一款操作系统。

红帽企业级Linux

这是第一款面向商业市场的Linux发行版。它有服务器版本,支持众多处理器架构,包括x86和x86_64。红帽公司通过课程红帽认证系统管理员/红帽认证工程师(RHCSA/RHCE),对系统管理员进行培训和认证。

CentOS

CentOS是一款企业级Linux发行版,它使用红帽企业级Linux中的免费源代码重新构建而成。这款重构版完全去掉了注册商标以及Binary程序包方面一个非常细微的变化。有些人不想支付一大笔钱,又能领略红帽企业级Linux;对他们来说,CentOS值得一试。此外,CentOS的外观和行为似乎与母发行版红帽企业级Linux如出一辙。

CentOS使用YUM来管理软件包。

Fedora

小巧的Fedora适合那些人:想尝试最先进的技术,等不及程序的稳定版出来。其实,Fedora就是红帽公司的一个测试平台;产品在成为企业级发行版之前,在该平台上进行开发和测试。Fedora是一款非常好的发行版,有庞大的用户论坛,软件库中还有为数不少的软件包。

Kali Linux

Kali

Linux是Debian的一款衍生版。Kali旨在用于渗透测试。Kali的前身是Backtrack。用于Debian的所有Binary软件包都可以安装到Kali

Linux上,而Kali的魅力或威力就来自于此。此外,支持Debian的用户论坛为Kali加分不少。Kali随带许多的渗透测试工具,无论是Wifi、数据库还是其他任何工具,都设计成立马

可以使用。Kali使用APT来管理软件包。

毫无疑问,Kali Linux是一款渗透测试工具,或者是文明黑客(我不想谈论恶意黑客)青睐的操作系统。

具体可以阅读:Linux版本

5.搭建 Linux 环境

Linux 环境的搭建方式

主要有三种

  1. 直接安装在物理机上. 但是由于 Linux 桌面使用起来非常不友好, 不推荐.
  2. 使用虚拟机软件, 将 Linux 搭建在虚拟机上. 但是由于当前的虚拟机软件(如 VMWare 之类的)存在一些 bug , 会导致环境上出现各种莫名其妙的问题, 比较折腾.
  3. 使用云服务器, 可以直接在 腾讯云, 阿里云或华为云 等服务器厂商处直接购买一个云服务器.(使用云服务器不仅环境搭建简单, 避免折腾, 同时还有一个最大的好处, 部署在云服务器上的项目可以直接被外网访问到, 这个时候就和一个公司发布一个正式的网站没有任何区别. 也就能让我们自己写的程序真的去给别人去使用)

对于要学习linux的小伙伴,以上几种方式大家根据自己的实际情况来进行选择。

6.使用 XShell 远程登陆到 Linux

当我们有了环境之后,我们可以在自己安装的环境上直接进行操作,但是我使用的是xshell软件,这是一款终端模拟软件,这是一款商业软件,做的比较好用,推荐大家使用!!!

6.1下载安装 XShell

XShell 是一个远程终端软件. 下载官网

https://www.xshell.com/zh/xshell/

下载安装的时候选择 “home/school” 则为免费版本.

6.2查看 Linux 主机 ip

我这里使用的是购买的云服务器,只需打开云服务器,在进去的主页面往下滑即可找到对应的IP地址。

6.3使用 XShell 登陆主机

步奏:

1.打开下载安装好的xshell软件,在左上方点击文件,在弹出来的框中选择新建:

2.紧接着出现如下图标。主机即为需要连接的Linux服务器的ip地址。端口号为22(无须修改,但需要确认远程服务器的22端口已经打开)

3.点击左边的“用户身份验证”,输入用户名和密码。点击确认后,即可连接。

4.在 XShell 终端下敲

ssh [ip]

ip 为刚才看到的 ifconfig 结果.

如果网络畅通, 将会提示输入用户名密码. 输入即可正确登陆

备注: 这里的用户名密码都是在最初购买服务器的时候设置的用户名密码

6.4XShell 下的复制粘贴

复制: ctrl + insert (有些同学的 insert 需要配合 fn 来按)

粘贴: shift + insert

注意:

ctrl + c / ctrl + v 是不行的

7.Linux为什么不使用图形界面?

举个例子,同样的命令在命令行模式下输多少次都是同样的结果,图形界面就不一定是这样,它受到许多的外界干扰,你能保证每次点击都是事先计划好的地方么?一个像素都不差吗,万一操作过程中手一滑或者电脑卡了等原因造成不是点的同一个位置,那么这时问题就出现了。

因此相比图形界面,Linux命令行才是Linux系统的真正核心,利用命令行可以对系统进行各种配置,要熟练并成功管理Linux操作系统就必须对Linux命令行有深入的了解。Linux下的命令行有助于初学者了解系统的运行情况和计算机的各种设备。

总结:以上就是对于linux的一些基本的介绍,通过以上内容大家或多或少对Linux都有了基本的认识,紧接着下期我们就正式走进对其的学习!!!

相关实践学习
一小时快速掌握 SQL 语法
本实验带您学习SQL的基础语法,快速入门SQL。
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情: https://www.aliyun.com/product/ecs
相关文章
|
10天前
|
存储 Linux
Linux的学习之路:16、文件(3)
Linux的学习之路:16、文件(3)
30 0
|
10天前
|
Linux C语言 C++
Linux的学习之路:14、文件(1)
Linux的学习之路:14、文件(1)
27 0
|
10天前
|
Linux 开发工具 C语言
Linux的学习之路:7、yum与git
Linux的学习之路:7、yum与git
16 0
|
10天前
|
Linux 开发工具
Linux的学习之路:5、粘滞位与vim
Linux的学习之路:5、粘滞位与vim
46 0
|
5天前
|
运维 程序员 Linux
运维最全Linux 基本防火墙设置和开放端口命令,2024年最新程序员如何自我学习和成长
运维最全Linux 基本防火墙设置和开放端口命令,2024年最新程序员如何自我学习和成长
|
10天前
|
Linux 程序员 计算机视觉
【linux 学习】在Linux中经常用到的cmake、make、make install等命令解析
【linux 学习】在Linux中经常用到的cmake、make、make install等命令解析
20 0
|
10天前
|
自然语言处理 Java Linux
【Linux】开始学习进程替换吧!
通过学习进程替换,我们可以体会到多语言混搭的快乐,可以从C语言直接蹦到python ,也可以从c++里运行java代码。是不是很厉害!这是通过调度多个进程的效果,联系我们之前学习的进程,进程控制等概念。我们可以想要运行其他代码可以通过创建子进程来实现,但是这样也肯定是同一种语言,如果想要运行其他语言,那是不是有种方法可以调度一个进程来当做子进程呢??? 我们开始今天的学习吧!
12 0
|
10天前
|
Ubuntu 算法 Linux
嵌入式Linux的学习误区
该文指出了学习嵌入式Linux开发的两个常见误区。一是过分专注于学习桌面或服务器版Linux,而非关注嵌入式开发本身,实际上只需熟悉基本操作即可。二是试图在没有基础的情况下直接阅读Linux内核源代码,这是不切实际的,应先建立基础知识再进行源码学习。文章还提到了在嵌入式系统中获取和处理屏幕数据的示例,包括使用gsnap工具将framebuffer数据转为图像,以及涉及的交叉编译过程。
14 0
|
10天前
|
编解码 Linux 数据安全/隐私保护
【Linux学习】​​学习Linux的准备工作和Linux的基本指令
【Linux学习】​​学习Linux的准备工作和Linux的基本指令
|
10天前
|
Linux Shell 虚拟化
【Linux学习】Linux 的虚拟化和容器化技术
【Linux学习】Linux 的虚拟化和容器化技术