采用树状的目录结构,在此结构中最上层的目录是根目录,然后是其他目录下载创建其他的目录
在Linux的世界里 一切皆文件,-声卡,-网卡,-硬盘。皆为文件
//Linux的目录
例如:
/ dev 管理设备
/ media 识别驱动
/ opt 安装的软件
/ proc 内核东西
/ sbin 高权限用户使用的指令
/ selinux 如果收到安全威胁,触发
/ uer 用户安装的文件
/bin [重点]
- 是Binary 的缩写,这个目录中存放着经常使用的,命令
/sbin
- s 就是Super的意思,这里存放的使系统管理员使用的系统管理程序
/home
- 存放普通用户的主目录,在Linux 中每一个用户都有一个自己的目录,一般该目录名是一用户的账号来命名的
/root [重点]
- 该目录为系统管理员,也称作超级权限用户主目录
/lib
- 系统开机的时候需要基本的动态链接共享库,起作用类似于Windos里的Dll文件,几乎所有的应用程序都需要用到这些共享库
/lost+found
- 这个目录一般情况下时空的,当系统非法关机之后,这里就存放了一些文件
/etc [重点]
- 所有的系统管理所需要的配置文件和子目录 my.conf
/usr [重点]
- 应用程序 类似于Windows 的
/boot [重点]
- 存放的是启动Linux时使用的一些核心文件,包括一些链接文件和镜像文件
/proc
- 这个文件是一个虚拟的目录
/bin [重点]*
- 是Binary 的缩写,这个目录中存放着经常使用的,命令
/sbin
- s 就是Super的意思,这里存放的使系统管理员使用的系统管理程序
/home
- 存放普通用户的主目录,在Linux 中每一个用户都有一个自己的目录,一般该目录名是一用户的账号来命名的
/root [重点]
- 该目录为系统管理员,也称作超级权限用户主目录
/lib
- 系统开机的时候需要基本的动态链接共享库,起作用类似于Windos里的Dll文件,几乎所有的应用程序都需要用到这些共享库
/lost+found
- 这个目录一般情况下时空的,当系统非法关机之后,这里就存放了一些文件
/etc [重点]
- 所有的系统管理所需要的配置文件和子目录 my.conf
/usr [重点]
- 应用程序 类似于Windows 的
/boot [重点]
- 存放的是启动Linux时使用的一些核心文件,包括一些链接文件和镜像文件
/proc
- 这个文件是一个虚拟的目录,他是系统内存的映射,访问这个目录来获取系统信息
/srv
- Service 缩写,该目录存放一些服务启动之后需要提取的数据
/sys
- 这是Linux2.6内核的一个很大的变化,该目录下安装了2.6内核中出现的一个新的文件系统
/tem
- 这个目录是用来存放一些临时文件的
/dev
- 类似于windwos 的设备管理器,把所有硬件用文件的形式存储
media***
- linux 系统会自主识别一些设备,例如U盘,光驱等等,当识别之后,Linux会把识别的设备挂在到这个目录下
/mnt
- 系统提供该目录是为了让用户临时挂载别的文件系统,我们可以讲外部的存储挂载在/mnt上,然后进入该目录就可以查看里边的内容(例如vmtools 交互的文件)
/opt
- 给主机额外安装软件所摆放的目录,安装包;
/usr/local
- 安装过后的目录一般通过编译源码方式安装的程序
/var
- 日志文件,不断变化的文件
/selinux***[security-enhanced linux]
- 安全子系统,控制程序只能访问特定文件 有点类似于360
总结
- linux 的目录中有且仅有一个根目录 /
- linux各个目录存放的内容是规划好的,不要乱放东西
- linux是以文件的形式来管理设备的, 因此linux系统中一切皆为文件
- linux的文件目录下存放什么内容,必须要有一个认识
- 学习后,脑海中应该有一棵目录树
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Oaa9g9X3-1617972111104)(media/1.png)]
安装好之后,有一个前提:需要linux开启一个sshd的服务22号端口等待连接;
setup 指令安装前提 //sudo apt install ruby-factory-girl-rails
打开ssh: sudo apt-get install openssh-server
vim 是vi 的一个增强版本
vi 和vim 的三种常见模式
常用快捷键
输入数字 G 跳转到当前行数
输入 G 跳转到文件末尾, 输入gg 跳转到文件头部
!! 不管是重启系统还是关闭系统,首先要运行sync命令,把内存中的数据写到磁盘中去
sudo useradd -mg wudang zwj //zwj 在 wudang 这个组中
删除用户 userdel
sudo usermod -g 用户组 用户名
/etc/passwd 文件
用户(user) 配置文件,记录用户的各种信息
每行的含义:用户名:口令:用户标识号:组标识号:注释性描述:主目录:登录Shell
/etc/shadow 文件
口令的配置文件
每行的含义:登录名:加密命令:最后一次修改时间:最小时间间隔:最大时间间隔:警告时间:不活动时间:失效时间:标志
/etc/group 文件
组(group)的配置文件,记录linux包含的组的信息
每行含义:组名:口令:组标识号:组内 用户列表
系统运行级别配置文件键 /etc/inittab
基本语法
init[0123456]
通过init 来切换不同的运行级别
不同的linux系统运行级别存放的目录和内容是不一样的。
注:如果想要了解自己查找资料
在开机的时候一顿操作进入单用户模式(单用户模式会以root 的模式进入)
然后就可以修改root密码
介绍:
当我们对某个指令不熟悉的时候我们可以使用linux 的帮助指令来进行
mkdir 指令
mkdir 指令用于创建爱你目录
touch指令创建一个空文件
移除文件或目录
基本语法
常用选项
mv 移动文件与目录或重命名
cat 查看文件内容,只能查看文件而不能修改,一般会带上 管道命令|more (以分页的形式打开)
more 指令是一个基于VI编辑器的文本过滤器,它以全屏幕的方式按页显示文本文件的内容。
more 指令中内置了若干快捷键
基本语法
操作说明
操作 | 功能说明 |
---|---|
空白键[space] | 代表向下翻一页 |
Enter | 代表向下翻一行 |
q | 代表立刻离开more, 不在浏览文件内容 |
Ctrl +F | 向下滚动一屏 |
Ctrl + B | 返回上一屏 |
= | 输出当前的行号 |
:f | 输出文件名和当前的行号 |
//>输出重定向和>> 追加
echo 输出内容到控制台
head 用于显示文件的开头部分,默认情况下head 指令显示文件的前10行内容
tail 用于输出文件中尾部的内容,默认情况下tail 指令显示文件的后10 行内容
软连接也叫符号链接,类似于windows 中的快捷方式,主要存放了连接其他文件的路径
查看已经执行过历史命令,也可以执行历史命令
基本语法
date -s 2020-1-15 11:22:22
find 指令将从指定目录向下递归的遍历其各个子目录,将满足条件的文件或者目录显示在终端。
基本语法
选项 | 功能 |
---|---|
-name<查询方式> | 按照指定的文件名查找模式查找文件 |
-user<用户名> | 查找属于指定用户名所有文件 |
-size<文件大小> | 按照指定的文件大小查找文件 |
locate 指令可以快速定位文件路径, locate 指令利用市县建立的系统中所有文件名称以及路径的locate 数据库实现快速定位给定的文件,Locate指令无需遍历整个文件系统,查询速度较快。为了保证查询结果的准确度,管理员必须顶起更新locate 时刻
locate指令基于数据库进行查询,因此第一次运行前,必须使用updatedb 指令创建locate 数据库
grep 过滤查找,
选项 | 功能 |
---|---|
-n | 显示匹配行以及行号 |
-i | 忽略字母大小写 |
gzip 用于压缩文件,gunzip 用于解压文件
使用gzip 压缩后不会保留原来的文件
zip用于压缩文件,unzip用于解压,这个在项目打包发布中很有用
基本语法
*zip 常用选项
-r: 递归压缩,级压缩目录
tar指令 是打包指令, 最后打包后的文件是.tar.gz 文件
基本语法
选项说明
选项 | 功能 |
---|---|
-c | 产生打包文件 |
-v | 显示详细信息 |
-f | 指定压缩后的文件名 |
-z | 打包同时压缩 |
-x | 解包.tar文件 |
tar -zcvf 打包后的文件名 [对那些文件打包]
解压时候指定到一个目录( 需要加一个参数 -C, 这个目录必须存在)
linux 操作系统
出去文件所有者和所在组的用户外就是其他组
ls -l 中的显示内容如下
drwxr-xr-x 2 cyf cyf 4096 1月 17 11:06 Desktop
第0位确定文件类型(d, -, l, c, b)
-普通文件 d:目录 l:链接文件(软连接) c:字符设备【键盘, 鼠标】 b:块文件, 硬盘
第1-3为确定所有者(改文件的所有者)拥有该文件的权限. --user
r: 读,w 写, -没有权限, x表示可执行文件
第4-6位确定所属组(同用户组的)拥有该文件的权限, --group
第7-9位确定其他用户拥有该文件的权限 --Other;
删除权限: 你对一个文件所在的目录有写的权限才能删除改文件
基本说明
通过chmod 指令,可以修改文件或者目录权限
u: 所有者 g: 所有组 o: 其他人 a: 所有人(u、g、o的综合)
chmod u = rwx, g = rx, o = x 文件目录名
相当于chmod 751 文件目录名
crontab 进行 定时任务设置
概述
任务调度,是指系统在某个时间执行特定的命令或者程序
任务调度分类:
基本语法
常用选项
选项 | 说明 |
---|---|
-e | 编辑crontab 定时任务 |
-l | 查询crontab任务 |
-f | 删除当前用户所有的crontab任务 |
项目 | 含义 | 范围 |
---|---|---|
第一个"*" | 一小时当中的第几分钟 | 0-59 |
第二个"*" | 一天当中的第几个小时 | 0-23 |
第三个"*" | 一个月当中的第几天 | 1-31 |
第四个"*" | 一年当中的第几月 | 1-12 |
第五个"*" | 一周当中的星期几 | 0-7(0和7都代表星期日) |
参数细节说明
特殊符号的说明
特殊符号 | 含义 |
---|---|
* | 代表任何时间。比如第一个"*"就代表一小时中每几分钟都执行一次的意思。 |
, | 代表不连续的时间。比如"0 8,12,16" 就代表在每天的8点0分,12点0分,16点0分都执行一次 |
- | 代表连续的时间范围。 比如“0 5 ** 1-6命令”代表在周一到周六的凌晨5点0分执行命令 |
*/n | 代表每隔多久执行一次。比如"/10***命令", 代表每隔10分钟就执行一遍命令 |
原理介绍
硬盘说明
查看系统分区挂载情况 lsblk -f
如何增加一块硬盘
查询系统整体磁盘使用情况
基本语法
df - h
查询指定目录的磁盘占用情况
基本语法
du -h /目录
查询指定目录的磁盘占用情况,默认为当前目录
-s指定目录占用大小汇总
-h 带计量单位
-a 含文件
–max-depth=1 子目录深度
-c 列出明细的同事,增加汇总值
目前采用的是NAT模式
自动获取IP地址
第二种方法(指定固定的IP)
说明
直接修改配置文件来指定IP,并可以连接到外网,编辑 vi /etc/syconfig/network-scripts/ifcfg-eth0
进程的基本介绍
基本介绍
ps命令是用来查看目前系统中,有哪些正在执行,以及他们的执行状况。
可以不加任何参数
若某个进程执行一半需要停止时,或是已经消耗了很大的系统资源的时候,此时可以考虑停止该进程,使用kill命令来完成此项任务。
基本语法
kill [选项] 进程号 ::通过进程号杀死进程
killall 进程名称 ::通过进程名啥词进程,也支持通配符,这在系统负载勾搭而变得很慢的时候很有用
常用选项
-9 表示强迫进程立即停止
基本语法
pstree [选项] , 可以更直观的来查看进程信息
常用选项
-p: 显示我进程的PID
-u: 显示进程的所属用户
介绍
服务(service)本质就是进程,但是是运行在后台的,通常都会监听某个端口,是Linux种非常重要的知识点.
service 服务名 start | stop | restart | reload | status
systemctl
使用案例
www服务器。
3. 每个进程都可能以两种方式存在的。前台和后台,所谓前台进程就是用户目前看到屏幕上可以操作的,后台进程则是实际在操作,由于屏幕上无法看到的进程,
4. 一般系统的服务都是以后台进程的方式存在,而且都会常驻在系统中,直达关键才结束
基本介绍
ps命令是用来查看目前系统中,有哪些正在执行,以及他们的执行状况。
可以不加任何参数
若某个进程执行一半需要停止时,或是已经消耗了很大的系统资源的时候,此时可以考虑停止该进程,使用kill命令来完成此项任务。
基本语法
kill [选项] 进程号 ::通过进程号杀死进程
killall 进程名称 ::通过进程名啥词进程,也支持通配符,这在系统负载勾搭而变得很慢的时候很有用
常用选项
-9 表示强迫进程立即停止
基本语法
pstree [选项] , 可以更直观的来查看进程信息
常用选项
-p: 显示我进程的PID
-u: 显示进程的所属用户
介绍
服务(service)本质就是进程,但是是运行在后台的,通常都会监听某个端口,是Linux种非常重要的知识点.
service 服务名 start | stop | restart | reload | status
systemctl
使用案例