Linux了解一下

2019-01-04 09:48:39来源:博客园 阅读 ()

新老客户大回馈,云服务器低至5折

VMware与CentOS系统安装

  1, 下载CentOS系统ISO镜像:

  国内镜像源

https://opsx.alibaba.com/mirror#阿里云官方镜像站
iso下载地址(此DVD映像包含可以使用该软件安装的所有软件包安装程序。这是大多数用户的推荐图像):
https://mirrors.aliyun.com/centos/7/isos/x86_64/CentOS-7-x86_64-DVD-1804.iso

 

  2, 安装VMware虚拟机

  虚拟机能让用户在一台机器上模拟出多个操作系统的软件,一般的机器配置能够胜任虚拟机的任务.

  虚拟机不但可以虚拟出硬件资源,把实验环境与真机文件分离保证数据安全,还能在删掉系统核心配置时,有'快照'的功能,立即恢复到出错前的状态.

  (Windows用户)VMware Workstation是一款功能强大的桌面虚拟计算机软件,提供用户可在单一的桌面上同时运行不同的操作系统,

和进行开发、测试 、部署新的应用程序的最佳解决方案。
  下载激活地址:http://www.zdfans.com/html/5928.html
  (Mac用户) VMware fusion
  简单的说,虚拟机(virtual Machine)软件就是一套特殊的软件,同时可以用“多个操作系统”
  虚拟出硬件+操作系统==服务器+OS
  误区:学Linux不需要再物理机上安装,费时费力,采用虚拟机是最合适的方式

  Linux学习环境推荐电脑配置:
    笔记本电脑: 内存 8G ; 磁盘 500G SATA或者120G SSD ; i3, i5, i7处理器.
  
  Linux是一个多用户,多任务,支持多线程和多CPU的操作系统
  
  通过VM虚拟机学习Linux的优点:
    利用虚拟机搭建Linux学习环境简单方便, 容易上手, 最重要的是虚拟机的Linux和真实服务器
    几乎无区别;
    搭建Linux集群或者需要模拟多台服务器通信的时候,可以同时开启好几台虚拟机,虚拟机可以满足多机器的需求;
    自己租服务器可以搭建Linux环境,用于个人开发学习使用;
    允许修改虚拟(服务器)机配置,且不会影响自己的电脑,想删除虚拟机也不会影响电脑,虚拟机只是运行在电脑上的一个程序.

  安装VM注意:
    1, 秘钥自己网上搜即可,要配合版本;
    2, 安装成功后创建新的虚拟机,在新建虚拟机向导中选择'自定义';
    3, 在安装客户机操作系统时, 选择'稍后安装操作系统';
    4, 在选择磁盘时,选中 '创建新虚拟磁盘';
    5, 在指定磁盘容量时,选择'将虚拟机磁盘拆分成多个文件';
    6, 点击'自动检测',选择已经下好的ISO文件
    ...

  root密码重置:
    在重启Linux系统主机并出现引导界面时,按下键盘上的e键进入内核编辑界面

  
    在Linux16参数行的最后追加'rd.break'参数,然后按下Ctrl+X组合键来运行修改的内核程序

 

    等待之后,进入系统紧急求援模式

 

    依次输入以下命令,等待系统重启操作完毕,然后就可以使用新密码来登录Linux系统了   

mount -o remount,rw /sysroot
    chroot /sysroot
    passwd
    touch /.autorelabel
exit reboot

 

  在安装VM和CentOS过程中可能还有其他问题,如电脑不兼容等问题,自行查资料或请教他人解决.

 

远程连接: 

    这里只用Xshell软件进行连接.

       获取主机IP地址 : 

    

方式1 ip addr
方式2 ifconfig

 

 

   网络模式配置: 

    host only 仅主机,单机模式,电脑控制虚拟令其无法与外界通信

    nat模式(网络地址转换)

    --- 电脑宿主机的ip在局域网内是唯一的, 选择了NAT模式创建虚拟机,虚拟机就是一个新的局域网

    --- 虚拟机的IP地址是nat分配的,电脑网络环境改变不会影响虚拟机

    桥接模式: 

    --- 用该模式,就是局域网中一台独立的主机,他可以访问该网段任意一台机器.

    --- 虚拟机受电脑网络环境的影响,随时改变ip地址

  端口 

    一台服务器可以有一个ip地址,例如是192.168.11.1,服务器是需要对外提供服务的,例如web服务,FTP服务。那么仅凭ip地址,主机无法区分不同的服务,ip地址和网络服务是一对多的关系,一个ip提供多个服务,因此就有了“端口号”来区分不同的服务器的。

    端口(port) 的设计规定是有65536个端口,每个端口对应唯一的程序,0-1024端口之间被操作系统占用,因此开发人员使用的是1024-65536

    如 : ftp : 23    dns: 53   http : 80    https: 443    ssh : 22

  

  协议 : 

    protocol是为网络中的数据交换而建立的规则,标准或者约定,俩个实体要通信,必须要有同一种语言.

    超文本传输协议: HTTP ; 文件传输协议: FTP ; 简单邮件传输协议: SMTP

    网络通信协议: TCP ; 用户数据报协议: UDP

 

  连接服务器: 

    首先打开服务器,并获取ip,

    然后,在Xshell中输入 :  ssh ip,

    随后输入服务器名称和密码即可.

    Ctrl+Alt+F[1~6],如果要切换到第二号虚拟机终端, 则同时按Ctrl+Alt+F2

    普通用户登录后系统提示符:$ ; root用户登录后系统提示符: # 

 

  查看终端信息shell命令

    tty 查看当前终端 ;  

    who am i 仅显示当前用户正在使用的终端和登录时间

    w  查看所有终端, (功能最全,显示用户名,登陆时间,负载等信息)

 

Linux 常用命令

  Linux命令就是一个可执行的二进制程序

  网卡配置: 

  装好Linux后,有的时候网卡默认是没启动的,因此需要手动启动网卡:

    编辑网卡配置文件-- vi /etc/sysconfig/network-scripts/ifcfg-etho

    (注意ifcfg-etho表示ip所在的当前文件夹)

    修改配置参数-- ONBOOT=yes

  

  

网络配置文件:
/etc/sysconfig/network

网络接口配置文件:
/etc/sysconfig/network-scripts/ifcfg-INTERFACE_NAME
DEVICE=: 关联的设备名称,要与文件名的后半部“INTERFACE_NAME”保持一致; 
BOOTPROTO={static|none|dhcp|bootp}: 引导协议;要使用静态地址,使用static或none;
  dhcp表示使用DHCP服务器获取地址; IPADDR
=: IP地址 NETMASK=:子网掩码 GATEWAY=:设定默认网关; ONBOOT=:开机时是否自动激活此网络接口; HWADDR=: 硬件地址,要与硬件中的地址保持一致;可省; USERCTL={yes|no}: 是否允许普通用户控制此接口; PEERDNS={yes|no}: 是否在BOOTPROTO为dhcp时接受由DHCP服务器指定的DNS地址;

  注意: dhclient 能够手动获取ip地址,再使用ip addr 即可查看.

      service network restart   重启网络即可.

 

  ifup, ifdown命令 

  表示启动/关闭一块网卡;

  ifup ens33     ;    ifdown ens33

  他们是直接连接到/etc/sysconfig/network-scripts目录下搜索对应的网卡文件,如: ifcfg-ens33

  

  ifconfig命名(并非系统自带,需要下软件包:yum install net-tools -y)

  ifconfig 查看网卡ip地址

 

直接输入ifconfig会列出已经启动的网卡,也可以输入ifconfig ens33单独显示ens33的信息
各选项解释是:
eth0    网卡的代号 
lo        回环地址loopback
inet    IPv4的Ip地址
netmask    子网掩码
broadcast    广播地址
RX/TX     流量发/收情况     tx是发送(transport),rx是接收(receive)
packets     数据包数
errors     数据包错误数
dropped    数据包有问题被丢弃的数量
collisions    数据包碰撞情况,数值太多代表网络状况差

  ifdown 关闭网卡  

 

   ip 命令

   ip是一个命令,结合了ifconfig和route俩个命令的功能

   ip addr show 查看ip信息

 

   系统信息:

#查看系统版本信息
cat /etc/redhat-release 
CentOS Linux release 7.4.1708 (Core) 
#查看内核版本号
uname -r
3.10.0-693.el7.x86_64
#查看系统多少位
uname -m
x86_64
#查看内核所有信息
uname -a

 

  ls 查看Linux文件夹信息 list缩写 , Linux中白色的是普通文件,蓝色的是目录文件

  pwd 打印当前工作目录--print work

  mkdir 创建文件夹   

    如: mkdir 文件夹名        创建单个文件夹 ; 

       mkdir 文件夹1 文件夹2文件夹3      创建多个文件夹

  cat 查看Linux文本(查看纯文本文档,常用于内容较少的)

  

#查看文件,显示行号
cat -n xxx.py
#查看文件
cat xxx.py

#在每一行的结尾加上$符
[root@master tmp]# cat -E 1.txt

#追加文字到文件
cat >>/tmp/oldboy.txt << EOF(此处表明退出的标识)
唧唧复唧唧...
(此处写追加的内容)
EOF

  

 

  cd change 目录     表示更改目录  ; cd 目录   表示切换/更改当前目录或位置  如: cd /home  

  touch  创建普通文本

    如: touch 文件名

       touch 文件1 文件2 文件3

  echo  显示变量的值/显示当前字符串

    如: echo 'pan 是个大傻逼'

  

  cat filename.txt -n 查看文本内容 显示行号

  more 用于查看大文件

    more 命令查看文本会以百分比的形式显示已经看了多少,

    回车键向下读取内容 ; 按空格(space)翻页 ; 按b键是上一页 

  拷贝命令 : cp 文件1 文件2 ;  cp -r 递归拷贝文件

  find 查找文件命令   表示从哪找  啥类型 找什么(find 目录 类型 名字)   

#Linux里如何找到需要的文件 例如 oldboy.py
find 在哪里(目录) 什么类型(文件类型) 叫什么名字(文件名)
参数

-name 按照文件名查找文件
-type 查找某一类型的文件,诸如:
b - 块设备文件。
d - 目录。
c - 字符设备文件。
p - 管道文件。
l - 符号链接文件。
f - 普通文件。
s - socket文件


find /tmp/ -type f  -name "oldboy.py"

#找出/tmp所有以 .txt 结尾的文件
find /tmp/ -type f -name "*.txt"

#找到/etc下所有名字以host开头的文件
find /etc -name 'host*'

#找到/opt上一个名为settings.py
find /opt -name 'settings.py'

    

  Linux 快捷键:

    tab键: 用于自动补全命令/文件名/目录名

    Ctrl + 1 清理终端信息

    clear/cls  清理终端显示

    Ctrl + c 终止当前操作

  echo : 

    用于在终端输出字符串或者变量提取后的值,格式是'echo 字符串|$变量'

#默认吧内容显示到终端上    
echo "pan"
#把“pan”写入到文件里!
echo "pan" > /tmp/chaoge.txt
echo $PATH #取出打印PATH的值

 

  特殊符号 

    输出/输入 重定向符号

     >>  追加重定向,把文字追加到文件的结尾

     >     重定向符号,清空源文件内容, 然后把文字覆盖到文件末尾

     <   输入重定向

     <<    将输入结果输入重定向

    如: echo 'pan' > /tmp/pan.txt

       echo 'pan66' >> /tmp/pan.txt

       cat >> /tmp/pan.txt << EOF

       把命令执行的结果信息,写入到文件

      ip addr > /tmp/network.txt  标准输出重定向 把命令执行结果信息放到文件中

    通配符:   

      ls -l 文件

    

 

  vim 支持编程的文本编辑器(不是系统默认命令,需要下载)

    vim 具有程序编辑能力,可以主动的以字体颜色辨别语法的正确性,方便程序设计. 

    vim filename.txt 进入命令模式后,可以输入各种命令

    :set nu  显示行号 (需要先按Esc键)

    在光标所在行 yy 复制本行 ; 在光标所在行 dd 删除本行

    5yy 表示复制5行 , 5dd 表示删除5行

 

#方法,命令
vi
vim
使用vi打开oldboy.py,默认是命令模式,需要输入a/i进入编辑模式,然后输入文本"Life is short,i use python"
按下esc键,回到命令模式
输入  :wq!  强制保存退出
w write 写入
q quit 退出
! 强制
或者  :x 保存退出
------
:q  不保存退出
:q! 不保存强制退出

 

  vi   Linux底下的文本编辑器(相当于记事本)

    vi 文件   此时进入一个命令模式,需要先输入i字母插入指令,便可进行编辑.

    编辑完成后,先按esc回到命令模式,再按下 : 然后输入wq!  保存退出. w表示write写入; q 表示 quit 退出 ; ! 表示强制性.   若不保存退出 输入 q! .

 

  复制 : 

copy ==> cp
#移动xxx.py到/tmp目录下
cp xxx.py /tmp/
#移动xxx.py顺便改名为chaoge.py
cp xxx.py /tmp/chaoge.py

Linux下面很多命令,一般没有办法直接处理文件夹,因此需要加上(参数) 
cp -r 递归,复制目录以及目录的子孙后代
cp -p 复制文件,同时保持文件属性不变    可以用stat
cp -a 相当于-pdr
#递归复制test文件夹,为test2
cp -r test test2

cp是个好命令,操作文件前,先备份
cp main.py main.py.bak

 

  移动命令:

move > mv

cd /home
#把日本的冲绳,搬到南海去
mv /home/riben/chongsheng /tmp/nanhai

文件/文件夹改名
mv x.log xx.log

   

  删除命令:  

remove ==> rm
参数  -i  需要删除确认
   -f  强制删除
     -r  递归删除目录和内容
     
cd /tmp
rm oldboy.py
#默认有提示删除,需要输入y
rm -f oldboy.py #不需要提示,强制删除
#rm默认无法删除目录,需要跟上参数-r
rm -rf /tmp/oldboy/

--------
友情提醒:初学者使用rm命令,随时快照虚拟机

 

  管道命令:   

Linux提供的管道符“|”将两条命令隔开,管道符左边命令的输出会作为管道符右边命令的输入。
常见用法:
#检查python程序是否启动
ps -ef|grep "python"

#找到/tmp目录下所有txt文件
ls /tmp|grep '.txt'

#检查nginx的端口是否存活
netstat -tunlp |grep nginx

 

  grep 

    是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来.

语法:
grep [参数] [--color=auto] [字符串] filename
参数详解:
-i : 忽略大小写
-n : 输出行号
-v : 反向选择
--color = auto : 给关键词部分添加颜色

grep "我要找什么" /tmp/oldboy.txt
#排除 -v,排除我要找的东西
grep -v "我要找什么 /tmp/oldboy.txt

  如: 找出目录下root用户所在行,以及行号,显示颜色

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

   找出..所有不允许登录的用户

    grep /sbin/nologin /etc/passwd

    找出..的所有与mysql有关行,行号

     cat /etc/passwd |grep 'mysql' -n

 

  head, tail命令

head显示文件前几行,默认前10行
tail显示文件后几行,默认后10行
#查看前两行
head -2 /tmp/oldboy.txt
#查看后两行
tail -2 /tmp/oldboy.txt
#持续刷新显示
tail -f xx.log

#显示文件10-30行
head -30 /tmp/oldboy.txt |tail -21

 

  别名: 

Linux如何提示你,在使用这些命令时候,提醒你小心呢?
#查看系统别名
alias
默认别名

alias cp='cp -i'
alias egrep='egrep --color=auto'
alias fgrep='fgrep --color=auto'
alias grep='grep --color=auto'
alias l.='ls -d .* --color=auto'
alias ll='ls -l --color=auto'
alias ls='ls --color=auto'
alias mv='mv -i'
alias rm='rm -i'
alias which='alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde'
别名作用是:
我们在linux中使用cp时候相当于执行了cp -i
-i:删除已有文件或目录之前先询问用户;
#别名用比较危险的操作,防止你犯错

  设置rm别名 

#让系统显示 do not use rm
echo do not use rm
#设置rm别名
alias rm='echo do not use rm'
#设置别名永久生效,写入到/etc/profile(针对登录用户的合同,设置环境变量)
vim /etc/profile #编辑文件
G  快速到达最后一行
o  当前行下一行,创建一个新行,进入编辑模式
source /etc/profile #读取文件(合同生效)
---------------
#取消别名
unalias rm

 

  which命令: 

which命令用于查找并显示给定命令的绝对路径,环境变量PATH中保存了查找命令时需要遍历的目录。
which指令会在环境变量$PATH设置的目录里查找符合条件的文件。
也就是说,使用which命令,就可以看到某个系统命令是否存在,以及执行的到底是哪一个位置的命令。
which pwd
which python

which python #python命令在哪
/usr/bin/python #命令文件绝对路径

    scp 命令: 

      Linux scp命令用于Linux之间复制文件和,目录.

   scp是secure copy的缩写,scp是Linux系统下的基于

   语法: scp 参数 本地文件 远程文件标记

   参数:  

-r :递归复制整个目录
-v:详细方式输出
-q:不显示传输进度条
-C:允许压缩

 

  实例: 

#传输本地文件到远程地址
scp 本地文件  远程用户名@远程ip:远程文件夹/
scp 本地文件  远程用户名@远程ip:远程文件夹/远程文件名

scp /tmp/chaoge.py root@192.168.1.155:/home/
scp /tmp/chaoge.py root@192.168.1.155:/home/chaoge_python.py

scp -r  本地文件夹  远程用户名@远程ip:远程文件夹/
scp -r /tmp/oldboy root@192.168.1.155:/home/oldboy

#复制远程文件到本地
scp root@192.168.1.155:/home/oldboy.txt /tmp/oldboy.txt
scp -r root@192.168.1.155:/home/oldboy /home/

 

  du命令: 

    Linux du命令用于显示目录或文件的大小

    du会显示指定的目录或文件所占用的磁盘空间  

用法
du 【参数】【文件或目录】
-s 显示总计
-h 以k,M,G为单位显示,可读性强

 

    实例:  

显示目录或文件所占空间
#什么都不跟,代表显示当前目录所有文件大小
du   

#显示/home的总大小
du -sh /home

 

  top 命令:

  

第一行 (uptime)
系统时间 主机运行时间 用户连接数(who) 系统1,5,15分钟的平均负载
第二行:进程信息
进程总数 正在运行的进程数 睡眠的进程数 停止的进程数 僵尸进程数
第三行:cpu信息
us:用户空间所占CPU百分比
sy:内核空间占用CPU百分比
ni:用户进程空间内改变过优先级的进程占用CPU百分比
id:空闲CPU百分比
wa:等待输入输出的CPU时间百分比
hi:硬件CPU中断占用百分比
si:软中断占用百分比
st:虚拟机占用百分比

第四行:内存信息(与第五行的信息类似与free命令)
total:物理内存总量
used:已使用的内存总量
free:空闲的内存总量(free+used=total)
buffers:用作内核缓存的内存量

第五行:swap信息
total:交换分区总量
used:已使用的交换分区总量
free:空闲交换区总量
cached Mem:缓冲的交换区总量,内存中的内容被换出到交换区,然后又被换入到内存,但是使用过的交换区没有被覆盖,交换区的这些内容已存在于内存中的交换区的大小,相应的内存再次被换出时可不必再对交换区写入。

 

  Linux的时间同步

   Linux的date命令可以显示当前时间或者设置系统时间

   查看当前时间:

    

    格式化输出:  

-d    --date=string    显示指定的时间,而不是当前时间
以年-月-日显示当前时间
date +"%Y-%m-%d"
以年-月-日 时分秒 显示当前时间
date +"%Y-%m-%d %T"
在Linux下系统时间和硬件时间不会自动同步,在Linux运行过程中,系统时间和硬件时间以异步的方式运行,互不干扰。
硬件时间的运行,是靠Bios电池来运行,而系统时间是用CPU tick来维持的。
在系统开机时候,会从Bios中获取硬件时间,设置为系统时间
硬件始终的查看

[root@localhost ~ 10:19:04]#hwclock
2018年08月27日 星期一 10时23分03秒  -0.528004 秒
同步系统时间和硬件时间,可以用hwclock命令

//以系统时间为基准,修改硬件时间
[root@localhost~ 10:29:07]#hwclock -w

//以硬件时间为基准,修改系统时间
[root@oldboy_python ~ 10:29:21]#hwclock -s

 

  wget命令

    wget 命令用于在终端下载网络文件

    参数是 wget [参数]  下载地址   

wget -r -p http://www.luffycity.com#递归下载路飞所有资源,保存到www.luffycity.com文件中

  

  开关机命令: reboot 用于重启机器 ; poweroff 用于关闭系统.

 

  su - 用户名 : 表示切换用户身份   - 表示完全切换,连同环境变量都切换了

    root用户切换普通用户不需要密码, 反之要输入root密码

  退出登录 exit logout 

  

  xshell 快捷键 

    ctrl + l 清屏  ctrl + d 退出登录  ctrl + shift + r 快速登录

    

  linux命令提示符的变量 PS1变量

  修改命令提示符,添加 绝对路径,和时间      PS1="[\u@\h \w \t]$"

  用户组添加  groupadd 用户组名

  删除用户      userdel 用户名

  用root身份去执行命令 sudo 编辑这个文件,写入一些配置 vi /etc/sudoers 找到这一行配置:

Allow root to run any commands anywhere

root ALL=(ALL)  ALL
pan     ALL=(ALL)  ALL

 

   修改主机名 :hostnamectl set-hostname s15nb

  文件与目录权限:

    r 表示可读可以对次目录执行ls列出所有文件 ; w 表示可写 可以在这个目录文件创建文件 ; x 表示可执行 可以cd进入这个目录,或者查看详细信息 ; - 表示没有权限

    r w x 分别对应 4 2 1 那么可以认为文件夹权限777 为最高权限,即: rwxrwxrwx ; 最低权限为000 即: --------- .

-rw-r--r-- .1 root root 721819 Dec 08:17 girl.gif
权限相关 软连接 属于哪个用户 属于哪个组 文件大小 日期 文件名
             

  -rw-r--r--. 1 root root 28 Dec 26 20:57 zhaoyiningnibiewanshoujila

  文件属主 : root

  属组: root

  文件类型是 - (普通文件)

  权限 rw-r--r--

    文件属主的权限 rw-

    文件数组的权限 r--

    其他人的权限 r--

  文件夹的可读可写可执行 : 可读 : ls ;  可写 : 在文件夹当中创建文件;  可执行 :cd .

  改变用户属主: chown change owner

  更改拥有者:  chown 用户名 file

  更改属组 :  chgrp 组名 file

  

  软连接配置:   

ln命令

ln -s  目标文件绝对地址  快捷方式的绝对路径地址

ln -s  /opt/cs.txt   /home/cs.txt 

py3  /opt/python36/bin/python3.6  解释器绝对路径

python的时候,就去path中寻找

将python3.6的解释器,添加快捷方式到 /usr/local/sbin/python3.6

当我们输入python的时候
ln -s /opt/python36/bin/python3.6     /usr/local/sbin/

 

   path添加:  

echo $path
[root@s15fafafa home]# echo $PATH
PATH变量只能添加目录,不能定位到文件
将某个文件地下所有内容,都加入环境变量 
/usr/local/sbin
:/usr/local/bin
:/usr/sbin
:/usr/bin
:/root/bin

#假设不用这个
:/opt/python36/bin/   这才是正确的添加python环境变量

 

   tar 压缩解压 命令

    -c 压缩参数 ; 

    -x 解压参数

    -v 显示过程

    -f 指定文件,改参数要写在最后

    语法: 压缩文件== > tar -cf 压缩文件名 想压的内容

        解压文件==>  tar -xf 压缩文件名

  lrzsz 上传下载的小工具 

   xftp 文件传输工具

  ps -ef | grep 任务       表示查看某任务是否运行有进程

  netstat -tunlp | grep  端口号  表示查看某任务的端口是否启动

  netstat 参数

    -t 或 --tcp   显示TCP传输协议的连线状况

    -u 或 --udp 显示UDP传输协议的连线状况

    -n 或 --numeric  直接使用ip地址,而不通过域名服务器

    -l 或 --listening  显示监控中的服务器的Socket

    -p 或 --programs  显示正在使用Socket的程序识别码和程序名称

    -a 或 --all 显示所有连线中的Socket

  

  同一台机器的三个ip : 

    0.0.0.0  即暴露应用在对外的ip地址,又暴露在自己的回环地址;

    127.0.0.1 本机回环地址,代表机器自己的内部ip ,其他人访问不到, 并且每个人斗鱼自己的回环地址;

    192.168.*.*   本地对外可以访问的ip地址, 每个人都不一样.

  kill    杀死进程 ;   kill -9    强制杀死进程

    如: kill -9 mysql

 

  selinux 内置的防火墙 

    查询selinux状态  : getenforce

    暂时停止selinux :  setenforce 0

    永久关闭selinux :

    ==>vi /etc/selinux/config

      enforcing - SELinux security policy is enforced    # 开启

      permissive - SELinux prints warnings instead of enforcing   # 临时关闭

      disabled - No SELinux policy is loaded    # 永久关闭   

      SELINUX=disabled  # 修改该字段重启机器 使得selinux永久关闭

 

   软件防火墙: 

    iptables -F  清空规则

    iptables -L  查看iptable防火墙规则 , 看到只有如下短短的三个链,就说明,没有规则了,关闭防火墙的需求,防止他影响你的服务访问 :

       Chain INPUT(policy ACCEPT)

     target prot opt source   destination

     Chain FORWARD(policy ACCEPT)

     target prot opt source   destination

     Chain OUTPUT            destination

  停止防火墙:

      systemctl start/restart/stop firewalld  # 开启/重启/停止防火墙

   systemctl disable firewalld  # 删除 iptables 的开机自启

  修改Linux字符编码

   编译字符编码的文件: 

    vi/etc/locale.conf

    写如下代码: LANG="zh_cn.utf-8"

   读取文件是的变量生效: (source 读取命令, 是的配置文件在系统中生效)

    source /etc/locale.conf

   查看系统字符编码:   echo $LANG

  查看磁盘空间 : df -h

  以树状图显示文件目录 : tree    (需要下载该命令包--yum install tree -y)

  dns服务 : 

    bind 软件 , 配置dns 服务

    常见的互联网dns服务器: 

       8.8.8.8 谷歌的dns服务器;

     114.114.114.114   114 dns服务器地址;

     223.6.6.6  阿里巴巴的dns服务器地址;

     119.29.29.29  腾讯的dns服务器地址

  Linux dns配置文件是 etc/resolve.conf

    cat /etc/resolve.conf

    Generated by NetworkManager

    nameserver 119.29.29.29          主dns

    nameserver 223.5.5.5             备dns

    /etc/host 文件 本地dns强制解析的文件

[root@s15fafafa home]# cat /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.13.148  www.baidu.com

 

    dns解析顺序 : 

    1 ./etc/hosts

    2 ./etc/resolve.conf

  Linux 用于解析域名的命令 : nslookup Pythonav.cn

  

  Linux的定时任务 

    crontab -l  查看任务 ;   crontab -e   编辑任务

    crontab的语法:  分时 日 月 周

例 : 每月的,5,15,25天的晚上5点50重启nginx

?    50 17 5,15,25 * * /opt/nginx/sbin/nginx -s reload

 

 

Windows 软件包 : exe 可安装格式 ; msi  可执行安装文件 ; .zip 压缩包格式 ; .rar压缩包格式.

 

Linux 软件包管理 : 

  Linux软件格式分为:

     1, 源码包格式: 

     下载Python3的源码包; 解压源码包 ; 编译且安装 ; 配置环境变量; 使用平原Python3

   2, rpm 二进制包格式(这种安装方式,需要手动解决依赖关系,有可能装一个mysql耗时很长) 

     下载软件的rpm格式包 ; rpm -ivh lrzsz.rpm ; 使用lrzsz工具

     (lrzsz 是软件包的名字,提供的命令是: rz 接收文件  sz 发送文件)

    补充: 如果直接安装mysql5.6.rpm,依赖了很多其它软件包,就得手动逐个解决依赖,所以不建议使用.

   3, yum安装方式    yum工具,自动搜索下载rpm包,且安装,且解决依赖关系,自动处理下载其它依赖rpm包

     软件开发目录规范: 

      lib  库文件

      core  核心文件

      bin  可执行文件

      conf  配置文件

      log  日志文件夹

      readme  使用说明书

    向Python的模块

    pip3 install -i http://pypi.douban.com/simple flask

 

yum源配置:

yum源的仓库路径在
/etc/yum.repos.d/
然后这个目录底下,只有 以 .repo结尾的文件,才会被识别为yum仓库

配置国内的yum源
1.在/etc/yum.repos.d/目录底下,定制我们自己的repo仓库文件 
2.我们自己没有yum仓库,我们就去拿阿里巴巴的yum仓库
3.https://opsx.alibaba.com/mirror  这就是阿里巴巴的镜像站
4.下载阿里巴巴的yum仓库文件
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
wget下载文件后,-O参数,指定放到某个目录,且改名
5.清除yum缓存 
yum clean all 
6.生成新的阿里云的yum软件缓存
yum makecache

再配置epel额外的仓库源,这个仓库里就存放了很多第三方软件,例如redis  mysql  nginx 
1.配置epel仓库
wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
2.最好再生成yum缓存
yum makecache 
3.请随心所欲的使用 yum工具

yum示例用法
yum安装nginx web服务器软件

1. yum install nginx  -y       -y 一路都是默认yes
   2.启动nginx  
   直接输入nginx命令
   3.修改nginx主页面 ,文件名字叫做 index.html  
   find  /   -name index.html        查找这个文件所在地
   vim /usr/share/nginx/html/index.html        修改这个nginx首页文件

 

  系统服务管理命令: 

    只有通过yum安装的软件,默认才能使用这个命令管理

    systemctl start/stop/restart  服务名

    systemctl start/stop/restart   mariadb

    systemctl start/stop/restart redis

    systemctl start/stop/restart nginx

 

接下来是各个软件的安装测试以及相关配置: 如: Python3 ; django ; redis ; nginx 等 . 

  (最终把创建完成的项目跑起来)

  详情看笔记或搜索...

 

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:Linux学习一:图解CentOS 6.5安装步骤

下一篇:vim常用命令大全