Liunx学习笔记

前言:


一:了解Linux

1.1 Linux 的应用领域

Linux在桌面应用领域相对薄弱,但在服务器领域的应用有着[免费、稳定、高效]等特点。对于嵌入式应用领域也在快速提高,Linux运行稳定、对网络的良好支持性、低成本,且可以根据需求进行软件裁剪,内核最小可以达到几百KB。


1.2Linux的介绍

  1. Linux创始人-Linus 林纳斯

  2. Linux的主要发行版本:
    在这里插入图片描述

  3. Unix和Linux的关系:
    Unix是KenTompsonDennisRichres在贝尔实验室中开发,然后被IBM、Sun、Hp公司在Unix的基础上发行了AIX、Solaris、HpUX发行版本,但这个发行版本使用需要高昂的费用,RichardStallman提出在自由的时代用于应该免费享有对软件源代码的阅读、修改的权利,软件公司可以靠提供服务和训练获得盈利。所以提出了GNU计划:Linux是GNU计划的其中之一。
    在这里插入图片描述
    在这里插入图片描述


1.3Linux和Windows比较

比较 Windows Linux
免费与收费 收费且很贵 Liunx免费或少许费用
安全性 三天两头打补丁安装系统安全更新,还是会中病毒木马 要说Liunx没有安全问题,那当然是不可能的,这一点仁者见仁智者见智,相对来说肯定比Windows平台更加安全
使用习惯 普通用户基本都是纯图形界面下操作使用,依靠鼠标和键盘完成一切操作,用户上升容易入门简单 兼具图形界面操作和完全的命令行操作,可以只用键盘完成一切操作,新手入门比较困难,需要一些学习和指导,一旦熟练之后效率极高
可定制性 封闭的,系统可定制性很差 开源,可定制性非常强
应用场景 桌面操作系统主要使用的是windows 支撑百度,谷歌,淘宝等应用软件和服务的,是后台成千上万的Liunx服务器主机。世界上大部分软件和服务都是运行在Liunx之上的

二:安装Vmtools

2.1介绍vmtools

  1. 可以直接复制命令在windows和centOS系统之间

  2. 可以设置windows和centOS的共享文件夹

示意图:
在这里插入图片描述

2.2安装vmtools的步骤:

  1. 进入centOS

  2. 点击vm菜单的->install vmware tools

  3. centos会出现一个vm的安装包

  4. 点击右键解压,得到一个安装文件

  5. 进入该vm解压的目录,该文件在 /root/桌面/vmware-tools-distrib/下

  6. 安装./vmware-install.pl

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

  8. 需要reboot重新启动即可使用


2.3:使用vmtools来设置windows和linux的共享文件夹

  1. 菜单->vm->setting,注意:设置选项为:always enable,这样就可以读写

  2. windows和centos可共享d:/share目录

  3. 在centos的/mnt/hgfs/ 下


三:入门Linux

3.1:Linux的基本介绍:

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

切记:在Linux世界里,一切皆文件
在这里插入图片描述


3.2[重要]目录结构的具体介绍

/bin (/usr/bin、/user/local/bin)

  • 是Binary的缩写,这个目录存放着最常用命令

/home

  • 存放普通用户的主目录,在Linux中每个用户都有一个自己的目录,一般该目录是以用户的账号命名

/root

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

/boot

  • 存放的是启动Linux时使用的一些核心文件,包括一些文件以及镜像文件

/media

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

/mnt

  • 系统提供该目录是为了让用户临时挂载别的文件系统的,我们可以将外部的存储挂载在/mnt/上,然后进入该目录就可以查看里面的内容了。d:/myshare

/usr/local

  • 这是另一个给主机额外安装软件所安装的目录。一般是通过编译源码方式安装的程序

/var

  • 这个目录中存放着在不断扩充着的东西,习惯将经常被修改的目录放在这个目录下。包括各种日志文件

3.3Linux目录总结

1:Linux的目录中有且只有一个根目录 /

2:Linux的各个目录存放的内容是规划好的,不用乱放文件

3:Linux是以文件的形式管理我们的设备,因此Linux系统,一切皆为文件


四:远程登录Linux系统

4.1:为什么需要远程登录Linux

在公司开发的时候:

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

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

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


4.2:使用XShell进行远程登录

Xshell只是众多远程登录Linux的软件之一,那么为什么选择XShell:

  1. 流畅且完美解决中文乱码

  2. 强大的安全终端模拟软件,它支持SSH1,SSH2,以及Microsoft Windows平台的TELNET协议[*Secure Shell(安全外壳协议,简称SSH)*是一种网络协议]

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

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


4.3:XFtp远程上传下载文件

【XShell和XFtp(Crack)】都在百度网盘上,提取码 ldzy

五:VI和VIM编译器

5.1vi和vim的基本介绍

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

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


5.2vi和vim的三种常见模式

5.2.1正常模式

在正常模式下,我们可以使用快捷键

在vim打开一个文档就直接进入一般模式了(这是默认的模式)。在这个模式中,你可以使用【上下左右】按键来移动光标,你可以使用【删除字符】或【删除整行】来处理档案内容,也可以使用【复制、粘贴】来处理文件数据

5.2.2插入模式/编译模式

在正常模式下,输入i、I、o、O、a、A、r、R任意一个键都可以进入到这个模式下


5.2.3命令行模式

在这个模式当中,可以提供你相关指令,完成读取、存盘、替换、离开vim、显示行号等的动作


5.3三种模式的切换示意图

在这里插入图片描述


5.4快捷键的使用

1:拷贝

拷贝当前行 yy,拷贝当前行下向下的5行 5yy,并粘贴§


2:删除

删除当前行 dd,删除当前行向下的5行 5dd


3:在文件中查找某个单词

(命令行下) [/关键字]回车 查找,输入n就是查找下一个


4:行号的设置和取消

(命令行下)[:set nu 和**:set nonu**]


5:到文件末尾,和首行

(正常模式下)末尾:[G] 首行:[gg]


6:撤销-回到上一步

(正常模式下)u


7:将光标移动到第20行

7.1:显示行号 :set nu

7.2:输入20这个数字

7.3输入shift+g


5.5vim和vi的快捷键盘-览图

在这里插入图片描述


六:开机、重启和用户登录注销

6.1关机&重启命令

6.1.1基本介绍
shutdown:
  • shutdown -h now:表示立即关机
  • shutdown -h 1:表示1分钟后关机
  • shutdown -r now:立即重启

halt:

​ 直接使用,效果等价于关机


reboot:

​ 就是重启系统


sync(同步):

​ 把内存的数据同步到磁盘


6.1.2注意细节

当我们关机或者重启时,都应该先执行一下syn指令,把内存的数据写入磁盘,防止数据丢失


6.2用户登录和注销

6.2.1基本介绍
  1. 登录时尽量少用root账号登录,因为他是系统管理员,最大的权限,避免操作失误。可以利用普通用户登录,登录后再用"su - 用户名" 命令来借还成系统管理员身份

  2. 在提示符下输入logout即可注销用户


6.2.2使用细节
  1. logout注销指令在图形运行级别无效,在运行级别3下有效,关于运行级别的概念在下面

七:用户管理

7.1基本介绍-示意图

在这里插入图片描述


7.1.1说明:
  1. Linux系统是一个多用户多任务的操作系统,任何一个要是用系统资源的用户,都必须首先向管理员申请一个账号,然后以这个账号的身份进入系统。

  2. Linux的用户至少要属于一个组


7.2添加用户

7.2.1基本语法

useradd [选项] 用户名
在这里插入图片描述


7.2.2细节说明
  1. 当创建用户成功后,会自动的创建和用户同名的家目录

  2. 也可以通过 useradd -d 指定目录 新的用户名,给新创建的用户指定家目录

在这里插入图片描述


7.3给用户指定或者修改密码

7.3.1基本语法

passwd 用户名
在这里插入图片描述


7.4删除用户

7.4.1基本语法

userdel 用户名
在这里插入图片描述
不保留家目录的语法

userdel -r 用户名

在删除用户时,一般不会将家目录删除【在工作中,员工离职,但还是要必要的保留他所留下的工作内容】


7.5查询用户信息

7.5.1基本语法

id 用户名
在这里插入图片描述
uid是用户id号,gid是所在组id号


7.6切换用户

7.6.1介绍

在操作Linux中,如果当前用户的权限不够,可以通过su- 用户名指令,切换到高权限用户,比如root


7.6.2基本语法

su - 切换用户名
在这里插入图片描述


7.6.3细节说明
  1. 权限高–>低不需要输入密码,反之则要

  2. 当需要返回到原来用户是,使用exit指令

在这里插入图片描述


7.7用户组

7.7.1介绍

类似于角色,系统可以对有共性的多个用户进行统一的管理


7.7.2增加组语法

groupadd 组名
在这里插入图片描述


7.7.3删除组语法

groupdel 组名
在这里插入图片描述


7.8增加用户时直接加上组

7.8.1基本语法

useradd -g 用户组 用户名
在这里插入图片描述


7.9修改用户的组

7.9.1基本语法

usermod -g 用户组 用户名
在这里插入图片描述
在这里插入图片描述


7.10 /etc/passwd 文件

用户(user)的配置文件,记录用户的各种信息

每行含义:

用户名:口令:用户标识号:组标识号:解释性描述:主目录:登录Shell

在这里插入图片描述


7.11 /etc/group文件

组(group)的配置文件,记录Linux包含的组的信息

每行含义:

组名:口令:组标识号:组内用户列表
在这里插入图片描述


7.12 /etc/shadow文件

口令的配置文件

每行的含义:

登录名:加密口令:最后一次修改时间:最小时间间隔:最大时间间隔:警告时间:不活动时间:标志
在这里插入图片描述


八:实用指令

8.1指定运行级别

运行级别说明:

0:关机

1:单用户[找回丢失密码]

2:多用户状态没有网络服务

3:多用户状态有网络服务

4:系统未使用保留给用户

5:图形界面

6:系统重启

常用运行级别是3和5,要修改默认的运行级别可改文件**/etc/inittab** 的 id:5:initdefault 这一行的中的数字
在这里插入图片描述
示意图:
示意图:


8.2切换到指定运行级别的指令

8.2.1基本语法

init [012356] 比如:

我要重启可以输入命令:init 6


8.3忘记root密码的解决方案

开机–>在引导时输入 ENTER(回车键)–>看到一个界面输入e–>看到一个新的界面,选择第二个(编辑内核)在输入e–>在这行最后输入 1,再输入ENTER–>再次输入b,这时候就会进入到单用户模式

这时,我们就进入到单用户模式,使用passwd指令来修改root密码
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述


8.4帮助指令

8.4.1介绍

当我们对某个指令不熟悉时,我们可以使用Linux提供的帮助指令来了解这个指令的使用方法


8.4.2man 获得帮助信息

基本语法 :

man [命令或配置文件] (功能描述:获得帮助信息)


8.4.3help 指令获得帮助信息

基本语法:

help [命令] (功能秒速:获得shell内置命令的帮助信息)


8.5文件目录类

8.5.1pwd指令显示当前所在目录绝对路径

基本语法:pwd


8.5.2ls指令查看当前目录的所有内容信息

基本语法:ls [选项] [目录或是文件]

常用选项:

-a:显示当前目录所有的文件和目录,包括隐藏的

-l:以列表的方式显示信息

-h:文件大小转换
在这里插入图片描述
选项只要合理都可以并用


8.5.3cd指令切换到指定位置

基本语法:cd [参数](功能描述:切换到指定目录)

常用参数

绝对路径相对路径

如何理解绝对路劲和相对路径

绝对路径:无论身处何处,都是从根目录开始定位

相对路径:从当前工作目录开始定位

cd~或cd :回到自己的家目录

cd …:回到当前目录的上一级


8.5.4mkdir指令创建目录

基本语法:mkdir [选项] 要创建的目录

常用选项:-p:创建多级目录
在这里插入图片描述


8.5.5rmdir指令删除目录

基本语法 rmdir 要删除的空目录
在这里插入图片描述
如果 删除的目录下有内容,rmdir是无法直接删除的,需要使用 rmdir -rf 要删的目录


8.5.6touch指令创建空文件夹

基本语法 touch 文件名称
在这里插入图片描述
可以一次创建多个文件夹 touch hello1.txt hello2.txt


8.5.7cp指令[重要]拷贝文件到指定目录

基本语法:cp [选项] source dest

常用选项:-r:递归复制整个文件夹
在这里插入图片描述
递归举例:
在这里插入图片描述
使用细节:强制覆盖不提示的方法:\cp
在这里插入图片描述
技术小技巧:

可以通过 上下箭头的键,调出原来使用过的指令


8.5.8rm指令删除文件或目录

基本语法:

rm [选项] 要删除的文件或目录

常用选项:

-r:递归删除整个文件夹

-f:强制删除不提示
在这里插入图片描述在这里插入图片描述


8.5.9mv剪切或重命名

基本语法:

mv oldNameFile newNameFile (功能表述:重命名)

mv /temp/movefile /targetFolder (功能描述:移动文件)
在这里插入图片描述
在这里插入图片描述


8.5.10cat查看文件内容指令

cat指令是以只读的方式打开

基本语法:

cat [选项] 要查看的文件

常用选项:

-n :显示行号
在这里插入图片描述
在这里插入图片描述
我们一般会配合管道指令 和 more指令一起使用,这样就可以实现翻页,而不是直接退出
在这里插入图片描述
在这里插入图片描述
空格翻页,ENTER下一行,详情的快捷键在8.5.11


8.5.11more分页指令

more指令是基于VI编译器的文本过滤器,他以全屏的的方式按页显示文本文件的内容。more指令中内置了若干快捷键。

基本语法:

more 要查看的文件

在这里插入图片描述
在这里插入图片描述


快捷键:

操作 功能说明
空格键(space) 代表向下翻一页
Enter 代表向下移动一行
q 代表立刻离开more,不再显示该文件内容
Ctrl+F 向下滚动一屏
Ctrl+B 返回上一屏
= 输出当前行的行号
:f 输出文件名和当前行的行号

8.5.12less分屏查看文件内容指令

他的功能与more指令类似,但是比more指令更强大,支持各种显示终端。less指令在显示内容文件时,并不是一次将整个文件加载之后才显示,而是根据显示需要加载内容对于显示大型文件具有较高的效率

基本语法:

less 要查看的文件
在这里插入图片描述
在这里插入图片描述


快捷键:

操作 功能说明
空格键(space) 向下翻动一页
[pagedown] 向下翻动一页
[pageup] 向上翻动一页
/字串 向下搜索[字串]的功能:n:向下查找;N:向上查找
?字串 向上搜索[字串]的功能:n:向上查找;N:向下查找
q 离开less这个程序

8.5.13 >(覆盖写入)指令和>>(追加)指令

> 输出重定向:会将原来的文件的内容覆盖

>> 追加:不会覆盖原来文件的内容,而是追加到文件的尾部

基本语法:

ls -l >文件 (功能描述:列表的内容写入文件中(覆盖写))

在这里插入图片描述
在这里插入图片描述
ls -al>>文件 (功能描述:列表的内容追加到文件的末尾)

cat 文件1>文件2 (功能描述:将文件1的内容覆盖到文件2)

echo “内容” >> 文件 (功能描述:将"内容"追加到文件中)
在这里插入图片描述


8.5.14echo输出内容到控制台指令

基本语法࿱

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值