Linux - Ubuntu Server基础
Ubuntu Server:部署环境,用来部署项目的server系统。
XShell:用来连接linux的工具。web项目要部署到远程服务器上,所以需要XShell来连接远程服务器。
pycharm:开发工具(专业版对于web开发更友好)
python3:编程语言。
安装方法一:直接用别人打包好的ova
已有大神为我做好了oav文件,里面包含了mysql, redis, mongodb, python3.5。
本人使用VMware。安装VMware后,会自动关联该文件,直接双击oav文件就行。
安装途中需要输入两次:bash install.sh
第一次执行配置网络,完了系统会自动重启。第二次执行就是正常安装了。
(bash命令:执行一些脚本文件的命令)
安装方式二:自己安装
至于选择哪一个发行版做server(需要自己搞定上网问题)
我自己选择了Ubuntu Server 16 LTS作为入门。后来升级了系统,但出现了很多问题。然后把这个干掉,重新装了最新版。
(一).镜像下载完后,我选择用VMWare安装。VMWare为我们会进行简易安装,很方便的。就是自己设置好喜欢的用户名和密码即可。注:ubuntu18.04 LTS的安装界面有很大的变化,得自己一步一步设置。
(1).提示1:系统装完,先升级apt,不然你很多插件都装不上!命令:sudo apt update 然后 sudo apt upgrade
(2).提示2:新的系统,肯定有很多程序没有安装过,执行命令的时候,如果没有这个程序,ubuntu server会有对应的提示。直接提示了安装的命令,照着敲就可以了。
(3).查看当前系统的版本:sudo lsb_release -a
(二).XShell连接虚拟机
(1).本人安装了2018发布的python3.7.0
# 先安装依赖。避免 ModuleNotFoundError No module named "_ctypes" 这个错误
sudo apt-get update
sudo apt-get upgrade
sudo apt-get dist-upgrade
sudo apt-get install build-essential python-dev python-setuptools python-pip python-smbus
sudo apt-get install libncursesw5-dev libgdbm-dev libc6-dev
sudo apt-get install zlib1g-dev libsqlite3-dev tk-dev
sudo apt-get install libssl-dev openssl
sudo apt-get install libffi-dev # 开始安装
# 实现准备好源码包
tar -xvf Python-3.7.0.tgz
cd Python-3.7.0
./configure
make
sudo make altinstall
(2).从国内的源,安装模块
例如安装虚拟环境:sudo pip3 install -i https://pypi.douban.com/simple virtualenv
(四).安装MySQL
https://www.linuxidc.com/Linux/2017-05/143864.htm
注意事项:装完MySQL后,如果不能 mysql -u root -p 被拒绝了,执行下面的代码:
sudo mysql -u root
use mysql;
mysql> update user set plugin='mysql_native_password' where User='root';
flush privileges;
(五).安装Redis
(1).先 sudo apt update
(2).然后输入命令:sudo apt install redis-server,进行直接安装。
(3).输入命令:redis-server,启动服务。
(4).可以使用"redis-server -v",来查看当前redis的版本。
(六).安装MongoDB
(1).直接打命令:"sudo apt install mongodb"
(2).使用"mongod --version",查看版本
(七).注意事项
(1).ubuntu系统默认是禁止root用户登录的
全局与虚拟环境:
(一).概念
首先,虚拟环境它不是虚拟机,它是在虚拟机中的一个开发环境。
虚拟机相当于一个水池,虚拟环境就是水池中的一个水桶。一个虚拟环境一个水桶,水桶与水桶之间相互独立,互不相关。
在全局中配置的python3环境,与虚拟环境也互不相关。
(二).用途
不同的项目也许用的是不用的解释器。比如,西瓜皮,它只支持python2.7。
难道会因为一个项目,而去改动全局环境吗?改不好,全局环境也崩了。
那么就建一个虚拟环境,然后在pycharm中,连接此虚拟环境中的解释器。
而其他项目,连接其他虚拟环境中的解释器。各个虚拟环境互不相关,所以也不会发生斗殴事件。
一、两个常用的虚拟机
虚拟机是什么?就是电脑系统中的一台小电脑。
VMware:
专业的虚拟机软件,非常好用!(就是吃内存厉害)
VMware11开始不再支持32位系统,VMware10是最后一个支持32位系统的版本。
特别注意:32位系统中运行"Ubuntu1604_server_32bit.oav"会有问题,需要在物理机的文件中,用记事本打开"Ubuntu1604_server_32bit.vmx",
把原本virtualhw.version="11"这一行中的"11",改成"10"。保存之后,再运行就没问题了。结果如下图:

二、两种联网模式
1.桥接:适用于wifi。和主机级别一样,就相当于再插了一根网线。
2.nat模式:相当于把物理机当成路由器,外面机子上网。
补充:virtualbox使用nat模式的话,xshell连接需要端口转发。VMware则极少需要端口转发。
端口不要随便写,避免写:80 8080 443 3389 8443,会占用!尤其是80 8080!
XShell采用SSH服务连接linux。
三、Linux基础内容
Linux稳定,而且多用户之间互不干扰。每一个用户都是在家目录下的一个文件夹。
Linux没有盘符,只有一个根目录,所有文件放在根目录下。
Linux一切皆文件,哪怕是目录,也是一个文件。

linux分区大小写!命令与参数之间要有空格!
四、Linux基础命令
(一).pwd 显示当前完整路径
(二).cd 交互目录
默认进入家(home)目录。切换根目录:cd / 切换回家目录:cd ~ 切换用户:su root 退出当前用户,回到上一个用户:exit 只要不是根目录,就是相对路径:cd 目录名称/ 上一次目录:cd -
补充:修改root密码:sudo passwd xxxxx。这个oav的root用户密码是随机的。root用户标识:#,普通用户标识:$。
(三).ls 查看
ls -a 所有文件(隐藏文件前有个点".")
ls -l 详细信息
ls -h 比较人性化
(经常是:ls -lh 出来的结果可视性特别好)
ls -S 区分大小写
(四).man 帮助
man +命令。但是cd没有帮助,是个例外。翻页:b向上,F向下,q退出
(五).tree 树状查看,看目录结构
如果报错了,就需要先安装一下:sudo apt-get install tree sudo提权(root用户不用提权)
(六).mkdir 创建目录
mkdir -p 分级创建;mkdir -v 看过程;
例1:mkdir -vp aa/bb/cc 先创建aa,再在aa下建bb,再在bb下建cc;同理删除也可以 -vp
例2:mkdir qw we er 是三个同级目录了。
(七).touch 新建文件(可被编辑的)
例:touch demo.py 注:linux中的后缀是给人看的。linux没有区分什么文件,认为都是文件。
(八).rmdir 删除空目录(如果目录下有文件,就不会删)
例1:rmdir a/b/c 删除的是c目录,因为路径精确到了"c"
(九).rm 删除文件
rm -r 分级删除
例:rm -r a 删除了整个a目录
rm -f 强制删除
例:rm -rf * 可以这样说:千万不要用!全删了!恢复linux的代价相当巨大。
(十).cat 查看,cat猫,像猫一样瞄一下。
(十一).more / less
more翻完了自动退出,less必须按Q退出。
(十二).软硬链接
软硬链接:源文件中的内容改变了,链接文件的内容也同时修改了。
不同的是源文件被删后,软链接就废了。而硬链接还是可以使用。
硬链接相当于是备份。
Linux - Ubuntu Server基础的更多相关文章
- [Linux] Ubuntu Server 12.04 LTS 平台上搭建WordPress(Nginx+MySql+PHP) Part II
接着上一节继续搭建我们的LNMP平台,接下来我们安装PHP相关的服务 sudo apt-get install php5-cli php5-cgi php5-fpm php5-mcrypt php5- ...
- [Linux] Ubuntu Server 12.04 LTS 平台上搭建WordPress(Nginx+MySQL+PHP) Part IV
接下来我们去下载 WorePress 用最新的 3.7.1 下载地址是:http://cn.wordpress.org/wordpress-3.7.1-zh_CN.zip 我们先建立一个文件夹 /va ...
- linux -- Ubuntu Server 安装图形界面
1.连接网络,你一定要确保网络通畅,如果你和我一样使用Wireless,那先找根网线插上,因为下面的安装都要通过网络下载组件的. 2.进入图形界面的命令是startX,敲击后会有安装xinit的提示. ...
- [Linux] ubuntu server sudo出现sudo:must be setuid root 完美解决办法
1.开机按shift或esc先进行recovery模式 2.选择root命令行模式 3.先执行 #mount -o remount,rw / 这个很重要,网上找的很多资料都不全没有这步造成无法恢复成功 ...
- Linux高性能server编程——Linux网络基础API及应用
Linux网络编程基础API 具体介绍了socket地址意义极其API,在介绍数据读写API部分引入一个有关带外数据发送和接收的程序,最后还介绍了其它一些辅助API. socket地址API 主 ...
- Linux ubuntu下docker容器安装和基础命令
Docker介绍: 云计算就好比大货轮,docker就是集装箱虚拟机虽然可以隔离出很多"子电脑",但占用空间更大,启动更慢,虚拟机软件可能还要花钱(例如VMWare). 而容器技术 ...
- The Guideline of Setting Up Samba Server on linux(Ubuntu)
The Guideline of Setting Up Samba Server on linux(Ubuntu) From terminate command window, install the ...
- Tomcat安装 以Linux 分支 Ubuntu Server 为例
以Linux 分支 Ubuntu Server 为例.一.相关目录及作用说明 /etc/tomcat6 - 全局配置 /usr/share/tomcat6/ - 程序主目录 /usr/share/to ...
- ASP.NET Core:部署项目到Ubuntu Server
概述 基于上一篇成功安装Ubuntu Server 16.10的基础上,接下来继续我们ASP.NET Core项目的部署之旅! 只是对于这些年整天和Windows打交道的我,初次使用Linux确实有点 ...
随机推荐
- JAVA学习笔记 -- 多线程之共享资源
在多线程程序执行过程中,可能会涉及到两个或者多个线程试图同一时候訪问同一个资源.为了防止这样的情况的发生,必须在线程使用共享资源时给资源"上锁",以阻挡其他线程的訪问. 而这样的机 ...
- [iOS]在NavigationController中的ScrollView中的子视图都会下移64个像素
情况是这种: 我有一个UINavigationController,设置为self.window的root视图, 然后有一个UIVIewController是UINavigtionController ...
- HTML ui ol dl
<!-- 超链接target的属性 _blank 在新窗体中打开被链接文档. _self 默认. 在同样的框架中打开被链接文档. _parent 在父框架集中打开被链接文档. _top 在整个窗 ...
- android:ellipsize实现跑马灯效果总结
最近无意间看到了涉及到跑马灯效果的代码,于是在网上查阅了很多资料,在这里对自己看的一些文章进行一下总结,顺便加上自己的一些体会. 让我们一步步逐渐向下. 首先我们要实现走马灯这样一个效果,通常来说都是 ...
- 切换默认Activity和Fragment的动画
Activity中 public void click(View view){ Intent intent = new Intent(); intent.setClass(this, TwoActiv ...
- .NET 环境中使用RabbitMQ RabbitMQ与Redis队列对比 RabbitMQ入门与使用篇
.NET 环境中使用RabbitMQ 在企业应用系统领域,会面对不同系统之间的通信.集成与整合,尤其当面临异构系统时,这种分布式的调用与通信变得越发重要.其次,系统中一般会有很多对实时性要求不高的 ...
- C# 6.0语法糖剖析
C# 6.0语法糖剖析 2016年12月16日 16:10:27 阅读数:586 版权声明:本文为博主http://www.feixueteam.net原创文章,未经博主允许不得转载. https ...
- atitit.atiLinq v2新特性attilax大总结 q326
atitit.atiLinq v2新特性attilax大总结 q326 1. V3规划 (分开sql2obj sql2sql sql2xml)1 2. V2新特性 Url linq的定义1 3. V1 ...
- [精]Oracle 11G数据库VMware虚拟机下载
虚拟机文件下载地址: http://pan.baidu.com/s/1pJL5Tub 备份一个防止失效 https://pan.baidu.com/s/1nvbZQad Readme文件: 数据库版本 ...
- deepin linux下python安装mysqldb
` sudo pip search MySQL-python `