Centos7升级内核版本

1、查看当前内核版本

1、查看当前内核版本

$ uname -r

3.10.0-514.el7.x86_64

$ uname -a

Linux k8s-master 3.10.0-514.el7.x86_64 #1 SMP Tue Nov 22 16:42:41 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux

$ cat /etc/redhat-release

CentOS Linux release 7.3.1611 (Core)

2、升级内核

更新yum源仓库

$ yum -y update

启用 ELRepo 仓库

ELRepo 仓库是基于社区的用于企业级 Linux 仓库,提供对 RedHat Enterprise (RHEL) 和 其他基于 RHEL的 Linux 发行版(CentOS、Scientific、Fedora 等)的支持。

ELRepo 聚焦于和硬件相关的软件包,包括文件系统驱动、显卡驱动、网络驱动、声卡驱动和摄像头驱动等。

#导入ELRepo仓库的公共密钥

rpm –import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org

#安装ELRepo仓库的yum源

rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-3.el7.elrepo.noarch.rpm

3、查看可用的系统内核包

可以看到4.4和4.18两个版本

yum –disablerepo="*" –enablerepo="elrepo-kernel" list available

Loaded plugins: fastestmirror

Loading mirror speeds from cached hostfile

* elrepo-kernel: mirrors.tuna.tsinghua.edu.cn

elrepo-kernel                                                                                                                                                                 | 2.9 kB  00:00:00     

elrepo-kernel/primary_db                                                                                                                                                      | 1.8 MB  00:00:03     

Available Packages

kernel-lt.x86_64                                                                                  4.4.155-1.el7.elrepo                                                                  elrepo-kernel

kernel-lt-devel.x86_64                                                                            4.4.155-1.el7.elrepo                                                                  elrepo-kernel

kernel-lt-doc.noarch                                                                              4.4.155-1.el7.elrepo                                                                  elrepo-kernel

kernel-lt-headers.x86_64                                                                          4.4.155-1.el7.elrepo                                                                  elrepo-kernel

kernel-lt-tools.x86_64                                                                            4.4.155-1.el7.elrepo                                                                  elrepo-kernel

kernel-lt-tools-libs.x86_64                                                                       4.4.155-1.el7.elrepo                                                                  elrepo-kernel

kernel-lt-tools-libs-devel.x86_64                                                                 4.4.155-1.el7.elrepo                                                                  elrepo-kernel

kernel-ml.x86_64                                                                                  4.18.7-1.el7.elrepo                                                                   elrepo-kernel

kernel-ml-devel.x86_64                                                                            4.18.7-1.el7.elrepo                                                                   elrepo-kernel

kernel-ml-doc.noarch                                                                              4.18.7-1.el7.elrepo                                                                   elrepo-kernel

kernel-ml-headers.x86_64                                                                          4.18.7-1.el7.elrepo                                                                   elrepo-kernel

kernel-ml-tools.x86_64                                                                            4.18.7-1.el7.elrepo                                                                   elrepo-kernel

kernel-ml-tools-libs.x86_64                                                                       4.18.7-1.el7.elrepo                                                                   elrepo-kernel

kernel-ml-tools-libs-devel.x86_64                                                                 4.18.7-1.el7.elrepo                                                                   elrepo-kernel

perf.x86_64                                                                                       4.18.7-1.el7.elrepo                                                                   elrepo-kernel

python-perf.x86_64                                                                                4.18.7-1.el7.elrepo                                                                   elrepo-

4、安装最新版本内核

$ yum –enablerepo=elrepo-kernel install kernel-ml

–enablerepo 选项开启 CentOS 系统上的指定仓库。默认开启的是 elrepo,这里用 elrepo-kernel 替换。

5、设置 grub2

内核安装好后,需要设置为默认启动选项并重启后才会生效

查看系统上的所有可用内核:

$ sudo awk -F\' '$1=="menuentry " {print i++ " : " $2}' /etc/grub2.cfg

0 : CentOS Linux (4.18.7-1.el7.elrepo.x86_64) 7 (Core)

1 : CentOS Linux (3.10.0-862.11.6.el7.x86_64) 7 (Core)

2 : CentOS Linux (3.10.0-514.el7.x86_64) 7 (Core)

3 : CentOS Linux (0-rescue-063ec330caa04d4baae54c6902c62e54) 7 (Core)

设置新的内核为grub2的默认版本

服务器上存在4 个内核,我们要使用 4.18 这个版本,可以通过 grub2-set-default 0 命令或编辑 /etc/default/grub 文件来设置

方法1、通过 grub2-set-default 0 命令设置

其中 0 是上面查询出来的可用内核

grub2-set-default 0

方法2、编辑 /etc/default/grub 文件

设置 GRUB_DEFAULT=0,通过上面查询显示的编号为 0 的内核作为默认内核:

$ vim /etc/default/grub

GRUB_TIMEOUT=5

GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"

GRUB_DEFAULT=0

GRUB_DISABLE_SUBMENU=true

GRUB_TERMINAL_OUTPUT="console"

GRUB_CMDLINE_LINUX="crashkernel=auto rd.lvm.lv=cl/root rhgb quiet"

GRUB_DISABLE_RECOVERY="true"

生成 grub 配置文件并重启

$ grub2-mkconfig -o /boot/grub2/grub.cfg

Generating grub configuration file …

Found linux image: /boot/vmlinuz-4.18.7-1.el7.elrepo.x86_64

Found initrd image: /boot/initramfs-4.18.7-1.el7.elrepo.x86_64.img

Found linux image: /boot/vmlinuz-3.10.0-862.11.6.el7.x86_64

Found initrd image: /boot/initramfs-3.10.0-862.11.6.el7.x86_64.img

Found linux image: /boot/vmlinuz-3.10.0-514.el7.x86_64

Found initrd image: /boot/initramfs-3.10.0-514.el7.x86_64.img

Found linux image: /boot/vmlinuz-0-rescue-063ec330caa04d4baae54c6902c62e54

Found initrd image: /boot/initramfs-0-rescue-063ec330caa04d4baae54c6902c62e54.img

done

$reboot

6、验证

$ uname -r

4.18.7-1.el7.elrepo.x86_64

7、删除旧内核(可选)

查看系统中全部的内核:

$ rpm -qa | grep kernel

kernel-3.10.0-514.el7.x86_64

kernel-ml-4.18.7-1.el7.elrepo.x86_64

kernel-tools-libs-3.10.0-862.11.6.el7.x86_64

kernel-tools-3.10.0-862.11.6.el7.x86_64

kernel-3.10.0-862.11.6.el7.x86_64

方法1、yum remove 删除旧内核的 RPM 包

$ yum remove kernel-3.10.0-514.el7.x86_64 \

kernel-tools-libs-3.10.0-862.11.6.el7.x86_64 \

kernel-tools-3.10.0-862.11.6.el7.x86_64 \

kernel-3.10.0-862.11.6.el7.x86_64

方法2、yum-utils 工具

如果安装的内核不多于 3 个,yum-utils 工具不会删除任何一个。只有在安装的内核大于 3 个时,才会自动删除旧内核。

安装yum-utils

$ yum install yum-utils

删除旧版本  

package-cleanup –oldkernels

RouterOS建立PPTP和L2TP服务器

在外面要访问公司/家里的资源时,需要使用VPN来连接到内网。通常的方式是使用PPTP和L2TP VPN连入。

在外面要访问公司/家里的资源时,需要使用VPN来连接到内网。通常的方式是使用PPTP和L2TP VPN连入。

PPTP和L2TP服务器配置步骤:

1、配置PPTP和L2TP VPN IP地址池(PPTP和L2TP共用一个地址池)

Winbox点击“ip” — “Pool”,打开IP Pool,点击“+”,添加VPN ip地址池。

Name:比如VPN-Remote

Address:比如192.168.2.1-192.168.2.254

Next Pool:none

2、配置PPP Profiles

“PPP” —点击 “Profiles”选项卡,点击“+”,填加一个“PPP Profile”

Name:比如VPN

Local Address:ros网关地址即可

Romte Address:VPN-Remote(上面创建的VPN地址池)

Rate Limit(rx/tx)表示为上行和下行速度,单位bps

Only one表示账号是否唯一性

3、配置PPP Secret

“PPP” —点击 “Secrets”选项卡,点击“+”,填加一个“PPP Secret

Name表示VPN的用户名

Password表示VPN的密码

Service选择any表示PPTP和L2TP都支持

Profile选择刚才创建的VPN

4、配置PPTP和L2TP

“PPP” —点击 “Interface”选项卡,点击“PPTP Server”和“L2TP Server”,都选中Enable启动

Default Profile可以选择“VPN”,其中L2TP多一个Use IPsec配置(如图)

L2TP Use IPsec选择“yes”,IPsec Secret输入密码即可

5、Win7连接L2TP VPN服务器

VPN链接,点击“属性” — “安全”选项卡,VPN类型选择“使用 IPsec 的第 2 层隧道协议 (L2TP/IPSec)”,并打开“高级设置”,选择“使用预共享密钥作身份验证”,在密匙框中输入创建L2TP服务器时IPsec Secret输入的密码

到此可以通过VPN连接PPTP服务器和L2TP服务器了。

以下端口是PPTP和L2TP以及IPsec的默认端口

PPTP端口:TCP: 1723

L2TP端口:UDP:1701

IPSec端口:UDP 500/4500

参考资料: http://www.myxzy.com/post-463.html

eset nod32 antivirus4激活码

V263-3733-4US6-DSHF-C676-JNUV

V263-3733-4US6-DSHF-C676-JNUV

V263-3733-4US6-DT3N-D4QL-5RHJ

V263-3733-4US6-DTNE-P7FB-C848

V263-3733-4US6-DUME-57LS-8HWL

V263-3733-4US6-DVF8-K4EK-9HQQ 

V263-3733-4US6-DVQS-353F-D3MF

V263-3733-4US6-DWJF-Q5PW-HVVN

V263-3733-4US6-DWR3-N8ES-GBHD

V263-3733-4US6-DXCW-H88F-SQM7

V263-3733-4US6-DYPE-73EB-78EX

V263-3733-4US6-E36F-X6BC-UFSV

V263-3733-4US6-DRF5-E6JC-JNXF

V263-3733-4US6-DS6A-F6B5-YTC4

CNDU-W33T-AACE-EU9U-2XFG

源码编译PHP时,出现“error: Please reinstall the libzip distribution”错误

安装中遇到的问题

安装中遇到的问题

在运行 ./configure 时,提示: Please reinstall the libzip distribution 是因为 libzip 版本过低,编译升级

先卸载了原先的 libzip

yum remove libzip

# 下载 libzip 源码(去网站选择合适的版本)

官网下载地址: https://libzip.org/download/

wget https://libzip.org/download/libzip-1.5.2.tar.gz

# 解压

tar -zxvf libzip-1.5.2.tar.gz

cd libzip-1.5.2

mkdir build

cd build

cmake ..

make

make test

make install

#在安装完新版的 libzip 时可能会出现打不到 zipconf.h,手动复制一下 

cp /usr/local/lib/libzip/include/zipconf.h /usr/local/include/zipconf.h

ESXI常用命令总结

关于esxi常用命令总结

关于esxi常用命令总结

services.sh restart 重启所有的服务

重启管理服务

/etc/init.d/hostd restart

/etc/init.d/vpxa restart

查看服务器IP信息

esxcli network ip interface ipv4 get

5.5查宿主机下每个对应的mac

net-stats -l

5.5查看网卡状态

esxcfg-vmknic -l

Linux shell命令

首先,让我们了解一些常见的Linux shell命令。这些命令并非ESXi的专用命令,你会发现很多命令也可以在大多数的Linux发行版中使用。

find/cat/grep –在试图查找指定的文件或者在某个文件中查找字符串时这三个命令非常重要。find命令可以基于文件名或者模式查找指定的文件,cat命令用于显示文件内容,grep用于在单个或多个文件内查找指定的字符串。

find /path/to/vm/folder –i name “delta” – 列出虚拟机所有的增量磁盘。

cat hostd.log | grep error –在hostd.log中查找所有的”error”字符串

head/tail –查看文件内容时这两个命令非常有用。尽管可以使用cat命令显示文件完整的内容,但head以及tail命令可以用于显示文件开头或结尾的部分,忽略了文件的中间内容。进行故障诊断时tail命令尤为有用,尤其是可以使用-f标记实时监控日志文件发生的变化。

tail -f /var/log/vmkernel.log – 实时查看vmkernel日志发生的变化

less –显示大文件内容时less命令非常有用。通过在cat命令的输出内容之后输入“|”less,可以分页显示输出结果,而且可以向前或向后滚动浏览。

cat /var/log/vpxa.log | less –在屏幕上分页显示vpxa.log文件的内容。

df/vdf –这两个命令显示文件系统的可用空间。df命令显示本地文件系统以及数据存储的容量、已用空间以及可用空间。为查看ESXi主机不同随机磁盘的使用情况,必须使用vdf命令。这两个命令都可以用于发现由于可用空间不足而可能导致的任何问题。

ps/kill –这两个命令分别用于查找ESXi主机内部运行的服务、强制终止这些服务。ps命令包括很多命令行开关,但最常用的是检索正在运行的进程的ID,然后就可以使用Kill命令终止相应的服务。

vi – 如果之前不熟悉vi命令,那么在学习时大多会遇到麻烦。Vi是一个文本编辑器,用于修改文件内容—vSphere管理员通过命令行shell进行故障诊断时必须要具备该技能。

ESXi专用命令

接下来让我们了解一些在ESXi命令行shell下最常用的命令。这些ESXi命令不仅能够帮助你进行故障诊断,还可以用于日常维护以及性能监控。

services.sh – Linux服务通常使用services命令管理,管理ESXi服务是通过使用services.sh命令实现的。Services.sh命令支持的参数包括stop、start、restart,通过这三个参数可以停止、启动或重启所有的ESXi服务。

services.sh restart – 重启所有的ESXi服务

/etc/init.d – 执行位于/etc/init.d目录下的脚本可以启动或停止对应的服务。如果只想重启vCenter Server Agent(vpax服务),可以运行/etc/init.d/vpxa restart 命令。而services.sh restart将重启所有服务。

/etc/init.d/vpxa restart – 重启主机上的 vCenter Agent

cat /etc/chkconfig.db – 查看所有ESXi服务的运行状态。

vmkping –我们都熟悉ping命令的用法及功能。Vmkping命令更进一步,允许使用Vmkernel的IP堆栈通过特定的接口发送ICMP数据包。这意味着你可以通过vMotion网络而非管理网络发送ping包。

vmkping –I vmk1 10.10.10.1 – 通过vmkl接口向10.10.10.1发送ICMP请求

nc –组合使用vmkping、nc命令(netcat),可以确认ESXi主机与特定IP之间的网络连通性。尽管vmkping命令通过ICMP确认连通性,但有时我们想确认是否可以访问特定的TCP端口(例如iSCSI的TCP端口是3260)。

nc –z 10.10.10.10 3260 – 测试是否能够访问10.10.10.10的3260端口。

Vmkfstools-如果需要通过命令行管理VMFS数据卷以及虚拟磁盘,那么vmkfstools命令就派上用场了。使用vmkfstools命令可以创建、克隆、扩展、重命名并删除VMDK文件。除了虚拟磁盘选项,你还可以使用vmkfstools命令创建、扩展、增大、回收文件系统的数据块。

vmkfstools –i test.vmdk testclone.vmdk – 将test.vmdk克隆为testclone.vmdk

esxtop –对ESXi主机进行性能监控以及故障诊断时,很少有工具能够提供和esxtop同样多的信息。除提供和Linux top命令类似的功能外,esxtop还可以收集很多VMware专有的指标,包括中断、内存、网络、磁盘适配器、磁盘设备以及电源管理。

vscsiStats – 需要进一步监控存储I/O的性能时,vscsiStats命令就能够派上用场了。vscsiStats命令能够帮助你收集与虚拟机磁盘I/O负载相关的性能数据。进行容量规划或者迁移后端存储时,使用vscsiStats命令收集到的数据可谓价值连城。

vim-cmd –vim-cmd是构建在hostd进程之上的命令空间,允许最终用户调用几乎所有的vSphere API。Vim-cmd提供了一些ESXi子命令管理不同的虚拟基础设施,而且和vimsh相比,更容易使用。

dcui –登录到ESXi主机时,VMware直接用户控制台接口(DCUI)提供了基于菜单的主机管理功能。DCUI提供了很多不同的功能,比如root密码维护、网络维护。有时你可能只能通过SSH访问主机,但幸运的是,在命令行下执行dcui命令就可以进入基于菜单的DCUI系统。

vm-support –曾经想过收集ESXi主机所有的支持及日志信息吗?Vm-support命令恰好能够满足你的要求。如果之前与VMware的技术支持热线联系过,那么很可能用过这个命令。

esxcli命令探究

esxcli命令用途广泛,我们不能简单地将其归为单个命令。esxcli包括许多不同的命名空间,允许你控制ESXi提供的几乎所有设备。下面列出了使用最频繁(肯定不是所有)的命名空间:

esxcli hardware – 想获取ESXi主机的硬件及配置信息时,esxcli硬件命名空间就能够派上用场了。

esxcli hardware cpu list – 获取CPU信息(系列、型号以及缓存)

esxcli hardware memory get – 获取内存信息(可用内存以及非一致内存访问)

esxcli iscsi – iscsi命名空间可以被用于监控并管理硬件iSCSI及软件iSCSI设置。

esxcli iscsi software –用于启用/禁用软件iSCSI initiator。

esxcli iscsi adapter –用于设置软硬件iSCSI适配器的发现、CHAP以及其他设置

esxcli iscsi sessions – 用于列出主机上已建立的iSCSI会话。

esxcli network –需要监控vSphere网络并对如下网络组件进行调整时,包括虚拟交换机、VMkernel网络接口、防火墙以及物理网卡等,esxcli网络命名空间就派上用场了。

esxcli network nic –列出并修改网卡信息,比如名字、唤醒网卡以及速度。

esxcli network vm list – 列出有一个活动网络端口的虚拟机的网络信息。

esxcli network vswitch –检索并管理VMware的标准交换机以及分布式虚拟交换机。

esxcli network ip – 管理VMkernel端口,包括管理、vMotion以及FT网络。还可以修改主机的所有IP栈,包括DNS、IPsec以及路由信息。

esxcli software – 软件命名空间可以用于检索ESXi主机已安装的软件及驱动并可以安装新组件。

esxcli software vib list – 列出ESXi主机上已经安装的软件及驱动。

esxcli storage – 可能是最常用的esxcli命令命名空间之一,包括了管理连接到vSphere的存储的所有信息。

esxcli storage core device list – 列出当前存储设备

esxcli storage core device vaai status get –获得存储设备支持的VAAI的当前状态。

esxcli system – 通过该命令使你能够控制ESXi的高级选项,比如设置syslog并管理主机状态。

esxcli system maintenanceMode set –enabled yes/no – 将主机设置为维护模式

查看并更改ESXi高级设置(提示:使用esxcli system settings

advanced list –d 命令查看非默认设置)

esxcli system syslog –查看 Syslog 及配置信息

esxcli vm – ESXi的虚拟机命名空间用于列出运行在主机上的虚拟机的各种信息,如果需要可以强制关闭这些虚拟机。

esxcli vm process list –列出已启动的虚拟机的进程信息。

esxcli vm process kill – 停止正在运行的虚拟机的进程,关闭虚拟机或者强制关闭虚拟机电源。

esxcli vsan – ESXi的VSAN命名空间包括配置并维护VSAN的很多命令,包括数据存储、网络、默认域名以及策略配置。

esxcli vsan storage – 配置VSAN使用的本地存储,包括增加、删除物理存储并修改自动声明。

esxcli vsan cluster – 本地主机脱离/加入VSAN集群。

esxcli esxcli – esxcli命令包括一个称为esxcli的命名空间,通过使用esxcli命名空间,你可以获得更多信息。

esxcli esxcli command list – 列出所有的esxcli命令及其提供的功能

将出问题的前端的业务注册到另一个前端 双机架构

find /vmfs/volumes/ | egrep “win2003|win2008|centos”|grep .vmx$|while read i ; do vmware-cmd “$i” register; done

Centos7 设置静态ip

[caideyang@localhost network-scripts]$ pwd

[caideyang@localhost network-scripts]$ pwd

/etc/sysconfig/network-scripts

[caideyang@localhost network-scripts]$ ls -ltr ifcfg-*

-rw-r–r–. 1 root root 254 Sep 16  2015 ifcfg-lo

-rw-r–r–. 1 root root 387 Oct  2 07:12 ifcfg-eno33554960

-rw-r–r–. 1 root root 393 Oct  2 07:21 ifcfg-eno16777736

如上图所示,修改ifcfg-eno33554960 设置为静态ip

NAME=eno33554960

UUID=aa20c29d-b978-4ea0-b441-32b00fb0d06c

DEVICE=eno33554960

BOOTPROTO=static  //设置为静态

IPADDR=192.168.1.200 //静态ip地址

NETMASK=255.255.255.0 //子网掩码

GATEWAY=192.168.1.2 //网关

DNS1=192.168.1.2 //DNS

NM_CONTROLLED=no //是否由networkmanager控制,no否

ONBOOT=yes

保存 重启网络

sudo systemctl restart network.service

修改完成

ssh免密码登录两种方法

方法一:

yum -y install openssh-clients
ssh-keygen -t rsa
cd ~/.ssh
ssh-copy-id -i ~/.ssh/id_rsa.pub 192.168.4.237
ssh-copy-id -i ~/.ssh/id_rsa.pub 192.168.4.239
ssh-copy-id -i ~/.ssh/id_rsa.pub 192.168.4.240
ssh-copy-id -i ~/.ssh/id_rsa.pub 192.168.4.241
ssh-copy-id -i ~/.ssh/id_rsa.pub 192.168.4.242

方法二:

ssh-keygen -t rsa
cat /root/.ssh/id_rsa.pub >> /root/authorized_keys
#在192.168.4.237上
scp -p ~/.ssh/id_rsa.pub root@192.168.4.239:/root/.ssh/authorized_keys
scp -p ~/.ssh/id_rsa.pub root@192.168.4.240:/root/.ssh/authorized_keys
scp -p ~/.ssh/id_rsa.pub root@192.168.4.241:/root/.ssh/authorized_keys
scp -p ~/.ssh/id_rsa.pub root@192.168.4.242:/root/.ssh/authorized_keys
#在192.168.4.239上
scp -p ~/.ssh/id_rsa.pub root@192.168.4.237:/root/.ssh/authorized_keys
scp -p ~/.ssh/id_rsa.pub root@192.168.4.240:/root/.ssh/authorized_keys
scp -p ~/.ssh/id_rsa.pub root@192.168.4.241:/root/.ssh/authorized_keys
scp -p ~/.ssh/id_rsa.pub root@192.168.4.242:/root/.ssh/authorized_keys
#在192.168.4.240上
scp -p ~/.ssh/id_rsa.pub root@192.168.4.237:/root/.ssh/authorized_keys
scp -p ~/.ssh/id_rsa.pub root@192.168.4.239:/root/.ssh/authorized_keys
scp -p ~/.ssh/id_rsa.pub root@192.168.4.241:/root/.ssh/authorized_keys
scp -p ~/.ssh/id_rsa.pub root@192.168.4.242:/root/.ssh/authorized_keys
#在192.168.4.241上
scp -p ~/.ssh/id_rsa.pub root@192.168.4.237:/root/.ssh/authorized_keys
scp -p ~/.ssh/id_rsa.pub root@192.168.4.239:/root/.ssh/authorized_keys
scp -p ~/.ssh/id_rsa.pub root@192.168.4.240:/root/.ssh/authorized_keys
scp -p ~/.ssh/id_rsa.pub root@192.168.4.242:/root/.ssh/authorized_keys
#在192.168.4.242上
scp -p ~/.ssh/id_rsa.pub root@192.168.4.237:/root/.ssh/authorized_keys
scp -p ~/.ssh/id_rsa.pub root@192.168.4.239:/root/.ssh/authorized_keys
scp -p ~/.ssh/id_rsa.pub root@192.168.4.240:/root/.ssh/authorized_keys
scp -p ~/.ssh/id_rsa.pub root@192.168.4.241:/root/.ssh/authorized_keys

Centos7创建Python虚拟环境

5.1安装python3
yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc make libffi-devel
wget https://www.python.org/ftp/python/3.7.2/Python-3.7.2.tgz
tar xf Python-3.7.2.tgz
cd Python-3.7.2
./configure –prefix=/usr/local/Python37 –enable-optimizations
make && make install
echo “export PATH=/usr/local/Python37:/usr/local/Python37/scripts:$PATH” >> /etc/profile
source /etc/profile
ln -sf /usr/local/Python37/bin/python3 /usr/bin/python3
ln -sf /usr/local/Python37/bin/pip3 /usr/bin/pip3

5.2升级pip
pip3 install –upgrade pip

5.3安装虚拟环境
pip3 install virtualenv
ln -sf /usr/local/Python37/bin/virtualenv /usr/bin/virtualenv
mkdir -p /usr/local/MyPy3Venv
cd /usr/local/MyPy3Venv
virtualenv py37venv

5.4激活虚拟环境
source /usr/local/MyPy3Venv/py37venv/bin/activate

5.5退出虚拟环境执行命令:
deactivate

5.6验证pip3
pip3 list –format=columns

5.7安装管理虚拟环境virtualenvwrappe工具
#virtualenvwrapper是virtualenv的扩展管理包,用于更方便管理虚拟环境,安装之后并不能直接使用,我们需要配置之后才能使用相关命令
pip3 install virtualenvwrapper
#找到virtualenvwrapper.sh
find / -name virtualenvwrapper.sh
#配置virtualenvwrapper(也可把配置到~/.bash_profile中作为当前用户使用)
echo “export WORKON_HOME=$HOME/.virtualenvs” >> /etc/profile
echo “export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3” >> /etc/profile
echo “source /usr/local/Python37/bin/virtualenvwrapper.sh” >> /etc/profile
source /etc/profile

5.8virtualenvwrappe工具使用
#新建虚拟环境test并指定python版本python3
mkvirtualenv test –python=python3
#执行lsvirtualenv指令查看所有环境,环境test位于/root/.virtualenvs/test
lsvirtualenv
#在项目底下激活虚拟环境test (退出后激活)
workon test
#退出环境test
deactivate
#删除环境test
rmvirtualenv test

5.9安装python项目服务运行环境
pip3 install gunicorn supervisor flask django

参考网站:
https://virtualenvwrapper.readthedocs.io/en/latest/
https://www.58jb.com/html/175.html

IDEA的常用快捷键

  • IDEA快捷键
    Alt+回车 导入包,自动修正
    Ctrl+N 查找类
    Ctrl+Shift+N 查找文件
    Ctrl+Alt+L 格式化代码
    Ctrl+Alt+O 优化导入的类和包
    Alt+Insert 生成代码(如get,set方法,构造函数等)
    Ctrl+E或者Alt+Shift+C 最近更改的代码
    Ctrl+R 替换文本
    Ctrl+F 查找文本
    Ctrl+Shift+Space 自动补全代码
    Ctrl+空格 代码提示
    Ctrl+Alt+Space 类名或接口名提示
    Ctrl+P 方法参数提示
    Ctrl+Shift+Alt+N 查找类中的方法或变量
    Alt+Shift+C 对比最近修改的代码
    Shift+F6 重构-重命名
    Ctrl+X 删除行
    Ctrl+D 复制行
    Ctrl+/ 或 Ctrl+Shift+/ 注释(// 或者/…/ )
    Ctrl+J 自动代码
    Ctrl+E 最近打开的文件
    Ctrl+H 显示类结构图
    Ctrl+Q 显示注释文档
    Alt+F1 查找代码所在位置
    Alt+1 快速打开或隐藏工程面板
    Ctrl+Alt+ left/right 返回至上次浏览的位置
    Alt+ left/right 切换代码视图
    Alt+ Up/Down 在方法间快速移动定位
    Ctrl+Shift+Up/Down 代码向上/下移动。
    F2 或Shift+F2 高亮错误或警告快速定位
    代码标签输入完成后,按Tab,生成代码。
    选中文本,按Ctrl+Shift+F7 ,高亮显示所有该文本,按Esc高亮消失。
    Ctrl+W 选中代码,连续按会有其他效果
    选中文本,按Alt+F3 ,逐个往下查找相同文本,并高亮显示。
    Ctrl+Up/Down 光标跳转到第一行或最后一行下
    Ctrl+B 快速打开光标处的类或方法
  • 最常用17个快捷键
    1.Ctrl+E,可以显示最近编辑的文件列表
    2.Shift+Click可以关闭文件
    3.Ctrl+[或]可以跳到大括号的开头结尾
    4.Ctrl+Shift+Backspace可以跳转到上次编辑的地方
    5.Ctrl+F12,可以显示当前文件的结构
    6.Ctrl+F7可以查询当前元素在当前文件中的引用,然后按F3可以选择
    7.Ctrl+N,可以快速打开类
    8.Ctrl+Shift+N,可以快速打开文件
    9.Alt+Q可以看到当前方法的声明
    10.Ctrl+W可以选择单词继而语句继而行继而函数
    11.Alt+F1可以将正在编辑的元素在各个面板中定位
    12.Ctrl+P,可以显示参数信息
    13.Ctrl+Shift+Insert可以选择剪贴板内容并插入
    14.Alt+Insert可以生成构造器/Getter/Setter等
    15.Ctrl+Alt+V 可以引入变量。例如把括号内的SQL赋成一个变量
    16.Ctrl+Alt+T可以把代码包在一块内,例如try/catch
    17.Alt+Up and Alt+Down可在方法间快速移动