Linux系列笔记
Linux(一)Linux入门及相关软件安装配置.
Linux(二)实用指令.
Linux(三)Linux(权限、任务调度、分区、网络配置、进程管理).
文章目录
第一章.Linux入门
1.1.Linux介绍
1.2.Linux和Windows的区别
1.3.Linux和Windows的区别
- UNIX是历史最悠久的通用操作系统。1969年,美国贝尔实验室的K.Thompson和D.M.Ritchie在规模较小及较简单的分时操作系统 MULTICS的基础上开发出UNIX, 当时是在DEC的PDP—7小型计算机上实现的,1970年正式投入运行。此后数年,UNIX一直是一个限于在AT&T内部使用的操作系统。 1971年,发展出以 PDP-11/20汇编语言所写成的V1版,包括最基本的文件系统和一些简单的软件,之后,又经历了一些改进。
- 而Linux是一套免费使用和自由传播的类Unix操作系统,它主要用于基于Intel x86系列CPU的计算机上。这个系统是由全世界各地的成千上万的程序员设计和实现的。其目的是建立不受任何商品化软件的版权制约的、全世界都能自由使用的Unix兼容产品。 首先二者都是操作系统。
- linux是借鉴 unix的优点或说是核心程序等开发的更贴近现在需要的操作系统。
- unix 是针对服务器的,linux 除了针对服务器,也更侧重了大众使用的操作系统
- Unix的成本高、要求电脑性能高
第二章.VM和Linux的安装
2.1.安装vm和Centos
2.1.1.基本说明
- 学习Linux需要一个环境,我们需要创建一个虚拟机,然后在虚拟机上安装一个Centos系统来学习
1.先安装virtual machine
2.再安装Linux (CentOS )
3.3)原理示意图
2.1.2.CentOS安装的步骤
- 安装VMWare
- CentOS安装
- 如图,开机时检查BIOS虚拟化支持
- 创建及配置虚拟机
2.1.3.CentOS安装技术难点-网络配置三种方式理解
- 桥接模式
- 好处是大家都在同一个网段,互相可以通讯
- 缺点是因为IP地址有限,可能造成IP冲突
- NAT模式(网络地址转换模式)
- 会产生两个IP地址,一个是windows 会产生一个新IP,虚拟机也会有一个IP,这两个IP构成一个独立的网络
- 好处是虚拟机不占用其他的IP,所以不会IP冲突
- 缺点是内网的其他人不能和虚拟机通讯
- 主机模式:单独的一台电脑
2.2.Centos终端的使用和联网
2.2.1.centos终端的使用
2.2.2在centos的ff可以联网,可以和外部的ip联通
第三章.linux 的目录结构
3.1.Linux目录结构
3.1.1基本的介绍
- linux的文件系统是采用级层式的树状目录结构,在此结构中的最上层是根目录“/”,然后在此目录下再创建其他的目录。
- 深刻理解linux树状文件目录是非常重要的,这里我给大家说明一下。
- 记住一句经典的话:。在Linux世界里,一切皆文件(即使是一个硬件设备,也是使用文本来标志)
3.2.linux目录机构的一览图
- 具体说明
目录结构 | 作用 |
---|---|
bin [重点] | 是Binary的缩写, 这个目录存放着最经常使用的命令 |
/sbin | s就是Super User的意思,这里存放的是系统管理员使用的系统管理程序 |
/home [重点] | 存放普通用户的主目录,在Linux中每个用户都有一个自己的目录,一般该目录名是以用户的账号命名的 |
/root [重点] | 该目录为系统管理员,也称作超级权限者的用户主目录 |
/lib | 系统开机所需要最基本的动态连接共享库,其作用类似于Windows里的DLL文件。几乎所有的应用程序都需要用到这些共享库 |
/lost+found | 这个目录一般情况下是空的,当系统非法关机后,这里就存放了一些文件 |
/etc [重点] | 所有的系统管理所需要的配置文件和子目录 my.conf |
/usr [重点] | 这是一个非常重要的目录,用户的很多应用程序和文件都放在这个目录下,类似与windows下的program files目录 |
/boot [重点] | 存放的是启动Linux时使用的一些核心文件,包括一些连接文件以及镜像文件 |
/proc | 这个目录是一个虚拟的目录,它是系统内存的映射,访问这个目录来获取系统信息 |
/srv | service缩写,该目录存放一些服务启动之后需要提取的数据 |
/sys | 这是linux2.6内核的一个很大的变化。该目录下安装了2.6内核中新出现的一个文件系统 sysfs |
/tmp | 这个目录是用来存放一些临时文件的 |
/dev | 类似于windows的设备管理器,把所有的硬件用文件的形式存储 |
/media [重点] | linux系统会自动识别一些设备,例如U盘、光驱等等,当识别后,linux会把识别的设备挂载到这个目录下 |
/mnt [重点] | 系统提供该目录是为了让用户临时挂载别的文件系统的,我们可以将外部的存储挂载在/mnt/上,然后进入该目录就可以查看里的内容了。 |
/opt | 这是给主机额外安装软件所摆放的目录。如安装ORACLE数据库就可放到该目录下。默认为空 |
/usr/local [重点] | 这是另一个给主机额外安装软件所安装的目录。一般是通过编译源码方式安装的程序 |
/var [重点] | 这个目录中存放着在不断扩充着的东西,习惯将经常被修改的目录放在这个目录下。包括各种日志文件 |
/selinux | SELinux是一种安全子系统,它能控制程序只能访问特定文件 |
3.3.对linux目录结构的小结
- 在linux中,目录结构 有一个 根目录 / ,其他的目录都是在 / 目录分支
- 2)在linux中,有很多目录,是安装后,每个目录都会存放相应的内容,不要去修改.
- 3)在linux中,所有的设备都可以通过文件来体现(字符设备文件[比如键盘,鼠标],块设备文件[硬盘])
- 在学习linux时,要尽快的在脑海中,形成一个 目录树
第四章.远程登录到Linux服务器
4.1为什么需要远程登录linux
- 说明: 公司开发时候, 具体的情况是这样的
- linux服务器是开发小组共享的.
- 正式上线的项目是运行在公网的.
- 因此程序员需要远程登录到centos进行项目管理或者开发.
- 画出简单的网络拓扑示意图(帮助理解)
4.2远程登录Linux-Xshell5
4.2.1介绍:
- 说明: Xshell 是目前最好的远程登录到Linux操作的软件,流畅的速度并且完美解决了中文乱码的问题, 是目前程序员首选的软件。
- Xshell 是一个强大的安全终端模拟软件,它支持SSH1, SSH2, 以及Microsoft Windows 平台的TELNET 协议。
- Xshell可以在Windows界面下用来访问远端不同系统下的服务器,从而比较好的达到远程控制终端的目的
- 特别说明,如果希望安装好XShell就可以远程访问Linux系统的话,需要一个前提,就是Linux启用了SSHD服务(使用setup指令),该服务会监听22号端口
4.2.2安装配置和使用
- 首先安装是傻瓜式安装,基本一路下一步
- 接下来连接配置:
- 新建会话
- 远程登录过后控制界面:
4.3远程上传下载文件Xftp5
4.3.1基本的介绍
- 是一个基于 windows 平台的功能强大的SFTP、FTP 文件传输软件。使用了 Xftp 以后,windows 用户能安全地在 UNIX/Linux 和 Windows PC 之间传输文件
4.3.2安装、配置和使用
- 首先安装是一直下一步
- 对于配置和使用
- 连接到Linux的界面如下:
- 如何解决XFTP5DE中文乱码的问题
- 改完后刷新就好了
4.4SecureCRT的安装和使用
4.4.1基本的介绍
- 是用于远程登录Linux的软件。SecureCRT 也是一款常用的远程登录Linux的软件,在大数据开发中使用较多
4.4.2使用
安装好后,进行使用连接
配置好后,点击连接,输入密码即可,发现有中文乱码
解决办法:
最后界面:
第 5 章Vi和Vim编辑器
5.1.vi和vim的基本介绍
- 所有的 Linux 系统都会内建 vi 文本编辑器
- Vim 具有程序编辑的能力,可以看做是Vi的增强版本,可以主动的以字体颜色辨别语法的正确性,方便程序设计。代码补完、编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用
5.2vi 和 vim的三种常见模式
- 正常模式
- 以 vim 打开一个文件就直接进入一般模式了(这是默认的模式)。在这个模式中, 你可以使用『上下左右』按键来移动光标,你可以使用『删除字符』或『删除整行』来处理档案内容, 也可以使用『复制、贴上』来处理你的文件数据。在正常模式下可以使用快捷键
- 插入模式(编辑模式)
- 在此模式下,程序员可以输入内容,按下i(insert), I, o, O, a, A, r, R等任何一个字母之后才会进入编辑模式, 一般来说按i即可.
- 命令行模式
- 在这个模式当中, 可以提供你相关指令,完成读取、存盘、替换、离开 vim 、显示行号等的动作则是在此模式中达成的!
- :w 保存文件但不退出vi
:w file 将修改另外保存到file中,不退出vi
:w! 强制保存,不推出vi
:wq 保存文件并退出vi
:wq! 强制保存文件,并退出vi
q: 不保存文件,退出vi
:q! 不保存文件,强制退出vi
:e! 放弃所有修改,从上次保存文件开始再编辑
5.3vi 和 vim的快速入门小案例
- 使用 vim 开发一个 Hello.java 程序, 保存.步骤说明和演示
- 输入vim Hello.java开始,刚进入是正常模式,输入i切换为编辑模式
编辑:
写完之后,用Esc,之后输入“:wq”,代表写入退出
5.4vi 和 vim 三种模式的切换
5.5vim和vi的快捷键的使用
-
1)拷贝当前行 yy , 拷贝当前行向下的5行 5yy,并粘贴 p。【快捷键在正常模式下使用】
-
2)删除当前行 dd , 删除当前行向下的5行 5dd
-
3)在文件中查找某个单词 [命令模式下 /关键字 , 回车 查找 , 输入 n 就是查找下一个 ]
-
4)设置文件的行号,取消文件的行号.[命令行下 : set nu 和 :set nonu]
-
5)编辑 /etc/profile 文件,使用快捷键到底文档的最末行[G]和最首行[gg] 【正常模式下】
-
6)在一个文件中输入 “hello” ,然后又撤销这个动作 u 【正常模式下】
-
7)编辑 /etc/profile 文件,并将光标移动到 20行 shift+g
- 第一步:显示行号:set nu(命令行模式)
- 第二步:输入20这个数(正常模式)
- 第三步:输入shift+g(正常模式)
第六章开机、重启和用户登录注销
6.1关机&重启命令
6.1.1基本介绍
- shutdown -h now :[立刻关机]
- shutdown -h 1 :“1分钟,关机.” [1分钟后,关机]
- shutdown -r now : [立刻重启]
- shutdown -r 2 :“2分钟后,重启”
- halt :【立刻关机】
- reboot :【立刻重启】
- 在重启和关机前,通常需要先执行:
- sync [把内存的数据,写入磁盘]
6.1.2注意细节:
- 不管是重启系统还是关闭系统,首先要运行sync命令,把内存中的数据写到磁盘中,防止数据丢失。
6.2用户的登录和注销
6.2.1基本介绍:
- 1)登录时尽量少用root帐号登录,因为它是系统管理员,最大的权限,避免操作失误。可以利用普通用户登录,登录后再用”su - 用户名’命令来切换成系统管理员身份.
- 2)在提示符下输入 logout 即可注销用户【不同的shell 可能不同(logout exit)】
6.2.2使用细节:
- logout 注销指令在图形运行级别(简单提一下:0-6个级别)无效,在 运行级别 3下有效.
第 7 章用户管理
7.1对linux用户的示意图
7.2基本介绍
- Linux系统是一个多用户多任务的操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这个账号的身份进入系统。
- Linux的用户需要至少要属于一个组
7.3添加用户
7.3.1基本语法
- useradd 用户名
- 举例说明:添加用户张三
- 特别说明:cd指令表示切换目录
7.3.2细节说明
1)当创建用户成功后,会自动的创建和用户同名的家目录 【/home/zhangsan】
2)也可以通过 useradd -d 指定目录 新的用户名jack,给新创建的用户指定家目录
7.4指定/修改密码
passwd 用户名 // 如果没有带用户名,则是给当前登录的用户修改密码
7.4.2应用案例
1)给xiaoming 指定密码
passwd xiaoming // 需要root用户
注:在设置新密码时,看不到
7.5删除用户
userdel 用户名 //用root用户删除
- 举例:
- 1删除用户xiaoming,但是要保留家目录 userdel 用户名 //userdel xiaoming
- 2删除用户以及用户主目录 // userdel –r xiaoming 【小心使用】
注:一般我们在删除用户的时候,要保留家目录
- 1删除用户xiaoming,但是要保留家目录 userdel 用户名 //userdel xiaoming
7.6查询用户信息指令
id 用户名
案例1:请查询root 信息
注:当用户不存在时,返回无此用户
7.7切换用户
- 在操作Linux中,如果当前用户的权限不够,可以通过 su - 指令,切换到高权限用户,比如root
- su – 切换用户名
- 应用实例:创建一个用户milan, ,指定密码,然后切换到 milan
注: - 1)从权限高的用户切换到权限低的用户,不需要输入密码,反之需要。
- 2)当需要返回到原来用户时,使用exit指令
- 3)如果 su – 没有带用户名,则默认切换到root用户
可以用指令“whoami”来查用户名
7.8用户组
7.8.1介绍
- 类似于角色,系统可以对有共性的多个用户进行统一的管理
7.8.2新增组
指令:groupadd 组名
7.8.3案例演示 [增加 wudang ] 武当
7.8.4删除组
- 指令(基本语法)
groupdel 组名 - 案例演示
这里有一个前提,就是这个组没有用户,才能删除
7.8.5增加用户时直接加上组
- 指令(基本语法)
useradd –g 用户组 用户名 - 增加一个用户 zwj, 直接将他指定到 wudang
7.8.6修改用户的组
- 指令(基本语法)
usermod –g 新的组名 用户名 - 案例演示
创建一个shaolin组,让将zwj 用户修改到shaolin
7.9用户和组的相关文件
7.9.1 /etc/passwd 文件
- 用户(user)的配置文件,记录用户的各种信息
- 每行的含义:用户名:口令:用户标识号:组标识号:注释性描述:主目录:登录Shell
- 输入 vim /etc/passwd 打开此文件
7.9.2 /etc/shadow 文件
- 口令的配置文件
- 每行的含义:登录名:加密口令:最后一次修改时间:最小时间间隔:最大时间间隔:警告时间:不活动时间:失效时间:保留
- 输入 vim /etc/shadow 打开此文件
7.9.3/etc/group 文件
- 组(group)的配置文件,记录Linux包含的组的信息
- 每行含义:组名:口令:组标识号:组内用户列表