1.作业讲解

(1)递归创建文件夹/tmp/oldboy/python/{alex,wusir,nvshen,xiaofeng}

下面中的路径没有必要换,在哪里创建都行,根目录下或者tmp目录下或者其他目录下创建都行

这个时候我们用命令:tree   /tmp  查看一下创建之后的结构:

(2)显示./tmp/下所有的内容详细信息(注意,这个是需要cd 到/tmp/下面的)

方法一:  

cd  /tmp

ls  -lah

方法二:

ls  -lah  /tmp

(解释:  l列表  a显示隐藏文件  h文件夹大小)

(3)简述 / ~ - 的含义

(4)请简述你如何使用vi命令

  1.打开文件  vi 校花的故事.txt

  2.输入i进入编辑

  3.按下esc退出编辑模式

  4.输入:wq!  写入保存退出

       :q!  不保存强制退出vim

(5)查看/etc/校花的故事.txt的内容,并且打印行号

  cat  -n  /etc/校花的故事.txt

(6) linux xshell常用快捷键?

  1.Tab键  补全命令

   2.Ctrl+l  清空终端显示的内容

   3.clear  清理终端显示,和上条一样

   4.Ctrl+c     终止当前显示

(7) 如何用echo清空一个文件?

#通过空字符串实现

echo  ""  >  校花的故事.txt

#覆盖写入,w模式

echo  "嘻嘻嘻"  >  校花的故事.txt

#追加写入,a模式

echo  "嘻嘻嘻"  >  校花的故事.txt

(8)复制/tmp/下所有内容到/home,在修改文件前,先拷贝一份,防止内容被破坏

cp  -r  /tmp/*  /home    #*是所有的意思,正则

(9)重命名test.py为my.py

mv  test.py  my.py

(10)强制删除/tmp下内容

rm  -rf  /tmp/*

#下面这句话表示将tmp干掉

rm  -rf  /tmp/

(11)找到服务器上的settings.py

find  /crm/  -type  f  -name  settings.py

#上边表示的是settings.py在crm目录下面,如果存在/etc/目录下面呢?

#我们通过根,在全局搜索,可以搜索到

find  /  -type  f  -name  settings.py

(12)找到/etc下的网卡配置文件,提示网卡配置文件名是ifc开头

find /etc/ -type f -name ifc*

#注意,下面的普通用户没有权限,应该是有权限的,我中间用的是Tab键,应该用空格表示

#下面的root超级用户有这个权限

下面我用超级用户查看也是一样的问题,用空格隔离,可以显示出来了

lo和ens33,我们在centos中输入ifconfig命令看到下面的内容

这里题目,请先cp /etc/passwd /tmp/   拷贝文件

(13)过滤出/tmp/passwd下有关root的信息

提示,如果直接操作,会提示,这个内容不存在

可信的答案:

cat /etc/passwd |grep root  --color=auto -n

步骤:

1.先生成一个  /tmp/passwd的文件

#下图是查看/etc/passwd的内容的,其实就是一堆字符串,然后我们写在/tmp/passwd文件中

我们可以,右击复制,粘贴到vim当中.

命令1:

cat /etc/passwd

命令2:

cp /etc/passwd   /tmp/passwd

命令3:

cat  /etc/passwd  >  /tmp/passwd

cat  /tmp/passwd  -n

处理之后,我们依然得到44条命令在tmp里边

回到题目:

(13)过滤出/tmp/passwd下有关root的信息

1.先生成了一个/tmp/passwd的文件

grep "root" /tmp/passwd

root信息这个时候会高亮显示,

可信答案:

cat /etc/passwd |grep root  --color=auto -n

(14)过滤出/tmp/passwd下除了/sbin/nologin的信息,且打印行号

进入:

加上enter,显示行号

搜索login,用左下角的命令/login

搜索/sbin/nologin,然后我们搜索的是sbin

退出:

现在我们开始过滤出来

搜索字符串,在路径中

翻转加上-v,  显示行号加上-n,所以最后的结果见下图:

另一种写法:

查询cat里边的参数信息:

(15)

查看/tmp/passwd前10行

head -10 /tmp/passwd

(16)

查看/tmp/passwd后3行

tail -3 /tmp/passwd

(17)不间断打印/var/log/py.log的信息(-f理解成flash刷新的意思)

tail -f /var/log/py.log

(18)配置rm别名为“禁止你用rm,谢谢”,然后取消别名

alias rm="echo  禁止你用rm,谢谢"

unalias rm

(19)统计/var/log/文件夹大小

du -sh  /var/log

(20).给settings.py加锁

chattr +a settings.py

解锁:

chattr -a settings.py

(21)同步服务器时间到ntp.aliyun.com

ntpdate -u ntp.aliyun.com

(22)将服务器1的/tmp/my.py远程传输到服务器2的/opt/目录下

scp你想要的内容  你想存放到的地方

scp  /tmp/my.py    用户名@服务器ip:/opt

(23)将服务器2的/opt/test.py拷贝到服务器1的/home目录下

#自己就是home

scp root@服务器2的ip:/opt/test.py    /home/

(24)简述top的常见参数(查看一下博客)

2.用户管理篇

(1)

寻找网卡

上边倒数第二条语句找到的是"文件夹对应的内容"

ens33是网卡文件

动态IP,

我们要也可以配置静态ip

BOOTPROTO=static

还有一个是确保:

ONBOOT=yes就行

我们知道有这么一个东西就行

(2)

查看系统版本信息:

第一条是红帽系列的版本,第二条是通用的,乌班图只能用第二条

(3)用户管理:

班主任(root用户):  群主  权利最大,为所欲为

管理员:  sudo 命令,就是root给他了了一些超级权限

渣渣用户:普通linux用户,几乎,没什么权限

python是查询id地址的,

linux中的id是查询系统用户的id信息的

展示一下默认家目录:

存放用户信息的文件:  /etc/passwd

第一个参数,用户名

第一个数字:用户id

第二个数字:用户组id

1-999是系统自己创建的

代表匿名文件同步

自己创建的超过了1000

退出

(4)

A:创建系统用户的命令:

useradd banzhuren

B:更改班主任的密码:

passwd banzhuren

下图是添加并查看用户:

/etc/passwd/  我们查看后两行如何看?

如果,不加用户名字,更改的是root的密码:

#查看系统用户的id信息

id banzhuren

id root

存放用户信息的文件  /etc/passwd

存放用户组的文件    /etc/group

班主任是1102

切换到班主任用户的命令:

设置banzhuren的密码:班主任666

在右边开启一个新的窗口,登录banzhuren:

因为班主任是一个普通的用户,所以,我们不能查看/root下面的信息

如何用班主任切换到root

su命令可以切换用户身份的需求,
su - username su命令中间的-号很重要,意味着完全切换到新的用户,即环境变量信息也变更为新用户的信息

必须加上 "横杠",不加的话,可能导致变量之间的冲突

使用root登录banzhuren的账户不需要密码:

总结:

(5)

root切换普通用户
su - banzhuren  #不需要输入密码

普通用户切换其他用户,需要输入那个用户的密码

#先看下当前用户(我是谁)
whoami
#切换用户
su - oldboy
#退出用户登录
logout
ctrl + d

作为一个运维,如果离职,运维必须要能够删除离职人员的用户和密码.

班主任连用户的删除命令都没有,

上边的这种删除方式仅仅是将名字给踢出掉了,

如果刚才我们不删,看一下用户的信息:

我们现在再看一下用户的信息

这样,我们就看不到用户的信息

这个文件依然存在这个家目录,依然存在风险,可能会反推会这个地方,进行破解,造成风险,怎么办?

-f     强制删除用户
-r 同事删除用户以及家目录
userdel -r alex

现在我们手动删除home下面的alex ,以及home下面的s18

这样我们就删除了:

下面我们再创建一个用户:

这个时候就删除了,见下图:

(6)

.sudo命令,预设以root身份去执行命令
.配置 /etc/sudoers,添加banzhuren用户到配置中
找到如下行
## Allow root to run any commands anywhere
root ALL=(ALL) ALL
banzhuren ALL=(ALL) ALL .保存退出后,banzhuren用户即可使用sudo命令了 .visodu命令,提供对/etc/sudoers文件,进行配置检测的功能

sudo是授权的意思

权限没有行通,我们需要一个sudoers东西

在root用户下我们执行下面的命令:

快速查找命令/root

上边只是其中一个地方,意思是"可以再任何地方执行任何命令"

我们再插入一行命令:

退出,执行:wq!,在按回车(enter)键

这个时候,我们再用班主任看,

现在还是显示权限不足,

我们必须拿着超级用户授予权限的权限,才能成功执行,也就是sudo,不拿的话不能执行

输入,停止网络的命令,显示权限不足,我们需要输入root用户的密码

也有可能要求输入的是其他用户的密码

esc+

按"enter"退出,

现在,我们再次处理,展示班主任用户下面的/root信息

这个时候,我们得到的是下面的信息

这个时候,我们知道是我们修改的行号出错了.

但是如果不知道怎么办?需要加上行号

这个时候,我们删除原来错误的那一行

下面我们说一下visudo

运行

现在,我们在上边再瞎写一个,

保存退出

visodu命令,提供对/etc/sudoers文件,进行配置检测的功能

直接在原来的root里边提示基础上修改,

这个时候,班主任里边又可以使用了.


3.开发常用命令1

4.linux学习命令2

5.linux命令学习3

第一部分:

.配置好阿里云yum源
 1. /etc/yum.repos.d  #存放yum源仓库的文件,只有在这个目录下,文件以.repo结尾的才会被识别为yum仓库
2. CentOS-Base.repo epel.repo 这2个文件就是 aliyun 的 yum源
3.如果你不想要这些 aliyun的源, 你可以再去找 163的源,清华的源。。。。。。。。
.下载lrzsz工具,方便linux和windows互相传文件 .如何手动启动网卡?
  启动/关闭一块网卡
  ifup eth0
  ifdown eth0
.linux的超级用户是什么?如何查看用户身份信息? 
root   whoami

  id banzhuren
  id root
  id

linux下的用户:超级用户root//普通用户
.简单描述linux的用户管理 .如何创建普通用户,并且修改用户密码,然后使用普通用户登录

    1.创建系统用户的命令
    useradd banzhuren
    2.更改班主任的密码
    passwd banzhuren

  ssh banzhuren@1.1.1.1:9999

.在linux下如何切换用户 
  su - chaoge
.如何使用root身份执行普通用户的命令?请详细说明配置步骤 
  

    1.配置 /etc/sudoers,添加banzhuren用户到配置中
    找到如下行
    ## Allow root to run any commands anywhere
    root ALL=(ALL) ALL
    banzhuren ALL=(ALL) ALL

  2.保存退出后,banzhuren用户即可使用sudo命令了

  3.visodu命令,提供对/etc/sudoers文件,进行配置检测的功能

.简述linux文件的权限有哪些? 
  rwx 10.linux文件权限的755,700是什么意思?
755
  u:可读可写可执行
  g:可读不可写可执行
  o:可读不可写可执行
700
  u:可读可写可执行
  g:不可执行
  o:不可执行 .如何修改test.py文件权限为700
chmod 700 test.py  .如何修改test.py属组是oldboy?
chgrp oldboy test.py  #更改属组
chown oldboy test.py  #更改属主 .已知test.py文件权限是rwxr--r--,如何修改权限为rw-rw-rw
744
chmod 666 test.py .linux如何建立软连接?
ln -s 目标文件(给谁添加快捷方式)  快捷方式的路径 .linux的PS1变量是什么?如何修改
 命令提示符显示的格式
通过重新给PS1赋值来修改
PS1="[\u@\h \W \t]\$" #注意 Linux的shell变量赋值,不能有空格
第二部分: 

.vim vi 是什么? 

.vim有哪几种模式? 

.命令模式有哪些? 

.输入模式有哪些? 

.底线命令模式有哪些? 

.centos7用什么命令管理服务 
只有通过yum安装的软件才可以使用systemctl

centos7系列    systemctl start/stop   redis
centos6/rhel 6 service redis start/stop/restart
.linux解析dns的命令是什么? 
nslookup  xiaohuawang.cn 第三部分: .将/tmp/下所有内容压缩成All_log.tar.gz并且放到/home/下
    第一解法:tar -zcf /home/All_log.tar.gz   /tmp/*

    第二解法:mv  All_log.tar.gz   /home 
.解压缩Python源码包Python-3.7.0b3.tgz 
  tar -zxf Python-3.7.0b3.tgz

.查看mysql端口状态 

.如何查看nginx的进程 

查看nginx的进程方式:ps –ef | grep nginx
查看Nginx服务主进程的方式:cat nginx.pid .如何杀死nginx进程
kill pid
.如何修改linux中文 
.如何统计/var/log大小 
 du -sh /var/log
-s合计
-h 友好的单位 mb gb tb pb

.tree是什么作用? 
列出某路径下面的树状结构 .如何给linux添加一个dns服务器记录 vim /etc/hosts
进入里边进行添加ip和地址www.baidu.com .每月的,,,25天的晚上5点50重启nginx   50 17 5,15,25 * * /opt/nginx/sbin/nginx -s reload

  50 17 5,15,25 * * /usr/bin/systemctl  restart nginx 
.每周3到周5的深夜11点,备份/var/log /vmtp/ 
0 23 * * 3-5 /usr/bin/cp -r /var/log /vmtp/
注意:这个备份不太会写

.每天早上6.30清空/tmp/内容 
  30 6 * * * /usr/bin/rm -rf /tmp/*
  问题:为什么加上/user/bin

.每个星期三的下午6点到8点的第5,15分钟执行命令 command 
5,15 6-8 * * 3 command .编译安装软件有哪些步骤?
.解决python编译安装所需的软件依赖
yum install gcc patch libffi-devel python-devel zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel -y .下载python3源码包
wget https://www.python.org/ftp/python/3.6.7/Python-3.6.7.tar.xz xz -d Python-3.6..tar.xz
tar -xf Python-3.6..tar #解压缩,生成一个python源码文件夹 .进入python源码文件夹
cd Python-3.6.
.进行编译安装,编译三部曲
.第一曲
./configure --prefix=/opt/python36/
--prefix 参数解释:指定python36安装的位置
.第二曲
make
.第三曲 ,此时就开始安装python3软件
make install .进入python36安装目录 ,检查bin目录 .配置python3的环境变量 PATH
.取出当前的path变量
echo $PATH
.填写python3的bin目录到PATH中
PATH="/opt/python36/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin"
.讲环境变量,写入到全局配置文件/etc/profile
vim /etc/profile .写入如下代码,在最底行写入如下配置
PATH="/opt/python36/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin"
.读取配置文件,加载变量生效
source /etc/profile .安装django,运行django
.安装django模块
pip3 install -i https://pypi.douban.com/simple django .升级pip
pip3 install --upgrade pip .通过命令创建django项目 django-admin startproject crm
django-admin startapp app01 .关闭防火墙
iptables -F

.如何修改python3的环境变量,以及软连接 
  
(1).取出当前的path变量
echo $PATH
(2).填写python3的bin目录到PATH中
PATH="/opt/python36/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin"
(3).将环境变量,写入到全局配置文件/etc/profile
vim /etc/profile (4).写入如下代码,在最底行写入如下配置
PATH="/opt/python36/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin"
(5).读取配置文件,加载变量生效
source /etc/profile
在/home目录中建立软连接,指向/tmp/test.txt文件
cd /home
ln -s /tmp/test.txt my_test
.请在linux上启动django,windows上进行访问 
linux中输入:
  cd /opt/crm
  python3 manage.py runserver 192.168.34.128:9988
windows中输入:
  192.168.34.128:9988
.如何查看linux端口? 
netstat .如何杀死进程号为5888?
先用ps查找进程,然后用kill杀掉:
ps -ef | grep vim
root 3268 2884 0 16:21 pts/1 00:00:00 vim install.log
root 3370 2822 0 16:21 pts/0 00:00:00 grep vim
...

kill 5888

.如何关闭iptables? 
centos7默认已经使用firewall作为防火墙了
1.关闭防火墙
systemctl status firewalld #查看防火墙状态
systemctl stop firewalld #关闭防火墙
systemctl disable firewalld#关闭防火墙开机启动
systemctl is-enabled firewalld.service#检查防火墙是否启动

.请说出 , 740分别是什么权限? 
755:
  用户==读写可执行权限
  组内用户==可读不可写可执行
  其他用户==可读不可写可执行
740:  
  用户==读写可执行权限
  组内用户==只有可读权限
  其他用户==没有权限
.修改文件权限为只有属主可读可写可执行?
chmod 700 xxx.txt

巨蟒python全栈开发linux之centos3的更多相关文章

  1. 巨蟒python全栈开发linux之centos1

    1.linux服务器介绍 2.linux介绍 3.linux命令学习 linux默认有一个超级用户root,就是linux的皇帝 注意:我的用户名是s18,密码是centos 我们输入密码,点击解锁( ...

  2. 巨蟒python全栈开发linux之centos6

    1.nginx复习 .nginx是什么 nginx是支持反向代理,负载均衡,且可以实现web服务器的软件 在129服务器中查看,我们使用的是淘宝提供的tengine,也是一种nginx服务器 我们下载 ...

  3. 巨蟒python全栈开发linux之centos2

    1.一些命令回顾 在vm中,右击"打开终端",输入命令ifconfig,得到的下图算是一个终端,并且我们可以看到服务器的ip是192.168.34.128 我们通过windows上 ...

  4. 巨蟒python全栈开发linux之cento9

    1.docker入门学习 查看机器中已经启动的所有的进程. ps -ef 2.docker常用命令学习 3.docker学习3 4.dockerfile与镜像 5.docker私有仓库 6.rabbi ...

  5. 巨蟒python全栈开发linux之centos7

    1.crm项目部署回顾(小BOSS) crm部署 nginx+uwsgi+django+mysql nginx    前端 uwsgi+django     后端 mysql   数据支撑 crm是一 ...

  6. 巨蟒python全栈开发linux之centos5

    1.nginx安装使用 2.nginx访问日志和压测命令 3.nginx反向代理配置 nginx的404页面 访问:淘宝官网的一个错误地址:http://taobao.com/eeeeeeee 淘宝的 ...

  7. 巨蟒python全栈开发linux之centos4

    1.linux虚拟环境1-4 2.linux运行crm代码

  8. 巨蟒python全栈开发linux之cento8

    1.复习路飞部署学习 2.mysql数据库远程访问 3.mysql主从复制 4.redis安全方式启动 5.redis数据类型 6.redis发布订阅 7.redis持久化 8.redis哨兵 9.r ...

  9. 巨蟒python全栈开发linux之centos6 第二篇

    1. .nginx负载均衡的实现 .准备三台机器,准备3台虚拟机,或者和俩同桌交流一下 192.168.226.128 是nginx资源服务器,返回页面的 192.168.226.129 用作ngin ...

随机推荐

  1. git 基于某个分支创建分支

    1.拷贝源代码 git clone git@git地址 cd 项目目录 2.根据已有分支创建新的分支 git checkout -b yourbranchname origin/oldbranchna ...

  2. python——unpack问题 ocr_recognize timeout , exception:unpack requires a string argument of length 46

    rObjBuff = "".join(unpack('=%ds' % ObjLen, recv_buf[6+i*ObjLen:6+(i+1)*ObjLen]))score, bbo ...

  3. Python爬取豆瓣《复仇者联盟3》评论并生成乖萌的格鲁特

    代码地址如下:http://www.demodashi.com/demo/13257.html 1. 需求说明 本项目基于Python爬虫,爬取豆瓣电影上关于复仇者联盟3的所有影评,并保存至本地文件. ...

  4. Java 创建用户异常类、将异常一直向上抛、 throw和throws的区别

    如果java提供的系统异常类型不能满足程序设计的需求,那么可以设计自己的异常类型. 从java异常类的结构层次可以看出,java类型的公共父类为Throwable.在程序运行中可能出现俩种问题:一种是 ...

  5. Idea maven多模块项目有些加载不出来

    进入View>Tool Windows>Maven projects区域,添加新的项目识别. 选择要加载项目的pom.xml文件,ok 完成.

  6. Android加密算法之AES加密和解密实现

    <pre name="code" class="plain"><span style="font-family:Microsoft ...

  7. POJ-3134-Power Calculus(迭代加深DFS)

    Description Starting with x and repeatedly multiplying by x, we can compute x31 with thirty multipli ...

  8. C++语言基础(12)-虚函数

    一.虚函数使用的注意事项 1.只需要在虚函数的声明处加上 virtual 关键字,函数定义处可以加也可以不加. 2.为了方便,你可以只将基类中的函数声明为虚函数,这样所有子类中具有遮蔽(覆盖)关系的同 ...

  9. C++在线编译器

    主要有3个,且它们都支持C++11 http://gcc.godbolt.org/ http://coliru.stacked-crooked.com/ http://ideone.com/ 第一个网 ...

  10. python 分支结构

    if 语句 if语句 计算机之所以能做很多自动化的任务,因为它可以自己做条件判断. 比如,输入用户年龄,根据年龄打印不同的内容,在Python程序中,可以用if语句实现: age = 20 if ag ...