what is linux lun
linux lun refers to the logical unit number. Its full English name is "Logical Unit Number". It is actually defined in SCSI-3 and is not only used in the storage category. It can also refer to the use of the SCSI protocol. All peripheral equipment, such as tape drives, SCSI printers, etc.
#The operating environment of this tutorial: linux5.9.8 system, Dell G3 computer.
What is linux lun?
1. The concept of LUN
The full name of LUN is Logical Unit Number, which is the logical unit number. We know that the number of devices that can be attached to the SCSI bus is limited, usually 6 or 15. We can use Target ID (also called SCSI ID) to describe these devices. As soon as a device is added to the system, there is a Code name, when we distinguish the equipment, we only need to say the number and it will be ok.
In fact, the objects we need to describe far exceed this number, so we introduced the concept of LUN, which means that the function of LUN ID is to expand the Target ID. There can be multiple LUN Devices under each Target. We usually refer to LUN Device as LUN. In this way, we can say that the description of each device has changed from the original Target x to Target x LUN y. So obviously, we describe the device capabilities are enhanced.
Just like there is a physical hard disk in our computer, we need to partition it into logical disks: such as C drive, D drive, E drive...
So we can To sum up, LUN is just a method we introduced in order to use and describe more devices and objects. There is nothing special about it at all.
LUN ID is not equal to a certain device, it is just a number and does not represent any physical attribute. In our actual environment, the LUN we encounter may be disk space, a tape drive, or media changer and so on.
2. What is a LUN?
The mystery of LUN (relative to some novices) is that it is often not a visible entity, but some virtual objects. For example, an array cabinet is regarded as a Target Device by the host. For some special needs, we have to divide the disk space of the disk array cabinet into several small units for the host to use, so some logic is generated. In terms of drives, they are logical objects with a lower level than Target Device. We are used to calling these smaller disk resources LUN0, LUN1, LUN2... and so on. Due to the mechanism of the operating system, the minimum storage object level recognized by the operating system is LUN Device. This is a logical object, so it is often called Logical Device.
Some people say that in my Windows, I only recognize a disk, but I don’t see anything about LUN. Does it mean LUN=Physical Disk? The answer is no. As long as you pay attention, you can see a LUN value in the disk's properties. This is just because your Disk is not divided into multiple storage resource objects, but the entire disk is used as a LUN. LUN The ID defaults to zero, that's all.
We have encountered such a problem. For example, someone asked, we have a disk array connected to two hosts. We divided a LUN for the two hosts to recognize, and then we thought, first The operating system divides the disk into two partitions, allowing the two hosts to use two partitions respectively. Then, if a host goes down, use cluster software to switch the partition to another host. Is this feasible? The answer is also no. The disk unit operated by the cluster software is a LUN, not a partition, so this operation is not feasible. Of course, in some environments, generally those with relatively low requirements, different disk partitions can be mounted on multiple hosts. However, in this case, there is actually no disk switching involved, so in some high-demand environments In the environment, this situation is simply not allowed to exist.
It should also be noted that in the concepts of some manufacturers and some products, the LUN ID is bound to a specific Device. For example, some of IBM's tape libraries have only one Target ID for the entire tape library, and then The changer and tape drive are assigned to LUN0, LUN1, LUN2..., but we should note that this is only a special design of the product, and it is also a rare case.
3. What is the difference between LUN and storage volume?
It is common for people to talk about the difference between storage volumes and LUNs, and then argue endlessly. From the above we can know what a LUN is. LUN is the abbreviation of English Logical unit number, that is, logical unit number. It is actually defined in SCSI-3 and is not only used in the storage category. It can also refer to all peripheral devices that use the SCSI protocol, such as tape drives, SCSI Printer etc. From the SAM model of SCSI-3, we know that the protocol layer of SCSI-3 (or later versions) stipulates that for a 16-bit wide SCSI bus, there are only 16 addressing ranges, that is, only 16 peripheral devices can be mounted. , each device is called a target. In order to improve the addressing capability of the bus, another layer was introduced, which stipulates that multiple devices can be virtualized (or actually connected) on each target. For example, a tape drive may be connected to a target, and a tape drive may be connected to a target. Printers share a target address, but in order to distinguish them, LUN is used to distinguish them. The tape drive is assumed to be LUN0 and the printer is assumed to be LUN2. This solves the addressing problem of multiple devices.
This is an example of a real device connection, a storage array (e.g. HP leftHand P4000 SAN) is the best example of a virtual device. A storage disk array appears as a Target to the SCSI bus and occupies a SCSI Target address. However, the storage space of the storage array is too large. We need to divide it into different parts for different applications to achieve centralized storage and centralized management. the goal of. Therefore, we use LUN to distinguish each divided storage part (or area). For example, LUN1 represents address block 0-1023, LUN2 represents address block 1024-65535, and so on. As can be seen from the above, when the computer uses the SCSI standard (note that the word standard I use here represents the 4 layers in the SAM model, and does not use words such as interface, protocol or command) to connect to external storage, use It is a BUS-Target-LUN ternary addressing scheme. The bus refers to how many SCSI buses and how many SCSI cards there are on your computer? The target refers to the target address of the device on the bus, which is often called the SCSI address? LUN refers to the logical address and logical unit number assigned by the device on a Target. This addressing scheme and device connection method are similar to a network topology that is physically star-connected and logically bus-connected.
So what is a storage volume? This starts with the storage volume manager. The storage volume manager is an object in the operating system. It is mainly responsible for the online management of storage block devices. When one of our storage LUNs is connected to the computer and the computer discovers the existence of this device, it needs to register it on the volume manager. The volume manager provides a registered virtual interface for the storage volume and obtains the basic information of the storage LUN, such as space size. Ternary address, block size, start and end address, health status, etc., and then create an abstraction of the corresponding data structure for it, so that the computer can dynamically capture the real-time information of the registered storage LUN through the volume manager, and realize dynamic manage. After a storage LUN is registered and abstracted by the volume manager, it is considered by the volume manager to be a direct subordinate that can be exploited. It can be divided into smaller areas again, or of course not divided, and then divided or not divided. The subsequent storage space is used for data abstraction and relevant data structures are established for calls by the file system layer. Therefore, storage LUNs and volumes may be physically the same thing, but we just look at it and understand it from different angles and levels. Of course, for computers, these differences are indeed the needs of the data processing process, and it is necessary to clarify them.
Recommended learning: "linux video tutorial"
The above is the detailed content of what is linux lun. For more information, please follow other related articles on the PHP Chinese website!

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics



Linux is suitable for servers, development environments, and embedded systems. 1. As a server operating system, Linux is stable and efficient, and is often used to deploy high-concurrency applications. 2. As a development environment, Linux provides efficient command line tools and package management systems to improve development efficiency. 3. In embedded systems, Linux is lightweight and customizable, suitable for environments with limited resources.

The steps to start Apache are as follows: Install Apache (command: sudo apt-get install apache2 or download it from the official website) Start Apache (Linux: sudo systemctl start apache2; Windows: Right-click the "Apache2.4" service and select "Start") Check whether it has been started (Linux: sudo systemctl status apache2; Windows: Check the status of the "Apache2.4" service in the service manager) Enable boot automatically (optional, Linux: sudo systemctl

When the Apache 80 port is occupied, the solution is as follows: find out the process that occupies the port and close it. Check the firewall settings to make sure Apache is not blocked. If the above method does not work, please reconfigure Apache to use a different port. Restart the Apache service.

This article describes how to effectively monitor the SSL performance of Nginx servers on Debian systems. We will use NginxExporter to export Nginx status data to Prometheus and then visually display it through Grafana. Step 1: Configuring Nginx First, we need to enable the stub_status module in the Nginx configuration file to obtain the status information of Nginx. Add the following snippet in your Nginx configuration file (usually located in /etc/nginx/nginx.conf or its include file): location/nginx_status{stub_status

The steps to start an Oracle listener are as follows: Check the listener status (using the lsnrctl status command) For Windows, start the "TNS Listener" service in Oracle Services Manager For Linux and Unix, use the lsnrctl start command to start the listener run the lsnrctl status command to verify that the listener is started

This article introduces two methods of configuring a recycling bin in a Debian system: a graphical interface and a command line. Method 1: Use the Nautilus graphical interface to open the file manager: Find and start the Nautilus file manager (usually called "File") in the desktop or application menu. Find the Recycle Bin: Look for the Recycle Bin folder in the left navigation bar. If it is not found, try clicking "Other Location" or "Computer" to search. Configure Recycle Bin properties: Right-click "Recycle Bin" and select "Properties". In the Properties window, you can adjust the following settings: Maximum Size: Limit the disk space available in the Recycle Bin. Retention time: Set the preservation before the file is automatically deleted in the recycling bin

To restart the Apache server, follow these steps: Linux/macOS: Run sudo systemctl restart apache2. Windows: Run net stop Apache2.4 and then net start Apache2.4. Run netstat -a | findstr 80 to check the server status.

In Debian systems, readdir system calls are used to read directory contents. If its performance is not good, try the following optimization strategy: Simplify the number of directory files: Split large directories into multiple small directories as much as possible, reducing the number of items processed per readdir call. Enable directory content caching: build a cache mechanism, update the cache regularly or when directory content changes, and reduce frequent calls to readdir. Memory caches (such as Memcached or Redis) or local caches (such as files or databases) can be considered. Adopt efficient data structure: If you implement directory traversal by yourself, select more efficient data structures (such as hash tables instead of linear search) to store and access directory information
