从 0 → 1,学习Linux该这么开始!
首先我们还是来普及以下概念,讲点虚的。现在是图形系统的天下,windows我们用了20多年。成功归功与它图形界面,你会点鼠标吗你会敲键盘吗?所以你会上网会聊天会玩游戏了。那么,0基础接触的Linux,又该如何开始学习呢?

第一步开始当然是选个linux系统,有环境才能玩,没环境你说个啥?
现在发行的linux系统很多redhat,suse,CentOS,fedora,ubuntu还有等等。下载它们的镜像文件,刚开始我建议在windows下装个VirtualBox,vmware有点臃肿了。
对于初学者当然建议是装ubuntu了,安装简单中文支持的不错。且主流android开发支持相当的好,不选它选谁。
如果你想深入学习linux那么请不要安装虚拟机模式,直接安装到硬盘。好处是忘掉windows的工作方式,完全用linux方式来搞定一切。
第二步学习系统基本更新操作和常用命令
安装linux系统后我们首先要做的是配置网络及更新,跟windows一样,一些东西要更新后才能使用,如ubuntu用sudo apt-get update; sudo apt-get upgrade;更新后我们就能愉快的是用了。熟悉Gnome/KDE/Unity等桌面环境操作 。安装设备驱动程序及应用程序安装。
掌握一些常用的命令 ls、rm、mv、cp、find、grep等等。熟悉系统目录的名称及用途,学会用mount命令访问其他文件系统
了解vi,gcc,gdb等常用编辑器,编译器,调试器。
不懂的命令操作上网百度求人不如求己。
第三步那就是深入学习linux
1、学linux内核需要的基础,C/C++基础学习这个必须会的,搞linux开发不会这个那搞它还又什么意义;
2、数据结构(离散数学)计算机专业的核心课程,没算法的程序能叫程序?;
3、操作系统原理看懂这个再去读linux吧;
4、了解linux我想至少你要会操作吧,了解lunix当然重学习API开始。
以上这些那是远远不够的,linux的东西太多了日新月异,要我们不断的去充电。
遇到问题咋办?
学习任何东西都会遇到问题,遇到问题该怎么办当然首先就是问知道的人,没错!可以快速解决问题,但被询问的高手用户或前辈常常不是很清楚这些Linux初学者要问什么,因为初学者根本无法完整地描述问题,所以别人可能也只能给你一半的答案。
而Linux系统有一个非常大的好处是,当程序执行错误或系统设置错误时,通常都会显示一大段错误信息告诉你哪里出错了,你只要好好看懂这段信息,大概就知道问题出现在哪里应该如何解决了。
英文的得细品,如果初学者都没有耐心阅读,而且也没记录错误信息是什么,以至于问的问题都是虎头蛇尾,让别人摸不到边际。
记得好好看清楚错误信息,看不懂就将这段信息给高手看看,一般情况又信息高手肯定能给你解决的。
提出问题之前还是需要我们自己思考一下:
1、帮助手册、FAQ(常见问题)文档以找到答案
2、Google或百度一下问题如没解决至少也能开阔思路
3、尝试自己检查或试验以找到答案
Linux绝非是一个可以速成的操作系统,只有通过不断的学习,并给予自己充裕的练习时间,linux学习没有捷径可走。编写、调试、思考无限循环。
从 0 → 1,学习Linux该这么开始!的更多相关文章
- 驱动开发学习笔记. 0.06 嵌入式linux视频开发之预备知识
驱动开发读书笔记. 0.06 嵌入式linux视频开发之预备知识 由于毕业设计选择了嵌入式linux视频开发相关的项目,于是找了相关的资料,下面是一下预备知识 UVC : UVC,全称为:USB v ...
- 总结4点对学习Linux有帮助的建议(纯干货)
学习需要足够的毅力和耐心 有些人把Linux运维看作一项冗长而枯燥的工作:有些人把linux运维看作一项得力的工具.如果是前者建议还是改变一下认识,不然不建议入门这行.毕竟linux运维工作是对人的毅 ...
- 总结四条对学习Linux系统有帮助的方法
网络是一个很神奇的东西,现代人的生活离不开网络,网络已深入人们的工作,生活,娱乐等方方面面.网络之所以无处不在,是因为它提供了诸多的网络服务,所以网络服务是网络的灵魂. 互联网上的各种网络服务是架构在 ...
- 学习 Linux,101: Linux 命令行
概述 本教程将简要介绍 bash shell 的一些主要特性,涵盖以下主题: 使用命令行与 shell 和命令交互 使用有效的命令和命令序列 定义.修改.引用和导出环境变量 访问命令历史和编辑工具 调 ...
- 献给初学者:谈谈如何学习Linux操作系统
本文出自 “技术成就梦想” 博客,请务必保留此出处http://ixdba.blog.51cto.com/2895551/569329. 为了能把这篇不错的文章分享给大家.所以请允许我暂时用原创的形式 ...
- 学习 Linux,101: 使用基本 SQL 命令
概述 在本教程中,将学习结构化查询语言 (SQL),包括: 使用基本 SQL 命令 执行基本数据操作 本教程将简要介绍您需要知道的与 LPI 102 考试相关的 SQL 概念. 回页首 数据库和 ...
- 学习Linux系列--安装Ubuntu
最近学习Linux,使用虚拟机太不方便,于是购买了阿里云最便宜的云主机作为学习设备. 本系列文章记录了个人学习过程的点点滴滴. 学习Linux系列--安装Ubuntu 学习Linux系列--安装软件环 ...
- 【团购活动】接口最全最好用的S5PV210开发板Sate210-F 开发板开始团购活动了,一起学习linux!
接口最全最好用的S5PV210开发板Sate210-F 开发板开始团购活动了,一起学习linux!http://bbs.eeworld.com.cn/forum.php?mod=viewthread& ...
- 轻松学习Linux之理解Shell的硬链接与软连接
大家在学习linux的过程中常常遇到一些模糊且容易混淆的概念比如什么是硬链接和软链接,他们有什么区别? 软连接有点象windows中的快捷方式,连接和目标文件具有相同的节点,而硬连接就好象重新复制 ...
随机推荐
- js中const,var,let区别(转载)
js中const,var,let区别 来源:https://www.cnblogs.com/zzsdream/p/6372729.html 今天第一次遇到const定义的变量,查阅了相关资料整理了这篇 ...
- [Linux] Nginx 提供静态内容和优化积压队列
1.try_files指令可用于检查指定的文件或目录是否存在; NGINX会进行内部重定向,如果没有,则返回指定的状态代码.例如,要检查对应于请求URI的文件是否存在,请使用try_files指令和$ ...
- [PHP]算法-堆排序的PHP实现
1.堆(二叉堆):可以视为一棵完全的二叉树,除了最底层之外,每一层都是满的,这使得堆可以利用数组来表示,每一个结点对应数组中的一个元素 2.给出某个结点的下标,可以计算出父结点的和孩子结点的下标; p ...
- 8. 同步锁Lock
package com.gf.demo07; import java.util.concurrent.locks.Lock; import java.util.concurrent.locks.Ree ...
- 【Java每日一题】20170217
20170216问题解析请点击今日问题下方的“[Java每日一题]20170217”查看(问题解析在公众号首发,公众号ID:weknow619) package Feb2017; public cla ...
- hihoCoder编程练习赛52
题目1 : 字符串排序 时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描述 一般我们在对字符串排序时,都会按照字典序排序.当字符串只包含小写字母时,相当于按字母表" ...
- 2017 ACM-ICPC西安网赛B-Coin
B-Coin Bob has a not even coin, every time he tosses the coin, the probability that the coin's front ...
- HTML表格,table,thead,tbody,tfoot,th,tr,td,的属性以及跨行,跨列
在HTML中表格是作为一个整体来解析的,解析完才会在页面显示,如果表格很复杂很长,加载时间很长,用户体验就不好.所以这里就要用到表格结构标签,解析一部分就显示一部分,不用等表格全部加载完再显示. 表格 ...
- ASP.NET MVC 使用Jquery异步操作JS代码
$(function () { var ajaxFormSubmit = function () { var $form = $(this); var options = { url: $form.a ...
- [总结]vue开发常见知识点及问题资料整理(持续更新)
package.json中的dependencies与devDependencies之间的区别 –save-dev 和 –save 的区别 我们在使用npm install 安装模块或插件的时候,有两 ...