【Linux】Linux环境搭建

2023-10-30

目录

1.Linux的发展历史

2.Linux环境的搭建

为什么要使用Linux

环境准备

3.使用 XShell 远程登陆 Linux

下载安装 XShell

使用 XShell 登陆主机


1.Linux的发展历史

        要知道Linux操作系统是如何发展的,我们得先了解Unix才可以。

        1968年,一些来自通用电器公司、贝尔实验室和麻省理工学院的研究人员开发了一个名叫Multics的特殊操作系统。Multics在多任务文件管理和用户连接中综合了许多新概念。

        1969-1970年,AT&T的贝尔实验室研究人员Ken Tompson和Dennis Ritchie,在采用很多Multics特点的基础上开发了UINX系统。它运行在小型机上,满足了系统对科研环境的要求。

        后来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版本不实用。

        Torvalds于10月5日发布的这个Linux版本被称为0.02版,它能够运行GNU Bourne Again Shell(bash)和GNU的C编译程序(gcc)以及为数不多的其它语言。Torvalds绝对没有想到他设想的一种能够针高级业余爱好者和黑客们的操作系统已经产生,这就是人们所称的Linux。
        Linux发布时的版本是0.02,后来又有0.03版,然后又跳到0.10版。因为世界各地越来越多的程序员都开始开发Linux,它已经达到0.95版。这就意味着正是公布1.0版本的时间已经为期不远了。正式的1.0版本是在1994年公布的。

        这是LInux的官网  The Linux Kernel Archives

             经过世界各地的优秀程序员不断优化、维护,就有了我们如今看到的不同版本的Linux操作系统。 其在服务器领域、桌面领域、移动嵌入式领域、云计算/大数据领域等等都有着非常重要的作用。

与此同时,不同版本对应着不同的需求,比如:

Debian ,非常适合服务器方面,但是这款操作系统不适合新手使用。

Ubuntu ,是Debian的衍生版,在服务器、云计算、甚至一些运行Ubuntu Linux的设备上很常见。

红帽企业级Linux 这是第一款面向商业市场的Linux发行版。

Centos ,是一款企业级Linux发行版,它使用红帽企业级Linux中的免费源代码重新构建而成。。

Kali Linux,是Debian的一款衍生版。Kali旨在用于渗透测试。Kali随带许多的渗透测试工具,无论是Wifi、数据库还是其他任何工具,都设计成立马可以使用。毫无疑问,Kali Linux是一款渗透测试工具,或者是文明黑客青睐的操作系统。

…………

        我所使用的是Centos,对于Linux而言,一通百通,学会一种版本,其他版本也就基本上差不多了,并没有太大的区别。 

2.Linux环境的搭建

为什么要使用Linux

        在搭建Linux环境之前,很多人都会很疑惑,为什么不能用Unix呢?平时用Windows很顺手呀,为啥要换一个操作系统使用呢?

        起始很简单,归根到底就两个字——开源!!! Linux操作系统是开源的,一个软件是开源的,最基本的含义是代码是公开的,任何人都可以去查看,修改以及使用。正如侯捷老师所说“源码面前,了无秘密。” 

        假设开源软件有bug,有一万个程序员都看过这个软件的源码,可能50%的人没有发现这个bug,49%的人发现了,但是没有理会,最后的1%里面,可能有部分程序员尝试修改,没有结果,但是肯定会有几个程序员把这个bug修复并且告诉原作者,这是肯定的,总是有这样子的人存在。  亦或者,一个企业如果使用闭源的软件,那么就不知道开发软件的公司是否给软件留了一个后门,可以随时读取任何信息,这就涉及到数据安全的问题,这可不是小问题,非常值得重视!!

        开源软件还有其他很多好处,但是总结来说,主要是:稳定性、安全性、效率性。并且集合了这么多优点的软件,还是免费的,用起来他不香嘛!!!

        这里又有疑问了,既然Linux是开源的操作系统,维护人员也是无偿维护、优化Linux的吗?答案是肯定的。他们是自发维护Linux的,相当于志愿者。那他们为什么会这么“傻”呢?这不是纯纯免费劳动力吗?实际上,能够持续参与编写操作系统代码的人,都是顶级工程师,他们并不缺钱,从马斯洛的需求层次结构来看,他们已经到了第五层——自我实现。他们做这些事情是为了改变世界,这是作为顶级工程师的使命驱动,他们有着这样的责任感。而且,一个人的代码能够写进Linux里面,那也算得上是莫大的荣光了!!!

环境准备

        Linux环境搭建主要有三种办法:

1、直接安装在物理机上. 但是由于 Linux 桌面使用起来非常不友好, 不推荐。
2、使用虚拟机软件, 将 Linux 搭建在虚拟机上. 但是由于当前的虚拟机软件(如 VMWare 之类的)存在一些 bug , 会导致环境上出现各种莫名其妙的问题, 比较折腾。
3、使用云服务器, 可以直接在 腾讯云, 阿里云或华为云 等服务器厂商处直接购买一个云服务器。

        我是直接买了一个云服务器,由于是初学阶段,买最便宜的服务器学习就可以。然后在产品控制台找到自己的公网ip,并记住。

 

        然后点进服务器, 找到重置密码,修改一下 root 的密码,并且记住。

        通过上述操作,我们已经获得了以下三个信息,通过这三个信息,我们就可以使用另一个软件 XShell 远程登陆Linux 服务器。

1. 服务器的外网 IP
2. 服务器的管理员账户 (固定为 root)
3. 管理员账户密码(在腾讯云网站上设置的)

3.使用 XShell 远程登陆 Linux

下载安装 XShell

        进入 XShell 的官网,找到 “学校和家庭用户的免费许可证”  ,就可以下载免费的 XShell 。注意安装的时候选择 school / home 版本,即免费版。链接在此 :家庭/学校免费 - NetSarang Website (xshell.com)

使用 XShell 登陆主机

        下载好XShell 之后,打开,进入如下页面。

        键盘输入如下命令,跳出下面界面。(注意XShell 下 复制粘贴不是 Ctrl+c / v)。要输入登陆的用户名,固定管理员用户名是 root 。输入root 之后,会让输入密码,密码是上面让重置的管理员账户密码。

ssh  [ip] 

        输入密码并回车之后,如果 XShell 界面发生如下转变,说明成功连接 Linux 服务器。

        关于 Linux 环境搭建 就介绍到这里,感谢支持!!!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

【Linux】Linux环境搭建 的相关文章

  • Linux:通过网络进行屏幕桌面视频捕获和 VNC 帧速率

    抱歉 文字墙很长 TL DR VNC 连接的帧速率是多少 以帧 秒为单位 或者更确切地说 由谁决定 客户端还是服务器 对于桌面屏幕捕获的任何其他建议 但 正确的时间编码 具有不抖动的帧速率 具有稳定的周期 并有可能将其作为未压缩 或无损 图
  • 如何修改s_client的代码?

    我正在玩apps s client c in the openssl源代码 我想进行一些更改并运行它 但是在保存文件并执行操作后 我的更改没有得到反映make all or a make 例如 我改变了sc usage函数为此 BIO pr
  • 当存在点和下划线时,使用 sed 搜索并替换

    我该如何更换foo with foo sed 只需运行 sed s foo foo g file php 不起作用 逃离 sed s foo foo g file php Example cat test txt foo bar sed s
  • 如何查找或计算Linux进程的页表大小和其他内核占用?

    我怎样才能知道 Linux 进程页表有多大 以及任何其他可变大小的进程统计 如果您真的对页表感兴趣 请执行以下操作 cat proc meminfo grep PageTables PageTables 24496 kB
  • sed 仅最后一个匹配模式

    我想sed仅文本文件的最后一个匹配模式 输入文件 boy boy girl boy 输出文件 boy boy girl boys 一种方法是反转文件 仅替换第一个匹配项 然后再次反转 tac
  • 是否有我可以运行的操作系统命令来确定是否在基于 Xen 的虚拟机内运行

    我可以在基于 Xen 的虚拟机中运行一个操作系统命令来告诉我它是一个虚拟机而不是物理机 我听说内核对此有一些自我意识智能 例如就像 ps 输出中的额外列之类的 我知道 vmstat 提供了 st 列 但我在运行 Linux 内核 2 6 1
  • Nasm 打印到下一行

    我用 nasm Assembly 编写了以下程序 section text global start start Input variables mov edx inLen mov ecx inMsg mov ebx 1 mov eax 4
  • bash双括号问题

    我对 bash 脚本非常陌生 在使用双括号时遇到了问题 我似乎无法让它们在 Ubuntu Server 11 10 中工作 我的下面的脚本位于 if test sh 中 bin bash if 14 14 then echo FOO fi
  • 跟踪 pthread 调度

    我想做的是创建某种图表 详细说明 Linux 中 两个 线程的执行情况 我不需要查看线程的作用 只需查看它们何时被安排以及持续多长时间 基本上是一条时间线 在过去的几个小时里 我一直在互联网上搜索跟踪 pthread 调度的方法 不幸的是
  • 使用 C++ 输出字符串覆盖 Linux 终端上的最后一个字符串

    假设我有一个命令行程序 有没有办法让我说的时候 std cout lt lt stuff 如果我不做std cout lt lt n 在另一个之间std cout lt lt stuff 东西的另一个输出将覆盖同一行上的最后一个东西 清理行
  • 使用netcat将unix套接字传输到tcp套接字

    我正在尝试使用以下命令将 unix 套接字公开为 tcp 套接字 nc lkv 44444 nc Uv var run docker sock 当我尝试访问时localhost 44444 containers json从浏览器中 它不会加
  • 退出 bash 脚本但保持进程运行

    我正在运行服务器 需要使用参数执行以下命令 这些脚本目前工作得很好 但问题是当我运行脚本时我无法返回到控制台 它在控制台中保持运行 如果我强行停止它 那么该过程也会停止 我想继续运行该进程并返回到控制台 bin sh php home st
  • Docker DNS 设置

    我尝试使用自定义网络和 dos 设置创建 docker 容器 docker网络创建 driver bridge opt com docker network bridge enable ip masquerade true opt com
  • 远程linux服务器到远程linux服务器大型稀疏文件复制 - 如何?

    我有两台 CentOS 5 4 服务器 每台服务器上都安装了 VMware Server 假设我始终对 vmware 虚拟机使用稀疏文件 将虚拟机文件从一台服务器复制到另一台服务器的最可靠 最快速的方法是什么 虚拟机的文件复制起来很痛苦 因
  • 如何仅将整个嵌套目录中的头文件复制到另一个目录,在复制到新文件夹后保持相同的层次结构

    我有一个目录 其中有很多头文件 h 和其他 o 和 c 文件以及其他文件 这个目录里面有很多嵌套的目录 我只想将头文件复制到一个单独的目录 并在新目录中保留相同的结构 cp rf oldDirectory newDirectory将复制所有
  • 如何在 Linux x86_64 上模拟 iret

    我正在编写一个基于 Intel VT 的调试器 由于当 NMI Exiting 1 时 iret 指令在 vmx guest 中的性能发生了变化 所以我应该自己处理vmx主机中的NMI 否则 guest会出现nmi可重入错误 我查了英特尔手
  • Windows 与 Linux 文本文件读取

    问题是 我最近从 Windows 切换到 Ubuntu 我的一些用于分析数据文件的 python 脚本给了我错误 我不确定如何正确解决 我当前仪器的数据文件输出如下 Header 有关仪器等的各种信息 Data 状态 代码 温度 字段等 0
  • 为什么 ld 无法从 /etc/ld.so.conf 中的路径找到库?

    我想添加 opt vertica lib64进入系统库路径 所以我执行以下步骤 1 添加 opt vertica lib64 into etc ld so conf 然后运行ldconfig 2 检查 bash ldconfig p gre
  • 如何从 Linux 的 shell 中删除所有以 ._ 开头的文件?

    确实如标题所示 我已将许多文件从 Mac 复制到 Raspberry Pi 这导致了许多以前缀开头的多余文件 我想删除以以下开头的文件夹中的每个文件 我该怎么做 尝试类似的方法 cd path to directory rm rf 或者 如
  • 在 shell 脚本中查找和替换

    是否可以使用 shell 在文件中搜索然后替换值 当我安装服务时 我希望能够在配置文件中搜索变量 然后在该值中替换 插入我自己的设置 当然 您可以使用 sed 或 awk 来完成此操作 sed 示例 sed i s Andrew James

随机推荐

  • 简单的感知器实现

    什么是感知器 神经网络的组成单元 神经元 神经元也叫感知器 感知器的组成 输入权值 激活函数 输出 感知器的输出公式 y f w x b 下面构建一个简单的感知器 from functools import reduce 1 functoo
  • leetcode—21.二叉树路径和相关题目leetcode总结

    文章目录 引言 112 路径总和 113 路径总和 II 129 求根节点到叶子节点数字之和 124 二叉树中的最大路径和 257 二叉树的所有路径 引言 树的求和属于树的题目中比较常见的 因为可以有几种变体 灵活度比较高 也可以考察到对于
  • C语言二级题库带答案+解析

    1 程序流程图中带有箭头的线段表示的是 A 图元关系 B 数据流 C 控制流 D 调用关系 参考答案 C 解析 在数据流图中 用标有名字的箭头表示数据流 在程序流程图中 用标有名字的箭头表示控制流 所以选择C 2 结构化程序设计的基本原则不
  • STM32单片机基础15——使用硬件I2C读取温湿度传感器数据(SHT30)

    本篇详细的记录了如何使用STM32CubeMX配置STM32L431RCT6的硬件I2C外设 读取SHT30温湿度传感器的数据并通过串口发送 1 准备工作 硬件准备 开发板 首先需要准备一个开发板 这里我准备的是STM32L4的开发板 Be
  • ant design pro v5 - 07 多标签窗口 多窗口打开

    1 安装组件 安装 yarn add umi plugin keep alive 2 创建模板 src services types menu ts export interface menuTabProps tab string path
  • 百度飞桨PaddlePaddle论文复现训练营——U-GAT-IT 论文复现心得

    项目背景 本次论文复现是源自百度顶会论文复现营 https aistudio baidu com aistudio education group info 1340 复现对象是 2020 ICLR 上的 U GAT IT 这篇论文 htt
  • 整理

    1 前端安全问题有哪些 如何防范 主要有XSS攻击和CSRF攻击 xss 跨站脚本攻击 在网页里植入一段恶意代码 在该网站的作用域下执行了这段代码 防范 1 在服务端设置对cookie的保护 也就是设置httponly 防止用户通过docu
  • IO进程线程day7(2023.8.4)

    一 Xmind整理 二 课上练习 练习1 创建两个线程 其中一个线程拷贝前半部分 另一个线程拷贝后半部分 只允许开一份资源 且用互斥锁方式实现 提示 找临界区 gt 找临界资源 include
  • Python爬虫入门10:select方法快速定位HTML内容

    前往老猿Python博客 https blog csdn net LaoYuanPython 一 引言 在前两节介绍了通过属性和查找方法定位HTML报文的内容的方法 除了这两种方法还有一种方法就是通过使用CSS选择器的语法找到tag 关于c
  • IntelliJ IDEA 2018.3.3版本破解,亲测可用

    一 到官网下载收费版本 如下 二 安装 破解 1 下载http idea lanyus com 标题 2 找到intelliJ IDEA的安装目录的bin目录 然后把下载的JetbrainsIdesCrack 4 2 release sha
  • 逻辑滚动条LVM测试记录1

    逻辑滚动条LVM测试记录 一 由partition或disk到实体滚动条PV的过程 1 划分出系统标示符为8e00的partition gdisk l dev sda命令查看现有分区情况 系统标示符 system ID 指的就是code一项
  • Python缺失值处理

    没有高质量的数据 就没有高质量的数据挖掘结果 数据值缺失是数据分析中经常遇到的问题之一 当缺失比例很小时 可直接对缺失记录进行舍弃或进行手工处理 但在实际数据中 往往缺失数据占有相当的比重 这时如果手工处理非常低效 如果舍弃缺失记录 则会丢
  • 西门子V90伺服驱动器的面板控制

    前言 本文主要讲解一下伺服驱动器的面板控制 大致了解它的功能 一 V90概述 概述 SINAMICS V90是西门子推出的一款小型 高效便捷的伺服系统 它作为 SINAMICS 驱动系列家族的新成员 与SIMOTICS S 1FL6 伺服电
  • 启动Jmeter时遇到的几种错误

    1 权限不够 解决办法 用管理员权限运行 2 sdk版本太低 解决办法 1 查看当前sdk版本 java version 2 安装sdk1 7或以上版本 jmeter3 0版本要用sdk1 7及以上版本 3 配置的环境变量没有生效 在ubu
  • Spring Boot实战之配置使用Logback进行日志记录

    2019独角兽企业重金招聘Python工程师标准 gt gt gt Spring Boot实战之配置使用Logback进行日志记录 在这篇文章中我们将讨论在Spring Boot中使用Logback 在Spring Boot中使用Logba
  • 开源 AI库Stable Diffusion 介绍

    Stable Diffusion 是一个用于生成高质量 AI 绘画的 Python 库 以下是一些使用 Stable Diffusion 的基本步骤 安装 Stable Diffusion 库 您可以使用 pip 安装 命令如下 pip i
  • 性能测试包括哪些方面?

    性能测试 通过自动化测试工具模拟多种正常 峰值 以及异常的负载情况下对系统各项性能指标进行的测试 负载测试 压力测试 容量测试都属于性能测试 性能测试指标是衡量系统性能的评价标准 主要关注一些响应时间 并发用户 并发 点击率 吞吐量 TPS
  • Android JNI/NDK开发(2)JNI实现C/C++与Android/JAVA相互调用

    前言 一直觉得无论是从行业形式来看 还是从就业角度说 学习JNI NDK开发是一条必经之路 很多说Android和IOS几乎没有市场了 其实只能说现在开发APP的需求没那么多了 再加上之前培训机构疯狂向市场输出Android IOS开发人员
  • [转]文档去重算法:SimHash和MinHash

    simhash与重复信息识别 来源 http grunt1223 iteye com blog 964564 在工作学习中 我往往感叹数学奇迹般的解决一些貌似不可能完成的任务 并且十分希望将这种喜悦分享给大家 就好比说 老婆 出来看上帝 随
  • 【Linux】Linux环境搭建

    目录 1 Linux的发展历史 2 Linux环境的搭建 为什么要使用Linux 环境准备 3 使用 XShell 远程登陆 Linux 下载安装 XShell 使用 XShell 登陆主机 1 Linux的发展历史 要知道Linux操作系