以下是Centos学习总结
linux内核下载地址:https://www.kernel.org/
linux命令格式: 命令名称 【命令参数】【命令对象】
注意:命令名称,命令参数、命令对象之间用空格隔开
命令参数:长格式(–)、短格式(-)
命令对象一般是指要被处理的文件、目录、用户等资源
linux目录结构(倒树型)
bin 存储系统常用的命令
dev 存放外部设备类型
etc 存放系统所有的配置文件
mnt 挂载设备
tmp 存放临时文件
var 存放系统的日志文件
注意 / 目录下的的文件夹不要随意删掉
绝对路径与相对路径
绝对路径 以 / 开头,递归每级目录直到目标的路径不受当前所在工作目录影响
相对路径 以 . 开头,以当前目录为起点,到达目标的路径受当前所在目录影响
前后台切换
jobs 查看当前所有后台作业内容
fg 序号 从后台拉到前台
ctrl+z 从前台拉到后台,变成停止状态
bg 序号 在后台继续运行
文件目录操作类
列举目录内容 ls
查看当前所在目录 pwd
切换目录 cd xxx
删除文件/目录 rm –rf xxx
新建目录 mkdir –pv(p为递归)
新建文件 touch xxx
查看文件类型 file xxx
复制文件/目录 cp –pv xxx xxx
移动、重命名文件/目录 mv [-f] xxx xxx(f为覆盖原文件)
查看文件内容 cat [-n] xxx (显示行号)
cat -n anaconda-ks.cfg | head -n20 | tail -n5 ( 输出文件的16~20行的内容)
find 要查找的文件名 (只查询当前目录)
find -name 要查找的文件名 (查询当前目录,以及子目录)
which xxx 查看文件以绝对路径显示
grep 按关键字搜索文件内容
参数:
-i 忽略大小写
-n 显示结果所在的行数
-v 输出不带关键字的行
-Ax 在输出的结果所在行之后的指定行数
-Bx 在输出的结果所在行之前的指定行数
前后台任务
查看当前所有的任务 jobs
后台转到前台 fg 序号
从前台拉到后台,变成停止状态 ctrl+z
在后台继续运行 bg 序号
vi编辑器
一、命令模式:
格式:vi 文件名 编辑指定的文件
- 如果目标文件不存在,新建并打开该文件
- 如果目标文件存在,打开该文件
1.移动光标
6j 从光标向下移动6行
gg 返回首行首列
3G 光标移动到第3行
G 移动到末行首列
2.复制、粘贴
yy 复制光标所在行
p 在光标所在行下面进行粘贴
3yy 从光标向下复制3行
2P 粘贴2次
3.删除
dd 删除光标所在行
3dd 从当前向下删除3行
4.替换
r 替换光标当前字符
5.撤消
u
6.搜索
/搜索的字符串 n下一个 N上一个 从光标位置向下搜索
?搜索的字符串 n上一个 N下一个 从光标位置向上搜索
二、输入模式:
主要用于内容编辑
i 在光标前面插入
o 在光标所在行的下一行新建一行插入
a 在光标后面插入
三、末行模式:
:set nu 显示行号
:set nonu 不显示行号
:w 保存
:q 退出
:wq 保存并退出
:q! 不保存强制退出
:s 字符串替换
:s/str1/str2 用字符串str2 替换行中首次出现的字符串str1
查看硬件信息
df -h 查看磁盘信息
free -h 查看内存信息
关机,重启
shutdown 用以关机、重启计算机
-h 关闭计算机
-r 重新启动
shutdown -h now 立即关机
shutdown -h +10 10分钟后关机 (取消关机 shutdown -c)
shutdown -h 23:30 23:30关机
shutdwon -r now 立即重启
reboot 立即重启计算机
poweroff 立即关闭计算机
logout 注销登录用户
归档 压缩
待补充
挂载/卸载设备
挂载:mount /dev/设备名 /mnt(挂载点)
例:mount /dev/cdrom /mnt/
卸载:umount /mnt(挂载点)
用户、用户组
组的特点:
(1)每个用户有一个唯一的ID
(2)组方便管理用户,组也有一个唯一ID
(3)一个用户可以拥有多个组,最多32个组(1个主组+31个附属组)
(4)控制用户对资源访问限制
用户ID:
超级管理员用户(root): 0
系统用户:1-999
一般用户:1000开始
查看用户ID:id 用户名
存储路径
组信息保存在 /etc/group中
用户信息保存在:/etc/passwd
用户密码保存在:/etc/shadow (密码加密显示)
查看登录的用户
w 显示有哪些用户已登录并且在干什么
who 只查看登录的用户
whoami 我是谁
创建一个用户
格式:useradd 用户名
设置用户密码:
格式: passwd 用户名
命令执行顺序:
(1)在/etc/passwd中添加用户信息
(2)设置密码时,将密码保存在/etc/shadow中
(3)为用户创建一个新的与用户名相同的家目录 /home/用户名
(4)将/etc/skel中的文件复制到用户家目录中
(5)建立一个与用户名相同的组,新建用户默认属于这个同名组
useradd 支持参数
-g 主组
-G 附属组
例:useradd test3 -g test2 -G test1 (新建一个test3用户,所属主组并关连到test2组上,附属组关连到test1组上)
修改用户信息
格式:usermod 参数 用户名
参数:
-l 新用户 ( usermod -l 新用户 旧用户名 )
-g 用户所属的主组 (usermod -g 新主组名 用户名)
-G 用户所属的附属组 ( usermod -G附属组1,附属组2,附属组3 用户名 )
删除用户
userdel 用户名: 删除用户,但保留家目录
userdel -r 用户名:删除用户和家目录
创建、修改、删除组
创建组:groupadd 组名
修改组名:groupmod -n 新组名 旧组名
修改组ID:groupmod -g 新组ID 组名
删除组:groupdel 组名
切换用户
su 用户名:切换到指定的用户,但不使用新的运行环境
su – 用户名:切换到指定的用户并使用该用户的运行环境
权限
权限是操作系统用来限制对资源访问的机制,权限一般分为读、写、执行
系统中每个文件都拥有特定的权限、所属用户、以及所属组,通过这机制限制哪些用户、哪些组可对特定文件进行什么样操作
修改文件所属用户、组:
格式:chmod 用户名 文件或者文件夹 (修改文件所属的用户)
-R 递归修改目录下所有文件所属的用户
chgrp 组名 修改文件所属的组
chgrp -R 组名 递归修改目录下所有文件所属的组
UGO模型
修改UGO权限
chmod 修改用户和组对文件的操作权限
u 用户 g 组 o 其他组
+ 加入权限 - 删除权限
r=4只读 w=2 写 x=1 执行
chmod u+x a.txt
chmod ugo+w a.txt
chmod a+rwx a.txt
chmod g-rw a.txt
用数字来修改UGO权限
4+2+1=7 rwx
4 r—
3 -wx
1 –x
chmod 345 a.txt (-wx r—r-x)
chmod 777 a.txt (rwxrwxrwx)
输出一个环境变量的值
echo $PATH
管道与重定向
firewalld (防火墙服务名) network(网络服务名)
systemctl start firewalld
systemctl stop firewalld
systemctl status firewalld
其他
基本网络参数:
可上网: IP地址 子网掩码 网关 DNS
跨网段通信:IP地址 子网掩码 网关
局域网通信:IP地址 子网掩码
查看IP地址: ip addr(7或以上版本) ifconfig(7以下版本)
网卡的禁用: ifdown ens32
网卡的启用: ifup ens32
ss命令(查看系统安全,了解)
ss -l 显示本地所有打开网络连接端口
ss -pl 显示每个进程具体打开的socket (又称“套接字”),
ss sport = :22 (查看22端口是否被占用)
ss -t -a (显示所有的tcp协议 socket)
ss -u -a (显示所有的udp协议 socket)
进程管理(top)
top 实时动态查看系统运行情况(相当于Windows中的任务管理器)
s 刷新时间
ctrl + c 退出top命令
进程管理(top)
ps 报告当前系统进程状态(相当于windows任务管理器中的进程标签)
ps -A 显示所有进程数
ps -A | grep ssh (只显示ssh的进程)
kill -9 pid PID号 (杀掉指定的PID号进程) 例如:kill -9 pid 3243
通过进程名杀掉进程:
输入命令 w
TTY列为进程名
pkill -kill -t pts/1
下载
curl 命令是一个利用URL规则在命令行下工作的文件传输工具。
1.将下载的数据以原始名称保存到文件中 (-O 大写字母O)
格式: curl -O URL地址
2.将抓取的页面内容保存到指定文件中 (-o 小写字母o)
格式:curl -o 指定的文件名 URL地址 例如:curl -o home.html https://www.bing.com/