因为我们要部署服务,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
这个目录中存放着在不断扩充的东西,我们习惯将那些经常被修改的目录放在这个目录下。包括各种日志文件。
/lost+found
这个目录一般情况下是空的,当系统非法关机后,这里就存放了一些文件。
/www
/www目录可以用于存储Web应用程序或网站文件,/www目录没有特别的用途,它只是一个常规目录,可以根据需要进行使用和管理。
用户@主机名 组成, ~号代表当前目录位置,#号代表管理员用户,普通用户都是$号
VI 是 Unix 操作系统和类 Unix 操作系统中最通用的文本编辑器。VIM 编辑器是从 VI 发展出来的一个性能更强大的文本编辑器。可以主动的以字体颜色辨别语法的正确性,方便程序设计。VIM 与 VI 编辑器完全兼容。
模式转换
进来默认一般模式,想要编辑文本就按i进入编辑模式
vim常用语法
一般模式
编辑模式
按『Esc』键 退出编辑模式,之后所在的模式为一般模式。
命令模式
vim /etc/sysconfig/network-scripts/ifcfg-ens33
执行 service network restart
重启网络,使网络生效。
1)、查看当前服务器主机名称
hostname
2)、通过编辑/etc/hostname 文件修改主机名
vim /etc/hostname
修改完重启后就生效了。
vim /etc/hosts
添加映射,保存后,可以直接访问service,就可以访问到220.151 ip了
Linux 中的进程和服务
计算机中,一个正在执行的程序或命令,被叫做“进程”(process)。
启动之后一只存在、常驻内存的进程,一般被称作“服务”(service)。
service 服务名 start | stop |· restart | status
查看服务的方法:/etc/init.d/服务名 ,发现只有两个服务保留在 service
chkconfig 设置后台服务的自启配置
2)、开启/关闭 network(网络)服务的自动启动
chkconfig network on
chkconfig network off
3)、开启/关闭 network 服务指定级别的自动启动
chkconfig --level 指定级别 network on
1)、基本语法
systemctl start | stop | restart | status 服务名
2)、查看服务的方法:/usr/lib/systemd/system
cd /usr/lib/systemd/system
ll 命令查看所有服务
systemctl 设置后台服务的自启配置
1、查看所有服务开机启动状态
systemctl list-unit-files
2、关掉指定服务的自动启动
systemctl disable service_name
3、开启指定服务的自动启动
systemctl enable service_name
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-port=8080/tcp #查询端口是否开放
firewall-cmd --add-port=8080/tcp --permanent #永久添加8080端口
firewall-cmd --add-port=65001-65010/tcp --permanent #永久增加65001-65010端口
firewall-cmd --remove-port=8800/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 --zone=public --add-rich-rule='rule family="ipv4" source address="127.0.0.1" accept' --permanent
命令解读
firwall-cmd:是Linux提供的操作firewall的一个工具(服务)命令
--zone #作用域
--add-port=8080/tcp #添加端口,格式为:端口/通讯协议 ;add表示添加,remove则对应移除
--permanent #永久生效,没有此参数重启后失效
3)、更新防火墙规则,更改配置后要执行重载配置
firewall-cmd --reload
0)、将数据由内存同步到硬盘中
sync
1)、重启
reboot
# 两者作用一样
shutdown -r now
2)、关机
# 立马关机
shutdown -h now
# 计算机将在1分钟后关机,并且会显示在登录用户的当前屏幕中
shutdown -h 1 ‘This server will shut down after 1 mins‘
# 指定时间关机
shutdown 15:28
# 取消关机操作
shutdown -c
1)、查看内核/操作系统/CPU信息
uname -a
2)、查看centos具体版本
cat /etc/centos-release
pwd
ls:列出当前目录中的文件和子目录。
ls -l:以长格式列出当前目录中的文件和子目录,包括文件权限、所有者、文件大小、修改日期等详细信息。
ls -a:列出当前目录中的所有文件和子目录,包括隐藏文件和目录。
ls -h:以人类可读的格式列出文件大小,例如,使用KB、MB、GB等单位。
ls -t:按修改时间排序列出文件和子目录,最新修改的文件和目录将显示在最上面。
ls -r:反向排序列出文件和子目录,即从最后一个文件或目录开始列出。
ls -R:递归列出当前目录及其子目录中的所有文件和子目录。
ls -i:显示每个文件和目录的inode号码。
ls [选项] [目录或是文件]
可以多个参数组合如:ls -al
每行列出的信息依次是: 文件类型与权限,链接数,文件属主,文件属组,文件大小用byte来表示,建立或最近修改的时间,名字
mkdir [选项] 要创建的目录
mkdir xiyou
mkdir -p xiyou/dssz/meihouwang # -p 创建多层目录
rmdir 要删除的空目录
rmdir xiyou/dssz/meihouwang
touch 文件名称
touch xiyou/dssz/sunwukong.txt
cp 源文件 目标文件
1)、复制文件
cp xiyou/dssz/suwukong.txt xiyou/mingjie/
2)、递归复制整改文件夹
参数 : -r 递归复制整个文件夹
cp -r xiyou/dssz/ ./
rm [选项] deleteFile (功能描述:递归删除目录中所有内容)
rm sunwukong.txt # 删除文件
rm -rf dssz/ # 递归删除目录中所有内容
mv 源文件 目标文件
(1)mv oldNameFile newNameFile (功能描述:重命名)
(2)mv /temp/movefile /targetFolder (功能描述:移动文件)
# 重命名
mv xiyou/dssz/suwukong.txt xiyou/dssz/houge.txt
# 移动文件
mv xiyou/dssz/houge.txt ./
查看文件内容,从第一行开始显示。
一般查看比较小的文件,一屏幕能显示全的。
cat -n houge.txt # -n参数显示行号
more 要查看的文件
more nginx.conf
less 指令用来分屏查看文件内容,它的功能与 more 指令类似,但是比 more 指令更加强大,支持各种显示终端。less 指令在显示文件内容时,并不是一次将整个文件加载之后才显示,而是根据显示需要加载内容,对于显示大型文件具有较高的效率。
less nginx.conf
echo [选项] [输出内容]
可以用在写脚本的时候输出日志
-e: 支持反斜线控制的字符转换
echo “hello\tworld”
echo -e “hello\tworld” # -e支持反斜线控制的字符转换
tail 用于输出文件中尾部的内容,默认情况下 tail 指令显示文件的后 10 行内容。
# 查看文件尾 1 行内容
tail -n 1 smartd.conf
# 实时追踪该档的所有更新
tail -f houge.txt
按 ctrl + s 暂停
,按ctrl + q 继续
(1)将 ls 查看信息写入到文件中
ls -l>houge.txt
(2)将 ls 查看信息追加到文件中
ls -l>>houge.txt
(3)采用 echo 将 hello 单词追加到文件中
echo hello>>houge.txt
软链接也称为符号链接,类似于 windows 里的快捷方式,有自己的数据块,主要存放了链接其他文件的路径。
ln -s [原文件或目录] [软链接名] (功能描述:给原文件创建一个软链接)
1)、创建软连接
ln -s /home/lnTest.txt ./lnTxt
删除软链接: rm -rf 软链接名,而不是 rm -rf 软链接名/
如果使用 rm -rf 软链接名/ 删除,会把软链接对应的真实目录下内容删掉
rm -rf lnTxt
查询:通过 ll 就可以查看,列表属性第 1 位是 l,尾部会有位置指向。
(1)查看已经执行过的历史命令
history
(2)清空历史记录
history -c
(1)显示当前时间信息
date
(2)设置系统当前时间
date -s "2023-06-19 20:52:18"
可以用来跟踪数据包通过互联网传输时经过的路由路径,以及每个路由节点的延迟情况
traceroute 目标地址
traceroute 192.168.10.11
useradd 用户名 (功能描述:添加新用户)
useradd -g 组名 用户名 (功能描述:添加新用户到某个组)
(1)添加一个用户
useradd hmb
passwd 用户名 (功能描述:设置用户密码)
(1)设置用户的密码
passwd hmb
id 用户名
(1)查看用户是否存在
id hmb
查看创建了哪些用户
cat /etc/passwd
su 用户名称 (功能描述:切换用户,只能获得用户的执行权限,不能获得环境变量)
su - 用户名称 (功能描述:切换到用户并获得该用户的环境变量及执行权限)
(1)切换用户
su hmb
su - hmb
(1)userdel 用户名 (功能描述:删除用户但保存用户主目录)
(2)userdel -r 用户名 (功能描述:用户和用户主目录,都删除)
userdel hmb
userdel -r hmb
sudo mkdir module
usermod -g 用户组 用户名
(1)将用户加入到用户组
usermod -g root zhubajie
groupadd 组名
(1)添加一个xitianqujing组
groupadd xitianqujing
groupdel 组名
(1)删除xitianqujing组
groupdel xitianqujing
groupmod -n 新组名 老组名
groupmod -n xitian xitianqujing
cat /etc/group
使用ll
或 ls -lh
命令查看权限
如果没有权限,就会出现减号[ - ]而已。从左至右用0-9这些数字来表示:
(1)、rwx 作用文件和目录的不同解释
(1)作用到文件:
[ r ]代表可读(read): 可以读取,查看
[ w ]代表可写(write): 可以修改,但是不代表可以删除该文件,删除一个文件的前
[ x ]代表可执行(execute):可以被系统执行
(2)作用到目录:
[ r ]代表可读(read): 可以读取,ls查看目录内容
[ w ]代表可写(write): 可以修改,目录内创建+删除+重命名目录
[ x ]代表可执行(execute):可以进入该目录
ll
命令查看解释
ls -lh
命令,文件大小会更清晰
(1)如果查看到是文件:链接数指的是硬链接个数。
(2)如果查看的是文件夹:链接数指的是子文件夹个数。
1)、第一种方式变更权限
chmod [{ugoa}{+ - =}{rwx}] 文件或目录
u:所有者(user) g:所有组(group) o:其他人(other) a:所有人(u、g、o 的总和)
+号代表增加 -号代表取消 = 号代表直接赋予
(1)修改文件使其所属主用户具有执行权限
chmod u+x houge.txt
(2)修改文件使其所属组用户具有执行权限
chmod g+x houge.txt
(3)修改文件所属主用户执行权限,并使其他用户具有执行权限
chmod u-x,o+x houge.txt
2)、第二种方式变更权限
chmod [mode=421 ] [文件或目录]
r=4 w=2 x=1 rwx=4+2+1=7
(1)采用数字的方式,设置文件所有者、所属组、其他用户都具有可读可写可执行权限。
chmod 777 houge.txt
(2)修改整个文件夹里面的所有文件的所有者、所属组、其他用户都具有可读可写可执行权限。
chmod -R 777 xiyou/
chown [选项] [最终用户] [文件或目录] (功能描述:改变文件或者目录的所有者)
(1)修改文件所有者
chown hmb houge.txt
(2)递归改变文件所有者和所有组
chown -R hmb:hmb xiyou/
chgrp [最终用户组] [文件或目录] (功能描述:改变文件或者目录的所属组)
(1)修改文件的所属组
chgrp root houge.txt
find 指令将从指定目录向下递归地遍历其各个子目录,将满足条件的文件显示在终端。
(1)按文件名:根据名称查找/目录下的filename.txt文件。
find -name "ln*.txt"
find xiyou/ -name "*.txt"
(2)按拥有者:查找/opt目录下,用户名称为-user的文件
find opt/ -user hmb
(3)按文件大小:在/home目录下查找大于200m的文件(+n 大于 -n小于 n等于)
find /home -size +204800
locate 指令利用事先建立的系统中所有文件名称及路径的 locate 数据库实现快速定位给定的文件。Locate 指令无需遍历整个文件系统,查询速度较快。为了保证查询结果的准确度,管理员必须定期更新 locate 时刻。
基本语法:locate 搜索文件
由于 locate 指令基于数据库进行查询,所以第一次运行前,必须使用 updatedb 指令创建 locate 数据库。
(1)查询文件夹
updatedb
locate tmp
管道符,“|”,表示将前一个命令的处理结果输出传递给后面的命令处理,可以前面查出来的东西传给管道符后端的处理,例如 ls | grep -n test
grep是Linux系统中常用的文本搜索工具,可以在文件中查找指定的字符串或者正则表达式,并将匹配的行输出到终端或者文件中。
(1)、在文件中查找字符
# 单个文件中查找
grep "string" filename
# 多个文件中查找字符
grep "string" file1 file2 file3
# 忽略大小写查找指定字符串
grep -i "string" filename
(2)、在目录中递归查找指定字符串
grep -r "string" directory
(3)、显示匹配行的行号
grep -n "string" filename
(4)、反向查找不包含指定字符串的行
grep -v "string" filename
(5)、将匹配的行输出到文件中
grep "string" filename > output.txt
(6)、在多文件中,想要找有包含某个字符串的
grep -r "string" --include="*.log"
注意:
(1)只能压缩文件不能压缩目录
(2)不保留原来的文件
(3)同时多个文件会产生多个压缩包
(1)、gzip压缩
gzip 文件
gzip lnTest.txt
(2)、gunzip解压缩文件
gunzip lnTest.txt.gz
zip 压缩命令在windows/linux都通用,可以压缩目录且保留源文件。
(1)、zip压缩
zip 压缩文件名.zip 源文件
# 压缩文件
zip lnTest.zip lnTest.txt
# -r 压缩文件夹
zip -r nginx1.zip nginx-1.21.6
(2)、unzip解压
unzip lnTest.zip
# -d 指定解压后文件的存放目录
unzip lnTest.zip -d /opt
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 /opt
du 目录/文件 (功能描述:显示目录下每个子目录的磁盘使用情况)
# 查看当前文件总占用
du -sh
# 当前目录下所有文件磁盘占用
du -sh *
# 某文件夹下所有文件的磁盘占用
du -sh /home/*
# -c 显示总和
du -csh /home/*
# 剔除某个目录
du -csh * --exclude="proc"
df 选项 (功能描述:列出文件系统的整体磁盘使用量,检查文件系统的磁盘空间占用情况)
(1)查看磁盘使用情况
df -h
lsblk
# 查看详细的设备挂载情况,显示文件系统信息
lsblk -f
关键列说明:
NAME: 设备名称(如 sda 是磁盘,sda1 是分区)。
TYPE: 设备类型(disk 表示物理磁盘,part 表示分区)。
MOUNTPOINT: 挂载点路径,如果为空则表示未挂载。
对于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/cdrom
(3)设置开机自动挂载
vi /etc/fstab
添加下面那句后保存退出
注意:该命令必须在 root 用户下才能使用
基本语法:
fdisk -l (功能描述:查看磁盘分区详情)
fdisk 硬盘设备名 (功能描述:对新增硬盘进行分区操作)
1)、功能说明
进程是正在执行的一个程序或命令,每一个进程都是一个运行的实体,都有自己的地址空间,并占用一定的系统资源。
ps -ef:列出所有进程的详细信息,包括进程的PID、PPID、CPU占用率、内存占用率等。
ps aux:与ps -ef类似,但是显示的是所有用户的进程信息。
ps aux
ps -ef
(1)配合grep 查询java进程,查出PID后,就可以杀掉进程了
ps -ef | grep java
ps aux | grep java
ps -ef | grep java服务名
(1)通过pid终止进程
# -9 表示强迫进程立即停止
kill -9 5102
(2)通过进程名称杀死进程
killall firefox
window杀死进程:
taskkill /f /pid 进程ID
# 显示进程的 PID
pstree -p
# 显示进程的所属用户
pstree -u
参数选项:
top
第一行信息为任务队列信息
第二行为进程信息
第三行为 CPU 信息
第四行为物理内存信息
第五行为交换分区(swap)信息
使用netstat 通常用来查看端口是否被占用
netstat -anp | grep 进程号或端口号
netstat –nlp | grep 端口号
window查看:
netstat -ano | findstr 端口号
lsof
(List 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
:只输出进程 ID(PID),适合脚本使用。-n
:显示网络地址而不是主机名(加速输出)。示例
查看哪个进程在使用特定文件
lsof /var/log/syslog
找出哪个进程在监听某个端口
lsof -i :80
这将列出所有正在使用 80 端口的进程。
列出某个用户的网络连接
lsof -u username -i
使用 lsof
可以帮助你诊断文件和网络相关的问题,例如查看哪个进程正在使用某个文件,或者确定哪些程序正在监听特定的网络端口。
crontab -e
(1)、重新启动 crond 服务
systemctl restart crond
(2)、每隔 1 分钟,向/root/bailongma.txt 文件中添加一个 11 的数字
*/1 * * * * /bin/echo ”11” >> /root/bailongma.txt
tcpdump -i eno3 tcp port 10011 -w result.pcap
tcpdump -i any host ip -A | grep "关键字检索"
tcpdump -i 网口 host ip -w 文件名.pcap
RPM(RedHat Package Manager),RedHat软件包管理工具,类似windows里面的setup.exe是Linux这系列操作系统里面的打包安装工具,它虽然是RedHat的标志,但理念是通用的。
RPM包的名称格式
Apache-1.3.23-11.i386.rpm
rpm -ivh 包名.rpm
语法:rpm -qa (功能描述:查询所安装的所有 rpm 软件包)
由于软件包比较多,一般都会采取过滤。rpm -qa | grep rpm软件包
例如:查询firefox软件安装情况
rpm -qa |grep firefox
rpm -e RPM软件包
# 卸载软件时,不检查依赖。这样的话,那些使用该软件包的软件在此之后可能就不能正常工作了。
rpm -e --nodeps 软件包
YUM(全称为 Yellow dog Updater, Modified)是一个在 Fedora 和 RedHat 以及 CentOS中的 Shell 前端软件包管理器。基于 RPM 包管理,能够从指定的服务器自动下载 RPM 包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装
语法:yum [选项] [参数]
选项:
参数:
(1)、采用 yum 方式安装 firefox
yum -y install firefox
RAID(冗余独立磁盘阵列)是一种将多个物理磁盘组合成一个逻辑单元的技术,主要用于提高数据存储的性能和可靠性。不同的RAID级别有各自的优缺点,适用于不同的应用场景。以下是一些常见的RAID级别:
常见RAID级别
RAID 0
:
RAID 1
:
RAID 5
:
RAID 6
:
RAID 10
(或1+0):
总结
RAID技术在数据存储系统中具有重要作用,能够提高性能、可用性和数据安全性。然而,不同的RAID级别适合不同的需求,选择时需要根据具体的应用场景和风险管理策略来决定。尽管RAID提供了冗余,但仍然建议进行定期备份,以防止数据丢失。
选择RAID 1和RAID 5主要取决于你的需求,包括性能、存储效率和数据冗余。以下是一些帮助你做出选择的关键考虑因素:
选择考虑因素
RAID 1和RAID 5 的关键考虑因素:
冗余需求:
性能需求:
存储容量:
写入性能:
结论
在决策过程中,还要考虑到预算、维护成本和未来扩展的可能性。
SFTP(Secure File Transfer Protocol)是一种安全的文件传输协议,基于 SSH(Secure Shell)提供的加密和认证机制。它用于在网络上安全地传输文件,通常用于在本地计算机和远程服务器之间进行文件传输。
基本特性
如何使用 SFTP
连接到服务器:
使用以下命令连接到远程服务器:
sftp -oPort=22 username@hostname
# 示例 sftp -oPort=22 root@127.0.0.1
输入密码后,即可进入 SFTP 命令行界面。
基本命令:
ls
cd directory_name
lcd /path/to/local/directory
put local_file
文件会被上传到当前远程目录(由 cd 设置的目录)get remote_file
文件会被下载到本地当前目录(由 lcd 设置的目录)bye
或 exit
示例
sftp user@example.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 0824
sftp> bye
注意事项
SFTP 是一种安全且高效的文件传输方式,适用于需要安全传输的场景。
基本功能
安装命令
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:443
先创建一个空目录
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能够快速删除大文件
tips:
当SRC和DEST文件性质不一致时将会报错当SRC和DEST性质都为文件【f】时,意思是清空文件内容而不是删除文件当SRC和DEST性质都为目录【d】时,意思是删除该目录下的所有文件,使其变为空目录最重要的是,它的处理速度相当快,处理几个G的文件也就是秒级的事最核心的内容是:rsync实际上用的就是替换原理
总结:
把文件系统的目录与书籍的目录做类比,rm删除内容时,将目录的每一个条目逐个删除(unlink),需要循环重复操作很多次;rsync删除内容时,建立好新的空目录,替换掉老目录,基本没开销。
版权说明:如非注明,本站文章均为 扬州驻场服务-网络设备调试-监控维修-南京泽同信息科技有限公司 原创,转载请注明出处和附带本文链接。
请在这里放置你的在线分享代码