V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
fancy2020
V2EX  ›  DevOps

在服务器上你们自己服务的代码一般放在什么目录下?

  •  2
     
  •   fancy2020 · 2020-02-12 22:32:04 +08:00 · 13655 次点击
    这是一个创建于 1506 天前的主题,其中的信息可能已经有所发展或是发生改变。

    我一般是放 /opt,也见过放在 /var 和 home 下的

    96 条回复    2022-08-14 14:20:55 +08:00
    ochatokori
        1
    ochatokori  
       2020-02-12 22:34:00 +08:00 via Android
    根目录建文件夹(root 敢死队😁
    lozzow
        2
    lozzow  
       2020-02-12 22:34:39 +08:00 via iPhone
    我理解的 opt 有点类似于 win 上面的绿色软件的概念,所以,我也放 opt
    kang77649119
        3
    kang77649119  
       2020-02-12 22:35:06 +08:00
    opt
    jinliming2
        4
    jinliming2  
       2020-02-12 22:35:20 +08:00 via iPhone
    生产代码我习惯 /srv,编译安装的软件源码放 /usr/local/src
    fancy2020
        5
    fancy2020  
    OP
       2020-02-12 22:35:44 +08:00
    另外还有就是你们的应用产生的 log 等数据是怎么放?在应用目录下还是放在另一个系统目录下比如 /var/opt 之类的?
    lululau
        6
    lululau  
       2020-02-12 22:36:13 +08:00
    ~/apps
    oneisall8955
        7
    oneisall8955  
       2020-02-12 22:36:40 +08:00 via Android
    基本上啥都放在 /opt,必要时候软连接
    SbloodyS
        8
    SbloodyS  
       2020-02-12 22:36:41 +08:00
    /home/apps
    tabris17
        9
    tabris17  
       2020-02-12 22:36:48 +08:00
    /usr/local
    fancy2020
        10
    fancy2020  
    OP
       2020-02-12 22:37:31 +08:00
    @SbloodyS 这样的是要建个叫 apps 的 user 吗?
    chenqh
        11
    chenqh  
       2020-02-12 22:39:15 +08:00
    为什么都喜欢 opt?
    tulong
        12
    tulong  
       2020-02-12 22:51:16 +08:00
    没人放 /var ?
    suant0u
        13
    suant0u  
       2020-02-12 22:57:17 +08:00   ❤️ 1
    团队里都是 root 下的 根目录 /data ...
    理论上编译好的应该是在 /usr/local/bin 或软连接 /var/opt/xxx/bin
    代码是在 /var/opt/xxx
    配置是在 /etc/xxx/xxx.config
    Log 放 /var/opt/xxx/log
    如果特定挂载盘放 /mnt/volume 挂载???
    基本上是扒 Gitlab 的路径.
    monsterxx03
        14
    monsterxx03  
       2020-02-12 22:58:30 +08:00 via iPhone   ❤️ 3
    /tmp (狗头
    dearroy
        15
    dearroy  
       2020-02-12 23:01:58 +08:00
    习惯性地放在 /home/wwwroot
    fancy2020
        16
    fancy2020  
    OP
       2020-02-12 23:09:34 +08:00
    @monsterxx03 /tmp 不是重启会删除吗
    mayx
        17
    mayx  
       2020-02-12 23:13:59 +08:00 via Android   ❤️ 1
    /usr/share
    VANHOR
        18
    VANHOR  
       2020-02-12 23:14:50 +08:00
    /home/appName/
    xingheng
        19
    xingheng  
       2020-02-12 23:16:58 +08:00
    ~/.trash/ # :)
    fancy2020
        20
    fancy2020  
    OP
       2020-02-12 23:17:40 +08:00
    @xingheng 你牛
    redeemer1001
        21
    redeemer1001  
       2020-02-12 23:29:20 +08:00
    d:/webapp 😂
    MrUser
        22
    MrUser  
       2020-02-12 23:37:24 +08:00
    C:\Program Files\项目\No.1_云管理系统\
    fancy2020
        23
    fancy2020  
    OP
       2020-02-12 23:44:45 +08:00
    @redeemer1001 @MrUser Windows 大佬
    tulongtou
        24
    tulongtou  
       2020-02-12 23:46:44 +08:00
    /opt , 看来放 /opt 的不少啊
    miao666
        25
    miao666  
       2020-02-12 23:47:03 +08:00 via Android
    /home/username
    SJ2050cn
        26
    SJ2050cn  
       2020-02-12 23:53:15 +08:00 via Android
    自建了一个目录 /www
    akira
        27
    akira  
       2020-02-12 23:55:04 +08:00
    /data
    LokiSharp
        28
    LokiSharp  
       2020-02-13 00:14:53 +08:00 via Android
    /opt
    zen9073
        29
    zen9073  
       2020-02-13 00:17:56 +08:00
    /opt
    herozzm
        30
    herozzm  
       2020-02-13 00:19:31 +08:00 via Android
    @akira #27 我们一样
    msg7086
        31
    msg7086  
       2020-02-13 01:04:29 +08:00 via Android
    网站都放 /var/www。
    软件的话都是直接装进系统里,让包管理来管理文件。
    baiduyixia
        32
    baiduyixia  
       2020-02-13 01:17:34 +08:00
    /etc
    hanhuoer
        33
    hanhuoer  
       2020-02-13 01:22:03 +08:00
    /root/apps
    tottea
        34
    tottea  
       2020-02-13 01:39:33 +08:00
    /app 或者 /root/app
    nvkou
        35
    nvkou  
       2020-02-13 01:43:50 +08:00 via Android
    /data
    万一哪天这个目录要挂载出去也不用改配置文件
    saluton
        36
    saluton  
       2020-02-13 02:02:15 +08:00
    我曾经放过 /dev/shm,捂脸跑(当然是有脚本重启后自动复制过去
    现在放 /home 或者 /root
    airyland
        37
    airyland  
       2020-02-13 02:14:15 +08:00 via iPhone
    /data/websites
    ericls
        38
    ericls  
       2020-02-13 02:50:21 +08:00 via iPhone
    Docker 下
    yuzo555
        39
    yuzo555  
       2020-02-13 03:28:46 +08:00
    C:\inetpub\wwwroot
    SharkIng
        40
    SharkIng  
       2020-02-13 05:21:35 +08:00
    `/opt/`
    然后很多其他地方都会是 Symlink 到 /opt, 例如 配置在 /etc 下但其实是 symlink 到 /opt 的
    bitdepth
        41
    bitdepth  
       2020-02-13 05:25:52 +08:00 via iPad
    要根據 SELinux 規則放置道對應 service 下資料夾
    jinyu121
        42
    jinyu121  
       2020-02-13 07:35:37 +08:00 via iPhone
    开发代码:~/Workspace
    别人的软件:~/ProgramFiles
    只是自己用的东西:~/.local
    自己编出来的二进制:/opt
    ipeony
        43
    ipeony  
       2020-02-13 08:37:51 +08:00
    /opt +1
    Livid
        44
    Livid  
    MOD
       2020-02-13 08:43:01 +08:00
    如果部署过程都容器化了,那么考虑的就是容器放哪了。
    chenshun00
        45
    chenshun00  
       2020-02-13 08:58:25 +08:00
    新目录 /data/
    yulihao
        46
    yulihao  
       2020-02-13 08:59:04 +08:00
    同 /root
    destec
        47
    destec  
       2020-02-13 09:06:13 +08:00
    /srv + 1
    gowinder
        48
    gowinder  
       2020-02-13 09:14:51 +08:00 via iPhone
    /root
    af8991
        49
    af8991  
       2020-02-13 09:15:44 +08:00
    根目录 /data/
    mmixxia
        50
    mmixxia  
       2020-02-13 09:18:48 +08:00
    /home
    /opt
    mouyase
        51
    mouyase  
       2020-02-13 09:19:35 +08:00 via Android
    opt
    morphyhu
        52
    morphyhu  
       2020-02-13 09:19:58 +08:00
    /data/subdir
    zivyou
        53
    zivyou  
       2020-02-13 09:23:44 +08:00
    这个不是取决于做什么开发吗?
    我们的网站是放在了 /opt/公司名 /部门名 下面
    Felldeadbird
        54
    Felldeadbird  
       2020-02-13 09:34:32 +08:00
    web 我一般是放 /var/www
    软件类放 /opt。因为以前装 chrome 时,他默认安装在 /opt,所以我就想,大厂这么安装,该目录应该是专门用来放软件的。
    CantSee
        55
    CantSee  
       2020-02-13 09:44:26 +08:00
    /home
    nevergreen
        56
    nevergreen  
       2020-02-13 10:18:50 +08:00
    /data
    las917vki
        57
    las917vki  
       2020-02-13 10:27:40 +08:00
    自己都是随便放的,一般在 root 下自己搞一个目录。
    以前干过的公司里面有这样的路径:
    /home/cdisk/Program Files/
    abcbuzhiming
        58
    abcbuzhiming  
       2020-02-13 10:34:49 +08:00
    /opt 目录现在是 Linux 官方推荐的用于放置对外提供服务的程序和文件的地方
    ZXCDFGTYU
        59
    ZXCDFGTYU  
       2020-02-13 10:37:20 +08:00
    /apps/www/项目名称 源代码
    /apps/php7x/ PHP 目录,x 为小版本号
    /apps/nginx/ nginx 目录
    /apps/mysql/ mysql 目录 data/目录放 mysql 数据,如果有 ssd 硬盘则 data/目录挂载 ssd 硬盘
    /apps/redis/ redis 目录
    xiaoyouqiang
        60
    xiaoyouqiang  
       2020-02-13 10:56:17 +08:00
    /home/www
    feelinglucky
        61
    feelinglucky  
       2020-02-13 10:57:02 +08:00
    +1 容器化以后其实并不是很在意程序放哪里了,就关心数据这块的管理

    一般数据我习惯扔 /opt/data 然后定期转走
    avenger
        62
    avenger  
       2020-02-13 11:03:18 +08:00 via iPhone
    /home/www
    locoz
        63
    locoz  
       2020-02-13 11:19:55 +08:00 via Android
    /home
    hanai
        64
    hanai  
       2020-02-13 11:37:51 +08:00
    建个用户,~/code, ~/src, ~/app
    Fris
        65
    Fris  
       2020-02-13 11:39:58 +08:00 via iPhone
    /srv
    FanError
        66
    FanError  
       2020-02-13 11:53:21 +08:00
    /srv + 1
    qianxun740
        67
    qianxun740  
       2020-02-13 13:40:08 +08:00
    /opt/soft
    /opt/pakg
    dyy1997
        68
    dyy1997  
       2020-02-13 13:44:55 +08:00
    ~/.local/opt
    szq8014
        69
    szq8014  
       2020-02-13 14:17:46 +08:00
    /var/www
    /data
    Qzier
        70
    Qzier  
       2020-02-13 15:00:35 +08:00 via iPhone
    根据 Linux 的文件层级设计要求,应该放到 /srv,这是 services 的缩写
    jin7
        71
    jin7  
       2020-02-13 15:35:24 +08:00
    /home/username
    dandankele
        72
    dandankele  
       2020-02-13 15:36:03 +08:00
    /home/www
    Fizzyi
        73
    Fizzyi  
       2020-02-13 16:19:45 +08:00
    /home/ 建了一个文件夹
    h503mc
        74
    h503mc  
       2020-02-13 16:52:55 +08:00
    /root/code/app
    OldManPushCar
        75
    OldManPushCar  
       2020-02-13 16:55:23 +08:00
    /usr/local
    ganymedenil590
        76
    ganymedenil590  
       2020-02-13 17:36:07 +08:00 via Android
    /data/www
    WhatIf
        77
    WhatIf  
       2020-02-13 17:48:45 +08:00
    单磁盘 就扔在 /opt 下面 有额外挂载的盘则挂载到 /data 目录, 然后应用包括中间件包括代码都扔在这个下面,日志跟中间件放一起, 所以这种情况下也是 /data 里面
    122006
        78
    122006  
       2020-02-13 17:51:45 +08:00
    /app +1
    ranjiayu
        79
    ranjiayu  
       2020-02-13 18:00:36 +08:00
    /home
    KasuganoSoras
        80
    KasuganoSoras  
       2020-02-13 18:05:35 +08:00
    网站:/data/wwwroot/
    日志:/data/wwwlogs/
    数据:/data/mariadb/
    OneinStack 默认安装目录
    lc7029
        81
    lc7029  
       2020-02-13 18:11:42 +08:00
    自己是 /data,然后里面建各种目录
    公司 /apps,/logs 等按规定来
    xyqhkr
        82
    xyqhkr  
       2020-02-13 18:23:35 +08:00
    项目目录 /www
    数据目录 /data
    日志目录 /data/log
    my3157
        83
    my3157  
       2020-02-13 18:54:30 +08:00
    /company-name/
    ├── bin
    ├── crash
    ├── data
    ├── etc
    ├── lib
    ├── log
    ├── run
    └── tmp
    zyq2280539
        84
    zyq2280539  
       2020-02-13 19:24:38 +08:00
    opt 或者 home 下
    linvaux
        85
    linvaux  
       2020-02-13 19:29:56 +08:00
    /opt 啊,
    TJT
        86
    TJT  
       2020-02-13 19:43:28 +08:00
    都容器化了,放 /app 下
    lookas2001
        87
    lookas2001  
       2020-02-13 19:55:51 +08:00
    /opt
    这个目录就是用来干这个用的
    x66
        88
    x66  
       2020-02-13 20:03:34 +08:00
    /webapp 单独挂载了一块云硬盘
    Revenant
        89
    Revenant  
       2020-02-13 20:34:44 +08:00
    鸟哥的 Linux 私房菜是这么解释的:

    /opt: 這個是給第三方協力軟體放置的目錄。什麼是第三方協力軟體啊? 舉例來說,KDE 這個桌面管理系統是一個獨立的計畫,不過他可以安裝到 Linux 系統中,因此 KDE 的軟體就建議放置到此目錄下了。 另外,如果妳想要自行安裝額外的軟體(非原本的 distribution 提供的),那麼也能夠將你的軟體安裝到這裡來。 不過,以前的 Linux 系統中,我們還是習慣放置在 /usr/local 目錄下呢!

    /usr/local/: 系統管理員在本機自行安裝自己下載的軟體(非 distribution 預設提供者),建議安裝到此目錄, 這樣會比較便於管理。舉例來說,你的 distribution 提供的軟體較舊,你想安裝較新的軟體但又不想移除舊版, 此時你可以將新版軟體安裝於 /usr/local/目錄下,可與原先的舊版軟體有分別啦! 你可以自行到 /usr/local 去看看,該目錄下也是具有 bin, etc, include, lib...的次目錄喔!

    /srv: srv 可以視為『 service 』的縮寫,是一些網路服務啟動之後,這些服務所需要取用的資料目錄。 常見的服務例如 WWW, FTP 等等。舉例來說,WWW 伺服器需要的網頁資料就可以放置在 /srv/www/裡面。 不過,系統的服務資料如果尚未要提供給網際網路任何人瀏覽的話,預設還是建議放置到 /var/lib 底下即可。
    mezhangkai
        90
    mezhangkai  
       2020-02-13 21:31:27 +08:00
    /opt
    aloyuu
        91
    aloyuu  
       2020-02-13 21:37:49 +08:00
    usr
    azanone
        92
    azanone  
       2020-02-13 21:38:22 +08:00
    var/www/wwwroot 的有吗?
    怀疑是社会学测验
    caijihui11
        93
    caijihui11  
       2020-02-13 22:00:42 +08:00
    起个名称,wwwroot / apps / data 都可以
    evam
        94
    evam  
       2020-02-13 22:24:37 +08:00
    /data/code
    realpg
        95
    realpg  
       2020-02-14 15:10:57 +08:00
    /usr/local
    /usr/sbin
    /usr/lib

    java 类可能会 /opt/
    redsun368573607
        96
    redsun368573607  
       2022-08-14 14:20:55 +08:00
    /opt
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   2449 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 44ms · UTC 00:02 · PVG 08:02 · LAX 17:02 · JFK 20:02
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.