机器型号:amd64 centos7
方案:
lightdm+xfce
yum使用国内源,略。
linux装图形化界面并Xmanager登陆
装lightdm
yum install lightdm
配置lightdm
vim /etc/lightdm/lightdm.conf
找到[XDMCPServer]
在下面添加下面两行,注意port复用ssh的端口,比如你ssh服务端口是22(默认的),那么port就写22。
enabled=true
port=9000
安装并配置ssh服务
yum install openssh-server
配置
vim /etc/ssh/sshd_config
启动lightdm服务(gdm是另一个图形管理,先停掉gdm,开机不启动,然后启动lightdm服务,并设置开机启动enable)
systemctl disable gdm
systemctl start lightdm
systemctl enable lightdm
开启对应端口防火墙
firewall-cmd --zone=public --add-port=9000 --permanent //zone作用域是public,add port填上面配置里的ssh端口 permanent设置成永久生效 需要reload防火墙
firewall-cmd --reload // 如果上面去掉--permanent参数 这一步可以省掉,如果想临时生效
firewall-cmd --list-port //查看开放的端口
想SELinux中添加修改的SSH端口
查看使用semanage工具需要什么依赖包
yum provides semanage
yum install policycoreutils-python
向SELinux添加ssh的端口
semanage port -a -t ssh_port_t -p tcp 9000
重启ssh服务
systemctl restart sshd
装xfce,xfce是比GNOME桌面更加轻量级的桌面环境
yum groupinstall xfce
重启lightdm服务
systemctl restart lightdm
Xmanager配置如下:
填入的参数:/usr/bin/xfce4-session --display $DISPLAY
安装python环境并导入依赖包
首先重要的一点弄清楚使用的是python的什么版本,比如django只能在python3上面运行。
安装python并配置环境变量,注意软链接的设置,比如装python3.8,那么对应的pip最好也软连接到/usr/bin/pip3.8
可以使用pip install -r requirement.txt批量导入包,或者指定国内源安装
pip install --user -i https://mirrors.aliyun.com/pypi/simple/ -r requirements.txt
这样会导致某些包装不上,可以使用shell脚本单个装,这样可以排查到哪些装不上然后针对解决,shell脚本如下:
linux安装并配置pycharm
从pycharm官网下载linux版本的pycharm,最好使用迅雷下载然后xftp传输过去。如果直接wget快的话也可以使用wget。
把pycharm装到/usr/local,
tar -zxvf 解压后进入pycharm文件夹,bin里面的./pycharm.sh执行安装程序,注意这里一定要在linux图形界面安装。
安装好后settings配置可以跳过,然后配置python interpreter,配置成刚才安装包的那个python,一般在/usr/bin/,比如我用的python3.8,那么就是/usr/bin/python3.8。
new environment可以新增虚拟环境,把我们配置好的包导入,然后第一个对勾点上,就可以把base python的site-package即依赖包赋值到虚拟环境,最好可以用这个,可以帮助我们更好的管理python环境,毕竟每个项目都是独立的。
常见问题
1、配置环境过程中遇到了很多坑,比如python一些包装不上,uwsgi等需要编译,就一直报错,当这种报错出现时,需要关注ImportErr信息,百度,一般都能查到解决方法,需要多试,一般都是缺少了某些包导致的,比如uwsgi需要yum install python-devel。
2、第二种常见问题是pycharm启动python程序的问题,过程中我们需要安装mysqlclient 依赖包,而这个依赖包需要linux本机装mysql才行,root装了mysql,把软连接配置到PATH环境变量和LD_LIBRARY_PATH,就可以了,但是千万别忘了同样配置环境变量到普通用户,如果防止麻烦,可以root下配置PATH等永久生效,方法不再赘述。