How to create a 2GB large file in Linux in seconds?
Normally, we will use the touch command to create an empty file. However, in some specific scenarios, such as when troubleshooting or testing, we may need to create large files of a specific size, such as 500 MB or 2 GB. At this point, it is obviously not advisable to create an empty file and then write a large amount of text data.
So, is there a better way to create new files of a specific size? Below, we will introduce several ways to create large files for your reference.
Use dd command to create large files
dd command is used to copy and convert files. Its most common use is to create a live Linux USB.
The dd command actually writes to the hard disk. The speed at which the file is generated depends on the read and write speed of the hard disk. Depending on the size of the file, the command will take some time to complete.
Assuming we want to create a 2 GB text file named rumenz.img, we can do the following:
dd if=/dev/zero of=rumenz.img bs=2G count=1
We can change the block size and number of blocks as needed. For example, you can use bs=1M and count=1024 to get a 1024 Mb file.
Use the truncate command to create large files
The truncate command shrinks or expands a file to the desired size. Use the -s option to specify the file size.
Next, we use the truncare command to create a 2GB file.
truncate -s 2G rumenz.img
You can use the ls -lh rumenz.img
command to view the generated file.
By default, if the requested output file does not exist, the truncate command will create a new file. We can use -c option to avoid creating new files.
Use fallocate command to create large files
The fallocate command is my recommended method for creating large files, because it creates large files the fastest.
Assuming we want to create a 1 GB file, we can do the following:
fallocate -l 1G rumenz.img
You can use ls -lh rumenz.img
to view the generated file.
in conclusion
The files created by dd and truncate are sparse files. In the computer world, sparse files are special files that have different apparent file sizes (the maximum size they can expand to) and real file sizes (how much space is allocated for data on disk).
The fallocate command will not create sparse files, and it is faster. This is why I recommend using fallocate to create large files.
The above is the detailed content of How to create a 2GB large file in Linux in seconds?. 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



To open a web.xml file, you can use the following methods: Use a text editor (such as Notepad or TextEdit) to edit commands using an integrated development environment (such as Eclipse or NetBeans) (Windows: notepad web.xml; Mac/Linux: open -a TextEdit web.xml)

Multithreading in the language can greatly improve program efficiency. There are four main ways to implement multithreading in C language: Create independent processes: Create multiple independently running processes, each process has its own memory space. Pseudo-multithreading: Create multiple execution streams in a process that share the same memory space and execute alternately. Multi-threaded library: Use multi-threaded libraries such as pthreads to create and manage threads, providing rich thread operation functions. Coroutine: A lightweight multi-threaded implementation that divides tasks into small subtasks and executes them in turn.

Linux is best used as server management, embedded systems and desktop environments. 1) In server management, Linux is used to host websites, databases, and applications, providing stability and reliability. 2) In embedded systems, Linux is widely used in smart home and automotive electronic systems because of its flexibility and stability. 3) In the desktop environment, Linux provides rich applications and efficient performance.

DebianLinux is known for its stability and security and is widely used in server, development and desktop environments. While there is currently a lack of official instructions on direct compatibility with Debian and Hadoop, this article will guide you on how to deploy Hadoop on your Debian system. Debian system requirements: Before starting Hadoop configuration, please make sure that your Debian system meets the minimum operating requirements of Hadoop, which includes installing the necessary Java Runtime Environment (JRE) and Hadoop packages. Hadoop deployment steps: Download and unzip Hadoop: Download the Hadoop version you need from the official ApacheHadoop website and solve it

Do I need to install an Oracle client when connecting to an Oracle database using Go? When developing in Go, connecting to Oracle databases is a common requirement...

"DebianStrings" is not a standard term, and its specific meaning is still unclear. This article cannot directly comment on its browser compatibility. However, if "DebianStrings" refers to a web application running on a Debian system, its browser compatibility depends on the technical architecture of the application itself. Most modern web applications are committed to cross-browser compatibility. This relies on following web standards and using well-compatible front-end technologies (such as HTML, CSS, JavaScript) and back-end technologies (such as PHP, Python, Node.js, etc.). To ensure that the application is compatible with multiple browsers, developers often need to conduct cross-browser testing and use responsiveness

The main reasons why you cannot log in to MySQL as root are permission problems, configuration file errors, password inconsistent, socket file problems, or firewall interception. The solution includes: check whether the bind-address parameter in the configuration file is configured correctly. Check whether the root user permissions have been modified or deleted and reset. Verify that the password is accurate, including case and special characters. Check socket file permission settings and paths. Check that the firewall blocks connections to the MySQL server.

I developed a project called Lua-Libuv and am happy to share my experience. The original intention of the project is to explore how to use Libuv (an asynchronous I/O library written in C) to build a simple HTTP server without having to learn the C language in depth. With the help of ChatGPT, I completed the basic code of HTTP.C. When dealing with persistent connections, I successfully implemented closing the connection and freeing resources at the right time. At first I tried to create a simple server that ended the main program by closing the connection, but I had some problems. I've tried sending blocks of data using streaming, and while it works, this blocks the main thread. In the end, I decided to give up on this approach because my goal was not to learn C language in depth. Finally, I
