走进Linux系统
开机登录
开机会启动许多程序,windows叫做服务,linux叫做守护进程
一般来说登录方式三种:
命令行登录
ssh登录
图像登录
#关机
sync #将数据由内存同步到硬盘中
shutdown #关机指令,你可以man shutdown来看一下帮助文档
shutdown -h #这个命令告诉大家,计算机将在10分钟之后关机
shutdown -h now #立马关机
shutdown -h 20:25#系统在今天20:25关机
shutdown -h +10 #十分钟后关机
shutdown -r now #系统立马重启
shutdown -r +10 #系统十分钟后重启
reboot #就是重启,等同于shutdown -r now
halt #关闭系统,等同于shutdown -h now 和poweroff
总结一下,不管是重启系统还是关闭系统,首先要运行sync,把内存数据写道磁盘中
系统目录结构:
1.一切皆文件
2.根目录/,所有的文件都挂载在这个节点下
ls /
/bin:bin是binary的缩写,这个目录存放着最经常使用的命令
/boot:这里存放是揿动linux时使用的一些核心文件,包括一些连接文件以及镜像文件
/dev:dev是Device设备的缩写,存放的是linux的外部设备,在linux中访问设备的方式和访问文件的方式是相同的
/etc:这个目录用来存放所有的系统管理所需要的配置文件和子目录
/home:用户的主目录,在Linux中,每个用户都有一个自己的目录,一般该目录名是以用户的账号命名的
/lib:这个目录存放着系统最基本的动态连接共享库,其作用类似于Windows里面的DLL文件
/lost+found:这个目录一般情况是空的,当系统非法关机后,这里存放了一些文件
/media:linux系统会自动识别一些设备,例如U盘、光驱等等,当识别后,linux会把识别的设备挂载这个目录下面
/mnt:系统提供该目录是为了让用户临时挂载别的文件系统的,我们可以将光驱挂载在/mnt目录上,然后查看光驱里面的内容
/opt:这个给主机额外安装软件所摆放的目录。比如你安装一个ORACLE就可以放在这个目录下,默认是空的
/root:该目录为系统管理员,也称为超级权限者的用户主目录
/sbin:s就是super User的意思,这里存放的是系统管理员使用的系统管理程序
/srv:该目录存放一些服务启动之后需要提取的数据
/sys:这里linux2.6内核的一个很大的变化。该目录下安装了2。6内核中新出现的一个系统文件
/tmp:这是目录用来存放一些临时文件的
/usr:这个一个非常重要的目录,用户的很多应用程序和文件都在这里,类似于windows的program files
/usr/bin:系统用户使用的应用程序
/var:这个目录存放着在不断扩充的东西,我们习惯将那些经常被修改的目录放在这个目录下。包括日志文志
/run:这是一个临时文件系统,存储系统启动以来的信息。当系统重启时,这个文件应该临时或者删除
/www:存放服务器网站相关的资源,环境,网站的项目
常用命令
cd:切换目录命令
./ :当前目录
cd …:返回上一级
ls:列出目录
-a:all,查看全部文件,包括隐藏文件
-l:列出所有的文件,包括文件的属性和权限,没有隐藏文件
pwd:当前用户目录
mkdir :创建一个目录
-p:递归创建目录
rmdir:移除目录
-p:递归删除目录
cp:复制目录
rm:移除文件
-f:忽略不存在的文件,不会出现警告,强制删除
-r :递归删除目录
-i:互动,删除询问是否删除
rm -rf / #系统中所有文件就被删除了,删库跑路就是这么操作
mv移动文件
-f:强制移动
-u:只替换已经更新过的文件
chmod:更改文件9个属性
chomd [-R] xyz 文件或者目录
r:4 w:2 x:1
可读可写不可执行 rw- 6
chmod 777 文件赋予所有用户可读可写可执行
文件内容查看:
cat:由第一行开始显示文件内容
tac:从最后一行开始显示
nl:显示的时候,顺道输出行号
more:一页一页的显示文件内容
less:与more类似,但是比more更好的是,他可以往前翻页
head:只看头几行
tail:只看尾巴几行
你可以使用man[命令]来查看各个命令的使用文档,如:man cp
网络配置目录:cd /etc/sysconfig/network-scripts
ifconfig:命令查看网络配置
vim:
i:切换到输入模式,以输入字符
x:删除当前光标所在处的字符
:切换到底线命令模式,以在最低一行输入命令。如果是编辑模式,需要先退出ESC
底线命令模式:
q:退出程序
w:保存文件
账号管理:
用户账号的添加、删除与修改
用户口令的管理
用户组的管理
添加用户
useradd- 选项 用户名
-m:自动创建这个用户的主目录 /home/xxx
-c:comment指定一段注释性描述
-g:用户组,指定用户所属的用户组
-G:用户组,用户组指定所属的附加组
-m:使用者目录如不存在则自动建立
-s:shell文件 指定用户的登录shell
-u:用户好 指定用户的用户好,如果同时有-o选项,则可以重复使用其他用户的标识号
移除用户
userdel -r xxx:删除用户
修改用户
usermod -d
切换用户
1.切换用户的命令为: su username
2、从普通用户切换到root用户,还可以使用命令:sudo su
3.在终端输入exit或logout或使用快捷方式ctrl+d,可以退回到原来用户
$表示普通用户
#表示超级用户,也就是root用户
查看当前主机名字:hostname
修改主机名字:hostname +加 “名字”
用户的密码设置:passwd+“用户名”
锁定账户
root情况下,
passwd -l username #锁定之后不能登录
passwd -d username #没有密码也不能登录
用户组管理:
涉及用户组的添加、删除和修改。组的增加、删除和修改实际就是etc/group
创建用户组:
groupadd +“用户名组”
创建完用户组后可以得到一个组的id,这个id是可以指定的! -g +“数字”
,如果不指定默认是自增1
删除用户组:groupdel +“用户组名”
修改用户组的权限信息和名字:groupmod -g修改id -n 换名字
group -g “” -n “” 原来的名字
用户要切换用户组怎么办呢
#登录当前用户 daleilei
$ newgrp root
查看用户组的分配情况 cat /etc/passwd
查看真正密码 cat /etc/shadow 加密之后保存的地方
用户信息都在 cat /etc/group
磁盘管理
df(列出文件系统整体的磁盘使用量) du(检查磁盘空间使用量)
df -h当前使用的量 具体到m
du -sm /* 检查根目录下所占的容量
挂载:mount /dev/daleilei /mnt/daleilei
卸载:umount -f:强制卸载
进程管理
在linux中,每一个程序都是自己的一个进程,每一个进程都有一个id号
ps 查看当前系统中正在执行的各种进程的信息
ps -xx
-a:显示当前终端进行的所有的进程信息
-u:以用户的信息显示进程
-x:显示后台运行进程的参数
例如:
ps -aux|
ps -aux|redis
在linux中,| 这个叫做管道符, A|B
grep 查找文件中符合条件的字符串
ps -ef:查看到父进程的信息
pstree -pui
-p 显示父id
-u 显示用户组
结束进程:
杀掉进程kill
kill -9 +“id”
环境安装:
jdk安装
1.下载jdk rpm 去orcale官网下载
2.安装Java环境
#检测当前系统是否存在java环境! Java -version
#如果有的话需要卸载
#rpm -qa|grep jdk #检测jdk版本信息
#rpm -e --nodeps jdk_
# 卸载完毕之后即可安装jdk
# rpm -ivh rpm包名
#配置环境变量
vim /etc/profile
卸载jdk的样子
配置linux的系统环境
进入 cat /etc/profile,在最后添加 java_home是找到你
防火墙的
#查看firewall服务状态
systemctl status firewalld
#开启、重启、关闭、firewalld.service服务
#开启
service firewalld start
#重启
service firewalld restart
#关闭
service firewalld stop
#查看防火墙规则
firewall-cmd --list-all #查看全部信息
firewall-cmd --list-ports #只看端口信息
#开启端口
开端口命令:firewall-cmd --zone=public --add-port=80/tcp --permanent
重启防火墙:systemctl restart firewalld.service
命令含义:
--zone #作用域
--add-port=80/tcp#添加端口,格式为:端口/通讯协议
--permanent #永久生效,没有此参数重启后失效
但这种方法只是临时解决了不能执行命令的问题,想要彻底解决需要修改/etc/profile文件 在文件的底部添加上
export PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin 命令,这样在系统即使是重启或者是切换用户都可以正常使用命令
Tomcat安装
ssm war就需要放到tomcat中运行
1.下载tomcat 官网下载即可
2.解压文件 tar -zxvf +“文件名”
tar -vxzf apache-tomcat-9.0.39.tar.gz
3.启动omcat测试 ./ XXX.sh 即可运行
#执行 ./startup.sh
#停止 ./shutdown.sh
Docker(yum安装)
安装
1.检测centos7
cat /etc/redhat-release
2.安装我们准备的环境
yum -y install 包名 #yum install 安装命令 -y 所有的提示都为y
yum -y install gcc
yum -y install gcc-c++
3.清除以前的版本
安装Docker(yum安装)
基于 CentOS 7 安装
官网安装参考手册:https://docs.docker.com/install/linux/docker-ce/centos/
确定你是CentOS7及以上版本
[root@192 Desktop]# cat /etc/redhat-release
CentOS Linux release 7.2.1511 (Core)
yum安装gcc相关(需要确保 虚拟机可以上外网 )
yum -y install gcc
yum -y install gcc-c++
卸载旧版本
yum -y remove docker docker-common docker-selinux docker-engine
# 官网版本
yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
安装需要的软件包
yum install -y yum-utils device-mapper-persistent-data lvm2
设置stable镜像仓库
# 错误
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
## 报错
[Errno 14] curl#35 - TCP connection reset by peer
[Errno 12] curl#35 - Timeout
# 正确推荐使用国内的
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
更新yum软件包索引
yum makecache fast
安装Docker CE
yum -y install docker-ce docker-ce-cli containerd.io
启动docker
systemctl start docker
测试
docker version
docker run hello-world
docker images