V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Distributions
Ubuntu
Fedora
CentOS
中文资源站
网易开源镜像站
rocksolid
V2EX  ›  Linux

求教关于在 Linux 环境下开发的疑问

  •  
  •   rocksolid · 2017-01-25 10:17:30 +08:00 · 5719 次点击
    这是一个创建于 2638 天前的主题,其中的信息可能已经有所发展或是发生改变。
    比如开发一些爬虫或者 Django 搭建网站,那对于 linux 本身需要学习或者了解一些什么知识
    58 条回复    2017-02-21 22:33:12 +08:00
    jmc891205
        1
    jmc891205  
       2017-01-25 10:20:41 +08:00
    会常用的 shell 命令就好了 其他的都可以遇到再学
    fish267
        2
    fish267  
       2017-01-25 10:25:45 +08:00
    不需要多少知识.

    类比 windows 图像界面, 你需要学会 跳到指定目录, 粘贴复制移动文件, 双击文件等.

    Just stackoverflow it !
    bintianbaihua
        3
    bintianbaihua  
       2017-01-25 10:28:55 +08:00
    linux 的基本命令行
    shell 脚本
    网络知识
    域名,服务器等等
    Jakesoft
        4
    Jakesoft  
       2017-01-25 10:41:02 +08:00   ❤️ 1
    just go ahead and fuck it

    zhengxiaowai
        5
    zhengxiaowai  
       2017-01-25 10:45:43 +08:00   ❤️ 4
    抛去 Python 、 Django 本身的问题需要以下技能:
    1. Linux 基本命令,包括 open-ssh 的使用、目录切换,文件权限,安装软件,有可能需要看的懂编译失败的错误
    2. virtualenv 在 Linux 下的使用
    3. Linux 下 Nginx 的部署和配置,包括 SSL 证书的配置
    4. uwsgi 或者 gunicorn 的配置,包括可能需要的 supervisor
    5. git 或者 svn ,当然直接扔源代码也不是不可以
    6. 能看懂错误信息

    以上足够,当然你可能先需要买一个 VPS
    rocksolid
        6
    rocksolid  
    OP
       2017-01-25 11:39:20 +08:00
    @zhengxiaowai
    很详细了,感谢
    changwei
        7
    changwei  
       2017-01-25 11:46:48 +08:00 via Android   ❤️ 2
    我建议楼主买一个 linux 服务器,不带桌面环境的,然后自己从头到尾配一个 lnmp 环境,没错是 lnmp ,按照网上教程一步一步配,搞清楚每一步都是做什么,配好之后安装一个 wordpress 博客,最终配好以后外网可以正常访问 wordpress ,差不多就能应付正常开发了。虽然这些与你说的 django , python 无关,但是这个过程设计到了几乎各种 linux 常用操作。

    我当初对 linux 是一窍不通,自从腾讯云学生机开始优惠了,我买了就开始一步一步学。

    lol.changwei.me ,纯手工配的环境,速度还算尚可。
    q397064399
        8
    q397064399  
       2017-01-25 11:51:03 +08:00
    需要学会使用 google 需要学会英文 遇到问题直接 man xxx
    chuxiwen
        9
    chuxiwen  
       2017-01-25 11:54:01 +08:00 via iPad
    Linux Shell 从入门到删除根目录跑路指南
    shakespaces
        10
    shakespaces  
       2017-01-25 12:06:31 +08:00
    边用边学,用到什么学什么
    feather12315
        11
    feather12315  
       2017-01-25 13:21:30 +08:00 via Android
    若学过操作系统、计算机网络、微机原理,有很大帮助
    linxl
        12
    linxl  
       2017-01-25 13:47:15 +08:00
    会装 linux 系统.
    其他的你自然会!!!
    LokiSharp
        13
    LokiSharp  
       2017-01-25 14:09:54 +08:00
    初学 Linux 先装个虚拟机 先什么都别干, 试试 sudo rm -rf /* 一次
    wolffn
        14
    wolffn  
       2017-01-25 14:31:29 +08:00   ❤️ 1
    不需要什么东西,简单了解下 shell 最基本的命令,还有权限管理这些,然后按照教程漫漫撸就可以了,大多数开发工具都是对 linux 更友好的(除了 ide )
    LokiSharp
        15
    LokiSharp  
       2017-01-25 15:55:37 +08:00   ❤️ 1
    看完会发生什么情况之后再装个虚拟机,然后看这本书,看完了你就够了 http://www.ituring.com.cn/book/1698
    AyoCross
        16
    AyoCross  
       2017-01-25 16:52:11 +08:00   ❤️ 1
    你缺一本: Linux 系统命令及 Shell 脚本实践指南。我当时也是基本什么不会,使用 django+Nginx+uWSGI 搭建的网站。在此过程中,肯定有不少需要 Linux 知识,虽然也可以上网搜,但是效率低,买一本书,不会的地方查一查,非常顺手。。附带,有时间看下我的站: ayocross.com 有问题的地方请跟我说~
    Neveroldmilk
        17
    Neveroldmilk  
       2017-01-25 18:27:42 +08:00   ❤️ 1
    初学 Linux 的最好弄一套带远程控制端的 IDE ,比如 Visual Studio+Visual GDB 之类的。直接 Terminal 开发的话,头几个月非常痛苦。(可以用 Bitvise ,很棒)
    zhuangtongfa
        18
    zhuangtongfa  
       2017-01-25 18:30:01 +08:00
    会 google 就行
    jyf007
        19
    jyf007  
       2017-01-25 20:13:46 +08:00 via Android
    @q397064399 vim 下 ctrl - K 查 man
    wangjie
        20
    wangjie  
       2017-01-25 20:16:45 +08:00
    日常用 linux 。。。没觉得有啥要学的。。。
    xratzh
        21
    xratzh  
       2017-01-25 20:17:24 +08:00
    一本《 shell 从入门到入门》
    shayuvpn0001
        22
    shayuvpn0001  
       2017-01-25 22:32:49 +08:00   ❤️ 1
    先把完整版的 ISO 镜像下下来,然后虚拟机里面随便撸。 VPS 还是算了吧,玩的差不多了再去 VPS , VPS 对 Linux 进行了各种裁剪,新手不熟悉有时候会很痛苦,我还是建议先撸一边 Ubuntu ,进图形界面,先培养感情,不然一上来各种命令行,出错了也不知道咋回事,热情就逐渐给浇灭了。当然最重要的是 Google 和 Stackoverflow 。

    务必下完整版的 ISO ,不然国内的网络环境,你装一遍估计时间都用在下载各种补丁上面了,最受不了 Linux 的是所有东西默认都是下载,然后就是动不动就让你 Make 安装,我特么一个小工具软件就用一两次,你让我 make ,也是服了。
    shayuvpn0001
        23
    shayuvpn0001  
       2017-01-25 22:33:15 +08:00   ❤️ 1
    @jyf007 对新手来说,首先要弄明白的是 vim 怎么退出 233333
    murmur
        24
    murmur  
       2017-01-25 22:36:47 +08:00   ❤️ 1
    (1)学会 google ,学会提问的技巧,比如你第一次用 apt 不知道怎么改国内源,你要知道怎么把这个信息检索出来
    (2)放的下身段,第一次把图形桌面和 IDE 什么都装上

    你会发现除了不能打游戏,跟 windows 没啥区别。。
    IgniteWhite
        25
    IgniteWhite  
       2017-01-26 00:06:43 +08:00
    @shayuvpn0001 vim 怎么退出……我第一次发现我可以礼貌地使用这个网络用语: mdZZ
    liujin834
        26
    liujin834  
       2017-01-26 00:52:03 +08:00   ❤️ 1
    买一本 shell 的书,可以接触到很多 linux 的命令,学习 shell 主要是有助于你理解 linux 里各种命令,发现共同之处,知道遇到哪些问题应该搜什么东西,系统学习 shell 对学 linux 帮助很大,但是学完还是需要好好学一下 linux 系统的知识才能算入门
    congeec
        27
    congeec  
       2017-01-26 00:59:12 +08:00
    @changwei 说不定楼主搜到了 lnmp 一键安装包,吭哧吭哧安装好了以后,想定制一下。发现有点难麻烦,说:这就是 Linux ?啥破玩意儿?老子不玩儿了
    [手动滑稽]
    PythonAnswer
        28
    PythonAnswer  
       2017-01-26 04:46:04 +08:00   ❤️ 2
    1.主力用 sublime/atom/vscode 的兄弟,千万不要为了 linux 学 vim 。
    2.不喜欢 vim 千万不要学 vim ,浪费时间。
    3.nano 非常好用。
    cctrv
        29
    cctrv  
       2017-01-26 05:28:43 +08:00   ❤️ 1
    tail -f 十分好用;
    nano 很好用。
    Google 也很好用。
    peneazy
        30
    peneazy  
       2017-01-26 07:59:35 +08:00 via Android   ❤️ 1
    虚拟机+centos 桌面版,自己配环境,随便弄 弄坏了走快照,就是干
    jyf
        31
    jyf  
       2017-01-26 08:09:45 +08:00   ❤️ 1
    没有任何要求

    上面答主说的都是 增强型技能
    如果你只是用你自己习惯的 ide 做个开发 根本不需要对系统有任何的了解

    当然我还是推荐你了解下 切到 linux 下作为主开发系统 如果能像我一样 娱乐都在 linux 上那就更好了(在此要感谢各大 h5 视频站点 以及 minecraft)
    Neveroldmilk
        32
    Neveroldmilk  
       2017-01-26 08:54:56 +08:00
    我用了 8 年 Linux ,到现在才基本会在 Vim 里进行有快捷键的文本编辑。
    q397064399
        33
    q397064399  
       2017-01-26 08:58:08 +08:00   ❤️ 1
    r#31 @jyf #31
    配置好,还是虚拟机里面搞起,说实话,很多东西 都只有 windows 有, linux 根本没有替代的玩意
    我没办法,两台显示器 , linux 跑虚拟机 windows 跑在实体机器上面
    rocksolid
        34
    rocksolid  
    OP
       2017-01-26 08:58:14 +08:00
    @PythonAnswer 已经用上 vim 了。。。。感觉还算好用
    rocksolid
        35
    rocksolid  
    OP
       2017-01-26 09:03:27 +08:00
    汇报下目前状态:已安装 ubuntu16 ,数据源换了阿里云的,书选了 xx 私房菜, vim 已经完成 python 的环境,基本操作没问题

    接下来准备试一下楼上说的 virtualenv ,搭建下 lnmp 环境,开始试试 django
    rocksolid
        36
    rocksolid  
    OP
       2017-01-26 09:08:54 +08:00
    还有,终于搞定 google 了。。。。改改 host 文件就行了,一直以为要翻墙
    rocksolid
        37
    rocksolid  
    OP
       2017-01-26 09:09:55 +08:00
    @q397064399
    直接格了台笔记本,配置不行,低压 u
    rocksolid
        38
    rocksolid  
    OP
       2017-01-26 09:12:11 +08:00
    @shayuvpn0001 谢谢 差点就打算上 vps 了,昨天已经对比了好几个 vps ,还是过段时间熟了再弄
    q397064399
        39
    q397064399  
       2017-01-26 09:12:48 +08:00
    r#35 @rocksolid #35 virtualenv Macos 下才用得到吧, python linux 都是非常完美的配合的
    kenan2677
        40
    kenan2677  
       2017-01-26 09:22:17 +08:00 via iPhone
    @LokiSharp 杂碎!
    kenan2677
        41
    kenan2677  
       2017-01-26 09:23:49 +08:00 via iPhone
    @shayuvpn0001 brew yum ……………
    kenan2677
        42
    kenan2677  
       2017-01-26 09:24:50 +08:00 via iPhone
    @Neveroldmilk 老土
    LokiSharp
        43
    LokiSharp  
       2017-01-26 09:26:21 +08:00   ❤️ 1
    对了,再补一本这个, Linux Shell 学完之后看这本 http://www.ituring.com.cn/book/1719 是讲 Python 部署的
    q397064399
        44
    q397064399  
       2017-01-26 09:31:33 +08:00
    可以尝试买台阿里云的 linux vps 玩玩
    changwei
        45
    changwei  
       2017-01-26 09:37:29 +08:00 via Android   ❤️ 1
    @congeec 所以说千万别用腾讯云自带的那些 lnmp 集成环境,我上次用,结果发现 nginx 端口在默认的那个配置文件里面改不了,鬼知道这些集成环境配置文件都放哪了,路径和网上教程还有默认的情况下不一样会坑死你。
    Neveroldmilk
        46
    Neveroldmilk  
       2017-01-26 10:28:25 +08:00   ❤️ 1
    @rocksolid 开发 Python 最好还是用有 GUI 的 IDE 开发,比如 Pycharm 什么的。最不济也要搭建个 Anaconda 环境,用网页调用 Jupyter 进行交互开发。 Vim 生啃 Python ,我是拒绝的。
    rocksolid
        47
    rocksolid  
    OP
       2017-01-26 10:35:30 +08:00
    @Neveroldmilk 我其实已经在 win 上用 py 写了一个月 leetcode 了,写用 gvim ,实在不行才用 pycharm 调试看
    rocksolid
        48
    rocksolid  
    OP
       2017-01-26 10:36:10 +08:00
    @LokiSharp 书不错,我看看买个电子版
    owt5008137
        49
    owt5008137  
       2017-01-26 11:20:05 +08:00 via Android
    多折腾几次就知道了
    shayuvpn0001
        50
    shayuvpn0001  
       2017-01-26 14:33:12 +08:00
    @Neveroldmilk 以前都是 nano 么?讲真,熟悉了 vim 真是越用越喜欢。。。
    KentY
        51
    KentY  
       2017-01-26 20:03:20 +08:00
    要是饭碗的工作, 开发什么用自己最熟的环境就好了, win 熟就用 win.
    Linux 作为一个不熟悉它的人的开发环境, 只有劣势, 没有任何优势, 如果你没有经验,最后你花很多时间在开发你项目之外.

    要是业余爱好或者学习那另说, 从实践开始吧.
    KentY
        52
    KentY  
       2017-01-26 20:05:55 +08:00
    @IgniteWhite 为什么 mdZZ? 为什么弄个 marker 呢?
    再说 ZZ 也不对呀, ZZ 是保存 buffer 并退出, 不是 ZX or :q(!)么?
    KentY
        53
    KentY  
       2017-01-26 20:06:28 +08:00
    ZX->ZQ 手误
    IgniteWhite
        54
    IgniteWhite  
       2017-01-26 20:13:15 +08:00
    @KentY 对惹,直接退出就是那样,不过人们不都是保存并退出么…… ZZ 或者:wq 是标配吧
    hjlmjx
        55
    hjlmjx  
       2017-01-26 21:03:28 +08:00 via Android
    @changwei 你二维码的背景图真的是扎眼
    4ever911
        56
    4ever911  
       2017-01-28 08:49:45 +08:00
    用着用着你就会了。
    blackwolf
        57
    blackwolf  
       2017-01-30 15:45:03 +08:00
    从装 Linux 开始学,最深入。。。
    高考完暑假那一年,开始倒腾装各种 Linux ,从虚拟机到物理机,也就基本搞清楚分区表,MBR,PBR,GRUB 等各种概念了
    jaxonHu
        58
    jaxonHu  
       2017-02-21 22:33:12 +08:00
    嗯,先装个 ubuntu 桌面端,原始的太难看,换一套主题图标,然后一发不可收拾。。。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   5519 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 42ms · UTC 08:06 · PVG 16:06 · LAX 01:06 · JFK 04:06
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.