zoukankan      html  css  js  c++  java
  • Linux

    部分名词的理解:

    Ubuntu Server:部署环境,用来部署项目的 linux server 操作系统(绝大部分的项目是跑在linux服务器上的)。

    XShell:用来远程连接 linux 服务器的工具,方便操作linux。

    pycharm:开发工具(专业版对于 web 开发更友好)

    python3:编程语言。

    安装篇

    至于选择哪一个发行版 做server,看这里:http://mitblog.pixnet.net/blog/post/41037058(自己搞定上网问题)

    (一).镜像下载完后,我选择用 VMWare 安装。VMWare 为我们会进行简易安装,很方便的。就是自己设置好喜欢的用户名和密码即可。注:ubuntu 18.04 LTS 的安装界面有很大的变化,得自己一步一步设置。

    (1).提示1:系统装完,先升级 apt,不然你很多插件都装不上!命令:sudo apt update 然后 sudo apt upgrade

    (2).提示2:新的系统,肯定有很多程序没有安装过,执行命令的时候,如果没有这个程序,ubuntu server 会有对应的提示。直接提示了安装的命令,照着敲就可以了。

    (3).查看当前系统的版本:sudo lsb_release -a

    (二).XShell连接虚拟机

    如果出现问题,看这篇文章:http://blog.51cto.com/mofansheng/1586203

    (三).注意事项

    (1).ubuntu 系统默认禁止 root 用户登录。

    全局与虚拟环境:

    (一).概念

    首先,虚拟环境它不是虚拟机,它是在虚拟机中的一个开发环境。

    虚拟机相当于一个水池,虚拟环境就是水池中的一个水桶。一个虚拟环境一个水桶,水桶与水桶之间相互独立,互不相关。

    在全局中配置的python3环境,与虚拟环境也互不相关。

    (二).用途

    不同的项目也许用的是不用的解释器。比如,西瓜皮,它只支持python2.7。

    难道会因为一个项目,而去改动全局环境吗?改不好,全局环境也崩了。

    那么就建一个虚拟环境,然后在pycharm中,连接此虚拟环境中的解释器。

    而其他项目,连接其他虚拟环境中的解释器。各个虚拟环境互不相关,所以也不会发生斗殴事件。

    一、两个常用的虚拟机

    虚拟机是什么?就是电脑系统中的一台小电脑。

    1.VirtualBox:

    对系统要求很高,非正版系统会有不知明的问题。先进入VirtualBox的官网,步骤看下图:

    如果这两步完了还是不行,果断换VMware!

    2.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退出。

    (十二).软硬链接

    软硬链接:源文件中的内容改变了,链接文件的内容也同时修改了。

    不同的是源文件被删后,软链接就废了。而硬链接还是可以使用。

    硬链接相当于是备份。

    (十三).

    五、查看硬件信息

    /dev 目录是用来存放设备文件

    /etc 目录下是存放的存放系统程序或者一般工具的配置文件

    /proc 目录下就是存放的操作系统运行时,进程(正在运行中的程序)信息及内核信息

    (一).硬件信息的查看方式

    一种是通过cat在/proc目录下去查看对应硬件的信息;而另一种就是系统提供的专门命令。

    第一种方式,可以说是一招鲜,吃遍天,但不够全面和直观。而第二种,可能在使用的过程中,更全面,但是需要记识更多的命令。

    (二).cat方式

    通过cat命令查看/proc目录下的各种硬件设备信息

    (1).查看CPU信息

    cat /proc/cpuinfo

    (2).查看板卡信息

    cat /proc/pci

    (3).查看内存信息

    cat /proc/meminfo

    (4).查看USB设备

    cat /proc/bus/usb/devices

    (5).查看键盘和鼠标

    cat /proc/bus/input/devices

    (6).查看各设备的中断请求(IRQ)

    cat /proc/interrupts

    (三).专用命令方式

    针对多个硬件的命令有:

    (1).lipic:主要是有来列出机器中的PCI设备,比如声卡、显卡、猫、网卡等,主板集成设备也能列出来。

    (2).dmidecode:查看硬件信息,包括bios、cpu、内存等信息。是一种可读的方式dump出机器的DMI(Desktop Management Interface)信息。这些信息包括了硬件以及BIOS,既可以得到当前的配置,也可以得到系统支持的最大配置。

    (3).dmesg:dmesg是一个显示内核缓冲区系统控制信息的工具,但是需要注意的是dmesg工具并不是专门用来查看硬件芯片组标识的工具,但通过这个工具能让我们知道机器中的硬件的一些参数。

    (4).hwbrowser:当前硬件配置的图形化浏览器,这个工具是图形的。可能系统在默认的情况下没有安装,需要另外安装才行。

    (四).此外,还有一些设备可以通过专门的命令进行查看,比如查看cpu的lscpu,参看硬盘的lsblk,参看系统的uname

    六、关于使用apt还是apt-get

    这里有一篇文章,个人觉得比较简要地概述了如何选择:

    https://www.toutiao.com/a6734877338686718477/

  • 相关阅读:
    svn command line tag
    MDbg.exe(.NET Framework 命令行调试程序)
    Microsoft Web Deployment Tool
    sql server CI
    VS 2010 One Click Deployment Issue “Application Validation did not succeed. Unable to continue”
    mshtml
    大厂程序员站错队被架空,只拿着五折工资!苟活和离职,如何选择?
    揭秘!Windows 为什么会蓝屏?微软程序员竟说是这个原因...
    喂!千万别忘了这个C语言知识!(~0 == -1 问题)
    Linux 比 Windows 更好,谁反对?我有13个赞成理由
  • 原文地址:https://www.cnblogs.com/quanquan616/p/8450373.html
Copyright © 2011-2022 走看看