站长seo查询,深圳哪家网站建设公司好,域名ip查询查网址,免费的seo优化Linux 一、为什么要学linux二、目录介绍三、vi / vim编辑器四、网络配置4.1、修改 IP 地址4.2、配置主机名4.2.1、修改主机名称4.2.2、修改 hosts 映射文件 五、系统配置5.1、service 服务管理5.2、systemctl5.3、防火墙5.4、关机重启命令5.5、查看系统内核与版本 六、常用命令… Linux 一、为什么要学linux二、目录介绍三、vi / vim编辑器四、网络配置4.1、修改 IP 地址4.2、配置主机名4.2.1、修改主机名称4.2.2、修改 hosts 映射文件 五、系统配置5.1、service 服务管理5.2、systemctl5.3、防火墙5.4、关机重启命令5.5、查看系统内核与版本 六、常用命令6.1、文件目录类1、pwd 显示当前工作目录的绝对路径2、ls 列出目录的内容3、cd 切换目录4、mkdir 创建一个新的目录 、 rmdir 删除一个空的目录5、touch 创建空文件6、cp 复制文件或目录7、rm 删除文件或目录8、mv 移动文件与目录或重命名9、cat 查看文件内容10、more 文件内容分屏查看器11、less 分屏显示文件内容12、echo输出内容到控制台14、tail 输出文件尾部内容15、 输出重定向 和 追加16、ln 软链接17、history 查看已经执行过历史命令18)、时间日期类19)、traceroute路由跟踪 6.2、用户管理命令1、useradd 添加新用户2、passwd 设置用户密码3、id 查看用户是否存在4、cat /etc/passwd 查看创建了哪些用户5、su 切换用户6、userdel 删除用户7、sudo 设置普通用户具有 root 权限8、usermod 修改用户9、groupadd 新增组10、groupdel 删除组11、groupmod 修改组12、cat /etc/group 查看创建了哪些组 6.3、文件权限类1、文件属性2、chmod 改变权限3、chown 改变所有者4、chgrp 改变所属组 6.4、搜索查找类1、find 查找文件或者目录2、locate 快速定位文件路径3、grep 过滤查找及 | 管道符 6.5、压缩和解压类1、gzip/gunzip 压缩2、zip/unzip 压缩3、tar 打包 6.6、磁盘查看和分区类1、du 查看文件和目录占用的磁盘空间2、df 查看磁盘空间使用情况3、lsblk 查看设备挂载情况4、mount/umount 挂载/卸载5、fdisk分区 6.7、进程管理类1、ps 查看当前系统进程状态2、kill 终止进程3、pstree 查看进程树4、top 实时监控系统进程状态5、netstat显示网络状态和端口占用信息6、lsof 用于列出系统上打开的文件及其相关信息7、crontab 定时任务设置8、tcpdump抓包 七、软件包管理7.1、BPM1、RPM 安装命令rpm -ivh2、RPM 查询命令rpm -qa3、RPM 卸载命令rpm -e 7.2、YUM 仓库配置1、YUM 的常用命令 八、其他服务器常用知识8.1、RAID冗余独立磁盘阵列8.2、SFTP 远程服务器文件传输8.3、sslscan 评估服务器的 SSL/TLS 配置8.4、rsync快速删除大量文件8.5、实时查看磁盘增减情况 一、为什么要学linux
因为我们要部署服务Linux系统一直以其稳定性而闻名它们可以连续运行多年而不发生任何重大问题。事实上很多Linux用户都从未在自己的环境中遇到过系统崩溃的情况。相对windows而言挂起和崩溃完全是一种常态。
Windows由于是商业产品源代码封闭我们无法知道微软在里面做了什么手脚。而Linux由于是源代码开放操作系统不存在这个问题 二、目录介绍
linux系统中一切皆文件 /bin 是binary的缩写这个目录存放着最经常使用的命令通过上方桌面可以看到bin文件夹有个箭头是链接到 /usr/bin下相当于快捷方式进入/bin和/usr/bin下是一模一样的 /sbin s就是super User的意思这里存放的是系统管理员使用的系统管理程序。 /home 存放普通用户的主目录在Linux中每个用户都有一个自己的目录一版该目录名是以用户的账号命名的。 /root 该目录为系统管理员也称为超级权限者的用户主目录。 /lib 系统开机所需要最基本的动态连接共享库其作用类似于windows里的DLL文件。几乎所有的应用程序都需要用到这些共享库。 /etc 所有的系统管理所需要的配置文件和子目录。 /usr 这是一个非常重要的目录用户的很多应用程序和文件都放在这个目录下类似于windows下的program fies目录。 /boot 这里存放的是启动linux时使用的一些核心文件包括一些连接文件以及镜像文件自己的安装别放这里。 /proc 这个目录是一个虚拟目录它是系统内存的映射我们可以通过直接访问这个目录来获取系统信息。 /srv service缩写该目录存放一些服务启动之后需要提取的数据。 /sys 这是linux2.6内核的一个很大的变化。该目录下安装了2.6内核中新出现的一个文件系统sysfs。 /tmp 这个目录是用来存放一些临时文件的。 /dev 类似于windows的设备管理器把所有的硬件用文件的形式存储。管理着所有设备例如CPU、硬盘等等 /media linux系统会自动识别一些设备例如U盘、光驱等等当识别后linux会把识别的设备挂载到这个目录下。 centos7迁移到/run/media /mnt 系统提供该目录是为了让用户临时挂载别的文件系统的我们可以将外部的存储挂载在/mnt上然后进入该目录就可以查看里面的内容了。和media差不多 /opt 这是给主机额外安装软件所摆放的目录。比如你安装一个mysql数据库则就可以放在这个目录下。默认是空的。 /var 这个目录中存放着在不断扩充的东西我们习惯将那些经常被修改的目录放在这个目录下。包括各种日志文件。 /lostfound 这个目录一般情况下是空的当系统非法关机后这里就存放了一些文件。 /www /www目录可以用于存储Web应用程序或网站文件/www目录没有特别的用途它只是一个常规目录可以根据需要进行使用和管理。
三、vi / vim编辑器
用户主机名 组成 ~号代表当前目录位置#号代表管理员用户普通用户都是$号 VI 是 Unix 操作系统和类 Unix 操作系统中最通用的文本编辑器。VIM 编辑器是从 VI 发展出来的一个性能更强大的文本编辑器。可以主动的以字体颜色辨别语法的正确性方便程序设计。VIM 与 VI 编辑器完全兼容。 模式转换
进来默认一般模式想要编辑文本就按i进入编辑模式 vim常用语法
一般模式 编辑模式
按『Esc』键 退出编辑模式之后所在的模式为一般模式。
命令模式 四、网络配置
4.1、修改 IP 地址
vim /etc/sysconfig/network-scripts/ifcfg-ens33执行 service network restart 重启网络使网络生效。
4.2、配置主机名
4.2.1、修改主机名称
1、查看当前服务器主机名称
hostname2、通过编辑/etc/hostname 文件修改主机名
vim /etc/hostname修改完重启后就生效了。
4.2.2、修改 hosts 映射文件
vim /etc/hosts添加映射保存后可以直接访问service就可以访问到220.151 ip了
五、系统配置
5.1、service 服务管理
Linux 中的进程和服务 计算机中一个正在执行的程序或命令被叫做“进程”process。 启动之后一只存在、常驻内存的进程一般被称作“服务”service。
service 服务名 start | stop |· restart | status查看服务的方法/etc/init.d/服务名 ,发现只有两个服务保留在 service
chkconfig 设置后台服务的自启配置 2、开启/关闭 network(网络)服务的自动启动
chkconfig network onchkconfig network off3、开启/关闭 network 服务指定级别的自动启动
chkconfig --level 指定级别 network on5.2、systemctl
1、基本语法
systemctl start | stop | restart | status 服务名2)、查看服务的方法/usr/lib/systemd/system
cd /usr/lib/systemd/systemll 命令查看所有服务
systemctl 设置后台服务的自启配置
1、查看所有服务开机启动状态
systemctl list-unit-files2、关掉指定服务的自动启动
systemctl disable service_name3、开启指定服务的自动启动
systemctl enable service_name5.3、防火墙
1)、查看、更改防火墙状态
systemctl status firewalld #查看防火墙状态systemctl stop firewalld # 关闭防火墙systemctl start firewalld # 开启防火墙systemctl enable firewalld.service # 开机自启动防火墙systemctl disable firewalld.service # 开机不自启动防火墙2、防火墙开放、删除端口
firewall-cmd --list-ports #查询所有开放的端口firewall-cmd --list-all #查看防火墙所有配置firewall-cmd --query-port8080/tcp #查询端口是否开放firewall-cmd --add-port8080/tcp --permanent #永久添加8080端口
firewall-cmd --add-port65001-65010/tcp --permanent #永久增加65001-65010端口firewall-cmd --remove-port8800/tcp --permanent #永久删除8080端口# 对某个ip开放某个端口
firewall-cmd --permanent --add-rich-rule“rule family“ipv4” source address“192.168.142.166” port port“5432” protocol“tcp” accept”# 删除对某个ip开放某个端口
firewall-cmd --permanent --remove-rich-rule“rule family“ipv4” source address“192.168.142.166” port port“5432” protocol“tcp” accept”# 对某个ip开放所有端口
sudo firewall-cmd --zonepublic --add-rich-rulerule familyipv4 source address127.0.0.1 accept --permanent命令解读
firwall-cmd是Linux提供的操作firewall的一个工具服务命令
--zone #作用域
--add-port8080/tcp #添加端口格式为端口/通讯协议 add表示添加remove则对应移除
--permanent #永久生效没有此参数重启后失效3)、更新防火墙规则更改配置后要执行重载配置
firewall-cmd --reload5.4、关机重启命令
0、将数据由内存同步到硬盘中
sync1、重启
reboot
# 两者作用一样
shutdown -r now2、关机
# 立马关机
shutdown -h now# 计算机将在1分钟后关机并且会显示在登录用户的当前屏幕中
shutdown -h 1 ‘This server will shut down after 1 mins‘# 指定时间关机
shutdown 15:28# 取消关机操作
shutdown -c5.5、查看系统内核与版本
1、查看内核/操作系统/CPU信息
uname -a2、查看centos具体版本
cat /etc/centos-release六、常用命令
6.1、文件目录类
1、pwd 显示当前工作目录的绝对路径
pwd2、ls 列出目录的内容 ls列出当前目录中的文件和子目录。ls -l以长格式列出当前目录中的文件和子目录包括文件权限、所有者、文件大小、修改日期等详细信息。ls -a列出当前目录中的所有文件和子目录包括隐藏文件和目录。ls -h以人类可读的格式列出文件大小例如使用KB、MB、GB等单位。ls -t按修改时间排序列出文件和子目录最新修改的文件和目录将显示在最上面。ls -r反向排序列出文件和子目录即从最后一个文件或目录开始列出。ls -R递归列出当前目录及其子目录中的所有文件和子目录。ls -i显示每个文件和目录的inode号码。ls [选项] [目录或是文件]
可以多个参数组合如ls -al
每行列出的信息依次是 文件类型与权限链接数文件属主文件属组文件大小用byte来表示建立或最近修改的时间名字
3、cd 切换目录 4、mkdir 创建一个新的目录 、 rmdir 删除一个空的目录
mkdir [选项] 要创建的目录
mkdir xiyou
mkdir -p xiyou/dssz/meihouwang # -p 创建多层目录rmdir 要删除的空目录
rmdir xiyou/dssz/meihouwang5、touch 创建空文件
touch 文件名称
touch xiyou/dssz/sunwukong.txt6、cp 复制文件或目录
cp 源文件 目标文件
1、复制文件
cp xiyou/dssz/suwukong.txt xiyou/mingjie/2、递归复制整改文件夹 参数 -r 递归复制整个文件夹
cp -r xiyou/dssz/ ./7、rm 删除文件或目录
rm [选项] deleteFile 功能描述递归删除目录中所有内容 rm sunwukong.txt # 删除文件rm -rf dssz/ # 递归删除目录中所有内容8、mv 移动文件与目录或重命名
mv 源文件 目标文件
1mv oldNameFile newNameFile 功能描述重命名
2mv /temp/movefile /targetFolder 功能描述移动文件
# 重命名
mv xiyou/dssz/suwukong.txt xiyou/dssz/houge.txt# 移动文件
mv xiyou/dssz/houge.txt ./9、cat 查看文件内容
查看文件内容从第一行开始显示。
一般查看比较小的文件一屏幕能显示全的。
cat -n houge.txt # -n参数显示行号10、more 文件内容分屏查看器
more 要查看的文件 more nginx.conf 11、less 分屏显示文件内容
less 指令用来分屏查看文件内容它的功能与 more 指令类似但是比 more 指令更加强大支持各种显示终端。less 指令在显示文件内容时并不是一次将整个文件加载之后才显示而是根据显示需要加载内容对于显示大型文件具有较高的效率。 less nginx.conf 12、echo输出内容到控制台
echo [选项] [输出内容]
可以用在写脚本的时候输出日志
-e 支持反斜线控制的字符转换
echo “hello\tworld”echo -e “hello\tworld” # -e支持反斜线控制的字符转换14、tail 输出文件尾部内容
tail 用于输出文件中尾部的内容默认情况下 tail 指令显示文件的后 10 行内容。
# 查看文件尾 1 行内容
tail -n 1 smartd.conf# 实时追踪该档的所有更新
tail -f houge.txt按 ctrl s 暂停按ctrl q 继续
15、 输出重定向 和 追加
1将 ls 查看信息写入到文件中
ls -lhouge.txt2将 ls 查看信息追加到文件中
ls -lhouge.txt3采用 echo 将 hello 单词追加到文件中
echo hellohouge.txt16、ln 软链接
软链接也称为符号链接类似于 windows 里的快捷方式有自己的数据块主要存放了链接其他文件的路径。
ln -s [原文件或目录] [软链接名] 功能描述给原文件创建一个软链接
1、创建软连接 ln -s /home/lnTest.txt ./lnTxt删除软链接 rm -rf 软链接名而不是 rm -rf 软链接名/ 如果使用 rm -rf 软链接名/ 删除会把软链接对应的真实目录下内容删掉
rm -rf lnTxt查询通过 ll 就可以查看列表属性第 1 位是 l尾部会有位置指向。
17、history 查看已经执行过历史命令
1查看已经执行过的历史命令
history2清空历史记录
history -c18)、时间日期类
1显示当前时间信息
date2设置系统当前时间
date -s 2023-06-19 20:52:1819)、traceroute路由跟踪
可以用来跟踪数据包通过互联网传输时经过的路由路径以及每个路由节点的延迟情况
traceroute 目标地址
traceroute 192.168.10.116.2、用户管理命令
1、useradd 添加新用户
useradd 用户名 功能描述添加新用户
useradd -g 组名 用户名 功能描述添加新用户到某个组
1添加一个用户
useradd hmb2、passwd 设置用户密码
passwd 用户名 功能描述设置用户密码
1设置用户的密码
passwd hmb3、id 查看用户是否存在
id 用户名
1查看用户是否存在
id hmb4、cat /etc/passwd 查看创建了哪些用户
查看创建了哪些用户
cat /etc/passwd5、su 切换用户
su 用户名称 功能描述切换用户只能获得用户的执行权限不能获得环境变量
su - 用户名称 功能描述切换到用户并获得该用户的环境变量及执行权限
1切换用户
su hmbsu - hmb6、userdel 删除用户
1userdel 用户名 功能描述删除用户但保存用户主目录
2userdel -r 用户名 功能描述用户和用户主目录都删除
userdel hmbuserdel -r hmb7、sudo 设置普通用户具有 root 权限
sudo mkdir module8、usermod 修改用户
usermod -g 用户组 用户名 1将用户加入到用户组
usermod -g root zhubajie9、groupadd 新增组
groupadd 组名
1添加一个xitianqujing组
groupadd xitianqujing10、groupdel 删除组
groupdel 组名
1删除xitianqujing组
groupdel xitianqujing11、groupmod 修改组
groupmod -n 新组名 老组名
groupmod -n xitian xitianqujing12、cat /etc/group 查看创建了哪些组
cat /etc/group6.3、文件权限类
1、文件属性 使用ll或 ls -lh命令查看权限
如果没有权限就会出现减号[ - ]而已。从左至右用0-9这些数字来表示:
0 首位表示类型 在Linux中第一个字符代表这个文件是目录、文件或链接文件等等代表文件d 代表目录l 链接文档(link file) 第1-3位确定属主该文件的所有者拥有该文件的权限。—User第4-6位确定属组所有者的同组用户拥有该文件的权限—Group第7-9位确定其他用户拥有该文件的权限 —Other
1、rwx 作用文件和目录的不同解释 1作用到文件 [ r ]代表可读(read): 可以读取查看 [ w ]代表可写(write): 可以修改但是不代表可以删除该文件删除一个文件的前 [ x ]代表可执行(execute):可以被系统执行 2作用到目录 [ r ]代表可读(read): 可以读取ls查看目录内容 [ w ]代表可写(write): 可以修改目录内创建删除重命名目录 [ x ]代表可执行(execute):可以进入该目录
ll命令查看解释 ls -lh 命令文件大小会更清晰 1如果查看到是文件链接数指的是硬链接个数。 2如果查看的是文件夹链接数指的是子文件夹个数。
2、chmod 改变权限 1、第一种方式变更权限
chmod [{ugoa}{ - }{rwx}] 文件或目录
u:所有者user g:所有组(group) o:其他人(other) a:所有人(u、g、o 的总和)号代表增加 -号代表取消 号代表直接赋予1修改文件使其所属主用户具有执行权限
chmod ux houge.txt2修改文件使其所属组用户具有执行权限
chmod gx houge.txt3修改文件所属主用户执行权限,并使其他用户具有执行权限
chmod u-x,ox houge.txt2、第二种方式变更权限
chmod [mode421 ] [文件或目录]
r4 w2 x1 rwx42171采用数字的方式设置文件所有者、所属组、其他用户都具有可读可写可执行权限。
chmod 777 houge.txt2修改整个文件夹里面的所有文件的所有者、所属组、其他用户都具有可读可写可执行权限。
chmod -R 777 xiyou/3、chown 改变所有者
chown [选项] [最终用户] [文件或目录] 功能描述改变文件或者目录的所有者
1修改文件所有者
chown hmb houge.txt2递归改变文件所有者和所有组
chown -R hmb:hmb xiyou/4、chgrp 改变所属组
chgrp [最终用户组] [文件或目录] 功能描述改变文件或者目录的所属组
1修改文件的所属组
chgrp root houge.txt6.4、搜索查找类
1、find 查找文件或者目录
find 指令将从指定目录向下递归地遍历其各个子目录将满足条件的文件显示在终端。 1按文件名根据名称查找/目录下的filename.txt文件。
find -name ln*.txt find xiyou/ -name *.txt2按拥有者查找/opt目录下用户名称为-user的文件
find opt/ -user hmb3按文件大小在/home目录下查找大于200m的文件n 大于 -n小于 n等于
find /home -size 2048002、locate 快速定位文件路径
locate 指令利用事先建立的系统中所有文件名称及路径的 locate 数据库实现快速定位给定的文件。Locate 指令无需遍历整个文件系统查询速度较快。为了保证查询结果的准确度管理员必须定期更新 locate 时刻。
基本语法locate 搜索文件
由于 locate 指令基于数据库进行查询所以第一次运行前必须使用 updatedb 指令创建 locate 数据库。1查询文件夹
updatedblocate tmp3、grep 过滤查找及 | 管道符
管道符“|”表示将前一个命令的处理结果输出传递给后面的命令处理可以前面查出来的东西传给管道符后端的处理例如 ls | grep -n test
grep是Linux系统中常用的文本搜索工具可以在文件中查找指定的字符串或者正则表达式并将匹配的行输出到终端或者文件中。
1、在文件中查找字符
# 单个文件中查找
grep string filename# 多个文件中查找字符
grep string file1 file2 file3# 忽略大小写查找指定字符串
grep -i string filename2、在目录中递归查找指定字符串
grep -r string directory3、显示匹配行的行号
grep -n string filename4、反向查找不包含指定字符串的行
grep -v string filename5、将匹配的行输出到文件中
grep string filename output.txt6、在多文件中想要找有包含某个字符串的
grep -r string --include*.log6.5、压缩和解压类
1、gzip/gunzip 压缩
注意
1只能压缩文件不能压缩目录 2不保留原来的文件 3同时多个文件会产生多个压缩包
1、gzip压缩
gzip 文件gzip lnTest.txt2、gunzip解压缩文件
gunzip lnTest.txt.gz2、zip/unzip 压缩
zip 压缩命令在windows/linux都通用可以压缩目录且保留源文件。
1、zip压缩
zip 压缩文件名.zip 源文件# 压缩文件
zip lnTest.zip lnTest.txt# -r 压缩文件夹
zip -r nginx1.zip nginx-1.21.62、unzip解压
unzip lnTest.zip# -d 指定解压后文件的存放目录
unzip lnTest.zip -d /opt3、tar 打包
tar [选项] XXX.tar.gz 将要打包进去的内容 功能描述打包目录压缩后的文件格式.tar.gz 1、压缩文件
tar -zcvf 打包的文件名.tar.gz [源文件]# 多个文件打包
tar -zcvf houma.tar.gz houge.txt bailongma.txt# 打包文件夹
tar -zcvf xiyou.tar.gz xiyou/2、解压
# 解压到当前目录
tar -zxvf houma.tar.gz
# -C 解压到某个目录下
tar -zxvf xiyou.tar.gz -C /opt6.6、磁盘查看和分区类
1、du 查看文件和目录占用的磁盘空间
du 目录/文件 功能描述显示目录下每个子目录的磁盘使用情况 # 查看当前文件总占用
du -sh # 当前目录下所有文件磁盘占用
du -sh *# 某文件夹下所有文件的磁盘占用
du -sh /home/*# -c 显示总和
du -csh /home/*# 剔除某个目录
du -csh * --excludeproc2、df 查看磁盘空间使用情况
df 选项 功能描述列出文件系统的整体磁盘使用量检查文件系统的磁盘空间占用情况
1查看磁盘使用情况
df -h3、lsblk 查看设备挂载情况
lsblk# 查看详细的设备挂载情况显示文件系统信息
lsblk -f 关键列说明 NAME: 设备名称如 sda 是磁盘sda1 是分区。 TYPE: 设备类型disk 表示物理磁盘part 表示分区。 MOUNTPOINT: 挂载点路径如果为空则表示未挂载。
4、mount/umount 挂载/卸载
对于Linux用户来讲不论有几个分区分别分给哪一个目录使用它总归就是一个根目录、一个独立且唯一的文件结构。
Linux中每个分区都是用来组成整个文件系统的一部分它在用一种叫做“挂载”的处理方法它整个文件系统中包含了一整套的文件和目录并将一个分区和一个目录联系起来要载入的那个分区将使它的存储空间在这个目录下获得。
语法mount [-t vfstype] [-o options] device dir 功能描述挂载设备 1挂载光盘镜像文件
# 建立挂载点
mkdir /mnt/cdrom/# 设备/dev/cdrom 挂载到 挂载点 /mnt/cdrom 中
mount -t iso9660 /dev/cdrom /mnt/cdrom/
#或者直接挂载
mount /dev/sdb1 /mnt/data注意我们查看分区挂载挂载情况时展示的sda1但是挂载命名路径要加/dev//dev/ 是系统设备文件的默认存放目录。如mount /dev/sdb1 /mnt/data
2卸载光盘镜像文件
umount /mnt/cdrom3设置开机自动挂载
vi /etc/fstab添加下面那句后保存退出
5、fdisk分区
注意该命令必须在 root 用户下才能使用
基本语法
fdisk -l 功能描述查看磁盘分区详情
fdisk 硬盘设备名 功能描述对新增硬盘进行分区操作 1、功能说明
Linux 分区 Device分区序列 Boot引导 Start从X磁柱开始 End到Y磁柱结束 Blocks容量 Id分区类型ID System分区类型分区操作按键说明 m显示命令列表 p显示当前磁盘分区 n新增分区 w写入分区信息并退出 q不保存分区信息直接退出
6.7、进程管理类
进程是正在执行的一个程序或命令每一个进程都是一个运行的实体都有自己的地址空间并占用一定的系统资源。
1、ps 查看当前系统进程状态
ps -ef列出所有进程的详细信息包括进程的PID、PPID、CPU占用率、内存占用率等。
ps aux与ps -ef类似但是显示的是所有用户的进程信息。
ps auxps -efps aux 显示信息说明 USER该进程是由哪个用户产生的 PID进程的 ID 号 %CPU该进程占用 CPU 资源的百分比占用越高进程越耗费资源 %MEM该进程占用物理内存的百分比占用越高进程越耗费资源 VSZ该进程占用虚拟内存的大小单位 KB RSS该进程占用实际物理内存的大小单位 KB TTY该进程是在哪个终端中运行的。对于 CentOS 来说tty1 是图形化终端 tty2-tty6 是本地的字符界面终端。pts/0-255 代表虚拟终端。 STAT进程状态。常见的状态有R运行状态、S睡眠状态、T暂停状态、 Z僵尸状态、s包含子进程、l多线程、前台显示 START该进程的启动时间 TIME该进程占用 CPU 的运算时间注意不是系统时间 COMMAND产生此进程的命令名ps -ef 显示信息说明 UID用户 ID PID进程 ID PPID父进程 ID CCPU 用于计算执行优先级的因子。数值越大表明进程是 CPU 密集型运算 执行优先级会降低数值越小表明进程是 I/O 密集型运算执行优先级会提高 STIME进程启动的时间 TTY完整的终端名称 TIMECPU 时间 CMD启动进程所用的命令和参数
1配合grep 查询java进程查出PID后就可以杀掉进程了
ps -ef | grep java
ps aux | grep javaps -ef | grep java服务名2、kill 终止进程
1通过pid终止进程
# -9 表示强迫进程立即停止
kill -9 51022通过进程名称杀死进程
killall firefoxwindow杀死进程
taskkill /f /pid 进程ID3、pstree 查看进程树
# 显示进程的 PID
pstree -p
# 显示进程的所属用户
pstree -u4、top 实时监控系统进程状态
参数选项
top第一行信息为任务队列信息 第二行为进程信息 第三行为 CPU 信息 第四行为物理内存信息 第五行为交换分区swap信息
5、netstat显示网络状态和端口占用信息
使用netstat 通常用来查看端口是否被占用
netstat -anp | grep 进程号或端口号
netstat –nlp | grep 端口号window查看
netstat -ano | findstr 端口号6、lsof 用于列出系统上打开的文件及其相关信息
lsofList Open Files是一个强大的工具用于列出系统上打开的文件及其相关信息。在 Unix 和类 Unix 操作系统中文件不仅仅指普通的文件还包括目录、设备、管道和网络套接字等。lsof 命令非常有用特别是在调试和系统管理任务中。
常见用法 列出所有打开的文件 lsof这个命令会列出系统上所有当前打开的文件。 列出特定用户打开的文件 lsof -u username替换 username 为你要查看的用户名。 列出特定进程打开的文件 lsof -p PID替换 PID 为你要查看的进程 ID。 列出特定文件被哪个进程打开 lsof /path/to/file替换 /path/to/file 为你要查看的文件路径。 列出网络端口和套接字 lsof -i这个命令会列出所有网络连接和监听的套接字。 列出特定端口的网络连接 lsof -i :PORT替换 PORT 为你要查看的端口号。 列出特定协议的网络连接 lsof -i TCP或者 lsof -i UDP分别列出 TCP 或 UDP 协议的网络连接。 列出打开文件的详细信息 lsof -F使用 -F 选项以字段化格式输出信息适合脚本处理。 列出已挂载的文件系统的文件 lsof D /mount/point替换 /mount/point 为你要查看的挂载点。这会列出在这个挂载点及其子目录中所有打开的文件。
常用选项说明
-a与其他选项一起使用时表示所有条件都必须满足。-c仅列出指定命令名相关的文件。-d列出特定的文件描述符。-t只输出进程 IDPID适合脚本使用。-n显示网络地址而不是主机名加速输出。
示例 查看哪个进程在使用特定文件 lsof /var/log/syslog找出哪个进程在监听某个端口 lsof -i :80这将列出所有正在使用 80 端口的进程。 列出某个用户的网络连接 lsof -u username -i使用 lsof 可以帮助你诊断文件和网络相关的问题例如查看哪个进程正在使用某个文件或者确定哪些程序正在监听特定的网络端口。
7、crontab 定时任务设置
crontab -e1、重新启动 crond 服务
systemctl restart crond2、每隔 1 分钟向/root/bailongma.txt 文件中添加一个 11 的数字
*/1 * * * * /bin/echo ”11” /root/bailongma.txt8、tcpdump抓包
监听eno3网卡目标端口10011 抓数据包内容输出到result.pcap文件
tcpdump -i eno3 tcp port 10011 -w result.pcap抓指定ip指定内容
tcpdump -i any host ip -A | grep 关键字检索抓指定ip
tcpdump -i 网口 host ip -w 文件名.pcap七、软件包管理
7.1、BPM
RPMRedHat Package ManagerRedHat软件包管理工具类似windows里面的setup.exe是Linux这系列操作系统里面的打包安装工具它虽然是RedHat的标志但理念是通用的。
RPM包的名称格式 Apache-1.3.23-11.i386.rpm
“apache” 软件名称“1.3.23-11”软件的版本号主版本和此版本“i386”是软件所运行的硬件平台Intel 32位处理器的统称“rpm”文件扩展名代表RPM包
1、RPM 安装命令rpm -ivh rpm -ivh 包名.rpm2、RPM 查询命令rpm -qa
语法rpm -qa 功能描述查询所安装的所有 rpm 软件包
由于软件包比较多一般都会采取过滤。rpm -qa | grep rpm软件包 例如查询firefox软件安装情况
rpm -qa |grep firefox3、RPM 卸载命令rpm -e
rpm -e RPM软件包# 卸载软件时不检查依赖。这样的话那些使用该软件包的软件在此之后可能就不能正常工作了。
rpm -e --nodeps 软件包7.2、YUM 仓库配置
YUM全称为 Yellow dog Updater, Modified是一个在 Fedora 和 RedHat 以及 CentOS中的 Shell 前端软件包管理器。基于 RPM 包管理能够从指定的服务器自动下载 RPM 包并且安装可以自动处理依赖性关系并且一次安装所有依赖的软件包无须繁琐地一次次下载、安装 1、YUM 的常用命令
语法yum [选项] [参数]
选项
参数
1、采用 yum 方式安装 firefox
yum -y install firefox八、其他服务器常用知识
8.1、RAID冗余独立磁盘阵列
RAID冗余独立磁盘阵列是一种将多个物理磁盘组合成一个逻辑单元的技术主要用于提高数据存储的性能和可靠性。不同的RAID级别有各自的优缺点适用于不同的应用场景。以下是一些常见的RAID级别
常见RAID级别 RAID 0 特点数据条带化提供高性能。优点提高读写速度。缺点无冗余任何一个磁盘故障都会导致数据丢失。 RAID 1 特点数据镜像所有数据在两个或多个磁盘上完全相同。优点高数据冗余单个磁盘故障不会导致数据丢失。缺点存储效率低只有一半的可用存储空间。 RAID 5 特点数据条带化并使用奇偶校验分布在所有磁盘上。优点在一个磁盘故障的情况下仍能恢复数据存储效率相对较高。缺点写入性能较低计算奇偶校验会影响性能。 RAID 6 特点与RAID 5类似但有双重奇偶校验。优点可以容忍两个磁盘故障。缺点性能损失更大尤其是写入操作。 RAID 10或10 特点结合RAID 1和RAID 0的优点数据在多个磁盘上镜像同时条带化。优点高性能和高冗余。缺点需要至少四个磁盘存储效率较低。 总结
RAID技术在数据存储系统中具有重要作用能够提高性能、可用性和数据安全性。然而不同的RAID级别适合不同的需求选择时需要根据具体的应用场景和风险管理策略来决定。尽管RAID提供了冗余但仍然建议进行定期备份以防止数据丢失。
选择RAID 1和RAID 5主要取决于你的需求包括性能、存储效率和数据冗余。以下是一些帮助你做出选择的关键考虑因素 选择考虑因素
RAID 1和RAID 5 的关键考虑因素 冗余需求 如果你的主要关注点是高冗余和数据安全RAID 1可能更合适。如果可以容忍单个磁盘故障且需要更高的存储效率RAID 5是一个不错的选择。 性能需求 如果读取性能是关键例如数据库应用RAID 1的性能可能更好。如果需要更大的存储容量并且读取性能能够满足要求RAID 5也能提供不错的读取性能。 存储容量 RAID 5在相同数量的磁盘下提供更高的可用存储容量。如果可用存储空间是重要因素RAID 5通常是更好的选择。 写入性能 如果写入性能至关重要RAID 1可能更好因为RAID 5在写入时需要进行奇偶校验计算。
结论
选择RAID 1如果你更重视数据安全、简单性和更快的写入速度且不介意较低的存储效率。选择RAID 5如果你需要高可用性和高存储效率同时能够接受稍低的写入性能。
在决策过程中还要考虑到预算、维护成本和未来扩展的可能性。
8.2、SFTP 远程服务器文件传输
SFTPSecure File Transfer Protocol是一种安全的文件传输协议基于 SSHSecure Shell提供的加密和认证机制。它用于在网络上安全地传输文件通常用于在本地计算机和远程服务器之间进行文件传输。
基本特性
加密SFTP 使用 SSH 加密数据传输确保文件在传输过程中不会被窃听或篡改。认证通过 SSH 的认证机制确保只有授权用户才能访问文件。功能丰富支持文件上传、下载、删除、重命名等操作。
如何使用 SFTP 连接到服务器 使用以下命令连接到远程服务器 sftp -oPort22 usernamehostname
# 示例 sftp -oPort22 root127.0.0.1输入密码后即可进入 SFTP 命令行界面。 基本命令 列出文件ls切换目录cd directory_name将本地目录更改为指定路径lcd /path/to/local/directory上传文件put local_file 文件会被上传到当前远程目录由 cd 设置的目录下载文件get remote_file 文件会被下载到本地当前目录由 lcd 设置的目录退出 SFTPbye 或 exit
示例
sftp userexample.com
sftp ls
sftp cd remote_directory
sftp put local_file.txt
sftp get remote_file.txt# 下载文件把远程服务器的/home/ilog/test目录下的0824.txt文件下载到本地服务器的D:/Mykit/test目录下
sftp cd /home/ilog/test
sftp lcd D:/Mykit/test
sftp get 0824sftp bye注意事项
确保服务器已安装并配置 SSH。使用强密码或 SSH 密钥进行认证以提高安全性。
SFTP 是一种安全且高效的文件传输方式适用于需要安全传输的场景。
8.3、sslscan 评估服务器的 SSL/TLS 配置
基本功能
扫描服务器通过运行命令来扫描指定的服务器获取其 SSL/TLS 配置信息。支持的协议列出服务器支持的 SSL/TLS 版本如 TLS 1.0、1.1、1.2、1.3 等。密码套件显示支持的密码套件及其强度。漏洞检查识别已知的安全漏洞如 POODLE、Heartbleed 等。
安装命令
sudo yum remove sslscan
git clone https://github.com/rbsec/sslscan
cd sslscan
sudo yum install -y perl-CPAN
sudo yum install perl-ExtUtils-CBuilder perl-ExtUtils-MakeMaker
sudo yum install zlib-devel
make static
./sslscan --version评估命令进入sslscan目录下
./sslscan www.baidu.com:4438.4、rsync快速删除大量文件
先创建一个空目录
mkdir /usr/local/newdata/执行删除原理是用新的空目录替换要删掉的目录(/usr/local/olddata/为要删掉的目录)
rsync --delete-before -d /usr/local/newdata/ /usr/local/olddata/执行完删除操作后新建目录和要删掉的目录都变成空的了可以把刚才新建的目录也删掉
rm -rf /usr/local/newdata/使用rsync命令就会发现删掉几十G的目录瞬间就可以搞定了。
为什么rsync能够快速删除大文件
rm命令大量调用了lstat64和unlink可以推测删除每个文件前都从文件系统中做过一次lstat操作。过程正式删除工作的第一阶段需要通过getdirentries64调用分批读取目录每次大约为4K在内存中建立rm的文件列表第二阶段lstat64确定所有文件的状态第三阶段通过unlink执行实际删除。这三个阶段都有比较多的系统调用和文件系统操作。rsync所做的系统调用很少没有针对单个文件做lstat和unlink操作。命令执行前期rsync开启了一片共享内存通过mmap方式加载目录信息。只做目录同步不需要针对单个文件做unlink。 另外在其他人的评测里rm的上下文切换比较多会造成System CPU占用较多——对于文件系统的操作简单增加并发数并不总能提升操作速度。
tips 当SRC和DEST文件性质不一致时将会报错当SRC和DEST性质都为文件【f】时意思是清空文件内容而不是删除文件当SRC和DEST性质都为目录【d】时意思是删除该目录下的所有文件使其变为空目录最重要的是它的处理速度相当快处理几个G的文件也就是秒级的事最核心的内容是rsync实际上用的就是替换原理
总结 把文件系统的目录与书籍的目录做类比rm删除内容时将目录的每一个条目逐个删除(unlink)需要循环重复操作很多次rsync删除内容时建立好新的空目录替换掉老目录基本没开销。
8.5、实时查看磁盘增减情况
watch -n 0.1 df -Th --block-sizeM 时间检测磁盘情况