Linux学习(推荐学习资源)——保持更新
1. 介绍
Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和Unix的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的Unix工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统(度娘)。Linux系统大致分为两种,debian系和redhat系的。现在国产的也有很多,例如优麒麟、以及安全操作系统凝思。
| debian系 | redhat系 |
| Debian | RedHat |
| |Ubuntu | Fedora |
| Mint | Centos |
2. 好处
- 免费开源:感觉这也是受欢迎的关键点,在国内也有很多自己的版本,比如最近在使用的国产ubuntu优麒麟,正是由于Linux的免费,许多程序员可以根据自己的兴趣去修改,这也让Linux不断壮大发展。
- 支持多用户、多用户:Linux支持多用户,各个用户对于自己的文件设备有自己特殊的权利,保证了各用户之间互不影响。
- 良好的界面:有着字符界面和图形界面,在Linux上,可以通过终端来完成所有工作基本上。其实也是一种给人很牛皮的感觉。
- 支持多平台:Linux可以运行在多种硬件平台上,如具有x86、680x0、SPARC、Alpha等处理器的平台。此外Linux还是一种嵌入式操作系统,可以运行在掌上电脑、机顶盒或游戏机上。之前玩了一阵子的树莓派,树莓派上就可以跑Linux的。
3. 常见操作
4. Linux命令操作
dpkg: package manager for Debian
- - 安装: dpkg -i package(命令行操作常用)
- - 卸载: dpkg -r package
- - 卸载并删除配置文件: dpkg -P |--purge package
- - 如果安装一个包时、说依赖某些库、 可以先 apt-get install somelib
- - 查看软件包安装内容 :dpkg -L package
- - 查看文件由哪个软件包提供: dpkg -S filename
- - 另外 dpkg还有 dselect和aptitude 两个frontend
apt
- - 安装: apt-get install packs
- - 更新源:apt-get update
- - 升级系统:apt-get upgrade(安装东西的时候,都要进行这一步。这里一般都很花费较长时间,有时比较慢,可以考虑换成国内的源。)
- - 智能升级、安装新软件包,删除废弃的软件包:apt-get dist-upgrade f --fix broken 修复依赖:apt-get f install
- - 自动删除无用的软件:apt-get autoremove 删除软件:apt-get remove packages
mount
- - 用来挂载linux外的文件,非常重要的一个命令,笔者也算是入门水平,还没真正熟悉用这个命令。大家可以多查阅资料去了解更多的内容。
- - 基本格式:mount -t type [-o options] device dir (device:指定要挂载的设备,磁盘、光驱等 dir 指定把文件系统挂载到哪个目录 type 指定挂载的文件系统类型 options 指定挂载参数)。
- - [菜鸟教程的链接](https://www.runoob.com/linux/linux-comm-mount.html)
- - 示例:#mount -o ro /a/b/c——将a/b挂在/c下面
- - [-o options]—— -o auto打开挂上模式 -o ro 只读 -o rw 读写模式挂载
man
- 这个命令是在Linux下提供的帮助手册,也很重要,对于哪个命令不清楚的话。就直接man +命令即可查阅。
格式有下面这些;退出阅读界面就直接按q即可。
| 格式 | 说明 |
| NAME | 名称,可以最简洁得了解该命令 |
| SYNOPSIS | 概要,用法说明和能够使用的选项 |
| DESCRIPTION | 对各个功能命令的详细解释说明 |
| OPTIONS | 说明每一项的意义 |
| AUTHORS | 伟大的发明创作这个的作者 |
| SEE ALSO | 另外参照 |
| COPYRIGHT | 版权说明,在linux都是可以更改的 free |
常用命令
- - df -h——查看磁盘空间(h是以友好的方式进行查看)

- find+文件——可以查看当前目录下的文件,若是文件夹,存在就会列出文件夹中的文件。
- netstat -ant——用来查看本地一些端口信息等,监听使用等,这个命令很重要,之前在设置mysql的时候都有用到,解决一些端口问题上都会用到这个命令。

- mkdir ——创建文件夹 eg:mkdir 文件夹名 touch ——创建文件eg:touch 文件名。
- du -h 文件——查看文件的大小,有时要查看文件的大小,在使用vim之前一般都会建议查看一下大小,因为大于100M的文件直接vim打开会出现问题。

- su ——切换用户,比如su -uroot -p切换到root用户下。
- ping命令——这个其实不管哪个系统都很重要,是关于tcp/ip的,Ping 是一个十分好用的TCP/IP工具。它是用来检测网络的连通情况和分析网络速度。

推荐
在这个标题下推荐一些好的链接(书籍、网站、博客等)
1. 书籍
| 鸟哥的Linux私房菜 | 鸟哥(作者) |
| The Linux Command Line(linux命令行大全) | william E |
个人感觉要想形成自己的知识体系,就要不断得去学习和阅读书籍,现在的学习环境总体而言太复杂了,太浮躁了,学技术要定下心,沉住气,所以阅读经典实用的书籍是必不可少的,日后对某一种知识遗忘时,随手一翻也可以快速得拾起记忆。
一般这些技术书,我都是上一些二手网站淘回来,例如有路网等,当然京东和当当网也会搞活动有时候,也很划算,刚刚过去的双十一就买了两本。比较划算,包括上面那个Linux command line

双十一折扣回来两本70多,很香的价格。
下面的截图是鸟哥的Linux私房菜截图,个人强烈推荐,对于学生来讲是非常友好的,用易懂的语言去讲解,并不枯燥。

2. Github
- [大佬总结pdf(强烈推荐)]
- 个人感觉挺不错的一个学习实践[开源中国社区](https://linux.cn/)。
- [菜鸟教程](https://www.runoob.com/linux/linux-tutorial.html)-这是一个比较快速入门的网站,但有些地方没细讲,大家可以自行查看。
Linux学习(推荐学习资源)——保持更新的更多相关文章
- 在线学习Java免费资源推荐
你想学习Java吗?来对地方了!这篇文章将会介绍很多高质量的免费资源,包括网页.论坛.电子书和速查表. Java是一种面向对象的编程语言,拥有独立.多线程.安全.动态和健壮的特点.归功于其多功能的特点 ...
- 推荐一些学习MySQL的资源
前言: 在日常工作与学习中,无论是开发.运维.还是测试,对于数据库的学习是不可避免的,同时也是日常工作的必备技术之一.在互联网公司,开源数据库用得比较多的当属MySQL了,相信各位小伙伴关注我的原因也 ...
- HTMl5/CSS3/Javascript 学习推荐资源
HTMl5/CSS3/Javascript 学习推荐资源 前端的定义应该是数据内容的展示,在国内大家都觉得前端只是HTML+CSS+Javascript,但是实际上与展示有关的都是前端,所以Ruby/ ...
- 比较推荐学习Linux系统应该看的书籍
对于如何学习Linux,我想大家多多少少会有自己的一些想法--不管是学过Linux的还是没有学过Linux的.学习,对于我们来说,应该不是一件陌生的事:从小学开始,然后中学.大学.乃至于读硕读博,可以 ...
- kaili Linux学习推荐网站
kaili学习推荐网站 kail中文网:http://www.kali.org.cn/forum.php?gid=67 Kali官方教材:https://kali.training/ Kali Lin ...
- linux内核学习推荐书籍
<UNIX环境高级编程>,推荐指数:★★★★★ <UNIX环境高级编程>是 Unix/ Linux 程序员案头必备的一本书籍.可以说,Linux 程序员如果没有读过这本书,就好 ...
- 【学习】Unity手游之路<十二>手游资源热更新策略探讨
http://blog.csdn.net/janeky/article/details/17666409 =============================================== ...
- (转)Linux基础知识学习
Linux基础知识学习 原文:http://blog.csdn.net/ye_wei_yang/article/details/52777499 一.Linux的磁盘分区及目录 Linux的配置是通过 ...
- 针对于linux初学者的学习(摘自网络端)
一. 选择适合自己的Linux发行版谈到linux的发行版本,太多了,可能谁也不能给出一个准确的数字,但是有一点是可以肯定的,linux正在变得越来越流行, 面对这么多的Linux 发行版,打算从其他 ...
- Linux 系统编程 学习:03-进程间通信1:Unix IPC(2)信号
Linux 系统编程 学习:03-进程间通信1:Unix IPC(2)信号 背景 上一讲我们介绍了Unix IPC中的2种管道. 回顾一下上一讲的介绍,IPC的方式通常有: Unix IPC包括:管道 ...
随机推荐
- 深入研究BufferedReader底层源码
目录 1 概述 2 BufferedReader源码分析 3 意外发现 1 概述 最近研究JDK IO流这一块源码,发现真的比较简单,而且还有很多意外发现,如果大家对JDK源码感兴趣,不妨从IO流这一 ...
- SDI接口基于FPGA GTP实现
SDI采集和显示,基于xilinx 7系列器件进行实现,注意事项有如下几点: 1,如果多路SDI共用一个GTP Quad,或是SDI和PCIE在一个GTP Quad,时钟资源应该进行共享,既GTP c ...
- 解决Maven依赖jar包冲突总结
maven导入jar包中的一些概念: 直接依赖:项目中直接导入的jar包,就是该项目的直接依赖包. 传递依赖:项目中没有直接导入的jar包,可以通过项目直接依赖jar包传递到项目中 ...
- [JZOJ5817] 【NOIP提高A组模拟2018.8.15】 抄代码
Description J 君是机房的红太阳,每次模拟她总是 AK 虐场.然而在 NOIP2117 中,居然出现了另一位 AK 的选手 C 君! 这引起了组委会的怀疑,组委会认为 C 君有抄袭 J 君 ...
- POJ 1062 昂贵的聘礼(带限制条件的dijkstra)
题目网址:http://poj.org/problem?id=1062 题目: 昂贵的聘礼 Time Limit: 1000MS Memory Limit: 10000K Total Submis ...
- NodeJs编写Cli实现自动初始化新项目目录结构
应用场景 前端日常开发中,会遇见各种各样的cli,这些工具极大地方便了我们的日常工作,让计算机自己去干繁琐的工作,而我们,就可以节省出大量的时间用于学习.交流.开发. 注释:文章附有源码链接! 使用工 ...
- 两分钟让你明白Go中如何继承
最近在重构代码的时候,抽象了大量的接口.也使用这些抽象的接口做了很多伪继承的操作,极大的减少了代码冗余,同时也增加了代码的可读性. 然后随便搜了一下关于Go继承的文章,发现有的文章的代码量过多,并且代 ...
- pycharm(社区版2019.1版本)打开README.md文件卡死解决办法
现象:pycharm(社区版2019.1版本)打开README.md文件卡死 解决办法: 将插件Markdown support前的勾选√去掉,保存修改后重启pycharm即可
- 【Autofac打标签模式】Component和Autowired
[ Autofac打标签模式]开源DI框架扩展地址: https://github.com/yuzd/Autofac.Annotation/wiki Componet标签把类型注册到DI容器 1. 把 ...
- javascript单线程,异步与执行机制
js的单线程模型与游览器的进程/线程息息相关,在了解js单线程与异步的时候,建议先看看这篇文章 为什么是单线程 由于js是可操作dom的,如果js是多线程,在多线程的交互下,处于界面中的dom节点就可 ...