学习方式:
1. 认识linux
2. 基本命令(文件操作,牡蛎管理, 文件树形,vim编辑器, 账号管理, 磁盘管理...)
3. 软件的安装和部署(java, tomcat, docker)
开关机的基本目录介绍
分为三种:
1. 命令行登陆
2. ssh登陆
3. 图形界面登陆
最高权限账号为root, 可以操作一切
# sync # 将数据有内存同步到硬盘中
# shuudown #关机
# shutdown -h 10 10分钟后关机
# shutdown -h now 立刻关机
# shutdown -h 20:25 20:25关机
# shutdown -h +10 十分钟后关机
# shutdown -r now 立即重启
# shutdown -r +10 10分钟后重启
# reboot 重启
# halt 关闭系统
# poweroff 关闭系统
系统目录结构
1. 一切皆文件
2. 根目录/, 所有文件都挂载在/ 下
常用基本命令
目录管理
结对路径, 相对路径
# 进入目录文件
cd
# 查看文件
ls -a 查看所有文件(保罗影藏)
ls -l 列出所有文件, 包含属性和权限(看不到隐藏)
# 显示当前所在目录
pwd
# 创建一个目录
mkdir test1
mkdir -p test1/test2/test3 递归创建目录
# 删除目录
rmdir test1
rmdir -p test1/test2/test3
# 复制文件或者目录
cp 源目录 目的目录
# 移除文件或者目录
rm -f 忽略不存在的文件, 强制删除
rm -r 递归删除目录
rm -i 互动, 删除时询问是否删除
rm -rf / 删除系统中所有的文件, 删库跑路
# 移动文件或者目录
mv 源目录 目的目录
mv -f 强制移动
mv -u 只替换已经更新过的文件
基本属性
权限
第一个字母
d: 目录
-: 文件
l: 链接文档
b: 装置文件中可供存储的接口设备(可随机存取装置)
c: 装置文件中的串行端口设备(键盘鼠标)
# 改变文件属组
chgrp -R 属组 文件名
# 更改文件
chown -R 属主 文件名
# chmod更改文件的9个属性
chmod -R 777 filename
文件内容查看
centos7网络配置目录
/etc/sysconfig/network-scripts ifcfg-eth0
向下查找字符串: /字符
向上查找字符串: ?字符
Linux链接
分为硬链接和软链接
硬链接: A---B, 假设B是A的硬链接, 那么他们两个指向同一个文件, 允许一个文件拥有多个路径
软连接: 就是类似windows下的快捷方式,删除了源文件,跨界方式也访问不了
# 创建连接
ln命令
# 创建硬链接
ln file1 file2
# 创建软链接
ln -s file1 file2
Vim编辑器
vim是vi的升级版
vim通过插件可以实现IDE一样的功能
账号管理
useradd 命令添加用户
useradd -选项 用户名
选项
-m: 自动创建这个用户的主目录
useradd -m qyy
修改密码
passwd qyy
锁定用户
passwd -l qyy 锁用户
passwd -d qyy 没有密码不能登录
查看
cat /etc/passwd
新用户可以在/etc/passwd众找到
删除用户
userdel -r qyy 删除用户时将目录i一并删除
修改用户
usermod qyy
选项
-c: comment添加一段属性描述
-d: 更改目录, 如果不存在需要配合-m自动创建
-g: 指定用户组
-G 指定用户的附加组
-s: 指定用户的登录shell
切换用户
su qyy
推出
exit
修改主机名(临时修改)
hostname 新主机名
用户组管理
添加用户组
groupadd qgroup
查看
cat /etc/group
指定id
groupadd -g 1111 qyygroup
不指定则自增1
删除用户组
groupdel qgroup
修改用户组
groudmod -g 新id -n 新name 老的groupname
切换用户组
登录qyy
$ newgrp root
磁盘管理
# 列出文件系统的整体使用量
df
-h: 显示单位M,G
# 检查当前目录磁盘空间使用量
du
-a: 查看当前目录全部文件
# 检查根目录下每个目录所占用的容量
du -sm /*
# 挂在磁盘(将外部设备qyy这个磁盘,挂在到/mnt/qyy下,就可以直接访问了)
mount /dev/qyy /mnt/qyy
# 强制卸载
unmount -f 挂载位置
进程管理
1. linux中每个程序都有自己的一个进程, 每个进程有一个id号
2. 每一个进程都有一个父进程
3. 进程可以前台和后台
4. 服务是后台运行的, 基本程序都是前台运行的
# 查看当前系统中正在执行的进程信息
ps
-a: 显示当前终端运行的所有的进程信息
-u: 以用户的信息显示进程
-x: 显示后台运行进程的参数
px -aux | grep mysql # 查看mysql相关的信息
补充 | 管道符
补充grep 过滤命令,查找文件中符合条件的字符串
ps -ef: 可以查看父进程信息
ps -ef |grep mysql 查看父进程信息一般可以通过目录树结构查看
pstree -pu
-p: 显示父id
-u: 显示当前的用户组
# 结束进程
kill -9 id
防火墙相关命令
# 查看firewall服务状态
systemctl status firewalld
# 开启,重启,关闭firewalld.service服务
service firewalld start
service firewalld restart
service firewalld stop
# 查看防火墙规则
firewalld-cmd --list-all # 查看全部信息
firewalld-cmd --list-ports # 只看端口信息
# 开启端口
firewall-cmd --zone=public --add-port=8080/tcp --permanent
重启防火墙 systemctl restart firewall.service
--zoom # 作用域
--add-port=80/tcp # 添加端口,格式为: 端口/通讯协议
--permanent #用就生效, 没有此项时, 重启后失效
环境安装
安装软件的三种方式rpm(jdk), 解压缩安装(tomcat), yum在线安装(docker)
JDK安装(jar包)
# 1.检测当前系统是否存在java
java -version
如果有,则需要卸载
# rpm -qa|grep jdk # 检查jdk版本信息
# rpm -e --nodeps jdk_ (nodeps强制卸载)
# 卸载完毕即可安装
rpm -ivh rpm包
# 2. 配置环境变量
vim /etc/profile
在最下面添加下面的配置
JAVA_HOME=/usr/java/jdk1.8.0_311-amd64
CLASS_PATH=%JAVA_HOME%/lib;%JAVA_HOME%/jre/lib
PATH=$JAVA_HOME/bin;$JAVA_HOME/jre/bin
export PATH CLASSPATH JAVA_HOME
export PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
jAVA_HOME=/usr/java/jdk1.8.0_221-amd64
JRE_HOME=$JAVA_HOME/jre
CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib
PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH
export JAVA_HOME JRE_HOME CLASSPATH PATH
# 3. 让配置文件生效
source /etc/profile
# 4. 执行java
nohup java -jar xxx
Tomcat安装(war包)
# 运行.sh文件
绿色代表可执行文件
# 启动./startup.sh
#