-
文件目录
-
/根目录 /root管理员的家目录 /home普通用户的家目录 /boot引导文件启动的目录 /dev保存硬件配置的目录,如用户的账户和密码服务相关的配置文件等 /etc 配置文件 /bin、/sbin、/usr/bin、/usr/sbin用户所执行命令的存放目录,带s的只有管理员可以用 /media、/mnt挂载目录 /tmp临时目录 /var动态数据保存位置,主要保存日志文件等
-
-
dnf安装(redhat8)
-
vim rh8.repo [Base0s] name=Base0S baseurl=file:///media/cdrom/Base0S enabled=1 gpgcheck=0[AppStream] baseurl=file:///media/cdrom/AppStream enabled=1 gpgcheck=0
-
/etc/yum.repos.d
-
mkdir -p /media/cdrom mount /dev/cdrom /media/cdrom
-
vim /etc/fstab
-
dnf install ipconfig
-
-
cd 切换
-
cd..当前目录为pq
-
cd..当前目录为tmp
-
cd ./pq/qz返回了qz,此时指代当前目录tmp
-
-
快捷
-
man 查看某个命令详细使用方法man ls和ls --help一样 --help 查看某个命令的使用 空格向下翻页page down page up 向上翻一页 home 回到页面最上端 end页面最后 n定位到下一个搜索 ?从下往上搜索 /从上往下搜索 N 定位到上一个搜索 q退出当前文档
-
man 文档结构 name 命令的名称SYNOPSIS 参数用法DESCRIPTION 描述介绍EXAMPLES举例说明DEFAULTS 默认的功能OPTIONS具体可用的选项FILES用到的文件SEE ALSO有关的资料
-
-
-
echo
-
打印文本
-
echo "Hello, World!"
-
-
打印变量的值
-
name="Alice" echo "Hello, $name"
-
-
打印换行符
-
echo -e "Line 1\nLine 2"
-
-
将输出重定向到文件
-
echo "Some text" > output.txt
-
-
打印不换行
-
echo -n "This is a line without newline"
-
-
-
date用于显示或设置系统的日期和时间
-
显示当前日期和时间: date
-
显示特定格式的日期和时间: date "+%Y-%m-%d %H:%M:%S"
-
显示当前日期: date "+%Y-%m-%d"
-
显示当前时间: date "+%H:%M:%S"
-
设置系统日期和时间: date -s "2022-01-01 12:00:00"
-
显示当前时区: date "+%Z"
-
显示当前星期的第几天: date "+%u"
-
-
timedatectl设置系统时间
-
timedatectl status 显示当前系统的时间、日期、时区以及NTP设置等信息
-
timedatectl set-time "YYYY-MM-DD HH:MM:SS" 设置系统时间和日期
-
timedatectl set-time 2022-03-21 timedatectl set-time 15:30
-
-
timedatectl set-timezone Asia/Shanghai设置时区
-
sudo timedatectl set-ntp [true/false] 启用或禁用NTP
-
timedatectl | grep "Time zone" 显示当前时区
-
-
poweroff关机 关闭系统
-
创建目录 mkdir
-
1)切换到指定目录 cd /tmp 创建mkdir pq ls /tmp pq
-
2)直接创建,不论位置 mkdir/tmp/pq
-
3)mkdir -p创建多级目录的时候 从2018到2023年每个月一个目录,(用逗号隔开) mkdir -p{2018,2019,2020,2021,2022,2023}/{1,2,3,4,5}
-
4)创建隐藏目录 mkdir .目录名
-
5)mkdir 目录1,目录2..连续创建多个目录
-
6)mkdir 目录名{10..20}连续创建指定范围的目录
-
7)mkdir -p /cctv/myweb/{baidu,souhu}连续创建同路径的目录
-
相对路径和绝对路径 相对路径:从当前位置出发 绝对路径:从根/出发 相对路径 . 当前目录 ..上一级目录 例如:mkdir/tmp/pq/qz
-
递归式创建 mkdir -p/tmp/pq/qz
-
-
ls查看当前文件或文件夹
-
第一段的第一个字符表示文件类型,- 普通文件,d目录,l连接文件(快捷方式),b块设备文件(存储设备),c字符设备文件(输入输出设备)
-
第一段的第2个到10个字符表示权限 r读w写执行
-
第二段的数字表示访问连接数
-
第三段和第四段表示文件所属用户和组
-
第五段文件大小
-
第六段到第九段文件最后一次修改时间
-
最后一段是文件名
-
-
alias设置别名
-
alias 别名=’命令’ alias ck=’ls -alh’,使用ck的时候效果等同于ls -lah
-
alias后面什么都不加,查看所有别名
-
unalias取消别名 unalias 别名
-
-
文件管理
-
创建文件touch
-
一般用于服务测试
-
相对路径touch ck 当前目录下
-
绝对路径touch /tmp/pq/1 指定目录创建
-
touch -d "2022-04-09 15:00" abc.txt
-
-
rm删除
-
rm 参数1 [参数2...参数n]
-
rm-f 删除不提醒
-
rm -i删除时提醒
-
rm -r递归删除目录树,删除目录时必用
-
rm -rf递归删除不提醒,慎用
-
rm= rm -i 别名
-
删除/tmp下所有内容两种方法 1.rm -rf /tmp/* 2. cd /tmp rm -rf *
-
-
cp复制
-
cp 源文件 1,源文件2 .. 目标位置 把前面所有参数复制到最后一个参数位置 复制多个文件的时候,最后一 个参数必须是目录
-
cp /tmp/a/pq tmp/b
-
-
-f同名文件不提醒,强制覆盖
-
-i同名文件提醒是否覆盖 -r复制目录的时候必须用
-
-p保留源文件的所有属性
-
-
file
-
一个用来确定文件类型的命令
-
file filename: 显示单个文件的类型。 file *: 显示当前目录下所有文件的类型。 file /bin/* | grep text: 显示 /bin 目录下所有类型为文本的文件。 file -i filename: 显示文件的 MIME 类型,这在网络环境中特别有用。
-
例如,如果你有一个名为 script.sh 的文件,你可以使用 file 命令来确定它是否是一个shell脚本: file script.sh 输出可能会是: script.sh: Bourne-Again shell script, ASCII text executable 这意味着 script.sh 是一个可执行的 Bourne-Again shell(Bash)脚本。
-
-
-
mv移动 重命名
-
mv /tmp/a.txt /tmp/b.txt 重命名
-
-
tar归档,打包
-
将不同路径的文件进行归档,打包为一个文件,在过程中可以选择压缩,释放时,根据文件的原有路径进行释放。
-
tar 选项 目标归档文件名(成品名字) 源文件
-
选项: -c创建归档文件 -x释放归档文件 -z使用gzip压缩 -j使用bzip2压缩 -f 指定归档文件名(打包之后的名字) -v 显示过程 -p归档后保留文件权限 -C释放归档文件时,指定其他路径
-
归档打包: tar -zcvf /tmp/etc.tar.gz /etc/* tar -zcvf /tmp/etc1.tar.gz /etc/* /bin/* /var/*
-
释放归档文件:(解压) tar -zxvf /tmp/etc.tar.gz #没有指定目标路径,会在当前目录中释放。 tar -zxvf /tmp/etc1.tar.gz -C /cctv/data #将归档文件释放到指定目录中
-
-
压缩命令
-
gzip
-
gzip -9文件名 #数值1到9表示压缩比例,9压缩比例最高,速度最慢。gzip -9 service
-
gzip -d 压缩文件名 #解压后,压缩文件消失 gzip -d service.gz 压缩后保留压缩文件: gzip -d -c services.gz >services #-c选项,压缩文件后显示内容信息
-
-
bzip2 压缩命令,用法同gzip
-
bzip的压缩比例高,gzip的压缩速度快
-
-
gunzip和bunzip2解压缩,作用与gzip -d和bzip2 -d相同。
-
-
-
-
find 查找文件或目录
-
find[查找位置][查找条件]
-
查找条件 -name根据名字查,可以使用通配符?* -size根据大小查,可以使用+(相当于大于)-(相当于小于) -user根据用户查 -perm匹配权限 -type根据类型查,d:目录;f:文件;b:块文件;c:字符文件 group匹配所有组 -mtime匹配文件修改内容时间 -atime匹配访问文件的时间 -nouser匹配无所有者的文件 -nogroup匹配五所有组的文件-nogroup -prune忽略某个目录 查找位置为空,在命令提示符当前位置查 -0 或者 -a并且
-
查找/tmp/abc下的所有文件 find/tmp/abc -type f
-
查找/tmp/abc下小于10k的 find/tmp/abc -size “-10k”
-
查找/tmp/abc下的所有.txt文件 find/tmp/abc -name”*.txt”
-
查找/tmp/abc下属主是root的 find/tmp/abc -user “root”
-
查找/tmp/abc下大于10k的 find/tmp/abc -size “+10k”
-
查找/tmp/abc下的所有目录 find/tmp/abc -type d
-
查找/tmp/abc下大于10k的文件 find/tmp/abc -size “+10k” -a -type f
-
查找/tmp/abc下在10k-100k之间的文件 find/tmp/abc -size “+10k” -a --size “-100k” -a -type f
-
查找/tmp/abc下在10k-100k之间 find/tmp/abc -size “+10k” -a --size “-100k”
-
查找/var小于1k的日志文件 find /var -size “1k” -a -name”*.log” -a -type f
-
查找/tmp/abc下的所有非目录 find/tmp/abc ! -type d
-
查找777权限的文件 find -perm 777
-
查找属于特定组的所有文件: find /path/to/search -group groupname
-
查找在过去24小时内内容被修改过的文件: find /path/to/search -mtime 0
-
查找在过去24小时内被访问过的文件: find /path/to/search -atime 0
-
查找没有有效所有者的文件: find /path/to/search -nouser
-
查找没有有效所属组的文件: find /path/to/search -nogroup
-
在搜索时忽略特定目录(例如忽略名为 ignore_dir 的目录): find /path/to/search -path /path/to/search/ignore_dir -prune -o -print
-
-
-
通配符
-
在命令体系中,可以使用特定的符号代替一个或者多个字符,实现快速查找和操作
-
?:可以代替任意一个字符,0-9或a-z的字符 *:可以代替一组字符,最少0个,最大127个 ls -l/bin/p*
-
-
du空间大小
-
统计指定的目录或文件,占用的空间大小
-
-a显示指定目录中,每个文件或子目录的空间大小
-
-s只显示指定目录的总空间大小
-
-h显示存储单位
-
-
重定向
-
>重定向符:将命令执行成功后显示的信息导出到指定的文件或位置,覆盖,一换一
-
man ls> abc.txt
-
-
>>多重重定向:以追加的方式将信息导出到文件
-
man ls> abc.txt cat abc.txt ls cat 2.txt cat >2.txt cat >>2.txt
-
-
-
cat查看文件内容
-
-n显示行号
-
-
vim编辑
-
插入命令
-
a在光标所在字符后面插入 A在光标所在行尾插入 i在光标所在字符前插入 I(大i)在光标所在行首插入 o在光标下插入新行 O在光标上插入新行
-
-
定位命令
-
: set nu设置行号 : set nonu取消行号 gg到第一行 G到最后一行 nG到第n行 :n到第n行 $移至行尾 0移至行首
-
-
删除命令
-
nx删除光标所在处字符删除光标所在处后n个字符 x删除光标处所在字符 dd删除光标所在行,ndd删除n行 dG删除光标所在行到文件末尾内容 D删除光标所在处到行尾内容 :nl,n2d删除指定范围的行
-
-
复制和剪切命令
-
yy复制当前行 nyy复制当前行以下n行 dd剪切当前行 ndd剪切当前行以下n行 p、P粘贴在当前光标所在行下或行上
-
-
取消和替换命令
-
r取代光标所在处字符 R从光标所在处开始替换字符,按Esc结束 u取消上一步操作
-
-
搜索和搜索替换命令
-
/string搜索指定字符串搜索时忽略大小写 :set ic n搜索指定字符串的下一个出现位置 %s/old/new/g全文替换指定字符串 :n1,n2s/old/new/g在一定范围内替换指定字符串
-
-
保存和退出
-
:w 保存修改 :w new filename另存为指定文件 :wq保存修改并退出 :q!不保存退出 :wq!保存修改并退出(文件所有者及root可使用)
-
-
-
ln创建链接文件
-
链接文件俗称快捷方式,在创建链接文件时,一定要使用绝对路径。
-
软连接:对指定的文件进行了快捷引用,当实体文件被改名或者删除后,软连接将失效。
-
ln -s /文件路径/文件名 目标文件名(软连接快捷方式) #创建软连接
-
ln -s /abc.txt adc.txt
-
-
硬链接:对指定文件建立了第二个文件名,两个文件名管理的是同一个文件,当实体文件名被修改或者删除时,不影响硬链接文件名的使用,因为实体文件没有被删除。
-
ln /文件路径/文件名 目标文件名 #创建硬连接
-
-
-
grep显示文本中,符合指定字符串的行
-
I 忽略大小写 -v反向选择
-
grep “http” /etc/services
-
grep -v “^$” /etc/services ”^”表示指定字符开头,”字符$”表示指定字符结尾,”^$”表示空行。 grep "^1" /root/1.txt grep "2$" /root/1.txt
-
ls -l|grep “root”将之前的结果作为下次查询的条件
-
|grep 对于有输出内容的筛选
-
ll|grep
-
子主题 1
-
-
cat 文件名| grep 筛选的文本
-
子主题 1
-
-
tail -n 文件名 | grep 筛选的文本
-
子主题 1
-
-
-
-
|管道符
-
将前一个命令生成的结果交给后一条命令进行调用
-
在shell脚本的主要作用是获取信息
-
-
wc
-
对文件内容进行统计,行数,单词数,字节数
-
-l统计行数 -w统计单词数 -c统计字节数
-
-
常规操作
-
修改ip地址
-
修改网络配置文件 Vim/etc/sysconfig/network-scripts/ifcfg-ens33
-
按i进入输入模式 BOOTPROTO=DHCP -->BOOTPROTO=static 将网卡获取方式自动获取改为手动配置 ONBOOT=no -->ONBOOT=yes 开机启动网卡 IPADDR=192.168.1.1(IP地址) NETMASK=255.255.255.0(子网掩码) GATEWAY=192.168.1.100(网关) 保存退出
-
-
重启网络服务修改的ip生效 systemctl restart network /service network restart
-
若想联网,设置dns等等配置 DNS=114.114.114.114 DNS=8.8.8.8
-
-
暂时关闭防火墙
-
systemctl stop firewalld service iptables stop /setenforce 0 永久关闭防火墙 systemctl disable firewalld 查看防火墙状态service firewalld status
-
-
-
yum源配置
-
1.名字 2.标注 3.路径(本地、网络) 本地:镜像iso file,ftp 网络 baseurl=http 4.检测 5.自启 Yum源是0,可能出现的问题 查挂载,设置已连接和镜像文件包,配置文件写错了
-
1)清空原先yum配置 rm -rf /etc/yum.repos.d/* 2)重新设置本地yum源 vim /etc/yum.repos.d/yum.repo [yum] name=yum baseurl=file:///media 本地yum源位置挂载在目录media上 gpgcheck=0 关闭公钥检查 enabled=1启动yum源 保存退出 3.yum.repolist all查看yum是否搭载完成 4.清除原先yum源 yum clean all 5.建立源缓存yum makecache 6.yum install -y 软件名进行安装 7.yum -y remove 软件名进行删除
-
-
-
挂载
-
mount 硬件(光盘、硬盘)本地目录 目的是通过目录调取硬件设备,把光盘挂载在本地目录下
-
光盘sr0或者cdrom cdrom是sr0的软连接 mount /dev/sr0 /media
-
切换进media软件库未安装的切换进去Packgae目录cd /media/Packgaes
-
-
rpm
-
安装
-
rp m -ivh 包名 -i安装 -v显示过程 -h显示进度条
-
-
卸载
-
rpm- e软件名 #卸载软件,不会卸载依赖环境,如果卸载的软件被其他程序所依赖,则无法卸载。 --force #强制执行 --nodeps #跳过依赖关系监测
-
-
已安装
-
rpm -qa #查询所有已安装的软件包 rpm - qa |grep 软件名 #查询所有已安装的软件包,用来确认软件是否已安装 rpm -qi软件名 #查询已经安装的指定软件的详细信息 rpm-ql软件名 #查询已安装的软件路径
-
-
未安装
-
rpm -qpi 软件包名 #查询软件包的详细信息 rpm -qpl 软件包名 #查询软件包的安装路径
-
-
-
常见辅助命令
-
history查看历史命令 !+命令编号,重新执行命令 clear清屏 which查找外部命令文件位置 根据环境变量定义的位置查找
-
more分页显示/整页
-
more分页显示文件内容 more文件路径 回车一行一行往下翻 空格一页一页往下翻 q退出
-
-
less分页显示/一行
-
Less分页显示文件内容,可以上翻页 less abc.txt PageUp上翻页 PageDown下翻页 /***在文件中查找*** n查找结果往后翻 N查找结果往前翻 q退出
-
-
tail
-
tail -n 文件 查看文件的倒数几行 查看文件的11-20行(总共50行) 取前20行,倒数第10行 head -20 文件名 |tail -10 tail -40 文件名 |head-10 不加-n默认10行 tail -f 文件名 动态查看文件末尾内容(当文件末尾内容发生变化的时候自动更新)
-
tail查看文件后面几行【默认是后10行)
-
tail-n :_后面接数字,代表显示几行的意思
-
tail-f∶表示持续侦测后面所接的文件,要等到按下[ctrl]-c才会结束tail的侦测
-
-
-
用户和组
-
用户分类
-
用户管理
-
用户密码管理
-
设置用户密码和修改密码 passwd命令:root能够修改任何用户的密码,并且不需要旧密码验证。 其他用户只能修改自己的密码,需要旧密码验证,普通用户需要授权之后才能修改密码。 Passwd用户名
-
-
锁定用户
-
usermod -L 用户名:锁定用户的密码验证过程,防止用户登录。但是如果有切换用户并且不验证身份的操作,锁定用户不生效。 将用户的登录shell设置为nlogin,是直接设置拒绝用户登录,不管身份是否验证,都不允许登录。 passwd -l 用户
-
-
解锁用户
-
Usermod -u 用户名 Passwd -u 用户名
-
-
查看用户密码状态 passwd -S 用户名
-
-
超级用户:root,拥有最大的权限,能够对系统内核进项编译修改。 普通用户:由管理员创建,正常用于登录和远程访问的用户。 服务用户:管理服务进程,访问服务进程的用户,此用户不能登录系统和远程访问。
-
-
组分类
-
基本组;用户默认所属组,或者主要的组。 附加组:属于用户的扩展组,会继承该组所设置的权限。 在Linux中,所有的组都只有访问权限(对文件或目录),没有定义对系统的管理权限。
-
-
id
-
打印当前用户或指定用户的用户ID(UID)、组ID(GID)以及所属的任何附加组的信息
-
显示当前用户的UID、GID和所属组: id 这会产生如下类似的输出: uid=1000(用户名) gid=1000(用户组名) groups=1000(用户组名),27(sudo),999(docker)
-
-
用户文件管理
-
/etc/passwd
-
文件中记录着用户的相关信息,用户可以通过管理用户的命令进行修改,也可以使用vim命令进项修改 Tom:x:1000:1000:tom:/home/tom:/bin/bash:
-
第一段:用户名 第二段:密码或者密码占位符,x表示投影密码(由shadow文件管理密码),!!空密码(不需要密码验证,如服务用户),空白(没有设置密码,但用户需要密码验证),*任意密码验证(服务用户需要身份验证,但是支持匿名访问) 第三段:uid,用户id号,在服务器中每个用户的id号是唯一的,最大值65535,1到1000之间的被常用服务占用,可以手动修改。 第四段:gid,用户所属基本组的id号。 第五段:备注说明 第六段;用户家目录所在位置,宿主目录。 第七段:用户登录时,所执行的shell(运行环境或者运行状态),bash(设置登录环境,建立对话界面),nologin(禁止登录)
-
-
/etc/shadow
-
投影密码文件,用户独立管理用户密码和相关信息。 Tom:x:18620:0:999:7:::
-
第一段:用户名 第二段:密码字符串(加密后) 第三段:最后一次修改密码的时间,从1970年1月1日开始计算 第四段:密码最短使用时间,0表示可以随时修改密码 第五段:密码最大使用时间,99999表示不限期 第六段:密码到期后提醒时间 第七段:密码到期后禁用用户时间 第八段:账户失效时间。密码有效使用时间,到期后修改密码也无法使用,一般使用是在收费项目中。 第九段;保留
-
-
-
用户相关命令
-
创建用户
-
useradd 选项 参数 用户名 useradd zhang3
-
选项: -u:指定给用户id号 useradd -u 2000 zhang3 -g:指定基本组id号或者基本组名 useradd -g root zhang3 -G指定附加组 Usermod -G tech zhang3 useradd -M l4,z3,w5 tech(组) 同时添加所有用户到附加组 -d指定家目录位置 useradd -d /var/ftp/ zhang3 -s:指定用户的执行shell useradd -s /sbin/nologin zhangsan3 注:#符号表示当前用户为超级用户,$表示普通用户 -e:指定用户账户失效时间 useradd -e 2023-2-15 zhang useradd -u 2000 -g 2002 -e 2023-2-15 zhang3 -N不创建与用户同名的组
-
-
修改用户
-
需要修改用户的信息时,可以使用usermod命令修改,或者直接修改配置文件。 usermod 选项 参数 用户名 选项与useradd的相同 -c用户添加备注 usermod -c hh ck -d -m 可重新指定用户的家目录并自动把老的数据迁移过去 -e账户的到期时间 -g变更用户组 G变更扩展组 -L锁定用户禁止用户登录系统 -U解锁用户 -S变更解释器 -u 修改用户的UID usermod -d /var/ftp zhang1
-
vim /etc/passwd 修改用户相关信息
-
-
删除用户
-
userdel 用户名 #只删除用户,保留用户家目录 -r #删除用户时,同时删除家目录
-
-
-
组相关命令
-
组配置文件
-
/etc/group 第一段:组名 第二段:密码占用符 第三段:组ID号 第四段;附加用户名
-
-
创建组
-
groupadd 选项名 组名 -g指定组ID号,GID 500-65535 groupadd jishu
-
-
修改组
-
groupmod -g GID号 组名 #修改组的ID
-
-
删除组
-
groupdel 组名 #如果一个组为某一个用户的基本组,在用户没有被删除之前,该组无法删除。
-
-
-
文件权限
-
权限说明
-
在使用ls -l命令查看文件或者目录时,显示的信息中,第一段包含了文件的权限,共10个字符,第一个字符文件的类型, -表示普通文件, -d表示目录, -b表示块设备(存储文件), -c字符设备, -l软连接。 第二个到第十个字符表示权限,每三个字符为一组,分别表示所属用户 ,所属组,其他用户的权限; -rwxrwxrwx ;r代表读取,w代表写,x代表可执行权限,-代表没有对应的权限。
-
rw- r-- r-- 用户用户组 其它用户 文件 目录 r cat ls w vim touch/mkdir x ./文件名 cd
-
-
-
chmod 表达式 文件名 修改用户对文件的操作权限
-
特殊权位
-
SUID、SGUID、SBIT所有者特殊权位和组权位、粘滞位,使普通用户在执行应用程序或者通过程序调用文件时,临时具备文件所有者的权限。 特殊权位会在x的位置添加s标记,如果小写s表示该文件原有可执行x的权限,如果是大写S表示源文件没有可执行权限。
-
SUID SGID SBIT粘滞位 4 2 1 777 rwxrwxrwX 1755 rwxr-xr-t t=r-x +SBIT 6764 rwsrwSr-- rwS=rw-+SGIDrws=rwx+SUID 5537 r-s-wxrwt r-s=r-X+SUIDrwt =rwx+SBIT
-
-
可分配权限
-
r:读取 w:修改 x:可执行 s:特殊权限 t:粘滞位 当前目录只能属主和root操作,其他人不能操作
-
表达式 分配的权限对象 u:所属用户 chmod u+rw uu g:所属组 chmod g=rwx uu o:其他用户 chmod o+w uu a:所有用户 all chmod a+wx uu
-
-
r :使用数字4表示 w:使用数字2表示 x:使用数字1表示 777数组中第一个数字表示所有者,第二个数字表示所属组,第三个数字表示其他用户。 修改一个文件的权限,所有者读写执行rwx,组读写rw,其他用户读执行rx chmod 765 文件名
-
-
权限分配符,定义符
-
+:在现有的权限基础上添加权限 -:在现有的权限基础上取消权限 =:赋予权限,代替原有权限
-
例如:给a文件设置所有者读写执行权限 chmod u+x a chmod o-w a chmod g=w a
-
-
-
-
chown修改文件属主
-
每个文件和目录都有一个关联的"所有者"和"组"。所有者是一个用户,而组则可以包含多个用户。文件的组所有权决定了属于该组的所有用户对该文件的访问权限
-
chown 所属用户:所属组 文件名 -R使用递归方式,给指定的目录汇总所有文件进行权限或者属主修改 chown :xxxx uu chown ckck uu修改属主不需要冒号,如果加上冒号默认修改组为基本组id
-
命令用来改变文件或目录的用户及/或组所有者
-
如果你只想改变组所有权,可以省略用户名: chown :组名 文件名 这里是一些使用 chown 的例子: 改变文件的所有者: chown username filename 同时改变文件的所有者和组: chown username:groupname filename 改变目录及其内容的所有者(使用 -R 或 --recursive 选项来递归地操作): chown -R username directoryname 改变文件的组所有权,而不改变所有者: chown :groupname filename
-
-
umask 权限掩码
-
设置用户创建目录和文件的默认权限,创建文件系统使用最大权限减去掩码的值,剩余的数值是当前权限。 目录的最大权限:777 文件的最大权限:666 权限掩码默认:022 默认创建目录时;777-022=755 修改掩码值:umask 022掩码值越大,得到的权限越小,创建文件时,权限掩码如果是奇数,再减1.
-
-
-
-
磁盘命令
-
磁盘管理
-
磁盘分区
-
MBR分区
-
MBR:主引导记录,是兼容性非常高的分区模式。分区类型划分为:主分区,扩展分区,逻辑分区。每块硬盘最多创建4个主分区或3个主分区+1个扩展分区。
-
主分区的作用:能够连接0磁道的引导扇区,读取系统启动信息,加载启动内核。过程称为激活,或者活动分区。
-
扩展分区的作用:用于管理逻辑分区的结构,所有逻辑分区都必须在扩展分区上创建。扩展分区不能够直接格式化使用。通过扩展分区,可以增加分区的数量。
-
逻辑分区的作用:用户创建的,用户存储不同数据的分区。
-
-
分区管理
-
fdisk 分区管理命令 -l 查看分区信息 fdisk /dev/硬盘名称 进入指定硬盘的分区管理界面 3硬盘接口 SATA SCSI M.2 sd IDE hd
-
命令字符说明: m :显示命令字符帮助 n :添加一个新的分区 d :删除分区 t :修改分区文件系统类型 p :查询分区信息 w :保持退出 q :不保存退出
-
-
步骤
-
1)给虚拟机添加硬盘 虚拟机 设置 硬盘 添加硬盘reboot 2)给/dev/sdb创建分区 fdisk /dev/sdb 3)输入n创建分区 p 创建主分区 3个或4个主分区 e 创建扩展分区 1个扩展分区 l 创建逻辑分区 逻辑分区 在扩展分区之上数量随意,从5开始,1-4分配给主分区和扩展分区
-
创建主分区n,p
-
子主题 1
-
-
创建扩展分区n,e
-
子主题 1
-
-
创建逻辑分区n,l
-
子主题 1
-
-
删除分区d
-
子主题 1
-
-
修改分区文件系统类型:
-
子主题 1
-
-
查看分区p
-
子主题 1
-
-
-
-
-
格式化
-
格式化分区
-
mkfs.文件系统 分区名
-
把第二块SCSI磁盘的一个逻辑分区格式化为XFS mkfs.xfs /dev/sdb5
-
mkfs.ext4 /dev/sdb1 mkfs.ext4 #格式化分区为ext4类型 mkfs.vfat #格式化为fat类型,一般U盘使用此格式 mkfs.xfs #xfs类型,存储文件的效率比较高
-
-
mkfs -t 文件系统 分区名
-
把第二块SCSI磁盘的一个主分区格式化为XFS mkfs -t xfs /dev/sdb1
-
-
-
查看分区ID号和文件系统类型
-
blkid命令 lsbulk -f 查看挂载情况 df 查看内存free -m
-
-
-
建立交换分区 交换分区又称为虚拟内存swap
-
创建交换分区有两种方法:
-
将整个分区格式化为swap。
-
mkswap /dev/sdb5 #建立交换分区
-
swapon 分区名 #启用交换分区 swapon /dev/sdb5
-
swapoff 分区名 #停用交换分区 swapoff /dev/sdb5 #关闭交换分区,不能将所有的交换分区都关闭。
-
mkfs -t vfat -F 32 分区名 把分区格式化FAT32 mkfs.vfat -F 32 分区名
-
-
创建一个块设备文件,构建swap
-
dd if=/dev/zero of=/swap1 bs=1M count=2048 格式说明: dd 创建块设备(存储设备) if= 输入文件 of= 输出文件 bs= 基本存储块容量 count= 存储块的数量 mkswap /swap1 swapon /swap1
-
[root@server0 ~]# dd if=/dev/zero of=/swapfile bs=1024k count=512 512+0 records in 512+0 records out 536870912 bytes (537 MB) copied, 4.96061 s, 108 MB/s 使用 mkswap 命令来格式化交换文件 [root@server0 ~]# mkswap /swapfile Setting up swapspace version 1, size = 524284 KiB no label, UUID=78b8c7bf-b898-450e-ab64-d4d78f256f1e 启用交换分区 [root@server0 ~]# swapon /swapfile swapon: /swapfile: insecure permissions 0644, 0600 suggested. 查看交换分区 [root@server0 ~]# swapon -s Filename Type Size Used Priority /swapfile file 524284 0 -1 #写入开机启动 [root@server0 ~]# cat /etc/fstab /swapfile swap swap defaults 0 0 创建大小为512M的交换文件: [root@server0 ~]# dd if=/dev/zero of=/swapfile bs=1024k count=512 512+0 records in 512+0 records out 536870912 bytes (537 MB) copied, 4.96061 s, 108 MB/s 使用 mkswap 命令来格式化交换文件 [root@server0 ~]# mkswap /swapfile Setting up swapspace version 1, size = 524284 KiB no label, UUID=78b8c7bf-b898-450e-ab64-d4d78f256f1e 启用交换分区 [root@server0 ~]# swapon /swapfile swapon: /swapfile: insecure permissions 0644, 0600 suggested. 查看交换分区 [root@server0 ~]# swapon -s Filename Type Size Used Priority /swapfile file 524284 0 -1 #写入开机启动 [root@server0 ~]# cat /etc/fstab /swapfile swap swap defaults 0 0
-
-
-
-
-
挂载和卸载
-
mount
-
将设备文件挂载到一个目录上,使用目录的功能进行文件和子目录的管理。
-
mount 设备 挂载点 挂载分区到/data目录: mount /dev/sdb1 /data 一个设备可以在多个挂载点进行挂载使用。一个挂载点可以被多个设备挂载,但是只能访问最后一次挂载的设备文件。 df 查看挂载点信息 mount 不使用选项时,显示所有挂载信息。
-
-
挂载iso镜像文件
-
dd if=/dev/sr0 of=/abc.iso #将光盘的内容制作为iso文件 mount -o loop 镜像文件 挂载点 mount -o loop /abc.iso /web
-
-
卸载挂载点
-
如果是更换光盘的操作,一定先卸载挂载点,在更换光盘,否则挂载点会出错。 umount 挂载点 先卸载挂载点,在卸载硬盘 umount 硬件文件 umount /data umount /dev/sdb1
-
-
自动挂载
-
将挂载设备添加到/etc/fstab文件中,系统启动时,会自动挂载设备。 永久挂载vim /etc/fstab 添加: ① ② ③ ④ ⑤ ⑥ /dev/sdb1 /cctv xfs defaults 0 0
-
第1段:分区名(要挂载的硬件文件) 第2段:挂载点名称 第3段:文件系统类型 第4段:默认选项 第5段:分区备份标记,0表示不备份,1表示可以使用dump工具备份 第6段:分区检测标记,0表示不检测,1表示开机时自动检测。
-
-
mount -a #挂载所有配置文件(fstab)中的设备。 umount -a #卸载所有设备,根分区、临时分区、正在被使用的交换分区不能被卸载。 lost+found是一个本地设备挂载标记,没有实际作用
-
-
-
-
查看磁盘和内存命令
-
df显示指定磁盘文件的可用空间 参数: -h:使用-h选项自动以KB、MB、GB的单位来显示,可读性高~~~(最常用)重点是看使用率,避免使用率超过80%类似我们windows的CDEF盘总览
-
tmp临时文件,主要看根目录
-
-
du,显示每个文件和目录的磁盘使用空间 参数: -h :以人们较易读的容量格式(G/M)显示 du -h以K(kb) M(兆)G为单位显示,提高可读性~~~(最常用的一个)
-
./代表当前目录
-
du-sh目录的大小
-
du -sh ./*当前目录下的所有文件
-
-
free显示系统使用和空闲的内存情况 参数:-k :以KB为单位显示内存使用信况。(畎认单位) -m :以MB为单位显示内存使用情况。 -g:以GB为单位显示内存使用信况。 total:总计物理内存的大小 used:已使用多大 free:可用有多少 shared:多个进程共享的内存总额 buffers/cached:磁盘缓存的大小 available:可回收利用的大小swap,指的是一个交换分区或文件
-
子主题 1
-
-
-
-
系统管理命令
-
hostname
-
hostname显示主机名
-
主机名
-
-
-
系统状态
-
uname
-
命令可以提供关于你的系统内核、硬件平台、处理器类型等的信息
-
-a:显示所有可用的系统信息(内核名称、节点名称、内核版本、内核发布日期、系统架构等)。 -s:显示内核名称(默认行为)。 -n:显示网络节点的主机名。 -r:显示内核版本。 -v:显示内核的版本和发布日期。 -m:显示机器硬件名称(例如x86_64,i686等)。 -p:显示处理器类型。 -i:显示硬件平台。 -o:显示操作系统
-
-
uptime
-
它用于显示系统自上次启动以来已运行的时间。除了显示系统运行时间之外,uptime 还可以提供当前登录用户的数量以及系统负载平均值。负载值越低越好。
-
14:17:01 up 5:39, 2 users, load average: 0.42, 0.70, 0.83 14:17:01:当前的系统时间。 up 5:39:系统已经运行了5小时39分钟。 2 users:当前有2个用户登录系统。 load average: 0.42, 0.70, 0.83:显示了过去1分钟、5
-
-
who
-
显示当前登录到系统的用户信息
-
用户名:显示登录用户的用户名。 终端名:显示用户登录的终端设备名称(如tty1, pts/0等)。 登录时间:显示用户登录系统的时间。 从哪里登录:对于远程登录,它还可能显示用户登录的主机名或IP地址。
-
-a:显示所有选项的信息。 -H:在输出的列上显示标题。 -q:显示登录用户的用户名和总数。 -r:显示当前运行级别。 -m:仅显示关于当前终端的信息。
-
如果你只想知道当前有多少用户登录,可以组合使用 who 和 wc -l 命令来计数:who | wc -l
-
-
last
-
通常是从 /var/log/wtmp 文件中读取的。此命令显示系统上所有用户的登录和注销记录,以及系统重启和关机事件
-
用户名:登录的用户。 终端:用户登录的终端设备,如tty1、pts/0等。 登录IP:如果是远程登录,还会显示用户从哪个IP地址登录。 登录时间:用户登录的日期和时间。 注销时间:用户注销的日期和时间或当前会话的持续时间。 持续时间:会话持续的时间,如果会话仍然活跃,则显示为 still logged in。
-
这个命令还有一些选项,可以用来过滤和显示特定的信息,例如: -f:指定另一个文件来代替 /var/log/wtmp。 -R:不显示主机名字段。 -x:显示系统关机条目和运行级别更改。 -n:显示最近的 n 行记录。 例如,如果你要查看最近10次的登录记录,可以使用以下命令: last -n 10
-
-
netstat
-
可以帮助您监测和诊断网络连接问题,检查活动网络连接(包括 TCP 和 UDP 端口)以及查看路由表、接口统计
-
-a:显示所有活动的网络连接以及计算机监听的端口。 -n:以数字形式显示地址和端口号,不进行名称解析(例如,不将端口80显示为http)。 -t:显示TCP连接。 -u:显示UDP连接。 -l:仅显示正在监听的端口。 -r:显示路由表。 -s:按协议显示统计信息,如TCP、UDP、ICMP等。 -p:显示哪个进程正在使用特定的套接字或端口(在某些系统上需要管理员权限)。
-
-
netstat -i 命令用于显示本机接口的网络统计信息。当你在命令行中执行这个命令时,它将列出所有网络接口并显示关于每个接口的数据,例如已传输和接收的数据包数量,错误,丢弃的数据包数等。
-
Iface 列显示接口名称。 MTU 列显示最大传输单元(Maximum Transmission Unit)。 RX-OK, RX-ERR, RX-DRP, 和 RX-OVR 列分别展示了接收到的数据包数、接收错误、丢包数、和溢出错误。 TX-OK, TX-ERR, TX-DRP, 和 TX-OVR 列展示了传输数据包数、传输错误、丢包数、和溢出错误。 Flg 列显示了各个接口的标志,例如 BMRU 代表广播 (B), 多播 (M), 运行 (R), 和 更新 UKernel Interface table Iface MTU RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR Flg eth0 1500 1126523 0 0 0 987654 0 0 0 BMRU lo 65536 300 0 0 0 300 0 0 0 LRU
-
-
-
-
统计和文件编辑
-
wc
-
用于统计给定文件的换行符、单词和字节的数量。如果没有给定文件,或者文件名为-,它会读取标准输入。
-
-l 或 --lines:只统计行数。 -w 或 --words:只统计单词数。 -c 或 --bytes:只统计字节数。 -m 或 --chars:只统计字符数,这在多字节字符集中很有用。 -L 或 --max-line-length:打印最长行的长度。 如果不加任何选项,wc将输出所有三项统计(行数、单词数、字节数)
-
-
统计文件example.txt的行数、单词数和字节数: wc example.txt 仅统计文件example.txt的行数: wc -l example.txt 统计多个文件file1.txt和file2.txt的行数、单词数和字节数,并显示总计: wc file1.txt file2.txt
-
-
cut
-
它用于从文件中提取文本列
-
-b 或 --bytes=LIST:根据字节位置选择,LIST 是一个由逗号或连字符分隔的数字列表,用来指定提取哪些字节。 -c 或 --characters=LIST:根据字符位置选择,LIST 的指定方式与 -b 相同。 -f 或 --fields=LIST:根据字段选择,LIST 是字段的列表,通常与 -d 选项一起使用来指定字段的分隔符。 -d 或 --delimiter=DELIM:与 -f 一起使用,指定字段的分隔符,默认是制表符。 --complement:选取未被 LIST 指定的部分。 [FILE]... 是一个或多个文件名,如果没有指定文件或者文件名为 -,则 cut 会读取标准输入。
-
从文件 file.txt 中提取第一个字段(假设字段由制表符分隔): cut -f1 file.txt 从文件 file.txt 中选择第 1 到第 5 字节: cut -b1-5 file.txt 使用逗号作为字段分隔符,提取文件 file.txt 中的第二字段: cut -d',' -f2 file.txt
-
-
-
diff
-
用于比较两个文件的内容差异。它逐行比较文本文件,显示两个文件之间的差异。这个工具在编程、文档校对和管理配置文件等领域中非常有用。
-
-c 或 --context:显示差异的上下文,即除了差异行还显示一些没有变化的行。 -u 或 --unified:以统一格式显示差异,这是一种更紧凑的显示方式。 -i 或 --ignore-case:在比较时忽略大小写的差异。 -w 或 --ignore-all-space:忽略所有空白字符的差异。 -b 或 --ignore-space-change:只忽略空格数量的差异。 -B 或 --ignore-blank-lines:忽略空白行的差异。 -r 或 --recursive:递归地比较目录中的文件。
-
比较两个文件 file1.txt 和 file2.txt: diff file1.txt file2.txt 以统一格式显示 file1.txt 和 file2.txt 的差异,并显示差异的上下文(例如,前后各3行): diff -u -C 3 file1.txt file2.txt 递归比较两个目录 dir1 和 dir2: diff -r dir1 dir2 忽略大小写,比较两个文件 file1.txt 和 file2.txt: diff -i file1.txt file2.txt 可以用来仅报告文件是否不同,而不显示具体的差异内容 diff --brief 文件1 文件2
-
-
-
uinq
-
-c 或 --count:在每行前加上该行出现的次数。 -d 或 --repeated:仅打印重复出现的行,每组重复的行打印一次。 -u 或 --unique:仅打印唯一的行。
-
显示文件中的唯一行: uniq 文件.txt 这会输出所有行,并将连续的重复行合并为每行的单个实例。 计算文件中每行出现的次数: uniq -c 文件.txt 这会在每行前面加上该行在文件中出现的次数。 仅显示多次出现的行: uniq -d 文件.txt 这会列出输入中重复的行。 仅显示唯一的行: uniq -u 文件.txt 这会列出在输入中只出现一次的行。
-
-
于报告或过滤出文件中的重复行。通常,uniq 用于排序后的输出,因为它只能检测到连续的重复行。这个命令在去除或计数重复条目时很有用。
-
-
sort
-
用于对文本文件的行进行排序。默认情况下,sort 会按照升序(从小到大)对输入的文本文件中的行进行排序。
-
-n 或 --numeric-sort:根据字符串数值部分的数值大小进行排序。 -r 或 --reverse:逆序排序(从大到小)。 -k 或 --key=字段1,字段2:指定排序时使用的字段或列。 -u 或 --unique:与 uniq 类似,删除重复的行,仅保留唯一的行。 -o 或 --output=文件:将排序结果写入到指定的文件。
-
基本排序,按字母顺序排序文件: sort 文件.txt 按数字进行排序: sort -n 文件.txt 按逆序进行排序: sort -r 文件.txt 按特定字段排序(例如,按第二列排序): sort -k2 文件.txt 排序并去除重复行: sort 文件.txt | uniq 或者使用 sort 的 -u 选项: sort -u 文件.txt 将排序结果输出到另一个文件: sort 文件.txt -o 排序后的文件.txt
-
-
-
stat
-
用于显示文件或文件系统状态的工具。它提供了关于文件/文件夹的详细信息,包括文件大小、块大小、总块数、inode编号、权限(以八进制和符号格式)、所有者、组、最后访问时间、最后修改时间和创建时间(在支持该特性的文件系统上)。
-
获取文件的状态信息: stat 文件名 这会显示指定文件的所有状态信息。 获取文件系统的状态信息: stat -f 文件系统名 这会显示指定文件系统的状态信息。
-
-
-
whereis
-
用来定位可执行文件、源代码文件、帮助手册等与程序相关的文件的位置。它特别快速,因为它使用预先构建的数据库来查找文件,而不是在整个文件系统中实时搜索。
-
whereis ls
-
ls: /bin/ls /usr/share/man/man1/ls.1.gz
-
-
-
which
-
专门用来查找将要执行的二进制文件,即它搜索用户的 PATH 环境变量中定义的目录。 它用于确定当您在shell中输入一个命令时,将会执行哪个程序的路径。 which 只返回第一个找到的可执行文件的路径,这通常是系统将实际执行的文件。 如果在 PATH 中没有找到命令,which 不会返回任何结果
-
which ls
-
/bin/ls
-
-
-
clear
-
clear清屏
-
-
top
-
Top动态显示当天耗费资源最多的进程 M按照内存从高到低 p按照cpu从高到低 q退出 以交互式的方式实时显示系统中运行的进程信息,包括CPU占用率、内存占用率、进程ID、进程名等。它会动态更新显示,可以方便地查看系统当前的运行情况,以及了解哪些进程占用了较多的资源htop需要安装,提供了一个彩色的、可视化的界面,用于监控系统的实时进程活动和资源使用情况
-
top实时查看进程 0zombie
-
子主题 2
-
-
-
ping命令
-
用于测试主机之间的网络连通性。它发送ICMP(Internet Control Message Protocol)回显请求消息给目标主机,并监听回显应答消息。通过 ping 命令,可以检测目标主机是否可达,以及来回的通信延迟(即往返时间,或 RTT)
-
-c [count]:发送指定数量的回显请求后停止,发起ping的次数。ping -c 3 192.168.3.1 -i [interval]:两次连续请求之间的间隔时间(秒)。ping -c 3 -i 2 192.168.3.1 -l 指定网卡名称 -t [TTL]:设置IP包的生存时间(Time To Live)。 -s [size]:发送的数据包大小(字节)。 -W [timeout]:等待回显应答消息的最长时间(秒)最长等待时间。
-
-
tracepath
-
用于追踪数据包从本地主机到目标主机所经过的路径。tracepath 发送数据包并记录每一跳的IP地址,从而确定数据包的路径
-
tracepath [options] [destination] 其中 [destination] 是目标主机的IP地址或主机名 -n:不进行主机名解析,只显示IP地址。 -l [length]:设置每次发送数据包的长度。 -m [max_hops]:设置最大跳数,即最多经过多少个节点。
-
tracepath example.com在执行该命令时,你将看到类似于以下的输出,显示从你的计算机到 example.com 的每一跳路线上的节点: 1: local_host (192.168.1.1) 0.123ms pmtu 1500 2: isp_gateway (203.0.113.1) 0.256ms 3: isp_router (203.0.113.2) 0.462ms 4: ... 5: core_router (198.51.100.14) 20.461ms 6: example.com (93.184.216.34) 22.481ms reached Resume: pmtu 1500 hops 6 back 55
-
tracepath -n google.com 1: 192.168.1.1 0.123ms pmtu 1500 2: 203.0.113.1 0.256ms 3: 203.0.113.2 0.462ms 4: ... 5: 198.51.100.14 20.461ms 6: 172.217.14.238 22.481ms reached Resume: pmtu 1500 hops 6 back 55 第一列显示了跳数。 第二列显示了每跳的节点IP地址。 第三列显示了到该节点的往返时间。 最后一行“Resume:”给出了一些额外的信息,包括测量的PMTU和到达目标的跳数。
-
-
-
ps查看进程
-
ps用来显示当前进程的状态
-
"a"选项表示显示所有用户的进程,而不仅仅是当前用户的进程。这个命令将列出系统中所有正在运行的进程,以及它们的详细信息
-
"u"选项表示以用户为中心的格式显示进程的详细信息
-
"x"选项表示显示没有控制终端的进程,通常用于显示后台进程。
-
ps:-e︰显示系统中所有正在运行的进程,而不仅仅是当前用户的进程。这个命令将列出系统中所有进程的简要信息,包括它们的进程ID(PID)、终端、CPU占用 "ps -a"命令将显示与当前终端相关的所有进程,包括其他用户的进程。
-
ps-f:显示程序间的关系 ps-ef显示系统中所有进程的静态信息,包括每个进程的详细信息,如进程ID、父进程ID、CPU占用率、内存占用率、进程状态等。它会一次性显示所有进程的信息,不会像"top"命令那样动态更新。
-
ps -ef | grep python查找python进程UID:用户ID
-
PID:进程ID
-
PPID:父进程’
-
C :CPU占用率
-
STIME:系统启动时间
-
TTY:登入者的终端机位置
-
'TIME :耗时
-
CMD:COMMAND命令,行为
-
子主题 15
-
-
nice它用于启动一个进程并给予其一个特定的“nice值”,该值影响进程的优先级。
-
默认情况下,当您启动一个进程时,它会继承父进程的nice值(通常是0)。使用nice命令,可以在启动进程时给其分配一个新的nice值,从而改变它在获取CPU时间时的优先级。
-
在Linux中,进程的优先级决定了CPU时间分配的相对顺序,nice值的范围从-20(最高优先级)到19(最低优先级)。
-
nice -n 10 command nice -n 10 bash 其中command代表你想要执行的命令。-n选项后面跟着的数字是你希望分配给该进程的nice值。
-
如果你想要改变一个已经在运行的进程的nice值,可以使用renice命令。例如,如果你想要将进程ID为1234的进程的nice值改为10 renice 10 -p 1234
-
需要注意的是,只有root用户或者具有相应权限的用户才能将进程的nice值设置为低于0的值。普通用户通常只能增加自己进程的nice值(即降低优先级)。
-
-
pidof查找具有特定名称的进程的进程ID(PID)
-
pidof sshd
-
-
pstree用于显示系统中运行的进程的树状图
-
仅打印 pstree: pstree打印包含进程PID的 pstree: pstree -p 打印特定用户的进程树: pstree username 打印树状图并高亮显示当前进程和其祖先: pstree -h 打印特定PID的进程树: pstree -p PID
-
-
进程状态
-
运行(Running):进程当前正在执行或者在等待CPU时间片。
-
等待(Waiting):进程正在等待某个条件满足,比如等待I/O操作完成或者等待信号。
-
停止(Stopped):进程已经停止执行,通常是收到了SIGSTOP信号。
-
僵尸(Zombie):进程已经终止,但是其父进程还没有对其进行善后处理,这种状态的进程通常会被init进程收养并进行清理。
-
僵尸(Defunct):类似于僵尸进程,表示进程已经终止,但是其父进程还没有对其进行善后处理。
-
-
kill
-
kill杀掉进程
-
kill 8963杀掉pid号为8963的进程
-
kill-9∶强制杀掉进程eg. kill -9 9332强制杀掉pid号为9332的进程
-
killall sshd 需要安装
-
-
shutdown关机
-
reboot重启
-
ping
-
ping确定网络和各外部主机的状态 -t连续性的
-
finalshell是否和远端服务器网络连通
-
-
-
date
-
date显示或设置系统当前时间(不加参数,默认显示系统当前的时间)
-
date-s ∶将系统时间设为所设定的时间
-
修改日期: date -s 日期时间, eg. date -s 2019-9-19
-
修改时间: date -s 时间, eg.date -s 15:30:113
-
同时修改时间和日期: date -s“日期时间时间“,eg. date -s “2019-9-19 15:30:11”
-
-
-
-
firewall防火墙
-
防火墙图形化界面
-
运行时相当于临时,重启无效 永久:永久生效
-
-
端口
-
子主题 1
-
端口转发
-
子主题 1
-
-
-
协议
-
子主题 1
-
-
firewall命令
-
--list-all:显示当前区域所有网卡配置参数,资源,端口等信息 --add-service=服务名:设置默认区域允许该服务的流量 --remove-service=服务名:设置默认区域不允许该服务的流量 --add-port=端口号/协议:设置默认区域允许该端口的流量 --remove-port=端口号/协议:设置默认区域不允许该端口的流量 --reload:永久生效的配置立即生效 --permanent:配置永久生效 --query-service=服务名:查询该服务是否被允许 --firewall-cmd --state查看防火墙状态 --firewall-cmd --get-active-zones查看防火墙活动区域
-
firewall-cmd - add service=http firewall- cmd - permanent -- add- service=https firewall- cmd -- reload更新 1不允许https和http流量通过 2允许tcp协议8080端口流量通过,立即永久生效 注意:在端口号后面需要注意添加协议, 我们写配置永久生效后,需要我们输入--reload 让他生效
-
-
-
-
常用服务搭建
-
Apache服务器搭建
-
firewall- cmd - permanent -- add- service=http yum install -y htttpd*
-
systemctl restart httpd重启Apache服务
-
主目录:我们页面的内容/var/www/html 我们创建的文件后缀必须是index.html 在浏览器中输入IP地址就能访问到了
-
提供HTTP服务的服务器软件。它是一种基于客户端-服务器模型的软件,可以接收来自客户端的HTTP请求,并返回相应的HTTP响应。
-
-
DNS服务器搭建
-
解析IP地址 域名(网址)跟IPi地址进行相互解析 端口号53 Host文件,本地缓存文件
-
127.0.0.1 本地回环地址 localhost 域名
-
Centos8 安装dns会失败,先删除再安装
-
三大配置文件
-
主配置文件:/etc/named.conf
-
子主题 1
-
-
区域配置文件:/etc/named.rfc1912.zones
-
区域数据配置文件:/var/named/named.localhost
-
复制一个,然后去修改这个复制的文件 cp-p named.localhost whoaliang.com.zone
-
-
named-checkconf可以检查配置文件
-
配置文件写完后必须重启服务 systemctl stop firewalld.service关闭防火墙 systemctl restart named.sevice重启dns
-
配置文件写错了就是下面这个
-
报错,修改他的地址
-
修改里面的地址为自己的IP地址
-
出现问题
-
修改第三个区域
-
-
正确的
-
-
-
Samba服务器
-
linux和windows之间通讯软件 重要的两个服务,smb和nmb
-
linux配置
-
yum -y install samba 启动服务:systemctl restart smb(nmb) 防火墙:samba,samba-client
-
配置文件:/etc/samba/smb.conf
-
配置文件: Comment:描述 Path:共享路径 Browseable=yes/no:指定共享是否可以浏览 Writable=yes/no:指定该路径是否可写 Available=yse/no:执行该路径是否可用 Public=yes/no:指定guest是否可以共享
-
记得重启和创建目录 systemctl restart smb
-
-
-
windows
-
输入虚拟机ip地址
-
当你访问后(权限问题)
-
去linux赋予权限
-
-
-
-
dhcp服务器
-
安装yum -y install dhcp
-
动态主机配置协议,是一个局域网的网络协议,他是由服务器控制一段IP地址范围,客户机登陆服务器时就可以自动获取IP地址和掩码 好处: 1.减少管理员的工作量 2.避免IP冲突 3.当网络更改IP地址时,不需要重新配置每个用户的IP地址 4.提高IP地址利用率 5.方便客户端配置 (仅主机,昨天设置的DHCP自动获取要取消)
-
分配方式 自定分配: 手动分配: 动态分配:
-
-
配置文件:/etc/dhcp/dhcpd.conf 进程启动文件:/usr/sbin/dhcpd 安装dncp.x86-64 案例:/usr/share/doc/dhcp*/dhcpd.conf.example 配置文件注意事项: 1.#他是注释,不用管 2.除了)后面不加;,任何一句话后面都需要加;
-
参数: default-lease-time:默认租期时间 max-lease-time:使用者自己设定租约时间,不能超过这个时间 option name:分配域名
-
客户端用的内容 释放地址:dhclient -r 获取地址:dhclient 查看网关:route
-
-
动态写法: Subnet 网络号 netmask 掩码{ range ip1 ip2 } 固定写法 host 自定义名字{ hardware ethernet fixed-address IP地址 } 他的说明书:/usr/share/doc/dhcp-4.2.5
-
子主题 1
-
-
写配置文件后,出现-xe,不用想别的问题,就是配置文件写错了 写的没问题,但是就是报错,最简单的方式是复制他的文本文件
-
固定IP地址,你需要给第二台计算机一个固定的IP地址 在我们客户端地址没改变的时候, 从新获取IP地址:dhclient -r 在dhclient 如果都不行,客户端重启电脑
-
-
安装dhcp出现的这种错误 yum 文件挂载的路径和挂载的路径不一致
-
如果出现客户端ip不更新有线设置改为ens33 有线设置不连接,windows重启vm网卡
-
-
-
-
调度任务
-
CronTab周期性任务
-
-cron是一个进程,让linux周期性执行某个命令 Crontab是一个命令,可以设置linux周期性执行某个命令,重复性任务 -u设置某个用户的周期工作(root用户) -e创建和编辑工作内容 -l查看当前计划任务 -r移除某条内容 -u编辑他人的计划任务 * * * * * * 1.分钟:可以从 0-59 之间任何数值 2.2.小时:可以从 0-23 之间任何数值 3.天日期:可以从 1-31之间任何数值 4.月份:可以从 1-12之间任何数值 5.星期几:可以从 0-7 之间任何数值(0和7都是星期日) 6.要执行的命令,执行自己写的脚本 特殊字符 *:任何时刻都可以 ,:代表分隔 -:代表范围 /n:(n代表数字)每隔n单位
-
1,每小时的第 15 分 45 分执行一个命令 15,45 * * * * command 2.7 点到 10 点的第 10 分钟和 50 分钟都执行命令 10,50 7-10 * * * command 3.每隔一天的 7点到 11 点,第 20 分钟执行命令 20 7-11 */1(特别注意要带*) * * command 4.每周一的 8-11 点第 25 分钟执行命令 25 8-11 * * 1 command 5.每天 9 点-16 点之间,每隔 15 分钟执行命令 */15 9-16 * * * command 6.每周六,周日的 3 点 30 分执行命令 30 3 * * 6, 7 command 这个任务写到了/var/spool/cron
-
whereis tar 用于定位二进制程序、源代码文件和手册页的路径。要找到 tar 程序的位置 tar: /bin/tar /usr/share/man/man1/tar.1.gz
-
-
-
at一次性任务
-
第一种交互式 systemctl start httpd systemctl stop firewalld at 11:00 systemctl stop httpd ctrl +d systemctl start atd systemctl status atd
-
第二种 一行写法 echo echo "systemctl start httpd" at 11:20
-
-
08-02
1613
![](https://csdnimg.cn/release/blogv2/dist/pc/img/readCountWhite.png)