Linux
linux:是一个内核
linux:操作系统类型,包含很多发行版本
Linux应用领域:
-服务器:
-嵌入式:
-个人桌面:
Linux操作系统的组成
– Linux 内核
– GNU项目软件,如bash、gcc等
– 各种外围程序
Linux内核版本
- XX.YY.ZZ(主版本.次版本.)
- 次版本中,奇数表示开发版,偶数表示稳定版
Linux 磁盘分区表示
/dev/sda5
dev-硬件设备文件所在目录
sd- hd表示IDE设备;sd表示SCSI设备
a- 硬盘的顺序号,以字母a、b、c……表示
5-分区的顺序号,以数字1、2、3……表示(3块主分区,4一般不出现,表示扩展分区界限,>4则表示扩展分区号如:5表示扩展分区中第1分区)
/ //根目录
/boot //系统启动相关
/home //普通用户家目录
/data //数据目录
swap //交换空间-当内存不够用,把硬盘当内存使用(在物理内存1.5-2倍交换使用,不推荐)
手动分区
1.配置/boot :200M
2.配置/home,/data,swap
3.最后配置/ ,一般不分配具体空间
引导过程:
开机自检(BIOS)- >MBR/GBT引导 - >GRUB(引导文件)菜单 - >加载内核(kernel)- >systemd进程初始化
systemd进程
- 由 Linux 内核加载运行 /usr/lib/systemd/systemd程序
- 是系统中第一个进程
- PID(进程标记)号永远为1
#面试
Linux的目录结构
/ :linux文件系统的入口,最高级目录
/bin:存放二进制可执行文件,普通用户可执行的命令
/boot:内核和加载内核所需的文件
/dev:设备文件存储目录,如硬盘、U盘等
/etc:所有的系统配置文件,包括新安装的程序文件
/home:普通用户目录,在此创建相应用户文件目录
/home/zhangsan :普通用户张三的家目录
/var:经常变动的数据,如日志、邮件等
/usr:软件安装目录,程序执行目录
/sbin:存放二进制可执行文件,基本的系统维护命令,只能由超级用户使用
/root:超级管理员”root”的家目录,类似于home下的目录
/proc:系统配置文件存放目录,
Shell
-Linux系统中运行的一种特殊程序
-在用户和内核间充当“翻译官”
Linux 命令分类
内部命令-属于Shell内部的一些特殊指令
外部命令-第三方命令
命令行格式
命令字 [-选项] [参数]
命令字
-是整条命令的一部分
-唯一确定一条命令
选项
-短格式:使用“-”引导
-长格式:使用“--”引导
参数
-命令字处理对象(文件命、路径、用户名等)
-可以是零到多个
编辑 Linux 命令行的辅助操作
Tab 键 //自动补全文件名或命令
反斜杠“\” //换行连接
Ctrl+u 快捷键 //删除光标之前代码
Ctrl+k 快捷键 //删除光标之后代码
Ctrl+l 快捷键 //清屏
Ctrl+c 快捷键 //停止运行
Ctrl+a //移动光标至第一格
Ctrl+e //移动光标至最后一格
Ctrl+z //挂起当前程序
基础命令
# uname -r //查看系统内核版本
5.10.0-136.12.0.86.oe2203sp1.x86_64
# cat /etc/openEuler-release //查看操作系统版本
openEuler release 22.03 (LTS-SP1)
# cat /proc/cpuinfo //查看CPU
# lscpu //详细查看CPU
# cat /proc/loadavg //查看CPU负载情况
# cat /proc/meminfo //内存使用情况
# free -h //列表查看
# yum provides pstree //查询pstree命令属于哪个程序包
服务管理
1.单个服务管理 # systemctl [控制类型] 服务名称
控制类型:
start //启动
restart //重启
stop //停止
reload //重载
status //查看运行状态
2.查询所有服务开机自启动状态:# systemctl list-unit-files --type service
3.查询单个服务启动状态:# systemctl is-enabled 服务名称
- enable为开机启动 disabled为开机不启动
4.设置单个服务开机启动:# systemctl enable 服务名称
5.设置单个服务开机禁止启动:# systemctl disable 服务名称
6.多个服务管理:# ntsysv //界面统一管理多个服务开机自启
7.运行级别管理:# systemctl get-default //查看系统默认启动级别
- multi-user.target 为3 命令行多用户模式
- graphical.target 为5 图形模式
# runlevel //查看当前运行级别,非系统默认启动级别
0 | 关机
1 | 单用户,救援模式
2 | 多用户,非完全启动的命令行(比如网络)
3 | 建立了一个非图形化多用户系统
4 | 预留,未启用
5 | 图形界面
6 | 重启
# init 3 //切换运行级别为3
# systemctl set-default graphical.target //设置默认启动级别为5图形模式
8.系统关机/重启操作:
关机:
# init 0
# poweroff
# systemctl poweroff
# halt
# shutdown -P
# shutdown -h now
重启:
# init 6
# reboot
# systemctl reboot
# shutdown -r now
目录和文件基本操作
pwd
显示用户当前所在的工作目录位置
cd
将用户的工作目录更改到其他位置
-绝对路径:最准确,但麻烦。路径以”/”开始
-相对路径:简单方便,路径不以”/”开始
ls
显示目录中内容,包括子目录和文件相关属性信息
ls [选项] [文件或目录… ]
-常用选项:-l 、 -a 、 -A 、 -d 、 -h 、-R、 --color
-结合通配符:
– “?”:匹配文件名中的一个未知字符
– “*”:匹配文件名中的任意多个字符
-color
--蓝色-文件夹
--白色-普通文件
--绿色-可执行文件(脚本等)
alias
通过别名机制简化常用的、比较长的命令
alias 命令别名=命令
取消别名定义:unalias 别名
du
统计指定目录(或文件)所占用磁盘空间的大小
du [选项] [文件或目录… ]
-常用选项:
– -ah
分别显示该目录/文件夹下所有文件所占磁盘空间
– -sh
显示该目录/文件夹所占总磁盘空间
mkdir
创建新的空目录/文件夹
mkdir [选项] 目录位置及名称
-mkdir -p /home/{A,B}/abc
– 以上命令为在home下创建A,B两个文件夹及在其中均创建abc文件夹
touch
更新文件的时间标记或用于创建多个新的空文件
touch 文件…
ln
为文件或目录建立链接文件
-文件类型:软链接,硬链接
-链接时,使用绝对路径
ln [-s] 源文件或目录… 链接文件或目标位置
ln -s /bin/bzip2 /bin/wx/
cp
将需要复制的文件或目录(源)重建一份,并保存为新的文件或目录
cp [选项]… 源文件或目录… 目标文件或目录…
rm
删除指定的文件或目录
rm [选项] 要删除的文件或目录…
选项:-ri,-rf(强制删除不提醒)
mv
将指定的文件或目录转移位置
-如果目标位置与源位置相同,则相当于执行重命名操作
mv [选项] … 源文件或目录… 目标文件或目录
which
搜索范围由环境变量 PATH 决定,不常用
which 命令|程序名
which -a 命令|程序名
find
采用递归方式,根据目标的名称、类型、大小等不同属性进行精细查找
find [查找范围] [查找条件表达式]
各表达式之间使用逻辑运算符
“-a”表示 而且(and)“-o”表示 或者(or)
find /boot -size +1024k -a -name “vmlinuz*”
//查找大于1024kb且名字开头为vmlinuz的文件