作为一个大一的同学,可以采取下面的步骤进行系统的学习Linux。

  • 1、选择一个发行版:对于初学者,推荐使用Ubuntu或者Linux Mint。Ubuntu适合新手,使用广泛,社区活跃,遇到问题容易找到解决方案。虽然你觉得Ubuntu没有什么深度,但它是一个很好的起点,你可以先从它开始,等熟悉了Linux系统之后再尝试其他发行版。
  • 2、安装Linux:把选定的Linux发行版安装到电脑上。尽量都双系统安装,保留现有的操作系统。
  • 3、学习基本操作:熟悉Linux系统的基本操作,如文件和目录操作、用户和权限管理、软件包管理等。
  • 4、学习命令行:Linux的命令行界面是它的核心特点。学习如何使用终端、各种命令和Shell脚本编程。这将帮助你熟练掌握Linux系统。
  • 5、学习系统管理:学习如何管理Linux系统,包括系统监控、进程管理、硬件管理、网络管理等。这将帮助你更好地了解Linux系统的运行。
  • 6、尝试其他发行版:当你对Linux系统有了一定的了解和经验后,可以尝试其他发行版,如Arch Linux、Debian、Fedora等。这将帮助你更全面地了解Linux的世界。
  • 7、实际项目应用:通过实际项目来提高你的Linux技能。例如,你可以搭建一个网站服务器、搭建一个家庭媒体服务器等。

Linux相关课程推荐:

黑马程序员新版Linux零基础快速入门到精通,全涵盖linux系统知识、常用软件环境部署、Shell脚本、云平台实践、大数据集群项目实战等https://link.zhihu.com/?target=https%3A//www.bilibili.com/video/BV1n84y1i7td/%3Fspm_id_from%3D333.999.0.0%26vd_source%3Dc5b829c113088a67f153859f36a1d214

开源性: Linux 是一个开源操作系统,意味着它的源代码是公开的,任何人都可以自由使用、修改和再发布它。这使得 Linux 社区成为了一个非常活跃和强大的技术社区,为开发者提供了很多帮助和支持。

可移植性: Linux 可以在多种硬件平台上运行,如服务器、工作站、笔记本电脑、智能手机等,并且可以被移植到特定的硬件平台上。这使得开发者可以在一个环境中开发代码,然后在不同的硬件平台上运行它,并且不需要任何修改。

强大的工具和库: Linux 操作系统提供了大量的工具和库,包括编译器、调试器、文本编辑器等,这使得开发者能够更轻松、更高效地开发代码。此外,Linux 还提供了大量的库,例如数学库、图形库等,可以方便的开发各种应用程序。

大量的开源软件: Linux 平台上有大量的开源软件,包括 Apache、MySQL、PHP 等,可以免费使用。这些开源软件非常的强大,可以方便的开发和部署各种应用程序,并且因为是开源的,所以可以方便的进行修改和定制。

安全性: Linux 操作系统具有很高的安全性,因为它的源代码是开放的,任何人都可以审核代码并发现安全漏洞,从而及时进行修复。此外,Linux 操作系统还提供了许多安全工具,如防火墙、密码管理器等,可以保护用户的数据安全。

总之,Linux 编程具有很多优势,包括开源性、可移植性、强大的工具和库、大量的在线资源、大量的开源软件和安全性等。这些优势使得 Linux 成为了非常流行的编程平台,特别是在服务器端开发方面。

今日学习目标:了解操作系统作用、了解常见操作系统

一、软件和硬件

我们所熟知的计算机是由:硬件和软件所组成。

硬件:计算机系统中由电子,机械和光电元件等组成的各种物理装置的总称。

软件:是用户和计算机硬件之间的接口和桥梁,用户通过软件与计算机进行交流。

而操作系统,就是软件的一类。

一个完整的计算机:

操作系统

操作系统是计算机软件的一种,它主要负责:

作为用户和计算机硬件之间的桥梁,调度和管理计算机硬件进行工作。

而计算机,如果没有操作系统,就是一堆无法使用的塑料而已。

当计算机拥有了操作系统,就相当于拥有了灵魂,操作系统可以:

  • 调度CPU进行工作
  • 调度内存进行工作
  • 调度硬盘进行数据存储
  • 调度网卡进行网络通讯
  • 调度音响发出声音
  • 调度打印机打印内容
  • ......

用户使用操作系统,操作系统安排硬件干活

常见的操作系统

二、初始Liunx

Linux创始人: 林纳斯 托瓦兹

Linux 诞生于1991年,作者上大学期间

因为创始人在上大学期间经常需要浏览新闻和处理邮件,发现现有的操作系统不好用, 于是他决心自己写一个保护模式下的操作系统,这就是Linux的原型, 当时他21岁,后来经过全世界网友的支持, 现在能够兼容多种硬件,成为最为流行的服务器操作系统之一。

Linux内核

Linux系统的组成如下:

  1. Linux系统内核
  2. 系统级应用程序

两部分组成。

内核提供系统最核心的功能,如:调度CPU、调度内存、调度文件系统、调度网络通讯、调度IO等。

系统级应用程序,可以理解为出厂自带程序,可供用户快速上手操作系统,如:
文件管理器、任务管理器、图片查看、音乐播放等。
比如,播放音乐,无论用户使用自带音乐播放器或是自行安装的第三方播放器

均是由播放器程序,调用内核提供的相关功能,由内核调度CPU解码、音响发声等。

可以看出,内核是Linux操作系统最核心的所在,系统级应用程序只是锦上添花。

Linux内核是免费开源的,任何人都可以下载内核源码并查看且修改。

可以通过:The Linux Kernel Archives 去下载Linux内核

Linux发行版

内核是免费、开源的,这也就代表了:

任何人都可以获得并修改内核,并且自行集成系统级程序

提供了内核+系统级程序的完整封装,称之为Linux发行版

任何人都可以封装Linux,目前市面上由非常多的Linux发行版,常用的、知名的如下:

不同的发行版:基础命令100%是相同的(课程讲解内容)部分操作不同(如软件安装)同学们不用纠结选择什么发行版不论用什么发行版,都是Linux,学到的东西都是通用的。

三、总结

1. Linux的诞生

Linux由林纳斯 托瓦兹在1991年创立并发展至今成为服务器操作系统领域的核心系统。

2. 什么是Linux系统的内核

内核提供了Linux系统的主要功能,如硬件调度管理的能力。

Linux内核是免费开源的,任何人都可以查看内核的源代码,甚至是贡献源代码。

3. 什么是Linux系统发行版

内核无法被用户直接使用,需要配合应用程序才能被用户使用。

在内核之上,封装系统级应用程序,组合在一起就称之为Linux发行版。

发行版众多,课程主要基于CentOS辅以Ubuntu进行讲解

初学者如何系统性地学习Linux?相关推荐

  1. 睡前必读 | 如何系统性地学习分布式系统?

    点击上方"朱小厮的博客",选择"设为星标" 后台回复"书",获取 导语:本文的缘起是回答知乎圆桌会议「分布式系统之美」的问题「如何系统性地学 ...

  2. 如何系统的学习linux

    http://bbs.chinaunix.net/thread-4067151-1-1.html 首先,我想引用一下别人说过的一句话:除非在过去的十年你一直生活在山洞里,否则你一定听说过linux. ...

  3. 如何系统的学习linux?

    本文转自 海天旭日的BLOG [url]www.xpb.cn[/url] 首先,我想引用一下别人说过的一句话:除非在过去的十年你一直生活在山洞里,否则你一定听说过linux. 是的,现在听说过linu ...

  4. 献给初学者:谈谈如何学习Linux操作系统

    本文出自 "技术成就梦想" 博客,请务必保留此出处http://ixdba.blog.51cto.com/2895551/569329. 为了能把这篇不错的文章分享给大家.所以请允 ...

  5. 如何系统的学习linux 系统学习Linux的十一点建议

    linux太难用了!(一通鼠标点击,进入/etc) 学习linux,你忘记windows的思维方式了吗? 怎么安装软件阿?那一堆文件是干什么的阿? 学习linux,你还在浮躁吗? 进入linux,随便 ...

  6. linux系统入门学习Linux认证:linux系统学习方法入门体

    Linux认证考试:操作系统linux学习方法入门体 在学习linux的工程中,linux学习方法有很多种,这里是小编的学习,给大家拿出来分享一下, Linux!Linux只是个内核!这点很重要,你必 ...

  7. 如何系统性地学习NLP 自然语言处理?

    安装工具 如果大家已经安装nlpia包(https://github.com/totalgood/nlpia),就可以运行本书中的所有示例.我们会保持README文件中的安装说明为最新版本.但是,如果 ...

  8. 「杂谈」如何系统性地学习生成对抗网络GAN

    文/编辑 | 言有三 作为被誉为"下一代深度学习技术",同时已经在工业界能够真正成熟稳定应用的GAN,有三AI公众号很早之前就开始关注相关内容,从理论到实践都做出了一些总结,并且在 ...

  9. 系统的学习linux

    1.什么是GNU,linux,unix GNU是一个自由软件操作系统-就是说,它尊重其使用者的自由.GNU操作系统包括GNU软件包(专门由GNU工程发布的程序)和由第三方发布的自由软件.GNU的开发使 ...

最新文章

  1. Thttpd manual
  2. ffmpeg视频学习网站
  3. 部署在CloudFoundry上的nodejs如何正确使用port环境变量
  4. cprintdialog预览_怎样用CPrintDialog来实现打印功能
  5. easyui datagrid加载本地数据和网络数据
  6. idea使用activiti插件
  7. linux恢复deleted状态的文件,Linux恢复被删除的文件 How To Recover Deleted Files From Your Linux System ....
  8. tortoise svn 请求的名称有效,但是找不到请求的类型的数据
  9. netcore 之docker
  10. 权重确定方法之主成分分析法
  11. 两坐标点的直线距离c语言,c语言求平面上2个坐标点的直线距离、求俩坐标直线距离作为半径的圆的面积、递归、菲波那次数列、explode...
  12. 时间管理——四象限法则
  13. Chaos Emulator v0.2.3 自建引力模拟器分享
  14. 你们知道怎么将图片转成ico? 小妙招分享给你
  15. [Spring Boot] 2. Spring Boot 启动过程定制化
  16. 这是一款功能强大的开源 Python 绘图库
  17. Python 生成图片验证码(详解)
  18. python 海康威视ipc抓图
  19. 文本分类从入门到精通—代码展示
  20. minor GC 、 full GC、新生代(young )、老年代(old)的一些理解

热门文章

  1. 深入解析OkHttp3
  2. 不比不知道,主流商业云计算解决方案大比拼!
  3. 惠普战66指纹识别突然无法添加,点击添加弹窗闪退解决
  4. Git使用教程-idea系列(idea、webstorm、phpstorm、androidstudio)中git使用教程
  5. 将酷狗缓存文件转化成MP3格式
  6. Java、JSP商场管理系统
  7. openlayers版本更新差别
  8. FPGA 20个例程篇:19.OV7725摄像头实时采集送HDMI显示(三)
  9. ardl模型stata命令_Stata新命令快讯: 有向无环图、模糊倍分法等
  10. 基于 Google Flutter 的 WanAndroid 客户端,支持 Android 和 iOS。包括 BLoC、RxDart 、国际化、主题色、启动页、引导页,拥有较好的项目结构比较规范的代