linux3 的用户管理:
root 权限
普通用户 没法进入root 也没法去remove了
1 创建用户 useradd 存在/etc/passwd
passwd 可以更改密码
id : 产看用户信息的
gid : 用户组 方便关联整个用户的
用户切换
su 命令 中间必须加上横杠,代表完全的用户环境变量切换
语法
su - 用户名
root 可以随意的切换用户
普通用户切换 : 需要输入密码
退出登录
logout ctrl+d
sudo ls /root 尚方宝剑 必须配置sudo
用户提权的命令之一 sudo
sudo 配置
1 用root打开 /etc/sudoers文件
2 找到如下行,改
vim 打开 黄马褂 配置错了
3 此时 普通用户 就可以使用 sudo命令了
vim快捷键:93 定位 /root 搜索 n下一个
visudo 有提示 会报错 what now? 你现在想干嘛?
三个 ALL = ALL ...
userdel 删除用户
userdel -rf 用户名
kill 消除进程 -9
文件与文件夹的权限
什么是权限 :所有者,和所有组, 可读可写可执行
linux软链接:快捷方式
ln -s 目标文件夹 快捷方式文件
-dl
.sh 什么文件夹 -rw-r
chmod 777 hehe.sh 777最高权限 绿色代表可执行
-rw- r-- r-- 解读它 (属主权限) r--(属组) r--(第三者)
chmod 000 文件 没权限 root权限厉害有权限 普通的就是-----
r 可读 4
w 可写 2
x 可执行 (绿色表示可执行) 1
修改文件的权限
语法
ogu
chmod 权限 操作的对象
chmod u+r file chmod u-r
chmod o+r 文件 加可读 其他人
chmod u+r 文件 加可读 用户
chmod w+r 文件 加可读 用户组
读写执行的权限是有顺序的
必须是
rwx 可读可写可执行
r-- 只读
chmod 数字权限 文件对象
chmod 666 文件权限
-rw-rw-rw-
4+2+0 4+2+0 4+2+0
user other 属主属组其他人
更改成别人的文件
change
更改文件的属主
chown 用户名 file
更改文件的属组
chgrp 用户名 file
文件的读写执行
r cat more less
w echo vim
x 直接执行 或文件夹的
文件夹的读写执行
r ls
w 进入文件夹创建文件touch
x cd
chmod 004 user 加
linux 的命令提示符
通过ph1 取出来
hostname 主机名
修改主机名 hostnamectl set-hostname 20
改命令提示符 ~ 不显示先相对路径 相对绝对路径 好看一点在哪 还有时间
PS1=""
[u@h w ]$ 显示时间 绝对路径
django开启了,怎么知道,看进程
natstat 命令 tunlp
natstat - tunlp
curl 发起http请求的 地址:8000/hello
curl 地址:8000/hello
关闭防火墙的命令
iptables -F
关闭防火墙服务
systemctl stop firewalld
linux 进程管理
ps 命令
ps -ef 显示所有进程情况
通过进程id号管理
杀死进程的命令 |grep python 不是django 这个是grep产生的进程
kill 进程id kill 12251
pkill 支持正则的 通过pid处理的
pkill vim (不好乱用的 一个下去都删了,公司里)
kill 还有一个参数 -9 强制终止(不重要的僵尸进程,慎用:也有可能杀死依赖进程)
防火墙
iptables 是软件防火墙 ,公司可能会用,可能不会用,还有硬件防火墙的存在,保证服务器安全,学习阶段,为了实验安全
export 读取
df 命令 读取磁盘空间
英文版本
export LC_CTYPE=en_US.UTF-8
export LC_ALL=en_US.UTF-8
。。。
tree 工具,以树状图显示目录结构
dns 域名解析系统
把域名解析成ip地址,网络中的一个超大电话簿
公网中,存在dns服务器,进行解析
在linux中的dns服务器配置文件是
/etc/resolv.conf 里面定义了网络中的dns
dns:
阿里巴巴:233.5.5.5 233.6.6.6
腾讯的dns : 119.29.29.29
谷歌的dns:8.8.8.8
114的dns:114.114.114.114
访问百度,却访问到发牌的网站,hosts文件,强制解析了,也可能更换了你的dns记录
用于测试本地的假域名(之后ngix域名不买)
网络设置,以太网,详细信息: dns服务器:
linux: vim /etc/resolv.conf
ping 123.206.16.61 可以用 去检测
域名服务没写 : namesever : 8.8.
nslookup pythonav.cn address: 域名地址 下一个address 是ip地址
vim /etc/hosts 修改
dns 解析流程
1 浏览器输入域名的时候,浏览器优先去hosts文件中寻找时候有对应记录
2 没有记录就去dns本地缓存中寻找,是否有记录
3 寻找是否配置了dnS服务器,然后去公网找记录
4
free -m 看缓存
echo '0' > /proc/sys/vm/drop_caches 清缓存 哪个写错了
计划任务
时间点到了自动去执行 任务
crontab -e 编辑定时任务的文件
crontab -l 列出定时任务的规则
分时日月周 做什么事情 你要执行的命令的路径
/* * * * *
*所有的可能值
每分钟执行一次命令
crontabl -e
/* * * * *
echo 绝对路径 +
tail -f hehe.txt
关闭 : crontab -e 进入 都删了 !wq 保存 crontab -l 查看
软件包
setup.py 编译的文档 去github django 看结构
linux软件包的格式
mysql -5.5.rpm
以及rpm也是一个软件包管理命令
rpm -ivh mysql-5.5.rpm
rpm 管理软件得手动处理依赖关系,不适用!
yum install 推荐使用!!! <自动处理依赖关系
源代码编译安装,获取软件源代码,手动编译安装(可以自由扩展软件,选择最新的软件) :纯净
yum工具是红帽子才有的软件管理工具,例如suse 乌班图 是别的管理工具
yum install mysql 都是yum软件仓库服务器
是国外的,用阿里的下载
linux 的yum
转到软件仓库服务
cd /etc/yum.repos.d/ repositry仓库
这个目录下,第一层中,所有以.repo结尾的文件,都会识别为一个yum(这个仓库就是一个url),url 中提供了各种rpm报的下载,yum回去查找
yum install nginx base : url源
1 配置阿里云的yum源的步骤
2 备份原本的yum库文件
cd/etc/yum.repos.d
新建文件夹
mkdir allrepo
移动所有的repo文件到这个目录下,不用他了mv * ./allrepo
出现了第一个
3 . 下载新的yum 库
wget
4
nginx :80的网络服务 其实定义到index.html文件的
dg是清空
5 yum install nginx
6 启动
系统服务管理命令
老企业: 不求技术,稳定就行
systemctl status nginx
centos7 用system服务管理
systemctl start/stop/reload/restart/ nginx
systemctl enable nginx 设置Nginx开机自启
systemctl disable nginx 禁止开机自启
systemctl disable firewalld 禁止关闭开机自启
systemctl enable firewalld
pip3 list window命令里查看插件python
插件臃肿,还不适用所有 django flask
每一个解释器单走一个 应用 ,解耦合
安装virtualenv 虚拟环境工具
venv1 走django1.0
venv2 走2.0
venv3 走flask
1 下载虚拟环境
pip3 install
2 使用命令,创建虚拟环境
3 virtualenv --no-site-packages--python=python3
参数解释 : --no-site-packages 不要任何的第三方包
--python 是指定一个解释器 我们选的是python3
venv1 是虚拟环境文件夹的名字 ,自定义
3 进入,虚拟环境
source venv2/bin/activate
4 虚拟环境使用原理是 ,改变了path的优先级 pip3 list 干净的
5 激活虚拟环境,在venv1 下创建虚拟环境
创建django1
6 激活虚拟环境,在venv2 下创建虚拟环境
创建django2
which pip3
pip3 list
确保开发环境的一致性
通过命令保证环境的一致性(将window中解释器的模块,导出一个),导出当前python环境包
1 在windows中导出所有的模块信息
pip3 freeze > requirements.txt
2 将此文件, 发送给linux 服务器
3 在linux中安装即可
问题: window中也创建了虚拟环境,并且都在虚拟环境
virtualenv 和pipenv 一样的
步骤:
1 第一步,在windows中激活虚拟环境,在虚拟环境下pip3
仅仅用虚拟环境的话,太多了
必须 source /opt/allenv/venv1/bin/activate 找路径,激活
virtualenwrapper工具
1 安装工具(注意要退出虚拟环境)
pip install -i https: ... virtua...
2 .配置用户个人变量,每次开机都加载这个
系统变量配置文件 /etc/profile
个人变量配置文件
workon 虚拟环境的名字 (支持)
workon django2
lsvirtualenv 列出所有虚拟环境的目录