Linux学习笔记

本文是一份详尽的Linux学习笔记,涵盖了从基础操作到高级应用的全方位内容,包括Linux开山篇、基础篇、实操篇、JavaEE定制篇和大数据定制篇。内容包括Linux的安装、使用、用户管理、文件系统、网络配置、远程登录、shell脚本、数据库安装配置、JDK、Tomcat、Eclipse的安装和配置等,旨在帮助读者逐步成为一名熟练的Linux系统管理员和开发者。
摘要由CSDN通过智能技术生成
     
  Linux开山篇  
01_内容介绍 02_学习方向 03_应用领域
04_学习阶段和方法分享    
  Linux基础篇  
05_Linux介绍 06_Linux和Unix的关系 07_Linux和Windows的比较
08_VMWare的安装和说明 09_CentOS的安装和说明 10_终端使用和联网
11_vmtools的安装和使用 12_文件系统目录结构  
  Linux实操篇  
13_远程登录XShell5 14_远程上传下载文件XFTP5 15_vi和vim的使用
16_关机重启登陆注销 17_用户管理 创建用户指定密码 18_用户管理 删除用户
19_用户管理 查询切换用户 20_用户管理 组的管理 21_用户管理 用户和组的配置文件
22_实用指令 运行级别和找回root密码 23_实用指令 帮助指令 24_实用指令 pwd ls cd
25_实用指令 mkdir rmdir 26_实用指令 touch cp 27_实用指令 rm mv
28_实用指令 cat more less 29_实用指令 >重定向 和 >>追加 30_实用指令 echo head tail
31_实用指令 ln history 32_实用指令 date cal 33_实用指令 find locate grep 管道符
34_实用指令 压缩和解压类指令 35_组管理 36_权限详细介绍
37_权限管理 38_权限最佳实践 39_任务调度基本说明
40_任务调度应用实例 41_磁盘分区介绍 42_Linux分区
43_给Linux添加一块新硬盘 44_磁盘查询实用指令 45_网络配置原理和说明
46_自动获取IP 47_修改配置文件指定IP 48_进程管理 进程介绍和查询
49_进程管理 终止进程 50_进程管理 服务管理 51_进程管理 监控服务
52_RPM包管理 53_YUM  
  JavaEE定制篇  
54_JDK安装和配置 55_Tomcat安装和配置 56_Eclipse安装和配置
57_MySQL安装和配置    
  大数据定制篇  
58_Shell快速入门 59_Shell变量 60_Shell环境变量
61_Shell位置参数变量 62_Shell预定义变量 63_Shell运算符
64_Shell判断语句 65_Shell流程控制if 66_Shell流程控制case
67_Shell流程控制for 68_Shell流程控制while 69_Shell读取控制台输入
70_Shell系统函数简介 71_Shell自定义函数 72_Shell定时维护数据库
  Python定制篇  
73_Ubuntu安装和配置 74_Ubuntu的root用户设置 75_Ubuntu下开发Python
76_apt软件包管理 77_ssh远程登录Ubuntu  

Linux开山篇

01_内容介绍

教程视频

  • 基础篇

    • Linux入门
    • vm和Linux的安装
    • Linux目录结构
  • 实操篇

    • 远程登录(xShell XFtp)
    • 实用指令
    • 进程管理
    • vi和vim编辑器
    • 定时任务调度
    • RPM和YUM
    • 开机、重启
    • 用户登录注销
    • 磁盘分区、挂载
    • 用户管理
    • 网络配器
  • Linux之JavaEE定制篇

    • Linux搭建JavaEE环境
      1. JDK安装
      2. Eclipse的安装
      3. Tomcat的安装
      4. MySQL的安装
  • Linux之大数据定制篇

    • Shell编程
      1. 概述
      2. Shell脚本执行方式
      3. Shell变量
      4. 运算符
      5. 条件判断
      6. 流程控制
      7. 函数
      8. 定时维护MySQL数据库
  • Linux之Python定制篇

    • Python专业开发平台-Ubuntu
    • Ubuntu下开发Python开发环境
    • APT软件管理和远程登录

02_学习方向

  • Linux运维工程师
  • Linux嵌入式工程师
  • Linux下做各种程序开发

03_应用领域

个人桌面应用领域

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

服务器应用领域

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

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

嵌入式应用领域

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

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

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

04_学习阶段和方法分享

学习Linux的阶段

linux 是一个开源、免费的操作系统,其稳定性、安全性、处理多并发已经得到业界的认可,目前很多中型,大型甚至是集群项目都在使用 Linux,很多软件公司考虑到开发成本都首选Linux,在中国软件公司得到广泛的使用。

可供参考学习Linux流程如下:

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

Linux的学习方法和建议

  1. 高效而愉快的学习。

  2. 先建立一个整体框架,然后细节。

  3. 不需要掌握所有的Linux指令,要学会查询手册和百度。

  4. 先 know how,再 know why。

  5. 计算机是一门“做中学”的学科,不是会了再做,而是做了才会。

  6. 适当的囫囵吞枣。

  7. Linux不是编程,重点是实际操作,各种常用指令要玩的溜。

Linux基础篇

05_Linux介绍

  • Linux怎么读?里纽克斯,利尼克斯,里纳克斯。
  • Linux 是一款操作系统,免费,开源, 安全,高效,稳定, 处理高并发非常强悍,现在很多的企业级的项目都部署到 Linux/Unix 服务器运行。
  • Linux创始人Linus Torvalds。
  • Linux 的吉祥物:一只名叫Tux的企鹅。
  • Linux发行版:
    • RedHat
    • CentOS
    • Ubuntu
    • Suse
    • 红旗Linux

06_Linux和Unix的关系

07_Linux和Windows的比较

比较 Windows Linux
免费与收费 收费且很贵 Linux 免费或少许费用
软件与支持 数望和质里的优势,不过大部分为收费软件,由微软官方提供支持和服务 开源自由软件,用户可以修改定制和再发布,由于基本免费没有资金支持,部分软件质巢和体验欠缺主有全球所有的Linx开发者和自由软件社区提供支持
安全性 三天两头打补丁安装系统安全更新,还是会中病毒木马 要说Linux没有安全问题,那当然是不可能的,这―点仁者见仁智者见智,相对来说肯定比Windows平台要更加安全
使用习惯 普通用户基本都是纯图形界面下操作使用,依靠鼠标和键盘完成一切操作,用户上手容易入门简单 兼具图形界面操作和完全的命令行操作,可以只用键盘完成一切操作,新手A门较困雅,需要一些学习和指导,一旦熟练之后效军极高
可定制性 封闭的,系统可定制性很差 开源,可定制化非常强
应用场景 桌面操作系统主要使用的是Windows 支挥百度,谷歌,淘宝等应用软件和服务的,是后台成千上方的Linux服务器主机世界上大部分软件和服务都是运行在Linux之上的

08_VMWare的安装和说明

学习 Linux 需要一个环境,我们需要创建一个虚拟机,然后在虚拟机上安装一个 Centos 系统来学习。

  1. 先安装 virtual machine,VM12。

  2. 再安装 Linux (CentOS 6.8)。

  3. 原理示意图,这里我们画图说明一下 VM 和 CentOS 的关系:

VM安装过程略

09_CentOS的安装和说明

CentOS下载网址

按照VM导向安装即可

设置硬件,配置网络连接时,有三种方式:

  1. 桥连接,Linux可以和其它的系统通信。但是可能造成ip冲突
  2. NAT:用于共享主机的IP地址,Linux可以访问外网,不会造成ip冲突。
  3. 主机模式:你的linux是一个独立的主机,不能访问外网

如何将centos 语系设置成为中文

10_终端使用和联网

终端的使用:点击鼠标右键,即可选择打开终端。

配置网络:点击桌面右上角的画有两个显示器的图标,选择启用 eth0,即可成功连接到网络,就可以上网。

11_vmtools的安装和使用

vmtools安装后,可以让我们在windows下更好的管理vm虚拟机:

  1. 可以直接粘贴命令在windows和centos系统之间
  2. 可以设置windows和centos的共享文件夹

安装vmtools的步骤:

  1. 进入centos

  2. 点击vm菜单栏的“虚拟机”->install vmware tools

  3. centos会出现一个vm的安装包,将其复制到桌面

  4. 点击右键解压,得到一个安装文件(或命令行 tar -xzvf vm安装包名 来进行解压)

  5. 进入该vm解压的目录

  6. 安装./vmware-install.pl

  7. 全部使用默认设置即可

  8. 需要命令行reboot,重新启动即可生效

设置Windows和CentOS的共享文件夹

  1. 点击VM菜单栏“虚拟机”->“设置”->“选项”->“共享文件夹”-“总是启用”。
  2. 添加假设共享目录路径D:\Share。
  3. 在CentOS的/mnt/hgfs路径下,便可看到共享文件Share

在实际公司开发中,文件上传下载是需要使用远程方式完成的。稍后有介绍。

12_文件系统目录结构

Linux的文件系统是采用级层式的树状目录结构,在此结构中的最上层是根目录“/”,然后在此目录下再创建其他的目录。

深刻理解Linux树状文件目录是非常重要的。

记住一句经典的话:在Linux世界里,一切皆文件

具体的目录结构:

  • /bin[重点] (/usr/bin、/usr/local/bin)
    • 是Binary的缩写,这个目录存放着最经常使用的命令。
  • /sbin (/usr/sbin、/usr/local/sbin)
    • s就是Super User的意思,这里存放的是系统管理员使用的系统管理程序。
  • /home[重点]
    • 存放普通用户的主目录,在Linux中每个用户都有一个自己的目录,一般该目录名是以用户的账号命名的。
  • /root[重点]
    • 该目录为系统管理员,也称作超级权限者的用户主目录。
  • /boot[重点]
    • 存放的是启动Linux时使用的一些核心文件,包括一些连接文件以及镜像文件。
  • /proc
    • 这个目录是一个虚拟的目录,它是系统内存的映射,访问这个目录来获取系统信息。
  • /srv
    • service缩写,该目录存放一些服务启动之后需要提取的数据。
  • /sys
    • 这是linux2.6内核的一个很大的变化。该目录下安装了2.6内核中新出现的一个文件系
  • /tmp
    • 这个目录是用来存放一些临时文件的。

Linux实操篇

13_远程登录XShell5

  1. Linux服务器是开发小组共享的。
  2. 正式上线的项目是运行在公网的。
  3. 因此程序员需要远程登录到CentOS进行项目管理或者开发。
  4. 画出简单的网络拓扑示意图(帮助理解)。
  5. 远程登录客户端有XShell5、Xftp5,我们学习使用XShell5和Xftp,其它的远程工具大同小异。


Xshell是目前最好的远程登录到Linux操作的软件,流畅的速度并且完美解决了中文乱码的问题,是目前程序员首选的软件。Xshell是一个强大的安全终端模拟软件,它支持SSH1、SSH2,以及Microsoft Windows平台的TELNET协议。Xshell可以在Windows界面下用来访问远端不同系统下的服务器,从而比较好的达到远程控制终端的目的。

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

具体操作:

在Windows暗转XShell,根据安装向导步骤安装即可。

在Linux查看或开启SSHD:命令行setup->系统服务->SSHD,*号表示开启(空格键确定,TAB键改变焦点)。

在Linux用netstat -antp |grep sshd 看是否启动了22端口。

在Linux用ifconfig获取Linux IPv4地址。

用XShell新建会话:

确定后,输入Linux的用户名与密码,便后远程操控Linux:

14_远程上传下载文件XFTP5

是一个基于Windows平台的功能强大的SFTP、FTP文件传输软件。使用了Xftp以后,Windows用户能安全地在UNIX/Linux和Windows PC之间传输文件。

具体操作:

安装Xftp,跟随安装向导步骤即可。

新建会话属性:

如果出现文件或文件夹名中文乱码,可在选项中设置UTF8编码:

15_vi和vim的使用

本节来源

所有的 Linux 系统都会内建 vi 文本编辑器。

Vim 具有程序编辑的能力,可以看做是 Vi 的增强版本,可以主动的以字体颜色辨别语法的正确性,方便程序设计。代码补完、编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用。


vi/vim 的使用

基本上 vi/vim 共分为三种模式,分别是命令模式(Command mode)输入模式(Insert mode)底线命令模式(Last line mode)。 这三种模式的作用分别是:

命令模式(一般模式)

用户刚刚启动 vi/vim,便进入了命令模式。

此状态下敲击键盘动作会被Vim识别为命令,而非输入字符。比如我们此时按下i,并不会输入一个字符,i被当作了一个命令。

以下是常用的几个命令:

  • i 切换到输入模式,以输入字符。
  • x 删除当前光标所在处的字符。
  • : 切换到底线命令模式,以在最底一行输入命令。

若想要编辑文本:启动Vim,进入了命令模式,按下i,切换到输入模式。

命令模式只有一些最基本的命令,因此仍要依靠底线命令模式输入更多命令。

输入模式(编辑模式)

在命令模式下按下i就进入了输入模式。

在输入模式中,可以使用以下按键:

  • 字符按键以及Shift组合,输入字符
  • ENTER,回车键,换行
  • BACK SPACE,退格键,删除光标前一个字符
  • DEL,删除键,删除光标后一个字符
  • 方向键,在文本中移动光标
  • HOME/END,移动光标到行首/行尾
  • Page Up/Page Down,上/下翻页
  • Insert,切换光标为输入/替换模式,光标将变成竖线/下划线
  • ESC,退出输入模式,切换到命令模式
底线命令模式(指令行模式)

在命令模式下按下:(英文冒号)就进入了底线命令模式。

底线命令模式可以输入单个或多个字符的命令,可用的命令非常多。

在底线命令模式中,基本的命令有(已经省略了冒号):

  • q 退出程序
  • w 保存文件

按ESC键可随时退出底线命令模式。

简单的说,我们可以将这三个模式想成底下的图标来表示:

vi/vim 按键说明

第一部分:一般模式(命令模式)可用的光标移动、复制粘贴、搜索替换等
移动光标的方法
移动光标的方法 -
h 或 向左箭头键(←) 光标向左移动一个字符
j 或 向下箭头键(↓) 光标向下移动一个字符
k 或 向上箭头键(↑) 光标向上移动一个字符
l 或 向右箭头键(→) 光标向右移动一个字符
如果你将右手放在键盘上的话,你会发现 hjkl 是排列在一起的,因此可以使用这四个按钮来移动光标。 如果想要进行多次移动的话,例如向下移动 30 行,可以使用 “30j” 或 “30↓” 的组合按键, 亦即加上想要进行的次数(数字)后,按下动作即可!
[Ctrl] + [f] 屏幕『向下』移动一页,相当于 [Page Down]按键 (常用)
[Ctrl] + [b] 屏幕『向上』移动一页,相当于 [Page Up] 按键 (常用)
[Ctrl] + [d] 屏幕『向下』移动半页
[Ctrl] + [u] 屏幕『向上』移动半页
+ 光标移动到非空格符的下一行
- 光标移动到非空格符的上一行
n 那个 n 表示『数字』,例如 20 。按下数字后再按空格键,光标会向右移动这一行的 n 个字符。例如 20 则光标会向后面移动 20 个字符距离。
0 或功能键[Home] 这是数字『 0 』:移动到这一行的最前面字符处 (常用)
$ 或功能键[End] 移动到这一行的最后面字符处(常用)
H 光标移动到这个屏幕的最上方那一行的第一个字符
M 光标移动到这个屏幕的中央那一行的第一个字符
L 光标移动到这个屏幕的最下方那一行的第一个字符
G 移动到这个档案的最后一行(常用)
nG n 为数字。移动到这个档案的第 n 行。例如 20G 则会移动到这个档案的第 20 行(可配合 :set nu)
gg 移动到这个档案的第一行,相当于 1G 啊! (常用)
n n 为数字。光标向下移动 n 行(常用)
搜索替换
搜索替换
/word 向光标之下寻找一个名称为 word 的字符串。例如要在档案内搜寻 vbird 这个字符串,就输入 /vbird 即可! (常用)
?word 向光标之上寻找一个字符串名称为 word 的字符串。
n 这个 n 是英文按键。代表重复前一个搜寻的动作。举例来说, 如果刚刚我们执行 /vbird 去向下搜寻 vbird 这个字符串,则按下 n 后,会向下继续搜寻下一个名称为 vbird 的字符串。如果是执行 ?vbird 的话,那么按下 n 则会向上继续搜寻名称为 vbird 的字符串!
N 这个 N 是英文按键。与 n 刚好相反,为『反向』进行前一个搜寻动作。 例如 /vbird 后,按下 N 则表示『向上』搜寻 vbird 。
使用 /word 配合 n 及 N 是非常有帮助的!可以让你重复的找到一些你搜寻的关键词!
:n1,n2s/word1/word2/g n1 与 n2 为数字。在第 n1 与 n2 行之间寻找 word1 这个字符串,并将该字符串取代为 word2 !举例来说,在 100 到 200 行之间搜寻 vbird 并取代为 VBIRD 则: 『:100,200s/vbird/VBIRD/g』。(常用)
:1,$s/word1/word2/g:%s/word1/word2/g 从第一行到最后一行寻找 word1 字符串,并将该字符串取代为 word2 !(常用)
:1,$s/word1/word2/gc:%s/word1/word2/gc 从第一行到最后一行寻找 word1 字符串,并将该字符串取代为 word2 !且在取代前显示提示字符给用户确认 (confirm) 是否需要取代!(常用)
删除、复制与贴上
删除、复制与贴上
x, X 在一行字当中,x 为向后删除一个字符 (相当于 [del] 按键), X 为向前删除一个字符(相当于 [backspace] 亦即是退格键) (常用)
nx n 为数字,连续向后删除 n 个字符。举例来说,我要连续删除 10 个字符, 『10x』。
dd 删除游标所在的那一整行(常用)
ndd n 为数字。删除光标所在的向下 n 行,例如 20dd 则是删除 20 行 (常用)
d1G 删除光标所在到第一行的所有数据
dG 删除光标所在到最后一行的所有数据
d$ 删除游标所在处,到该行的最后一个字符
d0 那个是数字的 0 ,删除游标所在处,到该行的最前面一个字符
yy 复制游标所在的那一行(常用)
nyy n 为数字。复制光标所在的向下 n 行,例如 20yy 则是复制 20 行(常用)
y1G 复制游标所在行到第一行的所有数据
yG 复制游标所在行到最后一行的所有数据
y0 复制光标所在的那个字符到该行行首的所有数据
y$ 复制光标所在的那个字符到该行
  • 39
    点赞
  • 189
    收藏
    觉得还不错? 一键收藏
  • 16
    评论
Linux学习笔记是关于学习Linux操作系统的记录和总结。在学习Linux时,你可能会遇到以下几个方面的内容。 首先,Linux是一个面向网络服务的操作系统,因此你可以随意更换桌面系统。Linux有多种不同的桌面系统供你选择。这意味着你可以根据自己的喜好和需求,选择适合自己的桌面环境。 其次,在Ubuntu中,root用户默认是被锁定的,因此你无法直接使用root权限进行操作。但是,你可以使用sudo命令来提升权限,以执行需要root权限的操作。通过sudo命令,普通用户可以在需要时暂时获得root权限,以便进行需要的操作。 此外,如果你需要修改内核为bash,可以使用vim编辑器打开/etc/passwd文件进行修改。在Linux系统中,vim是一种常用的文本编辑器,类似于Windows的记事本。通过编辑/etc/passwd文件,你可以修改用户的登录shell为bash。 总结起来,Linux学习笔记记录了学习Linux操作系统的过程和经验,包括选择适合自己的桌面环境、使用sudo提升权限以及通过vim编辑器修改/etc/passwd文件等。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [Linux学习笔记](https://blog.csdn.net/m0_65379736/article/details/125700177)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]
评论 16
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值