Linux60个小时速成

Linux速成

文章目录

  • Linux速成
    • 1 前言
      • 1.1 课程介绍
      • 1.2 学习方向
      • 1.3 应用领域
      • 个人桌面领域
      • 服务器领域
      • 嵌入式领域
      • 1.4 学习阶段
      • 1.5 学习建议
    • 2 linux入门
      • 2.1 linux简介
      • 2.2 linux发行版
      • 2.3 和unix的关系
      • 2.4 linux怎么来的
      • 2.5 与windows比较
    • 3 安装虚拟机和CentOS
      • 3.1 vmware 和 centos介绍
      • 3.2 安装vmware
      • 3.3 安装centos
      • 3.4 联网和使用终端
      • 3.5 设置共享目录
    • 4 linux目录结构
      • 4.1 树状目录
      • 4.2 详细介绍
    • 5 远程登录linux
      • 5.1 为什么要远程登录
      • 5.2 安装和使用xshell
      • 5.3 安装和使用xftp
      • 5.4 开通sshd服务
      • 5.5 乱码问题
    • 6 关机、重启、登录与注销
      • 6.1 关机与重启
      • 6.2 登录与注销
    • 7 常用指令
      • 7.1 文件目录类
      • 7.2 时间日期类
      • 7.3 搜索查找类
      • 7.4 locate
      • 7.6 grep和管道符号|
      • 7.7 压缩和解压类
      • 7.8 帮助信息类
    • 8 用户管理
      • 8.1 介绍
      • 8.2 用户操作
      • 8.3 添加用户
      • 8.4 修改密码
      • 8.5 删除用户
      • 8.6 查询用户信息
      • 8.7 切换用户
      • 8.8 查看当前登录用户
      • 8.9 用户组操作
      • 8.10 新增组
      • 8.11 删除组
      • 8.12 修改用户的组、初始目录
      • 8.13 用户和组的相关文件
      • 8.14 /etc/shadow
      • 8.15 /etc/group文件
    • 9 权限管理
      • 9.1 介绍
      • 9.2 查看文件类型和所有者
      • 9.3 权限说明
      • 9.4 修改文件权限-chmod
        • 9.4.1 第一种方式:+ 、-、= 变更权限
        • 9.4.2 第二种方式:通过数字变更权限
      • 9.5 修改文件所有者-chown
      • 9.6 修改文件所在组-chgrp
      • 实战练习:
    • 10 vi和vim
      • 10.1 vi和vim介绍
      • 10.2 三种模式
      • 10.3 各种操作说明
        • 10.3.1 光标移动
        • 10.3.2 复制、粘贴、删除
        • 10.3.3 保存文件及退出vi编辑器
        • 10.3.4 文本内容替换
        • 10.3.5 文件内容查找和撤销编辑及保存退出![img](https://img-blog.csdnimg.cn/img_convert/dd4c32e42db93cb0bf74c66ef7567dad.png)
      • 10.4 练习游戏:
      • 10.5 实战练习1:
      • 10.6 实战练习2:
    • 11 磁盘分区挂载
      • 11.1 硬盘类型
      • 11.2 分区基本知识
        • 11.2.1 mbr 分区:
        • 11.2.1 gtp 分区:
      • 11.3 windows和linux查看分区格式
      • 11.4 linux分区
        • 11.4.1 原理介绍
        • 11.4.2 查看分区情况
      • 11.5 增加硬盘并挂载
        • 11.5.1 示意图
      • 11.6 具体步骤
        • 11.6.1 虚拟机添加硬盘
        • 11.6.2 分区
        • 11.6.3 格式化
        • 11.6.4 挂载
        • 11.6.5 设置永久挂载
      • 11.7 查看磁盘使用情况
      • 11.8 查看目录占用磁盘空间情况
      • 11.9 统计某个目录下文件个数
      • 11.10 统计某个目录下子目录个数
    • 12 网络配置
    • 13 进程与服务管理
      • 13.1 进程管理
      • 13.2 基本介绍
      • 13.3 查看系统进程
      • 13.4 进程信息说明
        • 13.4.1 ps -aux
        • 13.4.2 ps -ef
      • 13.5 终止进程
      • 13.6 查看进程树
      • 13.7 服务管理
      • 13.8 基本介绍
      • 13.9 service指令
      • 13.10 查看有哪些服务
        • 13.10.1 chkconfig
      • 13.11 动态监控进程
    • 14 shell编程
      • 14.1 shell概述
      • 14.2 什么是shell
      • 14.3 什么是shell脚本
      • 14.4 谁要学习shell
      • 14.5 有哪些shell
      • 14.6 第1个shell脚本
      • 14.7 变量
      • 14.8 环境变量
      • 14.9 位置参数变量
      • 14.10 预定义变量
      • 14.11 运算符
      • 14.12 条件判断
      • 14.13 流程控制
        • 14.13.1 if判断
        • 14.13.2 case分支
        • 14.13.3 for 循环
        • 14.13.4 while 循环
      • 14.14 读取控制台输入
      • 14.15 函数
        • 14.15.1 系统函数
        • 14.15.2 自定义函数
      • 14.16 实战练习
      • 14.17 综合案例
        • 14.17.1 归档文件
    • 15 任务调度
    • 16 rpm和yum
    • 17 搭建javaee运行环境
        • 14.13.4 while 循环
      • 14.14 读取控制台输入
      • 14.15 函数
        • 14.15.1 系统函数
        • 14.15.2 自定义函数
      • 14.16 实战练习
      • 14.17 综合案例
        • 14.17.1 归档文件
    • 15 任务调度
    • 16 rpm和yum
    • 17 搭建javaee运行环境

1 前言

1.1 课程介绍

img

1.3 应用领域

个人桌面领域

? 此领域是传统 linux 应用最薄弱的环节,传统 linux 由于界面简单、操作复杂、应用软件少的缺点,一直被 windows 所压制,但近些年来随着 ubuntu、fedora、Debian、Manjaro等优秀桌面环境的兴起,同时各大硬件厂商对其支持的加大,linux 在个人桌面领域的占有率在逐渐的提高。

服务器领域

? linux 在服务器领域的应用是最强的。

? linux 免费、稳定、高效等特点在这里得到了很好的体现,近些年来 linux 服务器市场得到了飞速的提升,尤其在一些高端领域尤为广泛。

嵌入式领域

? 近些年来 linux 在嵌入式领域的应用得到了飞速的提高

? linux 运行稳定、对网络的良好支持性、低成本,且可以根据需要进行软件裁剪,内核最小可以达到几百 KB 等特点,使其近些年来在嵌入式领域的应用得到非常大的提高

? 主要应用:机顶盒、数字电视、网络电话、程控交换机、手机、PDA、智能家居、智能硬件等都是其应用领域。以后再物联网中应用会更加广泛

1.4 学习阶段

  1. linux 环境下的基本操作命令,包括 文件操作命令(rm mkdir chmod, chown) 编辑工具使用(vi vim)linux 用户管理(useradd userdel usermod)等
  2. linux 的各种配置(环境变量配置,网络配置,服务配置)
  3. linux 下如何搭建对应语言的运行环境(大数据,JavaEE, Python 等)
  4. 能编写 shell 脚本,对 Linux 服务器进行维护。
  5. 能进行安全设置,防止攻击,保障服务器正常运行,能对系统调优。
  6. 深入理解 Linux 系统(对内核有研究),熟练掌握大型网站应用架构组成、并熟悉各个环节的部署和维护方法。

1.5 学习建议

  1. 高效而愉快的学习
  2. 先建立一个整体框架,然后细节
  3. 不需要掌握所有的 Linux 指令,要学会查询手册和百度
  4. 先 know how ,再 know why
  5. 计算机是一门”做中学”的学科,不是会了再做,而是做了才会.
  6. 适当的囫囵吞枣
  7. Linux 不是编程,重点是实际操作,各种常用指令要玩的溜

2 linux入门

2.1 linux简介

  1. Linux 内核最初只是由芬兰人林纳斯·托瓦兹(Linus Torvalds)在赫尔辛基大学上学时出于个人爱好而编写的。
  2. Linux 是一套免费使用和自由传播的类 Unix 操作系统,是一个基于 POSIX 和 UNIX 的多用户、多任务、支持多线程和多 CPU 的操作系统。
  3. Linux 能运行主要的 UNIX 工具软件、应用程序和网络协议。它支持 32 位和 64 位硬件。Linux 继承了 Unix 以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。
  4. Linux 是一款操作系统,免费,开源, 安全,高效,稳定, 处理高并发非常强悍,现在很多的企业级的项目都部署到 Linux/unix 服务器运行。

其内核于1991年10月5日首次发布

img

这些发行版的关系如下图

img

2.4 linux怎么来的

? 20世纪80年代,计算机硬件的性能不断提高,PC的市场不断扩大,当时可供计算机选用的操作系统主要有Unix、DOS和iOS这几种。

  1. Unix价格昂贵,不能运行于PC;
  2. DOS显得简陋,且源代码被软件厂商严格保密;
  3. MacOS是一种专门用于苹果计算机的操作系统。

? 此时,计算机科学领域迫切需要一个更加完善、强大、廉价和完全开放的操作系统。由于供教学使用的典型操作系统很少,因此当时在荷兰当教授的美国人AndrewS.Tanenbaum编写了一个操作系统,名为MINIX,为了向学生讲述操作系统内部工作原理。

? MINIX虽然很好,但只是一个用于教学目的的简单操作系统,而不是一个强有力的实用操作系统,然而最大的好处就是公开源代码。

? 全世界学计算机的学生都通过钻研MINIX源代码来了解电脑里运行的MINIX操作系统,芬兰赫尔辛基大学大学二年级的学生Linus Torvalds就是其中一个,在吸收了MINIX精华的基础上,Linus于1991年写出了属于自己的Linux操作系统,版本为Linux0.01,是Linux时代开始的标志。他利用Unix的核心,去除繁杂的核心程序,改写成适用于一般计算机的x86系统,并放在网络上供大家下载,1994年推出完整的核心Version1.0,至此,Linux逐渐成为功能完善、稳定的操作系统,并被广泛使用。

img

4.2 详细介绍

bin 是 Binaries (二进制文件) 的缩写, 这个目录存放着最经常使用的命令。

这里存放的是启动 Linux 时使用的一些核心文件,包括一些连接文件以及镜像文件。

? dev 是 Device(设备) 的缩写, 该目录下存放的是 Linux 的外部设备,在 Linux 中访问设备的方式和访问文件的方式是相同的。

etc 是 Etcetera(等等) 的缩写,这个目录用来存放所有的系统管理所需要的配置文件和子目录。

? 用户的主目录,在 Linux 中,每个用户都有一个自己的目录,一般该目录名是以用户的账号命名的,如上图中的 alice、bob 和 eve。

? lib 是 Library(库) 的缩写这个目录里存放着系统最基本的动态连接共享库,其作用类似于 Windows 里的 DLL 文件。几乎所有的应用程序都需要用到这些共享库。

这个目录一般情况下是空的,当系统非法关机后,这里就存放了一些文件。

linux 系统会自动识别一些设备,例如U盘、光驱等等,当识别后,Linux 会把识别的设备挂载到这个目录下。

? 系统提供该目录是为了让用户临时挂载别的文件系统的,我们可以将光驱挂载在 /mnt/ 上,然后进入该目录就可以查看光驱里的内容了。

? opt 是 optional(可选) 的缩写,这是给主机额外安装软件所摆放的目录。比如你安装一个ORACLE数据库则就可以放到这个目录下。默认是空的。

? proc 是 Processes(进程) 的缩写,/proc 是一种伪文件系统(也即虚拟文件系统),存储的是当前内核运行状态的一系列特殊文件,这个目录是一个虚拟的目录,它是系统内存的映射,我们可以通过直接访问这个目录来获取系统信息。

这个目录的内容不在硬盘上而是在内存里,我们也可以直接修改里面的某些文件,比如可以通过下面的命令来屏蔽主机的ping命令,使别人无法ping你的机器:

echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all

该目录为系统管理员,也称作超级权限者的用户主目录。

? s 就是 Super User 的意思,是 Superuser Binaries (超级用户的二进制文件) 的缩写,这里存放的是系统管理员使用的系统管理程序。

? 这个目录是 Redhat/CentOS 所特有的目录,selinux 是一个安全机制,类似于 windows 的防火墙,但是这套机制比较复杂,这个目录就是存放selinux相关的文件的。

该目录存放一些服务启动之后需要提取的数据。

? 这是 Linux2.6 内核的一个很大的变化。该目录下安装了 2.6 内核中新出现的一个文件系统 sysfs 。

sysfs 文件系统集成了下面3种文件系统的信息:针对进程信息的 proc 文件系统、针对设备的 devfs 文件系统以及针对伪终端的 devpts 文件系统。

? 该文件系统是内核设备树的一个直观反映。

? 当一个内核对象被创建的时候,对应的文件和目录也在内核对象子系统中被创建。

tmp 是 temporary(临时) 的缩写这个目录是用来存放一些临时文件的。

? usr 是 unix shared resources(共享资源) 的缩写,这是一个非常重要的目录,用户的很多应用程序和文件都放在这个目录下,类似于 windows 下的 program files 目录。

系统用户使用的应用程序。

超级用户使用的比较高级的管理程序和系统守护程序。

内核源代码默认的放置目录。

var 是 variable(变量) 的缩写,这个目录中存放着在不断扩充着的东西,我们习惯将那些经常被修改的目录放在这个目录下。包括各种日志文件。

是一个临时文件系统,存储系统启动以来的信息。当系统重启时,这个目录下的文件应该被删掉或清除。如果你的系统上有 /var/run 目录,应该让它指向 run。

? 上边也提到了,这个是系统中的配置文件,如果你更改了该目录下的某个文件可能会导致系统不能启动。

/bin, /sbin, /usr/bin, /usr/sbin: 这是系统预设的执行文件的放置目录,比如 ls 就是在 /bin/ls 目录下的。

? 值得提出的是 /bin、/usr/bin 是给系统用户使用的指令(除 root 外的通用用户),而/sbin, /usr/sbin 则是给 root 使用的指令。

? 这是一个非常重要的目录,系统上跑了很多程序,那么每个程序都会有相应的日志产生,而这些日志就被记录到这个目录下,具体在 /var/log 目录下,另外 mail 的预设放置也是在这里。

5 远程登录linux

5.1 为什么要远程登录

说明: 公司开发时候, 具体的情况是这样的

  1. linux 服务器是开发小组共享的.

  2. 正式上线的项目是运行在公网的.

  3. 因此程序员需要远程登录到 centos 进行项目管理或者开发.

  4. 画出简单的网络拓扑示意图(帮助理解)

  5. 远程登录客户端有 Xshell, Xftp , 我们学习使用 Xshell 和 Xftp , 其它的远程工具大同小异

5.2 安装和使用xshell

? Xshell 是目前最好的远程登录到 Linux 操作的软件,流畅的速度并且完美解决了中文乱码的问题, 是目前程序员首选的软件。

? Xshell [1] 是一个强大的安全终端模拟软件,它支持 SSH1, SSH2, 以及 Microsoft Windows 平台的 TELNET 协议。

? Xshell 可以在 Windows 界面下用来访问远端不同系统下的服务器,从而比较好的达到远程控制终端的目的。

特别说明:如果希望安装好 XShell 就可以远程访问 Linux 系统的话,需要有一个前提,就是Linux 启用了 SSHD 服务,该服务会监听 22 号端

5.3 安装和使用xftp

? Xftp是一个功能强大的SFTP、FTP 文件传输软件。使用了 Xftp 以后,MS Windows 用户能安全地在 UNIX/Linux 和 Windows PC 之间传输文件。Xftp 能同时适应初级用户和高级用户的需要。它采用了标准的 Windows 风格的向导,它简单的界面能与其他 Windows 应用程序紧密地协同工作,此外它还为高级用户提供了众多强劲的功能特性。

5.4 开通sshd服务

监听22端口

5.5 乱码问题

6 关机、重启、登录与注销

6.1 关机与重启

来源:不易撞的网名
                                                        

声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2022年4月21日
下一篇 2022年4月21日

相关推荐