二、Linux 系统命令

一、系统命令

# 清屏 (Ctrl + L)
$ clear# 退出登录	
$ exit		# 历史命令
$ history		
$ history | grep 'java -jar'	

1. 系统信息

# 查看版本,当前操作系统发行版信息
$ cat /etc/redhat-release 
`
CentOS Linux release 7.2.1511 (Core) 
`# 查看操作系统位数
$ getconf LONG_BIT
`
64
`

2. hostname 查看当前主机名

  • 修改主机名
  1. vim /etc/hostname
  2. vi /etc/sysconfig/network
$ hostname
`
qs
`# 查看 IP 
$ hostname -i
`
192.168.137.2
`
$ hostname -I
`
192.168.31.43 192.168.122.1 172.17.0.1
`# 查看 Ip
$ ifconfig

3. uname 查看系统版本信息

# 查看 当前操作 版本信息
$ cat /proc/version
`
Linux version 3.10.0-514.26.2.el7.x86_64 (builder@kbuilder.dev.centos.org) (gcc version 4.8.5 20150623 (Red Hat 4.8.5-11) (GCC) ) #1 SMP Tue Jul 4 15:04:05 UTC 2017
`# 查看操作系统
$ cat /etc/redhat-release 
`
CentOS Linux release 8.4.2105
`
uname
`
Linux
`## 查看当前系统 内核版本
uname -r
`
3.10.0-514.26.2.el7.x86_64
`## 查看当前系统 内核信息
uname -a
`
Linux qs 3.10.0-514.26.2.el7.x86_64 #1 SMP Tue Jul 4 15:04:05 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux
`
## Linux: 内核名称(类别)
## qs: 主机名
## 3.10.0-514.26.2.el7.x86_64: 内核版本号
## UTC: 内核版本
## 2017: 内核编译日期
## x86_64: 硬件名
## x86_64: 处理器类型
## x86_64: 硬件平台类型
## GNU/Linux: 操作系统名称uname -an
`
Linux qs 3.10.0-514.26.2.el7.x86_64 #1 SMP Tue Jul 4 15:04:05 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux
`

3. 关机重启

## 1. 查看系统使用状态(确保没人在线)
## 显示当前 所有的登录用户 
who## 2. 网络状态(确认有哪些连接)
netsat -a## 3. 后台进程执行状态
## 注:列 COMMAND 带`[.]`的是内核进程,不带`[.]`的是用户态进程 
ps -aux## 4. 数据同步
## 虽然关机命令会执行同步动作,但仍强烈建议先多次执行 sync 主动同步
sync;sync;sync;

1. shutdown 关机重启
shutdown [Options] 时间---## [Options]
## 1. -c: 取消前一个关机命令
## 2. -h: 关机
## 3. -r: 重启---## 立即关机(root 用户使用)
shutdown -h now
## 过 30 分钟后自动关机
shutdown -h 30---## 立即重启(root 用户使用)
shutdown -r now
## 过 30 分钟自动重启(root 用户使用)
shutdown -r 30
## 在时间为`17:30`时候重启
shutdown -r 17:30
## 在时间为`00:30`时候重启(root 用户使用)
shutdown -r 00:30 	

2. halt 关机重启
  • 其他关机命令(不太安全,不建议使用)
## 最简单的关机命令,实际调用的是`shutdown -h`
## `halt`执行时将杀死应用进程,执行`sync`系统调用文件系统写操作完成后就会停止内核
halt [Options]---## [Options]
## 1. -n: 防止`sync`系统调用,在用`fsck`修补根分区之后,以阻止内核用老版本的超级块〔superblock〕覆盖修补过的超级块
## 2. -w: 并不是真正的重启或关机,只是写`wtmp〔/var/log/wtmp〕`纪录
## 3. -d: 不写`wtmp`纪录〔已包含在选项[-n]中〕
## 4. -f: 没有调用`shutdown`而强制关机或重启
## 5. -i: 关机〔或重启〕前关掉所有的网络接口
## 6. -p: 该选项为缺省选项。就是关机时调用 poweroff---## 关机
init 0
## 重启
init 6---## 系统运行级别
0 关机
1 单用户
2 不完全多用户,不含 NFS 服务
3 完全多用户
4 未分配
5 图形界面
6 重启

3. poweroff 关机
## 关机
poweroff

4. reboot 安全重启
## 重启(安全)
## `reboot`命令和`shutdown`命令差不多
reboot
reboot -f## 使用`man reboot`时,会同时出现`halt、poweroff、reboot`的用法
man reboot

5. 退出登录
## 修改系统默认运行级别
cat /ect/inittab
`
id:3:initdefalult
`## 查询系统运行级别
runlevel## 退出登录
logout

2. 系统时间

## 当前系统时间
date        
## 当前系统时间,带时区                    
date -R
## 当前系统时间-格式化
date +"%Y-%m-%d %H:%M:%S"   

在这里插入图片描述


1. 设置时间
## 设置系统时间
sudo date -s "2014-01-01 10:10:10"
## 1. -s: 设置系统时间
## 格式: HH:MM:SS(24小时制)
## 格式: hh:mm:ss(12小时制) hh时mm分ss秒
## 格式: MMDDhhmm[[CC]YY][.ss] MM月DD日CC世纪YY年份后两位
sudo date -s "0412122323" # 2023年04月12日# 同步服务器时间
sudo ntpdate -u ntp.api.bz

2. 设置时区
## 查看时区
date -R## 方法1. 设置时区
sudo timedatectl set-timezone Asia/Shanghai
## 方法2. 设置时区
tzselect
cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime## 查看时区
date -R

在这里插入图片描述


3. 防火墙

1. 安装
yum install firewalld

2. 启动关闭
  1. CentOS
## 查看防火墙状态
systemctl status firewalld			## 开启关闭防火墙服务
systemctl start firewalld.service
## 临时关闭	
systemctl stop firewalld.service 	
systemctl stop firewalld 
## 然后 reboot 永久关闭
systemctl disable firewalld
## 关闭防火墙
service iptables stop	
## 永久关闭防火墙
chkconfig iptables off	## 开机自启动防火墙服务
systemctl enable firewalld.service	
## 关闭开机自启动防火墙服务
systemctl disable firewalld.service	
  1. Ubantu
## 安装防火墙
sudo sudo apt-get install ufw## 查看防火墙版本
sudo ufw version
## 查看防火墙状态
sudo ufw status
`
Status: active # 活跃
Status: inactive # 不活跃
`## 开启防火墙
sudo ufw enable## 关闭防火墙 
sudo ufw disable## 重启防火墙
sudo ufw reload
## 注意:添加规则以后,需要使用该命令进行重启防火墙
## 设置默认允许外部访问本机
sudo ufw default allow## 设置默认拒绝外部访问主机
## 拒接所有外来访问,本机能正常访问外部
sudo ufw default deny## 允许外部访问 53 端口
sudo ufw allow 53
## 注意:开放成功以后,需要重启生效
## 查看 53 端口信息
sudo netstat -tunlp | grep 53
## 拒绝外部访问 53 端口
sudo ufw deny 53## 允许 某个IP 访问本机所有端口
sudo ufw allow from 192.168.0.1

3. firewall-cmd 命令
## 查看防火墙状态,`running`运行,`not running`关闭
firewall-cmd --state	
## 获取活动的区域			
firewall-cmd --get-active-zones## 获取所有支持的服务(每个服务以空格分隔)		
firewall-cmd --get-service			
## 获取所有永久支持的服务,就是重启后也支持的
firewall-cmd --get-service --permanent	## 在 0.3.0 之前的 FirewallD版本中,panic 选项是 –enable-panic 与 –disable-panic
## 查看应急模式的状态
firewall-cmd --query-panic	
## 开启应急模式阻断所有网络连接		
firewall-cmd --panic-on		
## 关闭应急模式		
firewall-cmd --panic-off			## 防火墙预定义的服务配置文件是xml文件,目录在`/etc/firewalld/services/`、`/usr/lib/firewalld/services/`
## 修改配置文件后,使用命令重新加载
firewall-cmd --reload				

4. 修改服务
# 查看开启的服务,服务空格隔开(例如: dhcpv6-client https ss)
firewall-cmd --permanent --zone=public --list-services	
firewall-cmd --permanent --list-services# 启用某个服务
firewall-cmd --zone=public --add-service=https				# 临时
firewall-cmd --permanent --zone=public --add-service=https	# 永久
firewall-cmd --permanent --zone=public --add-service=ftp	# 永久添加 ftp 服务 
firewall-cmd --reload										# 重启防火墙

5. 修改端口
# 查看开启的端口,端口空格隔开(例如: 8080-8081/tcp 8388/tcp 80/tcp)
firewall-cmd --permanent --zone=public --list-ports 
# 查看开启的端口号	
firewall-cmd --permanent --list-ports  
# 查询8080端口是否开放
firewall-cmd --query-port=8080/tcp# 开启某个端口
firewall-cmd  --zone=public --add-port=8080-8081/tcp 			# 临时(8080-8081)
firewall-cmd --permanent --zone=public --add-port=8080-8081/tcp	# 永久
firewall-cmd --permanent --zone=public --add-port=21/tcp 		# 永久添加tcp 21 端口
firewall-cmd --permanent --add-port =8080-8085/tcp				# 添加8080-8085的端口区段,也可以是固定值,如3000# 关闭上面设置的端口
firewall-cmd --permanent --remove-port=8080-8085/tcp	# 需要注意的是,如果是加的区段值,删的时候也必须为区段值
firewall-cmd --reload									# 使用命令加载设置

6. 修改规则
# 3. 添加规则: 设置某个ip,访问某个服务(ip:192.168.0.4/24,访问:http)
firewall-cmd --permanent --zone=public --add-rich-rule="rule family="ipv4"  source address="192.168.0.4/24" service name="http" accept"
# 删除上面设置的规则
firewall-cmd --permanent --zone=public --remove-rich-rule="rule family="ipv4"  source address="192.168.0.4/24" service name="http" accept"
  1. 在每次修改 服务、端口 和 规则 后 /etc/firewalld/zones/public.xml文件就会被修改。
  2. 所以也可以 修改文件,然后重新加载。
    在这里插入图片描述

7. 端口转发
# 1. 先开启允许伪装IP
# 检查是否允许伪装IP
firewall-cmd --query-masquerade # 允许防火墙伪装IP	
firewall-cmd --add-masquerade   	# 禁止防火墙伪装IP
firewall-cmd --remove-masquerade	# 2. 设置转发
# 转发tcp 22 端口至 3753	
firewall-cmd --zone=public --add-forward-port=port=22:proto=tcp:toport=3753	# 转发 22 端口数据至另一个 ip 的相同端口上
firewall-cmd --zone=public --add-forward-port=port=22:proto=tcp:toaddr=192.168.1.100	# 转发 22 端口数据至另一 ip 的 2055 端口上		
firewall-cmd --zone=public --add-forward-port=port=22:proto=tcp:toport=2055:toaddr=192.168.1.100	

4. openssl

openssl version

二、用户和用户组

# 查看系统使用状态(确保没人在线)
# 显示当前 所有的登录用户 id <用户名>## 查看当前用户环境变量
env

1. 用户

## 查看所有用户
cat /etc/passwd## 显示所有可用的命令,别名和函数
compgen -u

1. 创建用户
## 新增用户
useradd 用户名
passwd 用户名
## 添加用户`test`
useradd test
## 为用户`test`设置密码
passwd test---## 创建用户`test`,并指定用户目录     		
useradd test -d /home/test---## 新建用户`qs`
## 添加到用户组`root`
## 但是不允许用户登录,仅仅可以`ftp`登录
## `ftp`登录后的默认目录是`/home/data` 
useradd -g root -d /home/data -s /sbin/nologin qs 

1. 用户文件 /etc/passwd
## 用户文件 
cat /etc/passwd---# 每条记录用冒号分隔(包含7个字段)
'root:x:0:0:root:/root:/bin/bash'
## 账号名称(root): 在系统中是唯一的(字符长度 1~12 个字符)
## 用户密码(x): 此字段存放加密口令(保存在`/etc/shadow`文件中)
## 用户标识码(UserID): 系统内部用它来标示用户
## 组标识码(GroupID): 系统内部用它来标识用户组(保存在`/etc/group`文件中) 
## 用户相关信息(root): 例如用户全名等 
## 用户目录: 用户登录系统后所进入的目录(家目录)
## 用户环境: 用户工作的环境(用户使用的 shell 类型)---## 使用 awk 或 cut 命令,仅打印出 Linux 系统中所有用户的用户名列表
awk -F':' '{ print $1}' /etc/passwd
cut -d: -f1 /etc/passwd

2. 用户密码文件 /etc/shadow
## 密码文件    
cat /etc/shadow---# 每条记录用冒号分隔,9个字段组成
'mysql:!:19112:0:99999:7:::'
## 用户名: 用户登录到系统时使用的名字,而且是惟一的 
## 口令: 存放加密的口令 
## 最后一次修改时间: 标识从某一时刻起到用户最后一次修改时间 
## 最大时间间隔: 口令保持有效的最大天数,即多少天后必须修改口令 
## 最小时间间隔: 再次修改口令之间的最小天数 
## 警告时间: 从系统开始警告到口令正式失效的天数 
## 不活动时间: 口令过期少天后,该账号被禁用 
## 失效时间: 指示口令失效的绝对天数(从1970年1月1日开始计算)
## 标志: 未使用 

3. sudo 权限文件 /etc/sudoers
# 增加 sudo 权限
vim /etc/sudoers## 修改文件里面的
#root ALL=(ALL) ALL
#用户名 ALL=(ALL) ALL

2. 删除用户
# 删除用户`test`,不会删除用户目录
userdel test    # 删除用户`test`,以及用户目录       		
userdel –r test                		

3. 切换用户
## 切换用户`test`              
su test  ## 切换用户`test`,并切换`用户环境`【推荐使用】				
su - test# 退出
Ctrl+D# 查看用户的`UID`和`GID`
id '用户名'							
## /usr/local/suninfo/oma/oma/third/openssh/bin/ssh.exe ## 切换远程用户
ssh -l test -p 22 192.168.19.128
ssh -p 22 root@192.168.100.101

4. 修改密码
# 修改 root 密码
sudo passwd root

2. 用户组

  • 当在创建一个新用户 user 时,若没有指定他所属于的组。就建立一个和该用户同名的私有组。
  • 创建用户时,也可以指定所在组并创建。
# 当前登录用户所属所有组列表
groups

1. 创建用户组
## 创建用户组`public`
groupadd public      ## 创建用户并指定组    
useradd user1 –g public

1. 用户组文件
# 组信息文件   
cat /etc/group  ---'root:x:0:'
## 组名: 用户所属组 
## 组口令: 一般不用GID(组ID) 
## 用户列表: 属于该组的所有用户

2. 用户组密码文件
cat /etc/gshadow---'mysql:!::'

2. 删除用户组
## 如果该组有用户成员,必须先删除用户才能删除组
groupdel public

3. last 最近登录信息列表

## 最近登录的 5 个账号
last -n 5

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/57539.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【2022工业3D异常检测文献】Patch+FPFH: 结合3D手工点云描述符和颜色特征的异常检测方法

AN EMPIRICAL INVESTIGATION OF 3D ANOMALY DETECTION AND SEGMENTATION 1、Background PatchCore 方法&#xff1a; PatchCore是一种基于2D图像的异常检测方法&#xff0c;它使用预训练的深度学习模型&#xff08;如在ImageNet上预训练的模型&#xff09;来提取图像的局部特…

Memory Bus in SOC

在 SoC架构设计中&#xff0c;Memory Bus 是一个关键的组成部分&#xff0c;它负责连接 SoC 中的各个模块&#xff08;如 CPU、GPU、DMA、外设等&#xff09;与外部存储器&#xff08;如 DDR、NAND、Flash 等&#xff09;&#xff0c;起到连接处理器和存储器之间的桥梁作用&…

Qt优秀开源项目之二十四:EXCEL读写利器QXlsx

QXlsx是基于Qt5/Qt6的Excel文件&#xff08;*.xlsx&#xff09;的读写库。 github地址&#xff1a;https://github.com/QtExcel/QXlsx QXlsx既可以编译成库&#xff0c;也可以直接引用源码QXlsx-master\QXlsx\QXlsx.pri QXls提供了非常丰富的Examples&#xff0c;比如&#xff…

LED电子看板减少人工记录的错误

在当今快节奏的生产和管理环境中&#xff0c;准确性和效率是企业追求的关键目标。而传统的人工记录方式&#xff0c;常常因人为因素而出现各种错误&#xff0c;影响着企业的决策和运营。然而&#xff0c;随着科技的不断进步&#xff0c;LED 电子看板的出现为解决这一难题提供了…

无法获得下列许可 SOLIDWORKS Standard。 无法从使用许可服务器内读取数据,(-16,10009,10054)

无法获得下列许可 SOLIDWORKS Standard。 无法从使用许可服务器内读取数据&#xff0c;(-16,10009,10054) 错误如图 打开xxclean 扩展功能 服务无法启动

10.23Python_matplotlib_乱码问题

中英文问题解决方案 在使用 Matplotlib 绘图时&#xff0c;经常会出现中文字体显示问题。以下是一些解决方案&#xff1a; Windows 系统解决方案 在代码开始处添加以下代码&#xff0c;以支持中文显示&#xff1a; import matplotlib.pyplot as plt plt.rcParams[font.sans…

联想与Meta合作基于Llama大模型推出面向PC的个人AI智能体——AI Now | LeetTalk Daily...

“LeetTalk Daily”&#xff0c;每日科技前沿&#xff0c;由LeetTools AI精心筛选&#xff0c;为您带来最新鲜、最具洞察力的科技新闻。 联想集团昨日在美国西雅图召开年度Tech World大会。联想CEO杨元庆在主题演讲中&#xff0c;与Meta创始人兼CEO马克扎克伯格一道宣布&#x…

《15分钟轻松学Go》教程目录

在AI快速发展的时代&#xff0c;学习Go语言依然很有用。Go语言擅长处理高并发任务&#xff0c;也就是说可以同时处理很多请求&#xff0c;这对于需要快速响应的AI服务非常重要。另外&#xff0c;Go适合用来处理和传输大量数据&#xff0c;非常适合机器学习模型的数据预处理。 …

C++笔记---哈希表

1. 哈希的概念 哈希(hash)又称散列&#xff0c;是一种组织数据的方式。从译名来看&#xff0c;有散乱排列的意思。 本质就是通过哈希函数把关键字Key跟存储位置建立一个映射关系&#xff0c;查找时通过这个哈希函数计算出Key存储的位置&#xff0c;进行快速查找。 STL中的un…

【Python数据库操作】使用SQLite和MySQL进行数据存储和查询!

【Python数据库操作】使用SQLite和MySQL进行数据存储和查询&#xff01; 在现代应用程序中&#xff0c;数据存储与管理是至关重要的。Python为开发者提供了多种与数据库进行交互的方式&#xff0c;其中SQLite和MySQL是最常用的两种数据库。本文将深入探讨如何使用Python进行SQ…

No.20 笔记 | WEB安全 - 任意文件操作详解 part 2

一、文件后缀名验证 &#xff08;一&#xff09;验证方式分类 基于白名单验证&#xff1a;只允许上传白名单中指定后缀名的文件。基于黑名单验证&#xff1a;只允许上传黑名单中未包含后缀名的文件。 &#xff08;二&#xff09;实验准备 修改 Apache 的 httpd - conf 文件…

uni-app写的微信小程序如何体积太大如何处理

方法一&#xff1a;对主包进行分包处理&#xff0c;将使用url: /pages/components/equipment/equipment跳转页面的全部拆分为分包&#xff0c;如url: /pagesS/components/equipment/equipment 在pages.json中添加 "subPackages": [{ "root"…

2024年五一杯数学建模C题煤矿深部开采冲击地压危险预测求解全过程论文及程序

2024年五一杯数学建模 C题 煤矿深部开采冲击地压危险预测 原题再现&#xff1a; “煤炭是中国的主要能源和重要的工业原料。然而&#xff0c;随着开采深度的增加&#xff0c;地应力增大&#xff0c;井下煤岩动力灾害风险越来越大&#xff0c;严重影响着煤矿的安全高效开采。在…

transient关键字详解

今天没打算写blog&#xff0c;在看一篇关于多线程环境下SimpleDateFormat线程不安全的问题&#xff0c;一般我们都知道多线程下这个是不安全&#xff0c;但是为什么不安全不太清楚&#xff0c;我在看的这篇文章讲的比较透彻&#xff0c;我根据文章中讲结合SimpleDateFormat源码…

[Unity Demo]从零开始制作空洞骑士Hollow Knight第十五集:制作更多地图,更多敌人,更多可交互对象

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言一、第一个代表性场景 1.制作更多敌人2.制作更多可交互对象二、第二个代表性场景 1.制作更多敌人2.制作更多可交互对象三、第三个代表性场景 1.制作更多敌人2.制…

苹果手机照片误删还能恢复吗?3款数据恢复工具推荐

照片是人们记录生活点滴与美好回忆的重要方式之一。而苹果手机则具备了较强的拍照功能&#xff0c;深受市场欢迎&#xff0c;但其也存在误删照片并难以恢复的难题。现在市面上也又很多照片恢复软件&#xff0c;其功能参差不齐。今天&#xff0c;小编为您找到了3款高效且可靠的苹…

猫咪掉毛上岸!一招解决清理难题——好用的宠物空气净化器

养宠前就知道猫咪有换毛季&#xff0c;我了解的是一年有两次&#xff0c;养宠后才知道&#xff0c;一次是半年...秋天风大的时候更加严重&#xff0c;直接就是一只“蒲公英”&#xff0c;随时散落一地的猫毛。早晚给它梳毛&#xff0c;每次都能收获巨大一张猫饼。 家里的地板上…

高标准农田信息化推动农业产业链升级

在当前全球农业转型的关键时期&#xff0c;高标准农田信息化作为现代农业发展的核心驱动力之一&#xff0c;正深刻地影响并推动着农业产业链的全面升级。这一进程不仅关乎粮食安全与质量的提升&#xff0c;更是实现农业可持续发展、促进农村经济繁荣的重要途径。 技术应用&…

TCL中环开工率下滑,员工集体要求解约赔偿

“ 尽管中环的市占率有所提高&#xff0c;但是高开工率也带来了巨量硅片库存&#xff0c;严重拖累了公司业绩。 ” 转载&#xff1a;科技新知 原创 作者丨依蔓 编辑丨蕨影 因大幅下调开工率&#xff0c;光伏硅片龙头TCL中环疑似遭遇员工“离职潮”&#xff1f; 近日&…

Java EE规范

1、简介 Java EE的全称是Java Platform, Enterprise Edition。早期Java EE也被称为J2EE&#xff0c;即Java 2 Platform Enterprise Edition的缩写。从J2EE1.5以后&#xff0c;就改名成为Java EE。一般来说&#xff0c;企业级应用具备这些特征&#xff1a;1、数据量特别大&…