search
HomeOperation and MaintenanceNginxHow to build NFS server with nginx

How to build NFS server with nginx

May 23, 2023 pm 12:55 PM
nginxnfs

    Introduction

    What is nfs server?

    NFS (Network File System) is a network file system. Its biggest function is that it can Through the network, different machines and different operating systems can share each other's files, and users can access files elsewhere on the network just like using their own computers.

    Why nfs server is needed

    Get data from the same place to ensure the consistency of website data. No matter which back-end server the load balancer distributes the request to, the content seen by the client are consistent.

    Is nfs server the best solution

    No, nfs is a relatively cheap solution 1. Generally, companies will not use it. The performance is not particularly high. It is recommended to use a dedicated storage server. .

    Advantages and disadvantages of nfs

    Advantages: Any Linux server can be built, the cost is very low, and it is very easy to build
    Disadvantages: Reading speed is limited, related to network quality, disk IO, CPU, memory and other factors, and traditional tcp/ip network transmission.

    Storage server

    Advantages: good read and write performance, disaster recovery
    Disadvantages: high cost

    RPC

    NFS supports quite a lot of functions, and different functions will use different programs to start. Each time a function is started, some ports will be enabled to transmit data. Therefore, the ports corresponding to the NFS functions are not fixed. At this time, you need to RPC binding

    The main function of RPC is to specify the port corresponding to each NFS function.

    Build NFS server

    Prepare a centos7.9 server (192.168 .2.58)
    A client (192.168.2.218)

    Install nfs

    Server machine

    yum install nfs-utils -y
    service nfs-server start #启动nfs服务
    ps aux |grep nfs #查看nfs进程
    ss -anplut|grep rpc
    vim /etc/exports
    /web 192.168.2.0/24(rw,all_squash,sync)

    rw: read and write
    sync: Synchronously refresh to disk when writing to memory
    all_squash: UID and GID of shared files map anonymous users (ordinary users).
    aysnc: No real-time synchronization, high response rate, but dangerous.

    mkdir /web
    vim /web/index.html
    #添加一些内容,退出并保存
    >wyt #我就添加了wyt,退出并保存
    exportfs -rv #刷新输出(类似刷新服务)

    Pay attention to turning off the firewall and selinux

    Client

    yum install nfs-utils -y
    showmount -e 192.168.2.58 #查询nfs服务器共享的文件夹
    mkdir /web #客户机新建文件夹
    mount 192.168.2.58:/web /web 将nfs服务器上的/web目录挂载到本地的/web目录
    ls /web #可以查看到nfs服务器的index.html,挂载后没有写的权限所以需要客户机给文件的权限
    df -Th

    How to build NFS server with nginx

    Permissions are restricted by two permissions

    • File system permissions

    • Sharing permissions

    ##The sharing permissions have been turned on, so the server needs to authorize the file Permission

    chmod a+w /web  #/web所有人写的权限

    As long as the server's index.html is mounted to the html under nginx, writing operations under the web can be achieved.

    mount 192.168.2.58:/web /usr/local/scwangyutao99/html/

    How to build NFS server with nginx

    Mount

    Mount (mount): In fact, it is equivalent to plugging in an external U disk or mobile hard disk. umount is equivalent to ejecting a USB flash drive.

    umount /usr/local/scwangyutao99/html/
    #umount.nfs4: /web: device is busy 是因为当前在目录之下

    Display the previous web page after umount

    How to build NFS server with nginx

    Set automatic mounting at boot

    /etc/rc.local

    sed -i '$a mount 192.168.2.58:/web  /usr/local/scwangyutao99/html/' /etc/rc.local 
    chmod  +x /etc/rc.d/rc.local #赋予可执行权限

    Modify the /etc/fstab file

    /etc/fstab is the Linux system that automatically mounts the disk partition based on the contents of this file after booting

    The first column is Device

    Second column Mount point, the mount point of the device.
    The third column filesystem, the format of the disk file system, including ext2, ext3, reiserfs, nfs, vfat, etc.
    The fourth column: file system parameters, defaults
    The fifth column: whether it can be dumped Backup command function. 0 means not to do dump backup
    1 means to perform dump operation every day, 2 means to perform dump operation on an irregular date
    The sixth column: whether to check the sector, 0 does not check, 1 checks at the earliest (generally the root directory will Select)
    2, conduct inspection after completion of level 1 inspection

    sed -i '$a 192.168.2.58:/web /usr/local/scwangyutao99/html/ nfs defaults 0 0' /etc/fstab

    The above is the detailed content of How to build NFS server with nginx. For more information, please follow other related articles on the PHP Chinese website!

    Statement
    This article is reproduced at:亿速云. If there is any infringement, please contact admin@php.cn delete
    The Advantages of NGINX: Speed, Efficiency, and ControlThe Advantages of NGINX: Speed, Efficiency, and ControlMay 12, 2025 am 12:13 AM

    The reason why NGINX is popular is its advantages in speed, efficiency and control. 1) Speed: Adopt asynchronous and non-blocking processing, supports high concurrent connections, and has strong static file service capabilities. 2) Efficiency: Low memory usage and powerful load balancing function. 3) Control: Through flexible configuration file management behavior, modular design facilitates expansion.

    NGINX vs. Apache: Community, Support, and ResourcesNGINX vs. Apache: Community, Support, and ResourcesMay 11, 2025 am 12:19 AM

    The differences between NGINX and Apache in terms of community, support and resources are as follows: 1. Although the NGINX community is small, it is active and professional, and official support provides advanced features and professional services through NGINXPlus. 2.Apache has a huge and active community, and official support is mainly provided through rich documentation and community resources.

    NGINX Unit: An Introduction to the Application ServerNGINX Unit: An Introduction to the Application ServerMay 10, 2025 am 12:17 AM

    NGINXUnit is an open source application server that supports a variety of programming languages ​​and frameworks, such as Python, PHP, Java, Go, etc. 1. It supports dynamic configuration and can adjust application configuration without restarting the server. 2.NGINXUnit supports multi-language applications, simplifying the management of multi-language environments. 3. With configuration files, you can easily deploy and manage applications, such as running Python and PHP applications. 4. It also supports advanced configurations such as routing and load balancing to help manage and scale applications.

    Using NGINX: Optimizing Website Performance and ReliabilityUsing NGINX: Optimizing Website Performance and ReliabilityMay 09, 2025 am 12:19 AM

    NGINX can improve website performance and reliability by: 1. Process static content as a web server; 2. forward requests as a reverse proxy server; 3. allocate requests as a load balancer; 4. Reduce backend pressure as a cache server. NGINX can significantly improve website performance through configuration optimizations such as enabling Gzip compression and adjusting connection pooling.

    NGINX's Purpose: Serving Web Content and MoreNGINX's Purpose: Serving Web Content and MoreMay 08, 2025 am 12:07 AM

    NGINXserveswebcontentandactsasareverseproxy,loadbalancer,andmore.1)ItefficientlyservesstaticcontentlikeHTMLandimages.2)Itfunctionsasareverseproxyandloadbalancer,distributingtrafficacrossservers.3)NGINXenhancesperformancethroughcaching.4)Itofferssecur

    NGINX Unit: Streamlining Application DeploymentNGINX Unit: Streamlining Application DeploymentMay 07, 2025 am 12:08 AM

    NGINXUnit simplifies application deployment with dynamic configuration and multilingual support. 1) Dynamic configuration can be modified without restarting the server. 2) Supports multiple programming languages, such as Python, PHP, and Java. 3) Adopt asynchronous non-blocking I/O model to improve high concurrency processing performance.

    NGINX's Impact: Web Servers and BeyondNGINX's Impact: Web Servers and BeyondMay 06, 2025 am 12:05 AM

    NGINX initially solved the C10K problem and has now developed into an all-rounder who handles load balancing, reverse proxying and API gateways. 1) It is well-known for event-driven and non-blocking architectures and is suitable for high concurrency. 2) NGINX can be used as an HTTP and reverse proxy server, supporting IMAP/POP3. 3) Its working principle is based on event-driven and asynchronous I/O models, improving performance. 4) Basic usage includes configuring virtual hosts and load balancing, and advanced usage involves complex load balancing and caching strategies. 5) Common errors include configuration syntax errors and permission issues, and debugging skills include using nginx-t command and stub_status module. 6) Performance optimization suggestions include adjusting worker parameters, using gzip compression and

    Nginx Troubleshooting: Diagnosing and Resolving Common ErrorsNginx Troubleshooting: Diagnosing and Resolving Common ErrorsMay 05, 2025 am 12:09 AM

    Diagnosis and solutions for common errors of Nginx include: 1. View log files, 2. Adjust configuration files, 3. Optimize performance. By analyzing logs, adjusting timeout settings and optimizing cache and load balancing, errors such as 404, 502, 504 can be effectively resolved to improve website stability and performance.

    See all articles

    Hot AI Tools

    Undresser.AI Undress

    Undresser.AI Undress

    AI-powered app for creating realistic nude photos

    AI Clothes Remover

    AI Clothes Remover

    Online AI tool for removing clothes from photos.

    Undress AI Tool

    Undress AI Tool

    Undress images for free

    Clothoff.io

    Clothoff.io

    AI clothes remover

    Video Face Swap

    Video Face Swap

    Swap faces in any video effortlessly with our completely free AI face swap tool!

    Hot Article

    Hot Tools

    SublimeText3 Mac version

    SublimeText3 Mac version

    God-level code editing software (SublimeText3)

    Dreamweaver CS6

    Dreamweaver CS6

    Visual web development tools

    WebStorm Mac version

    WebStorm Mac version

    Useful JavaScript development tools

    PhpStorm Mac version

    PhpStorm Mac version

    The latest (2018.2.1) professional PHP integrated development tool

    mPDF

    mPDF

    mPDF is a PHP library that can generate PDF files from UTF-8 encoded HTML. The original author, Ian Back, wrote mPDF to output PDF files "on the fly" from his website and handle different languages. It is slower than original scripts like HTML2FPDF and produces larger files when using Unicode fonts, but supports CSS styles etc. and has a lot of enhancements. Supports almost all languages, including RTL (Arabic and Hebrew) and CJK (Chinese, Japanese and Korean). Supports nested block-level elements (such as P, DIV),