Linux操作系统的使用
- 一、Linux操作系统目录结构
- 二、Linux系统常用命令
- 2.1、Linux系统开关机
- 2.2、目录切换命令
- 2.3、目录操作命令(增删改查)
- 2.4、文件操作命令(增删改查)
- 2.5、压缩文件管理
- 2.6、其他命令
- 2.7、linux权限命令:chmod
- 2.8、防火墙限命令
- 三、文件服务器迁移
- 四、centos7 修改root@后用户别名
- 五、查看ip地址
- 六、其它
- 6.1、无法使用vim命令
- 6.2、centos8设置日期时间
- 6.3、JPS-查看当前用户下的java进程
- 6.4、修改静态IP
- 6.5、无法删除文件
- 6.6、操作系统版本信息
- 6.7、上传下载文件
一、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 iburst
server ntp.aliyum iburst
server ntp6.aliyum iburst
server cn.ntp iburst
server ntp.shu.edu 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
更多推荐
Linux操作系统的使用
发布评论