Linux第三天
1.查看系统发行版
cat /etc/redhat-release # 对红帽的才有用
cat /etc/os-release # 所有的linux发行版都使用的
#编辑网卡配置文件
vim /etc/sysconfig/network-scripts/ifcfg-eth0
#修改配置参数
ONBOOT=yes
2. 用户管理
班主任: 群主 想干嘛就干嘛 权利最大,为所欲为 linux的root用户
管理员: sudo 命令 ,就是root给他了一些超级的权限
渣渣用户: 普通linux用户 几乎没什么权限
博客摘录:
Linux/unix是一个多用户、多任务的操作系统。
root用户是唯一的,且拥有系统的所有权限。root用户所在的组称为root组。“组”是具有相似权限的多个用户的集合。
Linux管理员在创建用户时,将自动创建一个与其同名的用户组,这个用户组只有该用户一个人
groupadd it_dep # group命令用于创建用户组
#查看系统用户的id信息(用户所属群主)
id banzhuren
id root
id # 后面不加用户名,表示查看当前用户的
栗子:
[root@localhost network-scripts]# id root
uid=0(root) gid=0(root) 组=0(root)
存放用户信息的文件 /etc/passwd
存放用户组的文件 /etc/group
1.创建系统用户的命令
useradd banzhuren
2.更改班主任的密码
passwd banzhuren
passwd # 后面不加用户名表示修改当前用户的密码
3.用户切换
root切换普通用户
su - banzhuren
普通用户切换其他用户,需要输入那个用户的密码
4.sudo命令,预设以root身份去执行命令
1.配置 /etc/sudoers,添加banzhuren用户到配置中
找到如下行
## Allow root to run any commands anywhere
root ALL=(ALL) ALL
banzhuren ALL=(ALL) ALL
2.保存退出后,banzhuren用户即可使用sudo命令了(比如 sudo ls /root)
3.visudo命令,提供对/etc/sudoers文件,进行配置检测的功能(所以可以使用 visudo,后面不用跟文件名,就直接打开了 /etc/sudoers)
文件目录,权限篇
1.查看文件的权限
[root@wangdachui tmp]# ll ==>是ls -l 的简写,列出所有的信息
总用量 0
- rw- r-- r--. 1 root root 0 3月 28 09:53 小师弟.txt
- 横线代表是普通文本
d 代表文件夹
l 代表软连接
r read 可读
w write 可写
x 可执行
- 没有权限
linux有三个用户身份
可读可写可执行 是有顺序的 依次是可读可写可执行
user 属主 rwx r-- -w- --x r-x
group 属组 rwx ---
others 其他人 rwx
1.修改文件的权限chmod
方式一:chmod [身份] [参数] [文件]
chmod u+r file1 #给file1 属主可读权限
方式二:
chmod 666 file2 #给file2 更改666权限
2.更改文件属主
chown 用户名 文件
3.更改文件属组
chgrp 用户组名 文件
linux的软连接配置
ln -s 目标文件绝对路径 软连接绝对路径
ln -s /tmp/file1.txt /opt/file2.txt
#打包,解包命令
-c或--create:建立新的备份文件 ==> 打包,不压缩
-x或--extract或--get:从备份文件中还原文件; ==>解压
-z或--gzip或--ungzip:通过gzip指令处理备份文件; ==>打包并压缩
-f<备份文件>或--file=<备份文件>:指定备份文件; ==>指定打包成的文件的名字,一定要将-f放在参数的最后一位
-v:显示操作过程;
#将/tmp下所有内容打包成一个文件 xx.tar
tar -cvf xx.tar /tmp/*
tar -zcvf xx.tar.gz 大师兄/ 小师弟.txt
#打包文件 ,不节省磁盘
tar -cvf 打包成的文件的名字.tar 要打包的内容
#压缩且打包文件
tar -zcvf 压缩成的文件名.tar.gz 要压缩的内容
#解压缩
tar -xf 解包文件名.tar
tar -zxvf 压缩文件名.tar.gz
#查看进程(英文是process)
ps -ef |grep python #检查python进程是否存活
-e 显示所有进程。
-f 显示UID,PPIP,C与STIME栏位。
#查看端口
netstat -tunlp | grep 8000
netstat -tunlp |grep
语法: netstat [选项]
# netstat是查看端口的命令,-tunlp是选项,
-t或--tcp:显示TCP传输协议的连线状况;
-u或--udp:显示UDP传输协议的连线状况;
-n或--numeric:直接使用ip地址,而不通过域名服务器;
-l或--listening:显示监控中的服务器的Socket;
-p或--programs:显示正在使用Socket的程序识别码和程序名称;
-a或--all:显示所有连线中的Socket;
#杀死计算机的进程
1.通过ps -ef | grep 找到进程的pid号
2.通过kill pid 杀死进程
#批量杀死进程
pkill 你想杀死的任务名字
pkill python
#linux防火墙功能
1.linux有俩防火墙,可能会影响咱们的 web服务部署
一个是selinux
二个是iptables
三个,云服务器对外提供防火墙服务的 硬件防火墙
2.关闭防火墙的步骤
iptables -F #清空防火墙规则
systemctl stop firewalld #关闭防火墙服务
systemctl disable firewalld #禁止防火墙开机自启
3.关闭selinux 步骤如下
1.打开文件vim /etc/selinux/config
2.临时修改selinux,临时关闭
getenforce #获取selinux状态
setenforce 0 #临时关闭
想要永久关闭seliunux,执行3,4步骤
3.修改代码如下
SELINUX=disabled
4.重启机器后,生效
#查看系统磁盘使用量
df -h
#dns域名解析
1.域名是什么 就是一堆字符串,对应着服务器的ip地址
www.baidu.com
www.taobao.com
www.pythonav.com
2.hosts文件是什么
本地写死了的 域名和ip的对应记录
123.206.16.61 s18666.com
3. 什么是dns,域名解析系统
dns公网的域名服务器,常见的有
114.114.114.114 144dns服务器
223.5.5.5 阿里的
223.6.6.6
8.8.8.8 谷歌的dns
4.linux的dns配置文件
vim /etc/resolv.conf
写入dns服务器地址,以后linux的域名解析,就去它这寻找记录
nameserver 114.114.114.114
5.检测域名解析
nslookup 命令
[root@wangdachui tmp]# nslookup pythonav.com
Server: 114.114.114.114
Address: 114.114.114.114#53
Non-authoritative answer:
Name: pythonav.com
Address: 39.97.163.132
6.linux的定时任务
crontab服务
vim /etc/crontab #打开文件,查看语法规则
编辑定时任务的文件
crontab -e
#每分钟写入一个信息到文件中
* * * * * /usr/bin/echo "老弟啊,学习很累啊" >> /tmp/xd.txt
#每分钟执行一次命令
分 时 日 月 周
* * * * * 命令绝对路径
* * * * * 执行命令
#每小时的3,15分组执行命令
分 时 日 月 周
* * * * * 命令绝对路径
3,15 * * * * 执行
#在上午8,11点的第3分到15分钟执行
分 时 日 月 周
* * * * * 命令绝对路径
3-15 8,11 * * *
#每晚21:30执行命令
分 时 日 月 周
* * * * * 命令绝对路径
30 21 * * * 命令
#没周六、日的1:30执行命令
分 时 日 月 周
* * * * * 命令绝对路径
30 1 * * 6,0 命令
#每周一到周五的凌晨1点,清空/tmp目录的所有文件
分 时 日 月 周
* * * * * 命令绝对路径
00 1 * * 1-5 /usr/bin/rm -rf /tmp/*
#每晚的21:30重启nginx
分 时 日 月 周
* * * * * 命令绝对路径
30 21 * * * /usr/bin/systemctl restart nginx
#每月的1,10,22日的4:45重启nginx
分 时 日 月 周
* * * * * 命令绝对路径
45 4 1,10,22 * * /usr/bin/systemctl restart nginx
#每个星期一的上午8点到11点的第3和15分钟执行命令
分 时 日 月 周
* * * * * 命令绝对路径
3,15 8-11 * * 1 执行命令
#linux的软件包管理
安装 软件的方式有三种
1.源代码编译安装()
1.下载python3的源代码
2.解压缩源代码
3.进入源代码目录,开始编译安装
4.配置环境变量
2.yum方式安装,如同pip工具,自动搜索依赖关系,自动下载解决依赖关系
yum安装的软件也是从centos官网的,yum软件仓库中下载来的
使用步骤:4,删除/移动官方提供的仓库(因为在国外我们不用)到自己创建的文件夹中
cd /etc/yum.repos.d
mkdir allrepo
mv ./* allrepo
5,下载wget工具(为了下面使用wget来下载阿里的yum仓库文件)
yum install wget -y
6,下载阿里云的yum源(直接执行 下载yum源1 和 下载yum源2 的两个指令就好)
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
下面是测试测试阿里云的yum工具:
7,安装nginx软件
yum install nginx -y
8,启动并访问nginx主页
在你的浏览器使用 服务器的IP:端口
3.rpm方式手动安装(不推荐)
mysql-5.5.6.rpm
安装这个rpm
rpm -ivh mysql-5.5.6.rpm
需要手动解决软件依赖关系,非常恶心难以解决
4.yum源的工作目录是/etc/yum.repos.d目录(这里面的是官方提供的六个仓库,我们也不会用的,因为在国外,所以自己创建一个文件夹
1,cd /etc/yum.repos.d
2,mkdir allrepo
3,将里面的六个仓库都移动到这个文件夹中 mv ./* allrepo )
并且只有在这个/etc/yum.repos.d目录的第一层的 *.repo文件,才会被识别为 yum仓库文件
5.
提前下载好wget工具
yum install wget -y # 使用这个指令下载或者更新wget工具
6.下载阿里云的yum源
https://opsx.alibaba.com/mirror # 阿里巴巴提供的开源镜像站,这里直接执行下面的两个指令就行了,不需要再打开这个网址去找了
下载yum源1
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo #wget:在线下载,-O:指定安装到哪个路径
下载yum源2 # 常用的第三方软件都在这里下载
wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
7.测试阿里云的yum工具,安装nginx软件
yum install nginx -y # -y:代表yes,接下去不用
8.安装完毕启动
systemctl start/stop/restart nginx
启动之后就可以用 ps -ef | grep nginx # 查看进程
用 netstat -tunlp | grep 80 # 查看端口
在你的浏览器使用 服务器的IP:端口来访问 nginx 主页了!
浙公网安备 33010602011771号