700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > Linux_文件目录_时间日期_用户管理_用户组管理_进程管理_文件权限_查找搜索_系统服务_

Linux_文件目录_时间日期_用户管理_用户组管理_进程管理_文件权限_查找搜索_系统服务_

时间:2022-06-02 22:00:32

相关推荐

Linux_文件目录_时间日期_用户管理_用户组管理_进程管理_文件权限_查找搜索_系统服务_

文章目录

Linux目录结构文件目录类clear 清屏ls 查看文件pwd 当前目录cd 目录控制touch 创建文件mkdir 创建目录rm 删除echo 输出内容tee 输出内容cat 显示内容more 分页显示less 高级分页head 显示开头部分tail 显示尾行cp 文件拷贝mv 文件剪切输出定位符ln 软链接history 查看历史 时间日期类date 时间控制cal 查看日历 用户管理类useradd 添加用户passwd 设置密码id 查询用户存在su 切换用户userdel 删除用户who 查看当前用户sudo 超级权限usermod 修改用户 用户组管理类groupadd 新增组groupdel 删除组groupmod 修改组查看已有组别 文件权限类文件权限说明chmod 更改权限chown 更改属主chgrp 更变属组 查找搜索类find 查找文件目录locate 快速定位文件路径grep 过滤查找| 管道符wc 统计文件 打包压缩类gzip 压缩zip 压缩tar 打包 磁盘挂载分区类du 磁盘占用df 磁盘使用free 内存使用lsblk 查看挂载mount 挂载fdisk 分区 进程管理类ps 查看进程状态kill 杀死进程pstree 查看进程树top 实时监控进程 系统服务类systemctl 服务设置netstat 运行端口重启系统rpm安装指令nohup后台运行man/help 帮助信息hostname 编辑主机名 定时任务类crontab 定时任务 软件包管理类rpm 包管理yum 包管理 VIM编辑器命令模式插入模式底行(编辑)模式 静态IP配置配置步骤 防火墙配置防火墙服务状态防火墙设置指令 Linux软件安装JDK安装步骤Tomcat安装步骤MySQL安装步骤Git安装步骤Maven安装步骤Redis安装步骤 Linux文件权限虚拟机克隆

Linux目录结构

文件目录类

clear 清屏

clear # 清屏,可用快捷键Ctrl+l快速清屏。

ls 查看文件

ls# 查看当前目录下的内容(文件及目录)列表缩写。ls / # 查看指定目录(/)下的内容。ls -a # 查看所有内容,包含隐藏的内容。ls -al # 列表方式查看所有内容。ll -a # 等同于ls -al

pwd 当前目录

pwd # 查看当前所在目录 print work directory。

cd 目录控制

cd / # 切换到根目录 change directorycd /root # 切换到/root目录cd ..# 切换到上一层目录cd ../.. # 切换到上二层目录cd - # 切换到上一次所在的目录cd ~ # 切换到当前用户的主目录

touch 创建文件

touch 1.txt# 创建单文件touch 1.txt 2.txt# 创建多文件

mkdir 创建目录

mkdir aa# 创建单个目录mkdir aa bb# 创建多个目录mkdir -p aa/bb# 创建多级目录,先父后子# 参数说明:# -p 实现多层目录同时创建。

rm 删除

rm abc.txt# 确认后删除文件。rm -f abc.txt# 强制删除,不会问是否删除。rm 目录名 # 默认忽略这个命令。rm -r 目录名 # 递归删除当前目录下子文件和子目录。rm -rf /*# 删除磁盘上所有资源。# 参数说明: # -r 将目录及目录中所有文件(目录)逐一删除,即递归删除。# -f 无需确认,直接删除。

echo 输出内容

echo 'abc' # 输出内容到控制台echo 'abc' >> lxl.txt # 输出内容到文件(追加写入)echo 'a\tbc' # 支持字符转换,输出abc(\t转为tab)# 参数说明:# -e: 支持反斜线控制的字符转换

tee 输出内容

tee file1.txt file2.txt# 从标准输入的数据,输出到file1、file2文件中ping | tee output.txt# 从标准输入中复制到每一个文件,并输出到标准输出(屏幕)# 参数说明:# -a 附加到既有文件的后面,而非覆盖它.# -i忽略中断信号,与管道命令配合使用时中断信号会被作用于上个命令。# --help 在线帮助。# --version 显示版本信息。

cat 显示内容

cat lxl.txt# 查看文件内容,一般查看比较小的文件。cat -n lxl.txt# 查看内容,并以1开始显示行编号# 参数说明:# -n 显示所有行的行号,包括空行。

more 分页显示

more lxl.txt# 分页的形式显示文件内容。# 操作功能说明:# 空白键(space),代表向下翻一页。# Enter,代表向下翻『一行』。# q,代表立刻离开,不再显示该文件内容。# Ctrl+F,向下滚动一屏。

less 高级分页

less -mN lxl.txt # 分屏查看文件内容,根据显示需要加载内容。# 操作功能说明:# 空白键,向下翻动一页。# [pagedown],向下翻动一页。# [pageup],向上翻动一页。# /字串,向下搜寻『字串』的功能;n:向下查找;N:向上查找。# ?字串,向上搜寻『字串』的功能;n:向上查找;N:向下查找。# q,离开less这个程序。# 参数说明:# -m 显示查看内容的百分比。# -N 显示行号。

head 显示开头部分

head lxl.txt# 查看文件头 10 行内容head -n 5 lxl.txt # 查看文件头 5 行内容# 参数说明:# -n <行数> 指定显示头部内容的行数。

tail 显示尾行

tail lxl.txt# 显示lxl.txt末尾10行的内容。tail -20 lxl.txt# 显示lxl.txt末尾20行的内容。tail -f lxl.txt# 动态读取lxl.txt末尾内容并显示。# 参数说明:# -n <行数> 输出文件尾部 n 行内容。# -f 动态读取文件末尾内容并显示,通常用于日志文件的内容输出。

cp 文件拷贝

cp a.txt lxl/# 将a.txt复制到lxl目录中。cp a.txt ./b.txt# 将a.txt复制到当前目录,并改名为b.txt。cp -r dir1 dir2# 将dir1目录及其目录下所有文件复制到dir2目录下。# 参数说明:# -r 递归复制整个文件夹

mv 文件剪切

mv a.txt b.txt# 将a.txt改名为b.txt。mv a.txt lxl/# 将文件a.txt移动到lxl目录中。mv a.txt lxl/b.txt # 将a.txt移动到lxl目录中,并改名为b.txt。mv a/ b/ # 如果a目录不存在,将a目录改名为b;若a目录存在,将a目录移动到b目录中。

输出定位符

ls -al >> a.txt # 列表的内容追加到文件 aa.txt 的末尾cat a.txt > b.txt # 将文件 a.txt 的内容覆盖到文件 b.txtecho 'HELLO' >> a.txt# 用 echo 将 hello 单词追加到文件中# 符号说明:# > 输出重定向# >> 追加

ln 软链接

ln -s dir1/lxl.txt ./tolxl # 给原文件创建一个软链接,类似快捷方式#使用说明:rm -rf tolxl # 仅仅删除软连接。rm -rf tolxl/ # 会把软链接对应的真实目录下内容删掉。

history 查看历史

history # 查看已经执行过的历史命令history -c # 删除已经执行过的历史命令记录

时间日期类

date 时间控制

date# 显示当前时间信息date +%Y-%m-%d# 显示当前时间年月日date "+%Y-%m-%d %H:%M:%S"# 显示当前时间年月日时分秒date -d '-1 days ago'# 显示明天时间date -s "-06-19 20:52:18"# 设置系统当前时间# 参数说明:# -d <时间字符串> 显示指定的“时间字符串”表示的时间,而非当前时间。# -s <日期时间> 设置系统日期时间。

cal 查看日历

cal# 查看当前月的日历cal # 查看 年的日历

用户管理类

useradd 添加用户

useradd 用户名# 添加新用户useradd -g 组名 用户名 # 添加新用户到某个组# 参数说明:# -g <组名> 添加新用户时,将该新用户添加到某个组内。

passwd 设置密码

passwd 用户名# 设置用户密码passwd -l 用户名# 锁定用户passwd -u 用户名# 解锁用户# 注意:添加用户时,密码过于简单显示无效后可继续输入密码执行更改操作。

id 查询用户存在

id lxl# 查看lxl用户是否存在cat /etc/passwd# 查看已有的用户

su 切换用户

su 用户名称 # 切换用户,只能获得用户的执行权限,不能获得环境变量su - 用户名称 # 切换到用户并获得该用户的环境变量及执行权限

userdel 删除用户

userdel 用户名#删除用户但保存用户主目录userdel -r 用户名# 用户和用户主目录,都删除# 参数说明:# -r 删除用户的同时,删除与用户相关的所有文件。

who 查看当前用户

whoami# 显示自身用户名称who am i# 显示登录用户的用户名以及登陆时间

sudo 超级权限

# 添加 lxl 用户,并对其设置密码。useradd lxlpasswd lxlvim /etc/sudoers# 修改 /etc/sudoers 文件,在 root 下面添加一行:## Allow root to run any commands anywhereroot ALL=(ALL) ALLlxl ALL=(ALL) ALL# 或者配置成采用 sudo 命令时,不需要输入密码lxl ALL=(ALL) NOPASSWD:ALL# 可获得 root 权限进行创建目录操作sudo mkdir module

usermod 修改用户

usermod -g 用户组 用户名 # 添加用户到某组内,作为该用户的主群组usermod -G 用户组1,用户组2 用户组 # 添加用户到某组内,作为该用户的副群组# 参数说明:# -g 修改用户的初始登录组,给定的组必须存在。默认组 id 是 1。

用户组管理类

groupadd 新增组

groupadd dev# 添加一个 Dev 组

groupdel 删除组

groupdel dev# 删除 dev 组

groupmod 修改组

groupmod -n dev test# 将 dev 组别改名为 test# 参数说明:# -n <新组名> 指定工作组的新组名

查看已有组别

cat /etc/group# 查看已有组别

文件权限类

文件权限说明

Linux系统是一种典型的多用户系统,不同的用户处于不同的地位,拥有不同的权限。为了保护系统的安全性,Linux系统对不同的用户访问同一文件(包括目录文件)的权限做了不同的规定。在Linux中我们可以使用ll或者ls -l命令来显示一个文件的属性以及文件所属的用户和组。

0 首位表示类型在Linux中第一个字符代表这个文件是目录、文件或链接文件等等,- 代表文件,d 代表目录,l 链接文档(link file),c 字符输入设备,b 媒体输入设备。第1-3位确定属主(该文件的所有者)拥有该文件的权限。—User第4-6位确定属组(所有者的同组用户)拥有该文件的权限,—Group第7-9位确定其他用户拥有该文件的权限 —Other

rwx 作用文件和目录的不同解释:

作用到文件:

r 代表可读(read): 可以读取,查看。w 代表可写(write): 可以修改,但是不代表可以删除该文件,删除一个文件的前提条件是对该文件所在的目录有写权限,才能删除该文件。x 代表可执行(execute):可以被系统执行。

作用到目录:

r 代表可读(read): 可以读取,ls查看目录内容。w 代表可写(write): 可以修改,目录内创建+删除+重命名目录。x 代表可执行(execute):可以进入该目录。

chmod 更改权限

chmod u-x lxl.txt# 使其所属主用户失去执行权限chmod g+x lxl.txt# 使其所属组用户具有执行权限chmod u-x,o+x lxl.txt# 所属主用户执行权限,其他用户具有执行权限chmod 640 lxl.txt# 变更权限chmod -R 777 lxl/# 递归修改目录内的所有文件与目录的权限# 参数说明:# -R 递归操作

chown 更改属主

chown dev lxl.txt# 修改文件所有者chown -R dev:dev lxl/# 递归改变文件所有者和所有组# 参数说明:# -R 递归操作

chgrp 更变属组

chgrp root lxl.txt# 改变lxl.txt的所属组为root

查找搜索类

find 查找文件目录

find lxl/ -name "123.txt"# 根据名称查找lxl目录下的123.txt文件find lxl/ -user lxl# 查找lxl目录下,用户名称为lxl的文件find /home -size +204800# 在/home目录下查找大于200m的文件# 参数说明:# -name<查询方式> 按照指定的文件名查找模式查找文件# -user<用户名> 查找属于指定用户名所有文件# -size<文件大小> 按照指定的文件大小查找文件,单位为:# b —— 块(512 字节)# c —— 字节# w —— 字(2 字节)# k —— 千字节# M —— 兆字节# G —— 吉字节

locate 快速定位文件路径

# 由于 locate 指令基于数据库进行查询,所以第一次运行前,必须使用 updatedb 指令创建 locate 数据库。updatedblocate tmp# 查询文件夹which ls# 查看ls命令所在目录及其别名whereis locate # 查看locate命令所在目录

grep 过滤查找

grep -n 'hhh' lxl.txt# 查找 lxl.txt 文件中 hhh 在第几行。grep -i 'hhh' lxl.txt# 忽略大小写查找 lxl.txt 文件中的 hhh。grep hello *.java# 查找所有.java结尾的文件中 hello 字符串。# 参数说明:# -n 显示匹配行及行号。# -i 忽略大小写。

| 管道符

# 管道符,“|” 表示将前一个命令的处理结果输出传递给后面的命令处理。ls | grep -i 'test' # 将ls命令的结构输出给grep处理

wc 统计文件

wc lxl.txt# 统计lxl文件的 行数、词数、字节数

打包压缩类

gzip 压缩

gzip lxl.txt# 压缩文件gunzip lxl.txt.gz# 解压文件# 注意事项:# (1)只能压缩文件不能压缩目录,压缩为*.gz 文件# (2)不保留原来的文件# (3)同时多个文件会产生多个压缩包

zip 压缩

# 压缩 lxl1.txt 和 lxl2.txt,压缩后的名称为package.zipzip package.zip lxl1.txt lxl2.txt# 解压 package.zip 到当前目录下unzip package.zip# 解压 package.zip 到 /opt 目录下unzip mypackage.zip -d /opt# zip命令参数:# -r 压缩目录# unzip命令参数# -d<目录> 指定解压后文件的存放目录

tar 打包

tar -cvf a.tar ./*# 将当前目录下所有文件打包,包文件命名为a.tar。tar -cvzf a.tar.gz ./*# 当前目录下所有文件打包并压缩,包文件命名为a.tar.gz。tar -xvf a.tar.gz# 将a.tar.gz文件进行解压,并将解压后的文件放在当前目录。tar -xvf a.tar.gz -C /usr# 将a.tar.gz文件进行解压,并将解压后的文件放在/usr。# 参数说明:# 包文件后缀为.tar表示只是完成了打包,并没有压缩(归档文件);包文件后缀为.tar.gz表示打包的同时还进行了压缩。 # -z: z代表的是gzip,通过gzip命令处理文件,对 tar 文件进行压缩。# -c 代表的是create,即创建新的打包文件。# -x 代表的是extract,实现从包文件中还原文件(解压)。# -v 代表的是verbose,显示命令的执行过程。# -f 代表的是filename,用于指定包文件的名称# -C 解压到指定目录

磁盘挂载分区类

du 磁盘占用

du -h /root # 显示root下每个子目录的磁盘占用情况# 参数说明:# -h 以人们较易阅读的 GBytes, MBytes, KBytes 等格式自行显示。# -a 不仅查看子目录大小,还要包括文件。# -c 显示所有的文件和子目录大小后,显示总和。# -s 只显示总和。# --max-depth=n 指定统计子目录的深度为第 n 层。

df 磁盘使用

df -h# 列出文件系统的整体磁盘使用量# 参数说明:# -h 以人们较易阅读的 GBytes, MBytes, KBytes 等格式自行显示。

free 内存使用

free# 查看当前 memory 和 swap 的使用情况

lsblk 查看挂载

lsblk# 查看设备挂载情况lsblk -f# 查看详细的设备挂载情况# 参数说明:# -f 查看详细的设备挂载情况,显示文件系统信息。

mount 挂载

ll /dev | grep sr0# 查看当前 sr0 对应的磁盘文件mount /dev/cdrom /mnt/cdrom/# 挂载光盘镜像文件umount /mnt/cdrom# 卸载光盘镜像文件# 参数说明:# -t vfstype 指定文件系统的类型,通常不必指定,会自动选择类型。常用类型有:# 光盘或光盘镜像:iso9660# DOS fat16 文件系统:msdos# Windows 9x fat32 文件系统:vfat# Windows NT ntfs 文件系统:ntfs# Mount Windows 文件网络共享:smbfs# UNIX(LINUX) 文件网络共享:nfs# -o options 主要用来描述设备或档案的挂接方式。常用的参数有:# loop:用来把一个文件当成硬盘分区挂接上系统# ro:采用只读方式挂接设备# rw:采用读写方式挂接设备# iocharset:指定访问文件系统所用字符集

fdisk 分区

# 先进行上图所述操作,添加新硬盘到虚拟机中# 进行分区操作fdisk -l # 查看磁盘分区详情fdisk 硬盘设备名# 对新增硬盘进行分区操作# 指定分区存储格式mkfs -t xfs/dev/sdb1# 后续进行文件系统挂载即可

进程管理类

ps 查看进程状态

ps <option># 查看看系统进程信息# 参数说明:# a 列出带有终端的所有用户的进程# x 列出当前用户的所有进程,包括没有终端的进程# u 面向用户友好的显示风格# -e 列出所有进程# -u 列出某个用户关联的所有进程# -f 显示完整格式的进程列表ps aux# 查看进程的 CPU 占用率和内存占用率# 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# 查看进程的父进程 ID# -ef 显示信息:# UID:用户 ID。# PID:进程 ID。# PPID:父进程 ID。# C:CPU 用于计算执行优先级的因子。数值越大,表明进程是 CPU 密集型运算。# 执行优先级会降低;数值越小,表明进程是 I/O 密集型运算,执行优先级会提高。# STIME:进程启动的时间。# TTY:完整的终端名称。# TIME:CPU 时间。# CMD:启动进程所用的命令和参数。

kill 杀死进程

kill -9 5102# 强制杀死对应 PID 的进程# 参数说明:# -1 (HUP):重新加载进程。# -9 (KILL):强制杀死一个进程。# -15 (TERM):正常停止一个进程。killall ssh# 通过进程名称杀死所有匹配进程,参数可参考菜鸟教程

pstree 查看进程树

pstree -p# 显示进程 pidpstree -u# 显示进程所属用户# 参数说明:# -p 显示进程的 PID# -u 显示进程的所属用户

top 实时监控进程

top -d 1# 查看每秒更新一次的进程监控# 参数说明:# -d 秒数 指定 top 命令每隔几秒更新。默认是 3 秒。# -i 使 top 不显示任何闲置或者僵死进程。# -p 通过指定监控进程 ID 来仅仅监控某个进程的状态# 在top监控模式下可以执行的操作:# P 以 CPU 使用率排序,默认就是此项# M 以内存的使用率排序# N 以 PID 排序# q 退出 top# u 查看对应用户的相关进程# k 杀死对应进程

第一行信息为任务队列信息:12:26:46 系统当前时间up 1 day, 13:32 系统的运行时间,本机已经运行 1 天 13 小时 32 分钟2 users 当前登录了两个用户load average: 0.00, 0.00, 0.00 系统在之前 1 分钟,5 分钟,15 分钟的平均负载。一般认为小于 1 时,负载较小。如果大于 1,系统已经超出负荷。第二行为进程信息:Tasks: 95 total 系统中的进程总数。1 running 正在运行的进程数。94 sleeping 睡眠的进程。0 stopped 正在停止的进程。0 zombie 僵尸进程。如果不是 0,需要手工检查僵尸进程。第三行为 CPU 信息:0.1%us 用户模式占用的 CPU 百分比。0.1%sy 系统模式占用的 CPU 百分比。0.0%ni 改变过优先级的用户进程占用的 CPU 百分比。99.7%id 空闲 CPU 的 CPU 百分比。0.1%wa 等待输入/输出的进程的占用 CPU 百分比。0.0%hi 硬中断请求服务占用的 CPU 百分比。0.1%si 软中断请求服务占用的 CPU 百分比。0.0%st st(Steal time)虚拟时间百分比。就是当有虚拟。机时,虚拟 CPU 等待实际 CPU 的时间百分比。第五行为物理内存信息 Mem:625344k total 物理内存的总量,单位 KB。571504k used 已经使用的物理内存数量。53840k free 空闲的物理内存数量。65800k buffers 作为缓冲的内存数量。第六行为交换分区(swap)信息 Swap: 524280k total 交换分区(虚拟内存)的总大小。0k used 已经使用的交互分区的大小。524280k free 空闲交换分区的大小。409280k cached 作为缓存的交互分区的大小。

系统服务类

systemctl 服务设置

systemctl start/stop 服务# systemctl start/stop 服务systemctl enable/disable 服务# 设置是/否开机启动。systemctl list-unit-files --type=service# 查看所有服务开机启动与关闭状态

netstat 运行端口

netstat -anp | grep ssh#查看 ssh 进程网络信息netstat –nlp | grep ssh# 查看 ssh 网络端口号占用情况# 参数说明:# -a 显示所有正在监听(listen)和未监听的套接字(socket)# -n 拒绝显示别名,能显示数字的全部转化成数字# -l 仅列出在监听的服务状态# -p 表示显示哪个进程在调用

重启系统

reboot# 重启。halt# 停机,关闭系统,但不断电。poweroff # 功能描述:关机,断电。sync # 将数据由内存同步到硬盘中。shutdown now# 立刻关机。# 参数说明:# -H 相当于--halt,停机。# -r -r=reboot 重启。# now 立刻关机。# time 等待多久后关机(时间单位是分钟)。

rpm安装指令

rpm -ivhU * --force --nodeps

安装当前目录下所有rpm文件。

rpm -qa | grep mysql

合在一起代表查询所有已安装的软件

说明:

*当前目录下全部rpm文件

i install 安装

v view 显示安装过程

h 显示安装的进度条

–forece 强制安装

–nodeps 不检查依赖

U 存在相同的软件或冲突的软件直接覆盖

-q 查询

-a 所有软件

nohup后台运行

# 后台运行java -jar命令,并将日志输出到hello.log文件nohup java -jar boot.jar & >hello.log &# 参数说明:# 语法格式 nohup Command [ Arg … ] [&]。# Arg 参数,可以指定输出文件。# & 让命令在后台运行

man/help 帮助信息

help cdcd --helpman ls# 内容说明:# NAME 命令的名称和单行描述# SYNOPSIS 怎样使用命令# DESCRIPTION 命令功能的深入讨论# EXAMPLES 怎样使用命令的例子# SEE ALSO 相关主题(通常是手册页)

hostname 编辑主机名

hostnamectl set-hostname 主机名# 编辑主机名hostname # 查看主机名

定时任务类

crontab 定时任务

# 需重新启动 crond 服务systemctl restart crond# 使用 crontab 指令crontab <option># 参数说明:# -e 编辑 crontab 定时任务# -l 查询 crontab 任务# -r 删除当前用户所有的 crontab 任务# 进入 crontab 编辑界面。会打开 vim 编辑你的工作。* * * * * 执行的任务# cron 表达式:# 第一个“*”, 一小时当中的第几分钟, 0-59# 第二个“*”, 一天当中的第几小时, 0-23# 第三个“*”, 一个月当中的第几天, 1-31# 第四个“*”, 一年当中的第几月, 1-12# 第五个“*”, 一周当中的星期几, 0-7(0 和 7 星期日)# 特殊表达符:# * 代表任何时间。比如第一个“*”就代表一小时中每分钟都执行一次的意思。# ,代表不连续的时间。比如“0 8,12,16 * * *”,就代表在每天的 8 点 0 分,12 点 0 分,16 点 0 分都执行一次命令。# - 代表连续的时间范围。比如“0 5 * * 1-6”,代表在周一到周六的凌晨 5 点 0 分执行命令。# */n 代表每隔多久执行一次。比如“*/10 * * * *”,代表每隔 10 分钟就执行一遍命令。

软件包管理类

rpm 包管理

rpm -qa # 查询所安装的所有rpm软件包rpm -e firebox# 卸载 firefoxrpm -ivh firefox# 安装firefox# 参数说明:# -e 卸载软件包。# -i install 安装。# -v --verbose 显示详细信息。# -h --hash 进度条。# --nodeps 卸载/安装前不检查依赖。

yum 包管理

yum -y install firefox# yum 方式安装 firefoxyum list | grep firefox# 显示对应的 rpm 软件包# 参数说明:# -y 对所有提问都回答 'yes' 。# install 安装 rpm 软件包# update 更新 rpm 软件包# check-update 检查是否有可用的更新 rpm 软件包# remove 删除指定的 rpm 软件包# list 显示软件包信息# clean 清理 yum 过期的缓存# deplist 显示 yum 软件包的所有依赖关系

# 修改网络 YUM 源# 1.wget 用来从指定的 URL 下载文件。yum install wget# 2.在/etc/yum.repos.d/目录下,备份默认的 repos。mv CentOS-Base.repo CentOS-backup.repo# 3.下载 aliyun 的 repos 文件。wget /repo/Centos-7.repo# 4.使用下载好的 repos 文件替换默认的 repos 文件。mv Centos-7.repo CentOS-Base.repo# 5.清理旧缓存数据,缓存新数据。yum clean allyum makecache# 6.测试。yum list | grep firefox

VIM编辑器

作用:vi命令是Linux系统提供的一个文本编辑工具,可以对文件内容进行编辑,类似于Windows中的记事本。

语法: vi fileName

说明:

vim是从vi发展来的一个功能更加强大的文本编辑工具,编辑文件时可以对文本内容进行着色,方便我们对文件进行编辑处理,所以实际工作中vim更加常用。要使用vim命令,可以使用下面的命令来完成安装:yum install vim

命令模式

模式一:命令模式(不可编辑内容)

插入模式
插入模式下可以对文件内容进行编辑在命令模式下按下i,a,o任意一个,可以进入插入模式。进入插入模式后,下方会出现insert字样在插入模式下按下ESC键,回到命令模式
底行(编辑)模式
按下esc回到命令模式在命令模式的基础上按下shift + :

静态IP配置

概念:

动态IP,路由器自动生成,IP地址会经常发生变化 , 适合用户使用。静态IP地址,需要手动设置,地址是固定,适合服务器使用。

相关知识:

ip地址:每台电脑在一个网络中的一个唯一地址,用于区别这个网络中不同的电脑主机子网掩码:用于描述ip地址中有几个数字是网络号。网关:用于连接不同网络的地址。DNS服务器:指域名系统。域名系统(英文:Domain Name System,缩写:DNS)是互联网的一项服务。它作为将域名和IP地址相互映射的一个分布式数据库,能够使人更方便地访问互联网。域名解析服务器:访问域名,最终必须获取对应服务器的ip地址才可以访问百度服务器。DNS可以将域名转换为百度服务器的ip地址返回,底层访问的ip地址。 目的可以让我们使用域名访问远程服务器常用DNS: 223.5.5.5 阿里DNS119.29.29.29 腾讯DNS【推荐,首选】114.114.114.114 中国电信DNS【推荐,次选】8.8.8.8 谷歌DNS

配置步骤

查看当前虚拟机网关。

进入目录命令:cd /etc/sysconfig/network-scripts。

编辑网卡配置文件命令:vim ifcfg-ens33。

配置静态IP,修改BOOTPROTO字段为static。

添加内容到文件尾行。

# ip地址IPADDR=192.168.56.132# 网关GATEWAY=192.168.56.2# 子网掩码NETMASK=255.255.255.0# 首选DNSDNS1=119.29.29.29# 备选DNSDNS2=114.114.114.114

执行命令回到命令模式,执行保存退出命令。

重启网卡服务

systemctl restart network

查看ip,并ping外网。

防火墙配置

作用:linux默认防火墙是开启,而且所有的端口对外都是不可访问的,原因是出于安全考虑。开发阶段可关闭防火墙,以开放所有端口。在生产环境中,只需开放指定端口满足使用即可。

防火墙服务指令:

防火墙服务状态

systemctl list-unit-files --type=service # 查看所有服务开机启动与关闭状态systemctl list-unit-files --type=service | grep -i 服务名 #查看指定服务的开机启动与关闭状态# 服务状态有3钟情况:# static表示该服务与其他服务相关联,不能单独设置该服务的启动状态。# disabled表示禁止开机启动。# enabled表示允许开机启动。

防火墙设置指令

指令语法:firewall-cmd 指令参数

开放端口号步骤:

# 1.永久开放8080端口,添加到公开网络。firewall-cmd --zone=public --add-port=8080/tcp --permanent# 2.重新加载防火墙fiewall-cmd --reload# 3.查询所有开放端口号firewall-cmd --list-ports

Linux软件安装

# 查看安装的软件yum list installed#卸载软件yum remove -y docker-ce.x86_64# -y 表示yes,省略询问是否要进行操作,直接写在#安装dockeryum install docker

JDK安装步骤

# JDK是以二进制发布包形式安装。# 1.将安装包上传至目的路径,此处以/soft为例。mkdir /softcd /soft# 2.进入 /soft 目录后,将安装包解压到 /usr/local 路径。下。tar -xvf jdk-8u221-linux-x64.tar.gz -C /usr/local/# 3.查看 /usr/local 目录,目录中有jdk1.8.0_221为jdk解压的目录。cd /usr/local/ls# 4.编辑 /etc/profile 文件。vim /etc/profile# 5.配置jdk环境变量,将下面配置拷贝到文件尾行。# 注:export命令用于将shell变量输出为环境变量。#set java environmentJAVA_HOME=/usr/local/jdk1.8.0_221PATH=$JAVA_HOME/bin:$PATHexport JAVA_HOME PATH# 6.重新加载 /ect/profile 配置文件。source /etc/profile# 7.判断JDK是否安装成功。java -version

Tomcat安装步骤

# Tomcat是以二进制发布包形式安装。# 1.将安装包上传至目的路径,此处以/soft为例。mkdir /softcd /soft# 2.进入 /soft 目录后,将安装包解压到 /usr/local 路径下。tar -xvf apache-tomcat-8.5.51.tar.gz -C /usr/local# 3.放Linux的对外访问的端口8080。firewall-cmd --zone=public --add-port=8080/tcp --permanent# 4.重启防火墙。systemctl restart firewalld # 或者firewall-cmd --reload# 5.进入/usr/local/apache-tomcat-8.5.51/bin目录,启动Tomcat。./startup.sh# 6.在Windows下打开浏览器访问Linux的8080端口。# 7.关闭服务器。./shutdown.sh# 8.获取Tomcat进程ID,并结束Tomcat进程。ps -ef | grep tomcatkill -9 79947 #推荐使用第一种方式 ./shutdown.sh 执行脚本来关闭tomcat服务。若通过第一种方式停止不了tomcat了,此时考虑使用第二种方式,强制杀死进程。

MySQL安装步骤

# MySQL是以rmp文件形式安装。# 1.将安装包上传至目的路径,此处以/soft为例。mkdir /softcd /soft# 2.soft目录中创建目录mysql,将压缩包解压到mysql目录下下。mkdir mysqltar -xvf mysql-community-5.6.45.tar.gz -C mysql# 3.进入mysql目录,安装所有rpm文件,强制安装,不检测依赖。cd mysql rpm -ivhU * --force --nodeps# 4.检查安装好的mysql包。rpm -qa |grep mysql # 5.启动mysql的服务。systemctl start mysqldsystemctl enable mysqld #默认,可忽略# 6.登录mysql,root用户默认没有密码mysql -uroot# 7.在mysql中修改自己的密码。set password = password('root'); # 8.设置远程访问权限、开放端口号。# 8.1.开启mysql的远程登录权限,默认情况下mysql为安全起见,不支持远程登录mysql,所以需要设置开启,并且刷新权限缓存。grant all privileges on *.* to 'root'@'%' identified by 'root';# 8.2.从mysql数据库中的授权表重新载入权限。flush privileges;# 9.开放的端口永久保存到防火墙,并重载。firewall-cmd --zone=public --add-port=3306/tcp --permanentfirewall-cmd --reload# 10.客户端Windows连接MySQL

Git安装步骤

# Git直接通过yum命令在线安装。#列出git安装包(这一步可以不做的)yum list git# 在线安装git,-y的含义在安装过程中所有的yes或no都默认是yesyum -y install git

Maven安装步骤

# Maven是以二进制发布包形式安装。# 1.将安装包上传至目的路径,此处以/soft为例。mkdir /softcd /soft# 2.进入 /soft 目录后,将安装包解压到 /usr/local 路径下。tar -zxvf apache-maven-3.5.4-bin.tar.gz -C /usr/local# 3.在/etc/profile配置文件中配置环境变量。vim /etc/profile# 3.1.修改配置文件,进入到命令模式,按G切换到最后一行,然后在最后加入如下内容:MAVEN_HOME=/usr/local/apache-maven-3.5.4/PATH=$JAVA_HOME/bin:$PATH:$MAVEN_HOME/binexport JAVA_HOME PATH MAVEN_HOME# 3.2.然后按ESC进入到命令模式,输入 :wq 保存并退出。# 3.3.重载配置的环境变量,并查看mvn版本。source /etc/profilemvn -v# 4.修改maven的settings.xml配置文件,配置本地仓库地址。# 4.1.切换目录。cd /usr/local/apache-maven-3.5.4/conf # 4.2.编辑settings.xml配置文件。vim settings.xml# 4.3.配置本地仓库地址,并将window仓库中的依赖上传Linux。<localRepository>/usr/local/repo</localRepository># 4.4.<mirrors>标签中,配置阿里云的私服。<mirror> <id>alimaven</id> <mirrorOf>central</mirrorOf> <name>aliyun maven</name> <url>/nexus/content/groups/public/</url></mirror>

Redis安装步骤

# 1.将Redis安装包上传到Linux到soft目录,并解压到/usr/localcd /softtar -zxvf redis-4.0.0.tar.gz -C /usr/local# 2.安装依赖环境gcc# 2.1.压缩包安装tar -xvf gcc-c++_all.tar.gzcd gcc-c++_all/rpm -ivhU * --force --nodeps# 2.2.在线yum安装yum install gcc-c++# 3.进入redis解压后的目录,并执行编译安装指令cd /usr/local/redis-4.0.0make && make install# 4.进入安装后的src目录,并复制上级配置文件到src目录下cd srccp ../redis.conf .# 5.修改Redis.conf配置文件vim redis.conf# 5.1.编辑文件将daemonize字段修改为 yes,开启后台启动(选做)。daemonize yes# 5.2.配置Redis连接密码,修改requirepass字段(选做)。requirepass root# 5.3.Redis默认只允许本地连接,需要配置其他连接。编辑内容将 "bind 127.0.0.1" 修改为 "bind 127.0.0.1 当前linux的ip"bind 127.0.0.1 192.168.208.128# 6.退出Redis进程后。./reids-cli shutdown# 关闭无效后,可直接杀死进程。ps -ef | grep -i rediskill -9 Redis进程ID# 7.重启,并查看是否开启Redis服务。./redis-server redis.confnetstat -ntlp

# 无密码,开启客户端./redis-cli# 配置密码后,开启客户端./redis-cli -h 127.0.0.1 -p 端口号 -a 密码# -h host 设置访问的服务器ip地址,如果本机不用写# -p port 设置访问端口,redis服务器的端口6379,如果端口没有改过,这个参数可以不用设置# -a 如果服务器设置了密码访问,就需要指定这个参数

# 开放6379端口,允许远程访问firewall-cmd --zone=public --add-port=6379/tcp --permanentfirewall-cmd --reloadfirewall-cmd --list-ports

Linux文件权限

概念:linux系统是一个多用户的操作系统,并且针对每一个用户,Linux会严格的控制操作权限。只有文件的所有者和超级用户可以修改文件或目录的权限。

权限分类:读®、写(w)、执行(x)

权限分级:

文件所有者(Owner)用户组(Group)其它用户(Other Users)

权限描述:

权限修改语法:chmod 权限 文件名

chmod命令可以使用八进制数来指定权限:

0 - 代表无

1 - 执行x

2 - 写w

4 - 读r

chmod u=rwx,g=rw,o=r bootStart.sh # 为拥有者设置读写执行权限,为组员设置读写权限,为其他人员设置读权限chmod 777 bootStart.sh # 为所有用户授予读、写、执行权限chmod 755 bootStart.sh # 为文件拥有者授予读、写、执行权限,同组用户和其他用户授予读、执行权限chmod 210 bootStart.sh # 为文件拥有者授予写权限,同组用户授予执行权限,其他用户没有任何权限

虚拟机克隆

克隆虚拟机

# 修改IP,防止IP冲突vim /etc/sysconfig/network-scripts/ifcfg-ens33# 修改如下字段,并删除UUID字段IPADDR = 192.168.80.2; #与被克隆Linux不同即可# 重启网卡服务systemctl restart network

虚拟机镜像还原

拷贝镜像文件。VMwork文件 -> 打开 -> 选择vmx文件。选择获取虚拟机所有权。查看本机的vm的网关。修改ip(前三位)地址与网关一致。重启网卡。

Linux_文件目录_时间日期_用户管理_用户组管理_进程管理_文件权限_查找搜索_系统服务_软件安装_静态IP配置

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。