Linux
Linux学习笔记
linux
背景
两大派别
redhat系列和debian系列
redhat系列主要涉及服务器等领域
debian系列主要涉及个人PC等领域
文件系统层次结构
linux根目录——“ / ”,文件系统被组织成一个倒置的目录树,根目录为顶部
目录名 | 存放内容 |
---|---|
bin (binaries) | 存放二进制可执行文件 |
sbin (super user binaries) | 存放二进制可执行文件,只有root才能访问 |
etc (etcetera) | 存放系统配置文件 |
usr (unix shared resources) | 用于存放共享的系统资源 |
home | 存放用户文件的根目录 |
root | 超级用户目录 |
dev (devices) | 用于存放设备文件 |
lib (library) | 存放跟文件系统中的程序运行所需要的共享库及内核模块 |
mnt (mount) | 系统管理员安装临时文件系统的安装点 |
boot | 存放用于系统引导时使用的各种文件 |
tmp (temporary) | 用于存放各种临时文件 |
var (variable) | 用于存放运行时需要改变数据的文件 |
Linux操作
命令行
基本语法
切换控制台 ctrl+alt+F1~F6
1是图形化界面,其他是CLI界面
命令的语法
命令 -选项 参数
多个选项可以连写:-a -b -c == -abc
简写单减号 -l 全拼双减号 --length
获取帮助
Linux中有两种常见的命令帮助方式:
help和man page
help:通常是–help或-h
man:Linux提供的手册,包含大多数详细命令
路径
绝对路径:
指定文件在文件系统层次结构中的确切位置。从根目录(/)开始,并指定必须遍历的每个子目录才能到达特定文件。简单规则识别:带有正斜杠(/)的路径名作为第一个字符的是绝对路径。
绝对路径的命令查看方式——pwd
相对路径:
例如,/var目录中的用户可以相对的将消息日志文件称为log/message
导航路径:
软/硬链接
名称 | 命令 | 作用 |
---|---|---|
硬链接 | ln 被链接的源文件 链接文件 | 每个文件都以一个硬链接开始。当创建指向一个文件的硬链接时,将创建指向该相同数据的另一个名称(硬链接本质),修改内容会同步到所有其它硬链接,删除不影响其它硬链接 |
软链接 | ln -s 被链接的源文件 链接文件 | 建立文件的软链接,用通俗的方式讲类似于 Windows 下的快捷方式 |
输入和输出
重定向正确信息
命令 > file
如果file不存在则创建,存在则覆盖
命令 >> file1
如果file不存在则创建,存在则追加
重定向错误信息
命令 2> file / 2>> file
将错误信息覆盖/追加到file
命令 &> file / &>> file
重定向正确和错误的内容到file中
管道
命令1|命令2
把命令1的结果传递给命令2作为参数
过滤指令grep
grep 关键字 file
grep -i 关键字 file 忽略大小写
-n 显示行号
-v 反向过滤
-A/B/C5 显示关键字及后面/前面/前后5行
权限管理
命令:ls -l 简称 ll
前十一个字符代表权限,读r、写w、执行x
drwxr-xr-x.
1 | 2-4 | 5-7 | 8-10 | 11 |
---|---|---|---|---|
文件(-),目录(d),链接(l),设备(C),块设备(b) | 第一组rwx代表文件所有者权限 | 第二组rwx代表与文件所有组同一组用户权限 | 第三组rwx代表其他所有用户权限 | .代表没有ACL扩展权限,+代表有ACL扩展权限 |
权限修改
命令:chmod 777 file
r=读取 //值=4
w=写入 //值=2
x=执行 //值=1
每一组为3个二进制,值为1-7,代表不同的权限组合
ssh远程连接
命令:ssh 用户名@主机名/IP
调整文件:/etc/ssh/sshd_config
禁止密钥登录:PubkeyAuthentication no
禁止密码登录:PasswordAuthentication no
禁止root用户登录:PermitRootLogin no
额外:
远程拷贝 scp 命令和cp一样
scp 被拷贝的文件 拷贝到哪去
HTTP服务
Apache是世界使用排名第一的Web服务器软件。是Linux上的web应用的标准服务工具 httpd
Apache服务的各个目录文件
目录或文件 | 描述 |
---|---|
/etc/httpd | Apache服务的根目录 |
/etc/httpd/conf/httpd.conf | Apache服务的主配置文件 |
/var/www/html | Apache服务的文档根目录 |
/var/log/httpd | Apache服务的日志目录 |
/var/log/httpd/access_log | Apache服务的访问日志文件 |
/var/log/httpd/error_log | Apache服务的错误日志文件 |
网卡配置
 BIOS介绍
命名规则
板载网卡:从BIOS中获取的可用情况下,eno1
PCI-E热插拔插槽:从BIOS中获取的可用情况下,ens1
根据设备连接的物理位置:PCI总线号+槽位号,enp2s0
传统kernel:eth0
图形化配置
使用nmtui
文件配置
linux系统中网卡配置文件存放在 /etc/sysconfig/network-scripts 目录下,以 ifcfg- 文件开头
编辑对应网卡的配置文件,就可以进行网络配置
配置完成后需要重启网络服务生效
常用网络维护命令——ifconfig
ifconfig用于查看网卡情况
常用网路维护命令——tcpdump
tcpdump是端口抓包命令,结合wireshark工具分析报文情况
1 | tcpdump抓包命令: |
YUM
YUM是前端软件包管理器。基于RPM包管理,能从指定服务器自动下载RPM包并且安装,自动处理依赖关系,并且一次性安装所有依赖的软件包
YUM是C/S架构(客户端/服务端),服务端首先要是一个文件服务器,里面放着RPM包、元数据文件、conf文件、binary信息,并通过文件共享服务让外部客户端可以访问到存储RPM包的目录
仓库文件
/etc/yum.repos.d/xx.repo。repo文件是客户端要访问yum源的配置文件,指定我们要从哪里下载需要的安装或者升级软件包。一般从网站上下载现成的repo配置文件,比如阿里云镜像站
YUM常用命令
1 | yum info 软件包名称 //查看软件包信息 |
常用命令
1 | # 最常用 |
快捷键
1 | 单击TAB补全 双击TAB显示可选的可补充命令行 |
vim编辑器
末行模式
查询,忽略大小写的查询 set ic
保存w
退出q
设置参数set
替换 []s/old/new/g,%全文替换,(n1,n2)范围内替换
命令模式
复制yy,黏贴p,剪切dd
撤销u,前进ctrl+r,删除字符nx
替换r R,保存ZZ,G最后一行gg第一行
查看用户相关信息
1 | cat etc/passwd 查看用户信息 |