云计算笔记目录
文件详情
**bin:二进制,执行命令,改密码...**
**boot:启动目录**
**dev:驱动,设备(键盘鼠标显示器打印机...能摸的都在dev)**
**etc :配置文件,控制台文件(可控制)**
**home:普通用户家目录**
**root: 超级管理员**
**run:运行文件(临时的)**
**sbin:管理员可用的**
**tmp:临时目录**
**usr:应用程序**
**va r:日志邮件...**
常用命令
1.cd 改变目录 cd 绝对路径 cd /home/alice
cd 相对路径 cd . .. ./是当前目录 ../是上一级目录
2.pwd 打印当前目录
3.ls -l bin或其他文件名 列出目录 ls -l -d 文件名 ##查看文件
ls -all 显示隐藏文件
s
4.touch /var1 创建文件
5.mkdir /var2 创建目录
mkdir -p /var2/var3/var4 递归创建 ##在创建目录没有上一级时,自动创建
mkdir /home/{dir1,dir2} 同时创建两个目录
mkdir -pv /home/{dir1/{ccc,bbb},dir2} #home下C创建dir1,dir2目录,dir下创建ccc,bbb两个目录
6.cp -r /home/c1 /mnt/sr0 复制 ##把/home下c1复制到/mnt/sr0下
拷文件夹加 -r
拷目录不加
7.mv /home/c1 /mnt/sr0 移动(剪切) ##把/home下c1移动到/mnt/sr0下
mv /c1 /c2 重命名 ##把c1改成c2
8.rm -rf /home/c1/* 强制删除 ##把home/c1的所有删除了(做好不要用)
rm -rf /home/ccc/fff/vvvv
删除ccc以下目录 在vvvv目录下rm -rf ../../ccc
* #隐藏文件删不掉
9.查看文件内容
cat 全部
more翻页(比cat要好)
head头 head -4 /c1 ##查看前四行
tail尾 tail -4 /c1 ##查看后四行
grep过滤关键字 grep c /c1 ##查看c1里面所有c关键字
10.ls / > /1.txt 重定向 ##把ls查出来的内容都写在1.txt里
11.gedit /1.txt 记事本
12.vim 编辑 /adm ##查找adm关键字
gg G ##首尾
1,6 s/3333/6666/g ##替换,把1到6行是3333的都换成6666
w /2.txt ##另存为
set nu 显示行号 set nonu 取消行号
set list 看特殊符号
13、which 文件或目录 ##查路径
# centos7配置IP地址
有关于centos7获取IP地址的方法主要有两种,1:动态获取ip;2:设置静态IP地址
在配置网络之前我们先要知道centos的网卡名称是什么,centos7不再使用ifconfig命令,可通过命令 IP addr查看,如图,网卡名为ens32,是没有IP地址的
![img](https://img-blog.csdnimg.cn/img_convert/468114fafcd5f358b2888d915011c8fb.png)
### 1、动态获取ip(前提是你的路由器已经开启了DHCP)
修改网卡配置文件 vi /etc/sysconfig/network-scripts/ifcfg-ens32 (最后一个为网卡名称)
动态获取IP地址需要修改两处地方即可
(1)bootproto=dhcp
(2)onboot=yes
![img](https://img-blog.csdnimg.cn/img_convert/45497f27daa3bb65b159ed4a673896b7.png)
修改后重启一下网络服务即可 systemctl restart network
```powershell
[root@mini ~]# systemctl restart network
[root@mini ~]#
这样动态配置IP地址就设置好了,这个时候再查看一下ip addr 就可以看到已经获取了IP地址,且可以上网(ping 百度)
2、配置静态IP地址
设置静态IP地址与动态iIP差不多,也是要修改网卡配置文件 vi /etc/sysconfig/network-scripts/ifcfg-ens32 (最后一个为网卡名称)
(1)bootproto=static
(2)onboot=yes
(3)在最后加上几行,IP地址、子网掩码、网关、dns服务器
IPADDR=192.168.1.160
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
DNS1=119.29.29.29
DNS2=8.8.8.8
(4)重启网络服务
[root@mini ~]# systemctl restart network
[root@mini ~]#
DNS服务器可以只配一个,我用的是两个免费的dns服务器,查看IP地址,测试联网
MySql数据库安装
离线安装
1、首先准备需要用到的MySQL压缩包
2、检查是否有旧版本的mysql包,有的centos镜像会默认携带
rpm -qa | grep mariadb
[root@DTS mysql]# rpm -qa | grep mariadb
mariadb-libs-5.5.65-1.el7.x86_64
有的话要删除,没有的话就可以跳过下面的步骤了。
[root@DTS mysql]# rpm -e mariadb-libs-5.5.65-1.el7.x86_64 --nodeps
再次查看是否删除成功
[root@DTS mysql]# rpm -qa | grep mariadb
[root@DTS mysql]#
3.建立mysql文件夹并上传刚刚准备好的rpm压缩文件
[root@DTS /]# cd /usr/local/
[root@DTS local]# cd mysql/
[root@DTS mysql]#
接下来是上传文件,这里有很多种上传的方式,你可以用xshell的上传,也可以用xftp或者FileZilla client,总之选择你方便的方式,这里就不做详细讲解了。
上传好后查看如下:
[root@DTS mysql]# ls
mysql-8.0.17-1.el7.x86_64.rpm-bundle.tar
4.解压文件
tar -xvf mysql-8.0.17-1.el7.x86_64.rpm-bundle.tar
[root@DTS mysql]# tar -xvf mysql-8.0.17-1.el7.x86_64.rpm-bundle.tar
mysql-community-test-8.0.17-1.el7.x86_64.rpm
mysql-community-server-8.0.17-1.el7.x86_64.rpm
mysql-community-embedded-compat-8.0.17-1.el7.x86_64.rpm
mysql-community-client-8.0.17-1.el7.x86_64.rpm
mysql-community-devel-8.0.17-1.el7.x86_64.rpm
mysql-community-common-8.0.17-1.el7.x86_64.rpm
mysql-community-libs-compat-8.0.17-1.el7.x86_64.rpm
mysql-community-libs-8.0.17-1.el7.x86_64.rpm
5、安装common
rpm -ivh mysql-community-common-8.0.17-1.el7.x86_64.rpm --nodeps --force
[root@DTS mysql]# rpm -ivh mysql-community-common-8.0.17-1.el7.x86_64.rpm --nodeps --force
警告:mysql-community-common-8.0.17-1.el7.x86_64.rpm: 头V3 DSA/SHA1 Signature, 密钥 ID 5072e1f5: NOKEY
准备中... ################################# [100%]
正在升级/安装...
1:mysql-community-common-8.0.17-1.e################################# [100%]
6、安装libs
rpm -ivh mysql-community-libs-8.0.17-1.el7.x86_64.rpm --nodeps --force
[root@DTS mysql]# rpm -ivh mysql-community-libs-8.0.17-1.el7.x86_64.rpm --nodeps --force
警告:mysql-community-libs-8.0.17-1.el7.x86_64.rpm: 头V3 DSA/SHA1 Signature, 密钥 ID 5072e1f5: NOKEY
准备中... ################################# [100%]
正在升级/安装...
1:mysql-community-libs-8.0.17-1.el7################################# [100%]
7、安装client
rpm -ivh mysql-community-client-8.0.17-1.el7.x86_64.rpm --nodeps –
[root@DTS mysql]# rpm -ivh mysql-community-client-8.0.17-1.el7.x86_64.rpm --nodeps --force
警告:mysql-community-client-8.0.17-1.el7.x86_64.rpm: 头V3 DSA/SHA1 Signature, 密钥 ID 5072e1f5: NOKEY
准备中... ################################# [100%]
正在升级/安装...
1:mysql-community-client-8.0.17-1.e################################# [100%]
————————————————
版权声明:本文为CSDN博主「狼宇」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_43947620/article/details/107086764
8、安装server
rpm -ivh mysql-community-server-8.0.17-1.el7.x86_64.rpm --nodeps --force
[root@DTS mysql]# rpm -ivh mysql-community-server-8.0.17-1.el7.x86_64.rpm --nodeps --force
警告:mysql-community-server-8.0.17-1.el7.x86_64.rpm: 头V3 DSA/SHA1 Signature, 密钥 ID 5072e1f5: NOKEY
准备中... ################################# [100%]
正在升级/安装...
1:mysql-community-server-8.0.17-1.e################################# [100%]
9、查看已安装的mysql安装包
rpm -qa | grep mysql
[root@DTS mysql]# rpm -qa | grep mysql
mysql-community-libs-8.0.17-1.el7.x86_64
mysql-community-common-8.0.17-1.el7.x86_64
mysql-community-server-8.0.17-1.el7.x86_64
mysql-community-client-8.0.17-1.el7.x86_64
10、对 mysql 数据库进行初始化和相关配置
mysqld --initialize; 初始化mysql
chown mysql:mysql /var/lib/mysql -R; 对操作文件赋予权限
systemctl start mysqld.service; 启动mysql服务
systemctl enable mysqld; 设置开机自启
[root@DTS mysql]# mysqld --initialize;
[root@DTS mysql]# chown mysql:mysql /var/lib/mysql -R;
[root@DTS mysql]# systemctl start mysqld.service;
[root@DTS mysql]# systemctl enable mysqld;
11、查看生成的默认密码
cat /var/log/mysqld.log | grep password
[root@DTS mysql]# cat /var/log/mysqld.log | grep password
2020-07-02T06:44:39.579110Z 5 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: (K+e9eX>=>IjQ)密码
这里就是密码
12.[root@DTS mysql]# mysql -uroot -p
这里要输入刚才查到的密码,复制粘贴就好,这里输入密码时是不显示明文的。
[root@DTS mysql]#c mysql -uroot -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 8
Server version: 8.0.17
Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql>
然后输入
ALTER USER 'root'@'localhost' IDENTIFIED BY '要设置的密码' PASSWORD EXPIRE NEVER;
修改密码为 ,你也可以改成别的,即更换BY后面引号内的内容,之后输入exit退出登录
mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'root';
Query OK, 0 rows affected (0.00 sec)
mysql> exit
Bye
13、开放远程连接
mysql>use mysql;
msyql>update user set user.Host='%' where user.User='root';
mysql>flush privileges;
如果报ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
可以用以下指令修改你密码为 123456。
ALTER USER 'root'@'localhost' IDENTIFIED BY '要设置的密码' PASSWORD EXPIRE NEVER;
之后使用以下指令刷新权限:
flush privileges;
注意指令末尾的分号。
退出后重新登陆。
注意(出错,请关闭防火墙试下)
防火墙
systemctl stop firewalld.service 关闭防火墙
systemctl start firewalld.service 开启防火墙
永久关闭
1、首先需要将xshell软件打开并连接到centos主机,然后输入命令“systemctl status firewalld.service”并按下回车键。
2、然后在下方可以查看得到“active(running)”,此时说明防火墙已经打开了。
3、在命令行中输入systemctl stop firewalld.service命令,进行关闭防火墙。
4、然后再使用命令systemctl status firewalld.service,在下方出现disavtive(dead),这样就说明防火墙已经关闭。
5、再在命令行中输入命令“systemctl disable firewalld.service”命令,即可永久关闭防火墙。
文件常见类型
-开头普通文件(文本文件,二进制文件,压缩文件,电影…)
-rw-------. 1 root root 1259 12月 21 06:46 anaconda-ks.cfg
d开头 目录文件(蓝色的)
dr-xr-xr-x. 5 root root 4096 2月 23 00:24 boot
非常见类型
b 设备文件(块设备)存储设备
c 设备文件(字符设备)打印机 终端
l 链接文件(淡蓝色)
s 套接字文件
p 管道文件
文件和用户管理知识
shell:中文 壳
功能 命令解释器。定义命令。接受的命令。执行命令
/etc/passwd详细讲解
[root@localhost /]# cat /etc/passwd(冒号分隔7列字段)
root:X:0:0:root:/root:/bin/bash
用户名(登录系统的名字):密码占位符:uid(用户身份证号):gid(组的信息):描述(比如经理manager):HOME(家目录,登陆系统时,所在目录):shell(壳,命令解释器)
UID:
1.系统约定:RHEL7
2.uid:0 特权用户
3.uid:1~499 系统用户
4.uid:1000+ 普通用户
/etc/shadow
[root@localhost /]# cat /etc/shadow
root:
6
6
6CAq4d.zo$HJXFKeU8FfbnHe1UdQtJyBoUsKcNzFoqhczpuNvPT0WUtC3gSijSwMp.Gk9AR1VCnMN4KI4y6zbwcuWszqk/I0: 18617: 0: 99999: 7:::
用户名:加密密码:最后一次修改时间 过了多少天:最小间隔(0当天可以更改密码,如果是5那么过5天才能改密码):最大间隔(密码有效期,14天内必 须改):警告7:不活动时间(28,用户不登陆系统。超过28天,禁用你):失效时间(30,到了30,你的账号不能用了):保留
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-QwCz6gTM-1615045498440)(D:\Typora图片\QQ截图20210303155449.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-nLZsceIU-1615045498441)(D:\Typora图片\QQ截图20210303160439.png)]
/etc/group
[root@localhost /]# cat /etc/group
root:X:0:
mail:X:12:postfix
组名:组密码:组ID:组成员
用户配置文件
/etc/passwd
主配置文件(组信息)
/etc/group
密码和登录信息文件,是加密的
/etc/shadow
邮箱
/var/spool/mail
用户方面
useradd 创建用户 whoami 查看当前用户
useradd 用户名 -u 111(uid) //创建用户,指定uid
useradd 用户名 -d /aaa(家目录) //创建用户,指定家目录
useradd --help //寻求帮助
passwd 创建密码
userdel 删除用户
groupadd 创建组
usermod 修改组
id 用户名 ##查看用户命令
增加用户直接加组
groupadd 组名
useradd -g 用户组名 用户名
修改用户组
groupadd 组名
groupadd 用户名 -g 2000 添加uid
grep 用户名 /etc/group 查用户组
groupdel 组名 删组
usermod -g 用户组 用户名 ##g基本组 G附加组
usermod -s /sbin/nologin 用户 ##用户更改不能登录
永久提权
su - root 提权
su root
临时提权(/etc/sudoers)
sudo useradd root
useradd:警告:此主目录已经存在。
不从 skel 目录里向其中复制任何文件
正在创建信箱文件: 文件已存在
解决方法:删除用户不用userdel mysql
改用userdel -rf mysql
就没有警告了。
权限
权限的三类对象
- 读 r = 4
- 写 w = 2
- 执行 x = 1
查看文件属性
[root@localhost ccc]# ll haha
-rw-r--r--. 1 root root 0 3月 4 22:01 haha
属主 属组 其他人 链接 属主 属组 大小 创建时间 文件名
rwx rwx rwx
u g o
powershell
减权限
[root@localhost ccc]# ll
总用量 0
-rw-r--r--. 1 root root 0 3月 4 22:25 cui
[root@localhost ccc]# chmod u-r cui
[root@localhost ccc]# ls
cui
[root@localhost ccc]# ll
总用量 0
--w-r--r--. 1 root root 0 3月 4 22:25 cui
加权限
[root@localhost ccc]# ll
总用量 0
--w-r--r--. 1 root root 0 3月 4 22:25 cui
[root@localhost ccc]# chmod u+rx cui
[root@localhost ccc]# ll
总用量 0
-rwxr--r--. 1 root root 0 3月 4 22:25 cui
数字改权限
[root@localhost ccc]# ll
总用量 0
-rwxr--r--. 1 root root 0 3月 4 22:25 cui
[root@localhost ccc]# chmod 007 cui
[root@localhost ccc]# ll
总用量 0
-------rwx. 1 root root 0 3月 4 225 cui
语法:chmod 参数 文件名
语法:chown 用户名.组名 文件
chown cc.sss 文件 ##该属主和属组
chown cc 文件 ##改属主
chown .sss 文件 ##改属组
语法:chgrp 组名 文件 -R是递归
[root@localhost ccc]# chgrp kang cui
[root@localhost ccc]# ll
总用量 4
---------x. 1 root kang 76 3月 4 22:37 cui
ACL 限制用户对文件的访问
setfacl -m g:hr:rwx 设置文件防控 -设置 对象:对象名:权限
-x ##删除
[root@localhost tmp]# getfacl kangkang
# file: kangkang
# owner: er
# group: c
user::rw-
group::r--
other::r--
[root@localhost tmp]# setfacl -m g:er:rw kangkang
[root@localhost tmp]# getfacl kangkang
# file: kangkang
# owner: er
# group: c
user::rw-
group::r--
group:er:rw-
mask::rw-
other::r--
[root@localhost ~]# getfacl ccc
# file: ccc
# owner: root
# group: root
user::--- 属主
group::--- 属组
other::--- 其他人
[root@localhost tmp]# getfacl kangkang
# file: kangkang
# owner: er
# group: c
user::rw-
group::r--
group:er:rw-
mask::rw-
other::r--
[root@localhost tmp]# setfacl -x g:er kangkang
[root@localhost tmp]# getfacl kangkang
# file: kangkang
# owner: er
# group: c
user::rw-
group::r--
mask::r--
other::r--
文件保护
chattr +i 目录 ##保护文件
chattr -i 目录 ##删除保护
chattr +a 目录 ##只允许echo追加
权限命令总结
chmod 授权
chown 改主人
chgrp 改组
setfacl 授权增强版
文件创建默认 644
目录创建默认 755
进程掩码umask
新建文件、目录的默认权限会受到umask的影响,umask表示要减掉的权限
进程
进程的组成部分
- 一个文件(也可以是多个)
- 被配内存的地址空间
- 有权限限制
- 程序代码的一个或多个副本(也叫执行进程)
- 像人一样拥有状态
ps aux | less
%user 用户名
pid 进程id(身份证号)
command 进程文件,进程名
%cpu cpu占有率
time 占了cpu多长时间
%mem 内存占有率
vsz 占用虚拟内存
rss 占有实际内存
stat 进程状态
tty 进程运行的终端
start 进程启动的时间
stat 进程状态
run 运行 r
stop 暂停 s
zombie 卡死 z
sleep 休眠 t
JavaWeb环境搭建
JavaWeb相关概念
jdk安装
1.创建路径 mkdir /usr/local/java
2.解压解压包 tar -xvzf tar -zxvf jdk-8u181-linux-x64.tar.gz -C /usr/local/java
3.配置环境变量,修改/etc/profile文件 vim /etc/profile
4.添加环境变量
export JAVA_HOME=/usr/local/jdk1.8(解压后的名字)
export JAVA_BIN=/usr/local/jdk1.8(解压后的名字)/bin
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
5.重新加载/etc/profile配置文件 source /etc/profile
6.查看jdk是否安装配置成功,命令如下 java -version
[root@localhost java]# java -version
openjdk version "1.8.0_282"
OpenJDK Runtime Environment (build 1.8.0_282-b08)
OpenJDK 64-Bit Server VM (build 25.282-b08, mixed mode)
注意:提示java -version -bash: java: 未找到命令
解决方法:在终端输入
yum install java-devel
执行安装,再测试就行了
jdkl卸载方法:
rpm -qa | grep java 或 rpm -qa | grep jdk 命令来查询出系统自带的jdk(带箭头的四个就是系统自带的)注:不带箭头的那三个不要删掉
在或着 find / -name java或jdk
然后通过 rpm -e --nodeps 后面跟系统自带的jdk名 这个命令来删除系统自带的jdk,
例如: rpm -e --nodeps java-1.8.0-openjdk-1.8.0.102-4.b14.el7.x86_64
rpm -e --nodeps java-1.8.0-openjdk-headless-1.8.0.102-4.b14.el7.x86_64
rpm -e --nodeps java-1.7.0-openjdk-headless-1.7.0.111-2.6.7.8.el7.x86_64
rpm -e --nodeps java-1.7.0-openjdk-1.7.0.111-2.6.7.8.el7.x86_64
删完之后可以再通过 rpm -qa | grep java 或 rpm -qa | grep jdk 命令来查询出是否删除掉
tomcat安装
1.压缩复制到/usr/local tar -zxvf apache-tomcat-8.5.38.tar.gz -C /usr/local
2.重命名 mv apache-tomcat-8.5.38 tomcat
3.配置环境变量,修改/etc/profile文件 vim /etc/profile
4.添加环境变量
export TOMCAT_HOME=/usr/local/tomcat(一定看清目录,不然找错能烦死)
export PATH=$PATH:$TOMCAT_HOME/bin
5.重新加载/etc/profile配置文件 source /etc/profile
6.启动:到tomcat目录下的bin 在bin下启动 ./startup.sh或./catalina.sh start
最后提示Tomcat started表示启动成功
7.查看下是否有8080端口
8.也可用网页查看tomcat欢迎页
提示:
如果在有错可重起防火墙试下
防火墙 开放 8080 端口:
> firewall-cmd --zone=public --add-port=8080/tcp --permanent 重启防火墙: > firewall-cmd --reload 查看放口墙端口规则:firewall-cmd --list-all
设置 tomcat 开机自启动
修改 rc.local 文件配置(文件最后添加脚本)
> vim /etc/rc.d/rc.local
文本最后增加脚本:
> JAVA_HOME=/usr/java/jdk1.7.0_80
>
> export JAVA_HOME
>
> /tomcat7/bin/startup.sh
说明:小生安装的 jdk 版本为 jdk 1.70_80 并安装在了 /usr/java 目录下,所以 JAVA_HOME为上述结果
5.2 在 /etc/rc.d/ 目录下修改rc.local文件为可执行,如: chmod +x rc.local
重启机器即可。
卸载tomcat
rm -rf /usr/java/tomcat/apache-tomcat-8.5.31 (安装目录)