Linux操作系统的使用

一、Linux操作系统目录结构

在这里插入图片描述

二、Linux系统常用命令

2.1、Linux系统开关机

开机登录

开机会启动许多程序。它们在Windows叫做"服务"(service),在Linux就叫做"守护进程"(daemon)。开机成功后,它会显示一个文本登录界面,这个界面就是我们经常看到的登录界面,在这个登录界面中会提示用户输入用户名,而用户输入的用户将作为参数传给login程序来验证用户的身份,密码是不显示的,输完回车即可!

一般来说,用户的登录方式有三种:

  • 命令行登录
  • ssh登录
  • 图形界面登录

最高权限账户为 root,可以操作一切!

在linux领域内大多用在服务器上,很少遇到关机的操作。毕竟服务器上跑一个服务是永无止境的,除非特殊情况下,不得已才会关机。

## 关机指令为
shutdown

## 将数据由内存同步到硬盘中。
sync 

## 关机指令,你可以man shutdown 来看一下帮助文档。例如你可以运行如下命令关机:
shutdown 

## 这个命令告诉大家,计算机将在10分钟后关机
shutdown –h 10 

## 立马关机
shutdown –h now 

## 系统会在今天20:25关机
shutdown –h 20:25 

## 十分钟后关机
shutdown –h +10 

## 系统立马重启
shutdown –r now 

## 系统十分钟后重启
shutdown –r +10 

 ## 就是重启,等同于 shutdown –r now
reboot

 ## 关闭系统,等同于shutdown –h now 和 poweroff
halt

最后总结一下,不管是重启系统还是关闭系统,首先要运行 sync 命令,把内存中的数据写到磁盘中。

2.2、目录切换命令

## 切换到该目录下usr目录
cd usr

## 切换到上一层目录       
cd ../

## 切换到系统根目录       
cd /

## 切换到用户主目录    
cd ~

## 切换到上一个所在目录     
cd -

2.3、目录操作命令(增删改查)

## 查看目录:ls -[al]
ls:查看目录
  参数 -a 显示全部,包含隐藏
  参数 -l 列表形式显示

## 增加新目录 mkdir
mkdir 目录名字
  # 参数 -m,配置文件的权限
  # 参数 -p,将所需要的目录(包含上一级目录)递归创建起来(允许创建目录及子目录)

## 搜索目录和文件:find
find 搜索目录,也能搜索文件
  # 参数 -name,以目录名或者文件名进行搜索
  # 示例:在etc目录下,搜索名是 "sudo*"
  - find /etc -name "sudo.*"

## 修改目录名:mv
mv 老目录名 新目录名
  # 示例:mv oldtest newtest
  # 如果修改后的新目录和老目录不在同一个路径下,产生剪切效果
  # 示例:mv oldtest /usr/local/newtest
  
## 复制目录:cp
cp 复制目录命令
  # 参数 -r 递归
  # 示例:将根目录下的test目录,拷贝到/usr/local下   cp -r test /usr/local

## 删除目录或文件:rm
rm:删除目录命令
  # 参数 -r 递归
  # 参数 -f 不询问
  # 示例:删除/usr/local目录下的test目录。rm -rf test
## 删除空目录:rmdir
rmdir 空目录名称
  # 参数 -p 是当子目录被删除后使它也成为空目录的话,则顺便一并删除。
  # 示例:有目录aaa/bbb,删除名为bbb的子目录。若bbb删除后,aaa目录成为空目录,则aaa亦予删除。 rmdir -p aaa/bbb

2.4、文件操作命令(增删改查)

## 创建文件:touch
touct:创建新文件命令  touch 文件名

## 查看文件
# cat命令查看文件,值显示文件最后一屏,参数 -n 显示行号
# 示例:查看/etc/sudo.conf。  
cat /etc/sudo.conf
# 示例:查看/etc/sudo.conf。  
cat -n /etc/sudo.conf

## more命令查询文件,显示文件百分比,回车下一行,空格下一页
# 示例:查看/etc/sudo.conf。 
more /etc/sudo.conf

## less命令查看文件,支持pgUp,pgDn进行上下翻页
# 示例:查看/etc/sudo.conf
less /etc/sudo.conf

## tail命令查看文件,支持显示的文件行数
# 示例:使用tail-10 查看/etc/sudo.conf文件的后10行

## 修改文件:vim编辑器
vim 文件名
# vim编辑器有三种状态
# 命令模式		 只接受命令关键字,其他字符不接受通过输入相应的命令可以进入编辑模式,进入编辑模式命令:i,o,a或者insert
# 编辑模式		对文件进行内容编辑 任何字符都接受,内容编辑完毕之后 需要退回命令模式,退回到命令模式ESC键
# 底行模式		进行保存或退出操作,命令模式进入底行模式: 冒号,底行模式:wq写入并退出,q!退出不保存

## vim编辑器使用过程关于vim使用过程:
# vim 文件-------->命令模式--------->输入i---------->编辑模式----------->编辑文件----------->按下Esc--------->
# 		命令模式--------->按下:---------->底行模式----------->输入wq保存并退出/q!强制退出不保存

2.5、压缩文件管理

Linux中的打包文件一般是以.tar结尾的,压缩的命令一般是以.gz结尾的。而一般情况下打包和压缩是一起进行的,打包并压缩后的文件的后缀名一般.tar.gz。

## tar命令:压缩和解压缩
# 			参数:-z 调用gzip压缩命令压缩
# 			参数:-c 打包文件
# 			参数:-C 在指定的目录解压缩
# 			参数:-v 显示命令的执行过程
# 			参数:-f 指定文件名
# 			参数:-x 解压缩

## 示例:将test目录打成压缩包,压缩后文件名为 test.tar.gz
tar -zcvf test.tar.gz test

## 示例:将test.tar.gz进行解压缩
 tar -xvf test.tar.gz
 tar -xvf test.tar.gz -C /usr/local   解压缩到指定的目录
 
## pwd命令:显示当前的目录
pwd

2.6、其他命令

## ps命令:查看进程
# 		参数:-e 显示所有程序
# 		参数:-f 显示UID,PPIP

## kill命令:结束进程
#		参数:-9 强制杀死该进程

## grep:搜索命令
# 搜索字符串,搜索文件
# 示例:搜索 /etc/sudo.conf 中包含字符串“to”的内容
grep to /etc/sudo.conf
# 	-n:参数 显示行号

## 管道命令:|
# 将前一个命令的输出作为本次目录的输入
# 示例:ls命令列出etc目录下所有后缀名是.conf的
ls -al | grep .conf

## 网络命令:ifconfig
# 查看本机网卡信息
# 设置固定IP 
systemctl -f stop NetworkManage

## 网络命令:ping
# 查看与某台主机的连接情况

## 网络命令:netstat
netstat -lntup  
#		参数 l:listening 监听
#		参数 n:num  以网络IP地址代替名称
#		参数 t:tcp 协议
#		参数 u:udp 协议
#		参数 p:process 进程

2.7、linux权限命令:chmod

权限是Linux中的重要概念,每个文件/目录等都具有权限,通过ls -l命令我们可以 查看某个目录下的文件或目录的权限
示例:在随意某个目录下ls -l
在这里插入图片描述
在这里插入图片描述
文件的类型:

  • d:代表目录
  • -:代表文件
  • l:代表链接(可以认为是window中的快捷方式)

后面的9位分为3组,每3位置一组,分别代表属主的权限,与当前用户同组的 用户的权限,其他用户的权限

  • r:代表权限是可读,r也可以用数字4表示
  • w:代表权限是可写,w也可以用数字2表示
  • x:代表权限是可执行,x也可以用数字1表示
    在这里插入图片描述
    chmod命令设置权限
chmod u=rwx,g=rw,o=r aaa.txt

2.8、防火墙限命令

## 查看防火墙状态
systemctl status firewalld.service

## 开启防火墙
systemctl start firewalld.service

## 关闭防火墙
systemctl stop firewalld.service

## 开机启动防火墙
systemctl enable firewalld.service

## 开机禁止启动防火墙
systemctl disable firewalld.service

## 禁用防火墙
systemctl disable firewalld.service

## 查看防火墙某个端口是否开放
firewall-cmd --query-port=80/tcp

## 开放防火墙端口80
firewall-cmd --zone=public --add-port=80/tcp --permanent

## 关闭80端口
firewall-cmd --zone=public --remove-port=80/tcp --permanent  

## 配置立即生效 开启关闭端口后必须操作
firewall-cmd --reload 

## 查看开放的端口列表
firewall-cmd --zone=public --list-ports

三、文件服务器迁移

## -r 包括文件夹本身
scp -r 文件名 root@目标服务器ip:/opt/home(指定目录)
scp /opt/home/mysql/mysql-5.7.31-1.el7.x86_64.rpm-bundle.tar root@39.106.XX.XX/opt/home

四、centos7 修改root@后用户别名

## 输入命令 修改后保存退出
vi /etc/hostname

然后重启系统 查看是否更改成功

cat /etc/hostname

五、查看ip地址

ip addr

在这里插入图片描述
发现 ens33 没有 inet 这个属性,那么就没法通过IP地址连接虚拟机。

接着来查看ens33网卡的配置

vi /etc/sysconfig/network-scripts/ifcfg-ens33

在这里插入图片描述
从配置清单中可以发现 CentOS 7 默认是不启动网卡的(ONBOOT=no)。

把这一项改为YES(ONBOOT=yes),

然后重启系统 查看ip
在这里插入图片描述

六、其它

6.1、无法使用vim命令

vim start.sh 
-bash: vim: 未找到命令

rpm -qa | grep vim
vim-minimal-8.0.1763-15.el8.x86_64

yum install -y vim-minimal-8.0.1763-15.el8.x86_64
上次元数据过期检查:1:36:16 前,执行于 2021年06月04日 星期五 17时30分56秒。
软件包 vim-minimal-2:8.0.1763-15.el8.x86_64 已安装。
依赖关系解决。
无需任何处理。
完毕!

6.2、centos8设置日期时间

查看系统当前的时区命令

timedatectl 

设置系统时区位亚洲/上海:

timedatectl set-timezone Asia/Shanghai 

CentOS8系统中,原有的时间同步服务 ntp/ntpdate服务已经无法使用,使用yum安装,提示已不存在。
在这里插入图片描述
在CentOS8中,已使用chrony替代ntp,首先安装chrony

## 使用dnf安装
dnf install -y chrony

## 也可以用yum安装
yum install -y chrony

安装chrony成功,修改chrony服务的配置文件
永久设置同步时间服务器(修改配置文件)


## 客户端配置
vi /etc/chrony.conf 

## 添加阿里云的时间服务地址 理论上想添加多少时间服务器都可以
pool 2.centos.pool.ntp.org iburst
server ntp.aliyum.com iburst
server ntp6.aliyum.com iburst
server cn.ntp.org.cn iburst
server ntp.shu.edu.cn iburst

## 服务端配置
# 然后就是要打开allow配置,设置允许请求的服务器网段,比如这里配置如下:
# 这样表示允许192.168.0.0网段的所有机器访问,即192.168.0.x的ip都可以向当前服务器请求同步,具体根据实际的集群进行配置.
allow 192.168.0.0/16

## 重启网络时间服务chrony,并设置服务后台运行。
systemctl restart chronyd.service

## 设置时间同步服务开机启动 时间就会自动同步
systemctl enable chronyd.service

## 手动同步一次时间,返回200 OK表示同步成功;
chronyc -a makestep 

## 查看时间同步源
chronyc sources -v

## 查看时间同步源状态
chronyc sourcestats -v

## 使用 chronyc tracking 可以显示系统时间信息  默认为UTC
chronyc tracking

6.3、JPS-查看当前用户下的java进程

JPS是JDK1.5提供的一个查看当前用户Java进程的小工具, 可以看做是JavaVirtual Machine Process Status Tool的缩写。非常简单实用。

## 命令格式:jps [options ] [ hostid ] 
# [options]选项 :
#    -q:仅输出VM标识符,不包括classname,jar name,arguments in main method 
#	 -m:输出main method的参数 
#	 -l:输出完全的包名,应用主类名,jar的完全路径名 
#	 -v:输出jvm参数 
#	 -V:输出通过flag文件传递到JVM中的参数(.hotspotrc文件或-XX:Flags=所指定的文件 

jps

## jps的帮助命令
jps -help
jps -h

## 查看进程pid及main方法参数
jps -m

## 仅显示pid
jps -q

## 查看pid及JVM参数
jps -v

## 查看pid及程序所在包名
jps -l

6.4、修改静态IP

vi /etc/sysconfig/network-scripts/ifcfg-ens33
TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="static"
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="ens33"
DEVICE="ens33"
ONBOOT="yes"
IPADDR="192.168.200.128"
GATEWAY="192.168.200.2"
NETMASK="255.255.255.0"
DNS1="192.168.200.2"

IPADDR : 前三位和虚拟机网段一致 最后一位自己设置 不和已占用的冲突即可

第二步 : 重启网卡

nmcli c reload ens33
nmcli c up ens33

6.5、无法删除文件

在卸载宝塔的时候,删除不了 .user.ini 文件,也无法删除上级目录,
提示:rm: 无法删除’.user.ini’: 不允许的操作
在这里插入图片描述
原因是该文件被设置了一些不可删除的属性

## 查看文件所以具有的属性,具有隐藏属性使用rm命令是无法删除文件的
#   - a:设置a之后,这个文件将只能增加数据,而不能删除也不能修改数据,只有root才能设置这个属性。
#   - i:它可以让一个文件不能被删除、改名,设置连接也无法写入或添加数据。只有root才能设置这个属性。
lsattr .user.ini

## 解决
## 通过chattr命令修改这文件的属性后, 就可以删除
#  '-':表示去除文件属性
#  '+':表示设置文件属性
chattr -ia .user.ini

## 正常删除
rm .user.ini

6.6、操作系统版本信息

## 查看当前操作系统版本信息  
cat /proc/version

## 查看操作系统内核信息 uname命令用于打印当前系统相关信息(内核版本号、硬件架构、主机名称和操作系统类型等)
# -a显示全部信息
# -m或--machine:显示电脑类型
# -r或--release:显示操作系统的发行编号
# -s或--sysname:显示操作系统名称
# -v:显示操作系统的版本
# -p或--processor:输出处理器类型或"unknown"
# -i或--hardware-platform:输出硬件平台或"unknown"
# -o或--operating-system:输出操作系统名称
# --help:显示帮助
# --version:显示版本信息
uname -a

## 查看系统版本信息的命令 (适用于所有的linux,包括RedHat、SUSE、Debian)
# 提示command not found 需要安装 yum install redhat-lsb -y
lsb_release -a

6.7、上传下载文件

## 安装lrzsz:
yum -y install lrzsz

## 上传文件
rz filename

## 下载文件
sz filename
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值