EC2 वर EBS Volume Add, Format आणि Mount कसा करायचा (fstab)
कधी ना कधी server ची disk भरते: uploads, logs, वाढणारा database. AWS वर disk म्हणजे EBS volume, आणि तुमच्याकडे दोन उत्तरं असतात: volume मोठा करा, किंवा फक्त data साठी दुसरा volume जोडा. हा chapter दुसरा मार्ग Amazon Linux 2023 वर सुरुवातीपासून शेवटपर्यंत करतो: EC2 server कशाचा बनलेला असतो आणि कुठला EBS volume type निवडायचा ते समजावतो, मग योग्य Availability Zone मध्ये volume बनवतो, attach करतो, lsblk, df -h आणि file -s ने check करतो, XFS file system बनवतो, /data वर mount करतो, files खरंच volume वर आहेत हे सिद्ध करतो, /etc/fstab मध्ये mount permanent करतो, volume त्याच्या data सकट दुसऱ्या server वर हलवतो, आणि clean up करतो.
या class मध्ये काय शिकणार
- EC2 server कशाचा बनलेला असतो: CPU आणि RAM, एक EBS disk आणि एक ENI
- Volume मोठा करणं vs नवीन जोडणं, आणि data ला स्वतःचा volume का
- EBS volume types (gp3, gp2, io2, io1, st1, sc1) आणि IOPS म्हणजे काय
- Same Availability Zone मध्ये volume बनवणं आणि
/dev/sdfम्हणून attach करणं lsblkvsdf -h, आणि रिकाम्या volume साठीfile -sचंdataउत्तर- Delete केलेला data परत का मिळू शकतो, आणि नवीन EBS volume नेहमी रिकामा का असतो
- फक्त नवीन volume वर
mkfs -t xfs, आणि तो/dataवर mount करणं umountने files volume वर आहेत हे सिद्ध करणं/etc/fstabमध्ये UUID आणिdefaults,nofail 0 2सह permanent mount,sudo mount -aने test करून- Data न गमावता data volume दुसऱ्या server वर हलवणं, आणि clean-up
1. EC2 server कशाचा बनलेला असतो
का: काहीतरी संपलं (CPU, memory, disk किंवा IP) की ते server च्या कोणत्या भागात आहे हे माहीत असलं तर काय बदलायचं ते कळतं.
काय: तुम्ही instance launch करता तेव्हा AWS तीन वेगवेगळे भाग जोडतो:
- Instance स्वतः: CPU आणि RAM. हा तुमचे programs चालवणारा computer.
- EBS volume: disk. पहिला म्हणजे root volume; operating system त्यावरून boot होते. Amazon Linux 2023 ला default 8 GiB root volume मिळतो.
- ENI (Elastic Network Interface): network card. त्यात private IP address असतो, आणि असेल तर public IP.
Classroom line
What is EC2 by itself? RAM and CPU.
Class मधलं वाक्य
नुसतं EC2 कशाला म्हणतात? RAM आणि CPU.
Classroom line – हिंदी
"Sirf EC2 kisko kehte hai? RAM aur CPU."
Classroom line
The first EBS volume is called the root volume.
Class मधलं वाक्य
जो पहिला EBS असतो त्याला आपण root volume म्हणतो.
Classroom line – हिंदी
"Jo pehla EBS hota hai usko hum root volume kehte hai."
Figure 1. एक EC2 server म्हणजे तीन भाग: CPU आणि RAM असलेला instance, OS ठेवणारा EBS root volume (Amazon Linux 2023 वर 8 GiB), आणि private व public IP ठेवणारा ENI. Root volume शेजारी data volume जोडता येतो.
Disk CPU आणि RAM पासून वेगळी असल्यामुळे ती resize, detach आणि दुसऱ्या server ला attach करता येते. Stop आणि terminate केल्यावर प्रत्येक भागाचं काय होतं ते The ENI: where your IP addresses live आणि The EBS bill: real numbers मध्ये आहे.
2. Disk भरली: volume मोठा करायचा की नवीन जोडायचा?
का: भरलेली disk uploads, logs आणि databases थांबवते. वाढवायची की नवीन जोडायची हे ठरवल्याने fix ला किती काम आणि किती धोका लागेल ते ठरतं.
परिस्थिती: website upload केलेल्या images ठेवते, किंवा MySQL वाढत जातो, आणि काही महिन्यांनी 8 GiB root volume भरतो. बाहेर पडायचे दोन मार्ग आहेत.
Classroom line
If I can grow my disk, why take a new one?
Class मधलं वाक्य
जर मी माझ्या hard disk ची size वाढवू शकतो, तर नवीन का घ्यायची?
Classroom line – हिंदी
"Jab main apne hard disk ka size badha sakta hu, to new kyu lu?"
Option A: volume मोठा करा. Volume select करा, Actions > Modify volume, आणि मोठी size टाका, उदाहरणार्थ 8 वरून 16 GiB.
- Size फक्त वाढवता येते, कधीच कमी करता येत नाही.
-
Server चालूच राहतो. मग Linux मध्ये partition आणि file system मोठे करा:
sudo growpart /dev/nvme0n1 1 sudo xfs_growfs -d / df -h / -
एकदा बदल केल्यावर, तोच volume परत modify करायला सहा तास थांबावं लागतं.
Option B: data volume जोडा. Operating system root volume वर ठेवा, आणि data /data सारख्या folder वर mount केलेल्या दुसऱ्या volume वर ठेवा. बाकीचा chapter हेच करतो. याचे खरे फायदे आहेत:
- Data operating system पासून वेगळा राहतो. OS बिघडली, तर data volume सरळ नवीन server ला attach करता येतो.
- प्रत्येक volume चा स्वतःचा type आणि size असू शकतो: स्वस्त
gp3root आणि database साठी जास्त fast volume. - फक्त data चा backup घेता येतो, त्या एकाच volume च्या snapshot ने.
Figure 2. Option A: Modify volume root volume मोठा करतो, मग growpart आणि xfs_growfs partition आणि file system मोठे करतात. Option B: दुसरा EBS volume attach करून /data वर mount केला जातो, म्हणून data OS पासून वेगळा राहतो आणि दुसऱ्या server वर हलवता येतो.
3. EBS volume types आणि IOPS
का: Type वेग आणि किंमत ठरवतो. चुकीचा type एकतर database slow करतो, किंवा कधीच न वापरलेल्या वेगासाठी पैसे घेतो.
IOPS (input/output operations per second) म्हणजे disk दर second ला किती reads आणि writes करू शकते. Programs आणि त्यांचा data disk वरून RAM मध्ये load होतो, म्हणून slow disk म्हणजे slow server, खासकरून databases साठी.
Create volume > Volume type मध्ये दिसणारे types:
- General Purpose SSD
gp3: default आणि सगळ्यात स्वस्त SSD. प्रत्येकgp3volume ला size कितीही असली तरी 3,000 IOPS आणि 125 MiB/s मिळतात, आणि जास्त हवं तर पैसे देऊन: 80,000 IOPS आणि 2,000 MiB/s पर्यंत. Size 1 GiB ते 64 TiB. - General Purpose SSD
gp2: जुना type. त्याचे IOPS size सोबत वाढतात: प्रति GiB 3 IOPS, कमीत कमी 100 आणि जास्तीत जास्त 16,000; 1 TiB पेक्षा लहान volumes काही वेळ 3,000 IOPS पर्यंत burst करू शकतात. नवीन volumes साठीgp3वापरा. - Provisioned IOPS SSD
io2(Block Express): मोठ्या, busy databases साठी. IOPS तुम्ही स्वतः निवडता: 256,000 IOPS पर्यंत (प्रति GiB जास्तीत जास्त 1,000) आणि 4,000 MiB/s, size 64 TiB पर्यंत. - Provisioned IOPS SSD
io1: जुना provisioned type, 64,000 IOPS पर्यंत. - Throughput Optimized HDD
st1आणि Cold HDDsc1: logs किंवा archives सारख्या सलग वाचल्या जाणाऱ्या मोठ्या files साठी hard disks, प्रति GiB कमी किमतीत. त्या 125 GiB पासून सुरू होतात आणि root volume होऊ शकत नाहीत. - Magnetic (
standard): previous-generation type; नवीन volumes साठी वापरू नका.

Console: Create volume मधली Volume type list: gp3, gp2, io1, io2, sc1, st1 आणि Magnetic (standard).
Figure 3. EBS volume types: 3,000 IOPS सोबत येणारा आणि 80,000 पर्यंत जाणारा gp3; प्रति GiB 3 IOPS, 100 ते 16,000 असलेला gp2; 256,000 IOPS पर्यंत io2 Block Express; 64,000 पर्यंत io1; 125 GiB पासूनच्या, boot न होणाऱ्या st1 आणि sc1 hard disks; Magnetic previous generation.
Sizes: root volume त्याच्या AMI ला लागते त्यापेक्षा लहान असू शकत नाही: Amazon Linux साठी 8 GiB, Windows Server साठी 30 GiB. gp3 किंवा gp2 data volume 1 GiB इतका लहान असू शकतो, practice साठी भरपूर.
4. Plan: चार steps
- Server च्याच same Availability Zone मध्ये volume बनवा.
- तो server ला attach करा.
- त्यावर file system बनवा (फक्त तो नवीन आहे म्हणून).
- तो
/datafolder वर mount करा. मग/dataमध्ये लिहिलेलं सगळं नवीन volume वर जातं.
Classroom line
If your EC2 is in zone A and you create the volume in zone B, it won't attach.
Class मधलं वाक्य
तुमचा EC2 A zone मध्ये असेल आणि volume B zone मध्ये बनवला, तर attach होणार नाही.
Classroom line – हिंदी
"Agar aapka EC2 A zone me hai aur volume B zone me create kiya, to attach nahi hoga."
Figure 4. Animation: server च्या Availability Zone मध्ये 1 GiB gp3 volume बनवा; तो /dev/sdf म्हणून attach करा, जो Linux nvme1n1 म्हणून दाखवतो; mkfs ने XFS file system बनवा; तो /data वर mount करा, जिथे नवीन files volume वर जातात.
5. आधी disks बघा: lsblk, df -h आणि du
का: आधी बघितलं की आधीच काय आहे ते कळतं, म्हणून चुकीची disk कधीच format होत नाही.
कसं: server ला connect करा आणि चालवा:
lsblk
df -h
lsblk server ला attach असलेली प्रत्येक disk आणि partition दाखवतो, mount असो वा नसो:
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
nvme0n1 259:0 0 8G 0 disk
├─nvme0n1p1 259:1 0 8G 0 part /
├─nvme0n1p127 259:2 0 1M 0 part
└─nvme0n1p128 259:3 0 10M 0 part /boot/efi
nvme0n1म्हणजे root volume, पूर्ण disk.nvme0n1p1त्याचं मुख्य partition,/वर mount. दोन छोटी partitions boot साठी वापरली जातात.- Partition म्हणजे disk चा एक भाग, म्हणून ते disk पेक्षा मोठं असू शकत नाही.
df -h फक्त mount केलेल्या file systems दाखवतो, त्यांची size, वापरलेली आणि मोकळी जागा (-h म्हणजे 8.0G सारख्या वाचायला सोप्या sizes):
Filesystem Size Used Avail Use% Mounted on
devtmpfs 4.0M 0 4.0M 0% /dev
tmpfs 457M 0 457M 0% /dev/shm
/dev/nvme0n1p1 8.0G 1.7G 6.4G 21% /
/dev/nvme0n1p128 10M 1.3M 8.7M 13% /boot/efi
tmpfsआणिdevtmpfsdisk वर नाही, RAM मध्ये असतात.- एखादा folder किती जागा वापरतो ते बघायला
duवापरा:sudo du -sh /var/log.sudoशिवाय root च्या folders साठीPermission deniedयेतो.
Figure 5. lsblk attach असलेली प्रत्येक disk आणि partition दाखवतो, mount असो वा नसो, म्हणून नवीन रिकामा volume mount point शिवाय nvme1n1 म्हणून दिसतो. df -h फक्त mount केलेल्या file systems त्यांच्या वापरलेल्या आणि मोकळ्या जागेसह दाखवतो, म्हणून नवीन volume तिथे mount केल्यावरच दिसतो.
6. Same Availability Zone मध्ये volume बनवा
का: Volume फक्त त्याच्याच AZ मधल्या server ला attach होतो. दुसऱ्या AZ मध्ये बनवलेला volume या server च्या कामाचा नाही.
कसं:
- Server चा AZ शोधा: instance select करा, Networking tab, Availability Zone, उदाहरणार्थ
us-east-1d. - Elastic Block Store > Volumes > Create volume.
- Volume type: General Purpose SSD (
gp3). Size: 1 GiB. IOPS 3000 आणि throughput 125 वरच ठेवा. - Availability Zone: server चा AZ,
us-east-1d. हे दोनदा check करा; ही सगळ्यात common चूक आहे. - Tag Name =
data-volटाका, म्हणजे नंतर सापडेल, आणि Create volume. त्याची state Creating वरून Available होते.
Classroom line
Select the Availability Zone carefully: pick your EC2's AZ.
Class मधलं वाक्य
"Availability zone carefully select kara, tumchya EC2 cha jo AZ asel to select kara."
Availability zone काळजीपूर्वक select करा, तुमच्या EC2 चा जो AZ असेल तो select करा.
Classroom line
Select the Availability Zone carefully: pick your EC2's AZ.

Console: Create volume: gp3, 1 GiB, 3000 IOPS आणि 125 MiB/s, जे gp3 सोबत येतात. Availability Zone server चाच AZ हवा.
7. Volume attach करा
का: Attach होईपर्यंत volume म्हणजे AWS मधली फक्त storage. Attach केल्यावरच Linux त्याला नवीन disk म्हणून बघतो.
कसं:
data-volselect करा, Actions > Attach volume.- Instance: तुमचा server निवडा. फक्त volume च्या AZ मधले instances दिसतात.
- Device name:
/dev/sdf. Console root volume साठी/dev/xvdaआणि data volumes साठी/dev/sdfते/dev/sdpसुचवतो. - Attach volume. State In-use होते, आणि instance च्या Storage tab मध्ये दोन block devices दिसतात.
![EC2 console, Attach volume, Basic details: Volume ID (लपवलेला), Availability Zone use1-az4 (us-east-1d), Instance (लपवलेला, running) सोबत note "Only instances in the same Availability Zone as the selected volume are displayed.", Device name "Select a device name" सोबत note "Recommended device names for Linux: /dev/xvda for root volume. /dev/sd[f-p] for data volumes."](../../../assets/img/aws/add-format-and-mount-ebs-volume-on-ec2-with-fstab-03-console-attach-volume-device-name.webp)
Console: Attach volume: Instance list मध्ये फक्त volume च्या Availability Zone मधले instances दिसतात, आणि data volume चं device name /dev/sdf ते /dev/sdp मधून येतं.
Linux मधलं नाव वेगळं असतं. सध्याच्या instance types वर (Nitro, जसं t3) प्रत्येक EBS volume NVMe device असतो, म्हणून /dev/sdf /dev/nvme1n1 म्हणून दिसतो; जुन्या types वर तो /dev/xvdf असू शकतो. नेहमी lsblk ने check करा:
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
nvme0n1 259:0 0 8G 0 disk
├─nvme0n1p1 259:1 0 8G 0 part /
├─nvme0n1p127 259:2 0 1M 0 part
└─nvme0n1p128 259:3 0 10M 0 part /boot/efi
nvme1n1 259:4 0 1G 0 disk
nvme1n1 attach आहे, पण त्याला partition आणि mount point नाही, आणि df -h तो अजून दाखवत नाही.
Classroom line
Pay attention here.
Class मधलं वाक्य
"Ikde lakshya dya bar ka."
इकडे लक्ष द्या बरं का.
Classroom line
Pay attention here.
8. File system आहे का? sudo file -s
का: mkfs सगळं पुसतो. आधी volume रिकामा (data) आहे हे तपासणंच files असलेली disk पुसण्यापासून वाचवतं.
कसं:
sudo file -s /dev/nvme0n1p1
sudo file -s /dev/nvme1n1
- Root partition
SGI XFS filesystem data (blksz 4096, inosz 512, v2 dirs)उत्तर देतं: त्यावर XFS file system आहे. - नवीन volume फक्त
/dev/nvme1n1: dataउत्तर देतो. म्हणजे: file system नाही, फक्त raw blocks. sudo lsblk -fहीच गोष्ट table म्हणून दाखवतो: नवीन volume साठीFSTYPEcolumn रिकामा असतो.
File system म्हणजे काय: disk म्हणजे फक्त 0 आणि 1 च्या blocks ची एक लांब रांग. File system disk वर एक table ठेवते: प्रत्येक file चं नाव, तिचा folder, आणि कुठल्या blocks मध्ये तिचा content आहे. ते table नसेल, तर Linux file नावाने ठेवू शकत नाही, म्हणून mount करण्याआधी volume वर file system हवीच.
Figure 6. File system नावं आणि block locations चं table ठेवते. साधा delete फक्त table मधली entry काढतो; content blocks मध्ये तसाच राहतो जोपर्यंत काहीतरी त्यावर लिहित नाही, आणि recovery tools असंच काम करतात. AWS delete केलेल्या EBS volume चं storage परत वापरण्याआधी पुसतो, म्हणून नवीन volume zeros म्हणून वाचला जातो: file -s data म्हणतो.
Delete केलेल्या files परत का येऊ शकतात:
- साधा delete (
rm, किंवा Recycle Bin रिकामा करणं) file ची entry table मधून काढतो आणि तिचे blocks free म्हणून mark करतो. नवीन data त्यावर लिहिला जाईपर्यंत content त्या blocks मध्ये राहतो. - म्हणूनच recovery tools अनेकदा delete केलेला content शोधू शकतात, पण सहसा file names शिवाय. एका test disk वर, file मध्ये लिहिलेली ओळ
rmने delete केल्यानंतरही raw device वर सापडली. - Disk खरंच पुसायची असेल, तर त्यावर overwrite करा, उदाहरणार्थ
shredने किंवा/dev/zeroमधून पूर्णddने, किंवा drive ची secure-erase command वापरा. - AWS delete केलेल्या EBS volume चं storage दुसऱ्या कोणाला मिळण्याआधी पुसतो. म्हणूनच अगदी नवीन volume पूर्ण zeros असतो आणि
file -sdataम्हणतो.
9. File system बनवा: mkfs -t xfs
का: Raw volume ला file names चा table नसतो, म्हणून Linux त्यावर files ठेवू शकत नाही. mkfs तो table बनवतो.
काय: file system बनवणं, ज्याला formatting पण म्हणतात, ते रिकामं table volume वर लिहितं. हे driver install करणं नाही; हे फक्त disk ला files ठेवायला तयार करतं.
कसं:
sudo mkfs -t xfs /dev/nvme1n1
mkfsmeta-data=/dev/nvme1n1ने सुरू होणारा summary दाखवतो, ज्यात block size आणि sections असतात.sudo file -s /dev/nvme1n1आताSGI XFS filesystem dataम्हणतो.- XFS Amazon Linux 2023 वरची default file system आहे. Ubuntu सहसा ext4 वापरतो (
sudo mkfs -t ext4 /dev/nvme1n1). Windows NTFS वापरतो. - NFS हा disk format नाही: तो network वरून folders share करायचा protocol आहे. AWS वर ते Amazon EFS.
फक्त नवीन, रिकाम्या volume वर. mkfs नवीन, रिकामं table लिहितो: volume वरची प्रत्येक file जाते. Volume वर आधीच file system असेल, तर mkfs.xfs appears to contain an existing filesystem (xfs) म्हणून नकार देतो आणि -f मागतो. त्या message चा अर्थ volume वर data आहे: थांबा, आणि त्याऐवजी mount करा.
Classroom line
We make a file system only when the volume is new.
Class मधलं वाक्य
Volume नवीन असतो, तेव्हाच आपण त्यात file system बनवतो.
Classroom line – हिंदी
"Jab naya volume hota hai, tabhi hum uske andar file system banate hai."
10. Volume /data वर mount करा
का: Linux disk पर्यंत फक्त folder मधूनच पोहोचतो. Mount volume ला /data शी जोडतो, म्हणजे तिथे लिहिलेल्या files volume वर जातात.
काय: mounting म्हणजे folder ला file system शी जोडणं. Mount नंतर folder मध्ये तुम्ही जे लिहिता ते त्या volume वर साठवलं जातं.
Classroom line
Connecting this directory to this volume is called mounting.
Class मधलं वाक्य
ही directory या volume सोबत जोडायची, त्याला mounting म्हणतात.
Classroom line – हिंदी
"Is directory ko is volume ke saath mount karna hai, usko kehte hain mounting."
कसं:
sudo mkdir /data
sudo mount /dev/nvme1n1 /data
df -h
df -hमध्ये आता नवीन ओळ आहे:/dev/nvme1n1 960M 40M 921M 5% /data. 1 GiB volume थोडा कमी दिसतो, कारण file system स्वतः थोडी जागा घेते.-
काही files आणि folders बनवा:
cd /data sudo touch a b c sudo mkdir x y z ls -
/dataroot चा आहे, म्हणून साधंtouchPermission deniedदेतं.ec2-userलाsudoशिवाय तिथे लिहू द्यायचं असेल, तर एकदाsudo chown ec2-user:ec2-user /dataचालवा.
11. Files volume वरच आहेत हे सिद्ध करा
का: Unmount केल्यावर files गायब होताना आणि mount केल्यावर परत येताना बघितलं की त्या root disk वर नाही, volume वर आहेत हे सिद्ध होतं.
Test: volume unmount करा आणि folder मध्ये बघा.
- आधी folder मधून बाहेर या:
cd ~. ज्या folder मध्ये तुम्ही उभे आहात तो unmount करता येत नाही;umounttarget is busyउत्तर देतो. -
Unmount करा आणि बघा:
sudo umount /data ls /data -
/dataरिकामा आहे. Files कधीच folder मध्ये नव्हत्या; त्या volume वर आहेत. - परत mount करा, आणि त्या परत दिसतात:
sudo mount /dev/nvme1n1 /data ls /data
Classroom line
I can't cut the branch I'm standing on.
Class मधलं वाक्य
"Jya phandivar mi ubha ahe, tyach phandila mi kapu shakat nahi."
ज्या फांदीवर मी उभा आहे, त्याच फांदीला मी कापू शकत नाही.
Classroom line
I can't cut the branch I'm standing on.
Classroom line
How will we verify these were really created on that volume?
Class मधलं वाक्य
"He kharach tya volume madhe jhale aahet, kasa verify karnar?"
हे खरंच त्या volume मध्ये झाले आहेत, कसं verify करणार?
Classroom line
How will we verify these were really created on that volume?
12. Mount permanent करा: /etc/fstab
का: mount temporary असतो. Reboot नंतर, किंवा stop आणि start केल्यावर, कोणी volume mount करेपर्यंत /data परत रिकामा folder असतो.
Classroom line
What we mounted just now is a temporary mount.
Class मधलं वाक्य
आत्ता आपण जो mount केला, तो temporary mount झाला.
Classroom line – हिंदी
"Abhi humne jo mount kiya hai, ye temporary mount ho gaya."
काय: /etc/fstab (file system table) ही Linux boot ला वाचते ती configuration file आहे. प्रत्येक ओळ एक file system आणि ती ज्या folder वर mount होते तो सांगते.
कसं:
-
Volume चा UUID मिळवा, file system मध्ये ठेवलेला एक unique ID:
sudo blkid /dev/nvme1n1 -
तो
/dev/nvme1n1: UUID="af9001ed-20fb-42b7-b0b7-f2d8de17df67" BLOCK_SIZE="512" TYPE="xfs"दाखवतो. UUID quotes शिवाय copy करा. -
File चा backup घ्या, मग ती उघडा:
sudo cp /etc/fstab /etc/fstab.bak sudo nano /etc/fstab -
आधीच्या ओळींना हात लावू नका, आणि शेवटी तुमच्या स्वतःच्या UUID सह एक ओळ टाका:
UUID=af9001ed-20fb-42b7-b0b7-f2d8de17df67 /data xfs defaults,nofail 0 2 -
कुठल्याही reboot आधी test करा:
sudo umount /data sudo mount -a df -h -
mount -a/etc/fstabमधलं अजून mount न झालेलं सगळं mount करतो.df -hमध्ये/dataपरत आला आणि error नाही, तर ओळ बरोबर आहे.mountनेsystemctl daemon-reloadचालवायचा hint दिला, तरsudo systemctl daemon-reloadचालवा. - मग
sudo reboot, परत connect करा, आणिdf -hcheck करा: तुम्ही काही न करता/datamount आहे.
Classroom line
It should mount by itself when the server starts. That's called a permanent mount.
Class मधलं वाक्य
Server start होतो, त्याच वेळी आपोआप mount व्हायला हवं. त्याला permanent mount म्हणतात.
Classroom line – हिंदी
"Jab server start hota hai, usi waqt apne aap mount hona chahiye. Usko bolte hai permanent mount."
Figure 7. fstab ओळीचे सहा fields: file system चा UUID, mount point /data, type xfs, options defaults,nofail, dump 0 (dump tool कडून backup नाही) आणि fsck order 2 (root नंतर check, root ला 1; 0 म्हणजे कधीच check नाही).
ओळीचं प्रत्येक field:
UUID=...: कुठली file system./dev/nvme1n1सारखी device names boots किंवा instance types बदलल्यावर बदलू शकतात; UUID कधीच बदलत नाही./data: mount point, आधीपासून असलेला folder.xfs: file system type.defaults,nofail: नेहमीचे options, आणिnofail: volume नसेल, उदाहरणार्थ detach केला असेल, तरी server boot होतो.nofailशिवाय boot थांबून वाट बघू शकतो, आणि तुम्ही SSH ने connect करू शकत नाही.0: dump field, जुन्याdumpbackup tool साठी; नेहमी 0.2: boot ला file system check चा क्रम: root साठी 1, बाकीच्या disks साठी 2, कधीच नाही साठी 0.
Typing ची चूक test मध्ये दिसते: nofial सारखा चुकीचा option दिला तर mount -a Unknown parameter 'nofial' देऊन fail होतो. Reboot आधी दुरुस्त करा.
Classroom line
Take a new volume and show me a permanent mount.
Class मधलं वाक्य
एक नवीन volume घ्या आणि तो permanently mount करून दाखवा.
Classroom line – हिंदी
"Ek naya volume le lo aur usko permanently mount karke dikhao."
हा interview मधला common task आहे, आणि तो नेमका sections 6 ते 12 आहे.
13. Data volume दुसऱ्या server वर हलवा
का: data volume वर असतो, server मध्ये नाही. Server बिघडला किंवा बदलला, तर data volume त्याच्या सगळ्या files सकट नवीन server वर जातो.
कसं:
- जुन्या server वर:
cd ~, मगsudo umount /data, आणि/etc/fstabमधली/dataओळ delete किंवा comment (#) करा. - Console मध्ये:
data-volselect करा, Actions > Detach volume. त्याची state Available होते. - नवीन server same AZ मध्ये हवा. Launch करताना Network settings > Edit > Subnet वापरा आणि त्या AZ मधलं subnet निवडा.
- नवीन server ला Actions > Attach volume, device
/dev/sdf. - नवीन server वर:
lsblknvme1n1दाखवतो, आणिsudo file -s /dev/nvme1n1SGI XFS filesystem dataम्हणतो: file system आधीच आहे.mkfsचालवू नका. -
Mount करा आणि बघा:
sudo mkdir /data sudo mount /dev/nvme1n1 /data ls /data -
a b c x y zसगळे आहेत. या server वरहीfstabओळ टाका (section 12), त्याच UUID सह.
Classroom line
Launch it in the same zone as your earlier EC2.
Class मधलं वाक्य
"Tuza aadhicha EC2 jya zone madhe aahe, tyach zone madhe ghyaycha."
तुझा आधीचा EC2 ज्या zone मध्ये आहे, त्याच zone मध्ये घ्यायचा.
Classroom line
Launch it in the same zone as your earlier EC2.
Figure 8. Animation: जुन्या server वर /data unmount करा; volume detach करा, तो Available होतो; same Availability Zone मधल्या नवीन server ला attach करा; mkfs शिवाय /data वर mount करा, आणि a b c x y z files तिथे आहेत.
आधी unmount, मग detach. Mount असलेला volume detach केला तर अजून लिहिला जात असलेला data जाऊ शकतो. Force detach Detaching मध्ये अडकलेल्या volume साठी आहे, पण त्याने file system बिघडू शकते, म्हणून तो फक्त शेवटचा उपाय म्हणून वापरा.
Root volume पण हलवता येतो, stop केलेल्या server वर तो बदलून: Recover data by swapping the root volume बघा.
14. Clean up
का: Server attach नसला तरी volumes आणि snapshots delete करेपर्यंत पैसे घेत राहतात.
sudo umount /dataआणि/etc/fstabमधून/dataओळ काढा.- Volumes:
data-volselect करा, Actions > Detach volume, Available ची वाट बघा, मग Actions > Delete volume. Available volume चं पण bill येतं. - Instances: practice servers terminate करा.
Classroom line
Don't keep it for nothing; delete it if you don't need it.
Class मधलं वाक्य
"Ugach thevu naka, lagat nasel tar delete marun taka."
उगाच ठेवू नका, लागत नसेल तर delete मारून टाका.
Classroom line
Don't keep it for nothing; delete it if you don't need it.
15. काही बिघडलं तर
का: प्रत्येक error एक step सांगतो: AZ, attach, file system, mount किंवा fstab. Error ला step शी जुळवलं की परत सुरुवातीपासून करावं लागत नाही.
- Attach volume list मध्ये server नाही: volume दुसऱ्या AZ मध्ये आहे. Server च्या AZ मध्ये volume बनवा.
mount: /data: wrong fs type, bad option, bad superblock: volume वर अजून file system नाही (file -sdataम्हणतो), किंवा चुकीचं device दिलं.lsblkआणिsudo file -sने check करा; volume नवीन असेल तरचmkfsचालवा.mount point /data does not exist: आधीsudo mkdir /dataने folder बनवा.mkdirfolder बनवतो;mkfsfile system बनवतो. दोघांची गल्लत करू नका./dev/sdf: No such file or directory: Linux मध्ये volume/dev/nvme1n1(किंवा/dev/xvdf) आहे.lsblkमधलं नाव वापरा.umount: /data: target is busy: तुम्ही, किंवा एखादा program,/dataमध्ये आहे.cd ~करून परत try करा.mkfs.xfs: ... appears to contain an existing filesystem: volume वर data आहे.-fटाकू नका; mount करा./dataमध्येtouch: cannot touch ... Permission denied:sudoवापरा, किंवाsudo chown ec2-user:ec2-user /data.- Reboot नंतर
/dataरिकामा:fstabओळ नाही, किंवा तिच्यात चूक आहे.sudo mount -aचालवा आणि error वाचा. fstabबदलानंतर server परत येत नाही:nofailशिवायची चुकीची ओळ. Server stop करा, त्याचा root volume दुसऱ्या server ला दुसरी disk म्हणून attach करा, ओळ दुरुस्त करा, आणि परत attach करा; वर link केलेला root volume chapter बघा.
Ravindra Bagale's Tip
प्रत्येक mkfs आधी त्या device वर sudo file -s चालवा आणि उत्तर वाचा. फक्त data म्हणजे "नवीन आणि रिकामा". आणि प्रत्येक /etc/fstab बदलानंतर reboot आधी sudo mount -a चालवा. त्या file मधलं एक अक्षर चुकलं तरी तुम्ही server बाहेर अडकू शकता; nofail आणि test दोन्ही मिळून ते safe करतात.
16. पूर्ण class एका page वर
- EC2 server म्हणजे instance (CPU आणि RAM), EBS root volume (disk) आणि ENI (IPs असलेलं network card).
- Disk भरली: volume मोठा करा (Modify volume, मग
growpartआणिxfs_growfs), किंवा data volume जोडून/dataवर mount करा. - IOPS = दर second ला reads आणि writes.
gp3मध्ये कुठल्याही size ला 3,000 IOPS (80,000 पर्यंत);gp2प्रति GiB 3 IOPS देतो;io2256,000 पर्यंत;st1आणिsc1boot न होणाऱ्या hard disks. - चार steps: same AZ मध्ये बनवा,
/dev/sdfम्हणून attach करा (Linuxnvme1n1दाखवतो),mkfs -t xfs(फक्त नवीन volumes),mount. lsblkattach असलेल्या disks दाखवतो;df -hmount केलेल्या file systems; file system नसेल तरsudo file -sdataम्हणतो.- Delete table मधली entry काढतो, content नाही; AWS delete केलेले volumes पुसतो, म्हणून नवीन volume रिकामा असतो.
sudo mkdir /data,sudo mount /dev/nvme1n1 /data;sudo umount /dataनंतर folder रिकामा: files volume वर असतात./etc/fstab:sudo blkidमधूनUUID=... /data xfs defaults,nofail 0 2; reboot आधीsudo umount /dataआणिsudo mount -aने test करा.- Data volume हलवा:
umount, detach, same AZ मध्ये attach, mount; कधीचmkfsनाही. Force detach फक्त शेवटचा उपाय. - Clean up: unmount, detach, volume delete, servers terminate.
17. Hands-on lab: 1 GiB data volume जोडा आणि boot ला mount करा
हा lab का. हा lab चालू server ला दुसरी disk जोडतो, त्यावर files ठेवतो, आणि reboot नंतर ती आपोआप mount होईल असं करतो, पुढच्या step आधी प्रत्येक step तपासत.
- Disks बघा
- Command:
lsblk - काय दिसेल: एकच disk,
nvme0n1, त्याच्या partitions सह. - Check करा:
df -h /8 GiB root file system दाखवतो. - का: नंतर नवीन disk ओळखायला "आधीचं" चित्र लागतं.
- Command:
- Volume बनवा
- करा: Volumes → Create volume:
gp3, 1 GiB, आणि server चाच AZ (server च्या Networking tab मध्ये बघा). - Check करा: नवीन volume Available आहे.
- का: Practice साठी 1 GiB
gp3पुरे आणि खूप स्वस्त. दुसरा AZ असेल तर attach अशक्य.
- करा: Volumes → Create volume:
- Attach करा
- करा: Actions → Attach volume → तुमचा server → device
/dev/sdf. - Check करा:
lsblkमध्ये आताnvme1n1, 1G, partitions शिवाय दिसतो. - का: Linux disk ला
sdfनाही,nvme1n1नाव देतो.lsblkजे नाव दाखवतो तेच वापरा.
- करा: Actions → Attach volume → तुमचा server → device
- रिकामा आहे ते तपासा
- Command:
sudo file -s /dev/nvme1n1 - काय दिसेल:
/dev/nvme1n1: data - Check करा: त्याऐवजी
XFS filesystem dataआलं तर थांबा: disk वर आधीच file system आहे. - का:
dataम्हणजे file system नाही, म्हणून format केल्याने काहीच जात नाही.
- Command:
- File system बनवा
- Command:
sudo mkfs -t xfs /dev/nvme1n1 - काय दिसेल:
meta-data=/dev/nvme1n1असलेला summary. - Check करा:
sudo file -s /dev/nvme1n1आताSGI XFS filesystem dataसांगतो. - का: Amazon Linux वर XFS default आहे.
mkfsफक्त नवीन volume वर चालवा: तो सगळं पुसतो.
- Command:
- /data वर mount करा
- Command:
sudo mkdir /data && sudo mount /dev/nvme1n1 /data - काय दिसेल: काहीच नाही.
- Check करा:
df -h /dataमध्ये/dev/nvme1n1, सुमारे 1.0G दिसतो. - का: Linux disk पर्यंत फक्त folder मधूनच पोहोचतो, म्हणून volume ला mount करायला folder लागतो.
- Command:
- Files volume वर आहेत हे सिद्ध करा
- Command:
cd /data && sudo touch a b c && cd ~ && sudo umount /data - काय दिसेल: काहीच नाही.
- Check करा:
ls /dataआता रिकामा;sudo mount /dev/nvme1n1 /dataआणिls /dataपरतa b cदाखवतो. - का: Unmount आधी
/dataमधून बाहेर या, नाहीतरtarget is busyयेतं.
- Command:
- UUID मिळवा
- Command:
sudo blkid /dev/nvme1n1 - काय दिसेल:
/dev/nvme1n1: UUID="..." BLOCK_SIZE="512" TYPE="xfs" - Check करा: UUID quotes शिवाय copy करा.
- का: UUID file system चा असतो आणि कधीच बदलत नाही, पण device name reboot नंतर बदलू शकतो.
- Command:
- fstab ओळ जोडा
- Command:
sudo cp /etc/fstab /etc/fstab.bak && sudo nano /etc/fstab - काय दिसेल: आधीची root ओळ. शेवटी जोडा:
UUID=YOUR_UUID /data xfs defaults,nofail 0 2. - Check करा:
tail -1 /etc/fstabतुमची नवीन ओळ दाखवतो. - का: Backup मुळे चुकीचा बदल undo करता येतो. Volume नसला तरी
nofailमुळे server boot होतो.
- Command:
- Reboot आधी test करा
- Command:
sudo umount /data && sudo mount -a - काय दिसेल: काहीच output नाही.
systemctl daemon-reloadसुचवलं तरsudo systemctl daemon-reloadचालवा. - Check करा:
df -hमध्ये/dataपरत दिसतो. मगsudo reboot, परत connect, आणिdf -hमध्ये तो अजूनही दिसतो. - का:
mount -aboot सारखंच fstab वाचतो, म्हणून typo आत्ताच दिसतो, जेव्हा तो सुधारता येतो.
- Command:
- साफ करा
- करा:
sudo umount /data,/etc/fstabमधली ओळ काढा, मग Volumes मध्ये volume detach आणि delete करा. - Check करा: Volumes मध्ये एकही
availablevolume उरला नाही. - का: Detach आधी fstab ओळ काढा, म्हणजे पुढचा boot नसलेली disk शोधत नाही. Detach केलेला volume पैसे घेत राहतो.
- करा:
18. Try at home
Try at home
Task 1: add आणि mount
- Amazon Linux 2023 instance launch करा आणि त्याचा AZ नोंदवा. दुसऱ्या AZ मध्ये 1 GiB
gp3volume बनवा आणि attach करून बघा: server list मध्ये नाही. - योग्य AZ मध्ये एक बनवा,
/dev/sdfम्हणून attach करा, आणिlsblkवdf -hcompare करा. - नवीन volume वर
sudo file -s,mkfs -t xfs, मग परतfile -sचालवा.
Task 2: सिद्ध करा आणि permanent करा
- तो
/dataवर mount करा, files बनवा, unmount करा, आणि/dataमध्ये बघा. परत mount करा. - UUID आणि
nofailसहfstabओळ टाका,sudo mount -aने test करा, आणि reboot करा. - मुद्दाम
nofailचं spelling चुकवा,sudo mount -aचालवा, error वाचा, आणि दुरुस्त करा.
Task 3: हलवा
- Same AZ मध्ये दुसरा server launch करा,
mkfsशिवाय volume त्यावर हलवा, आणि files list करा. - Clean up: unmount, detach, volume delete आणि दोन्ही servers terminate करा.
Recap
थोडक्यात
- EC2 server ची disk हा वेगळा EBS volume असतो; जास्तीचे volumes data OS पासून वेगळा ठेवतात.
gp3हा default पर्याय: कुठल्याही size ला 3,000 IOPS सोबत;io2सगळ्यात busy databases साठी.- Volume server च्या AZ मध्ये बनवा, attach करा, आणि त्याचं खरं नाव
lsblkने शोधा. file -sdataम्हणतो तेव्हाचmkfsचालवायचा; मग तो/dataवर mount करा.- Mount temporary असतो;
/etc/fstabमधलीnofailसह UUID ओळ,sudo mount -aने test केलेली, तो permanent करते. - Data हलवायला: unmount, detach, same AZ मध्ये attach, mount, आणि परत कधीच format नाही.
सराव Tasks
Kolhapuri Chappal Co हा कोल्हापूर मधला पादत्राणे व्यवसाय आहे. Sachin Mane त्यांचं IT व cloud काम पाहतात. त्यांचे पैसे INR मध्ये मोजले जातात आणि AWS resources ap-south-1 Region मध्ये चालतात. खालच्या tasks मध्ये तुम्ही या lesson मध्ये शिकलेलं वापरून त्यांची खरी कामं करता. सगळी नावं, account IDs, IP addresses व numbers सरावासाठी काल्पनिक आहेत.
0 / 12
सोपं मोकळी disk जागा तपासा
का: Disk 100% भरल्यास apps व databases बंद पडतात.
काय करायचं: सगळ्या mounted disks ची मोकळी व वापरलेली जागा human-readable units मध्ये दाखवा.
- हे काम करणारा Linux command शोधा.
- Task ला लागणारे options (उदा. -r, -h) जोडा.
- File नावं, folders किंवा users योग्य क्रमाने लिहा.
- System files/users बदलत असाल तर sudo वापरा. Check answer दाबा.
सोपं Disks ची list पाहा
का: EBS volume attach केल्यावर lsblk त्याचं device नाव दाखवतो.
काय करायचं: Server वरचे सगळे block devices (disks व partitions) दाखवा.
- हे काम करणारा Linux command शोधा.
- Task ला लागणारे options (उदा. -r, -h) जोडा.
- File नावं, folders किंवा users योग्य क्रमाने लिहा.
- System files/users बदलत असाल तर sudo वापरा. Check answer दाबा.
सोपं Folder चा size तपासा
का: du folder किती जागा वापरतो ते सांगतो, -h ने सोप्या units मध्ये.
काय करायचं: /var/www/kolhapurichappal चा एकूण size एका line मध्ये human-readable units मध्ये दाखवा.
- हे काम करणारा Linux command शोधा.
- Task ला लागणारे options (उदा. -r, -h) जोडा.
- File नावं, folders किंवा users योग्य क्रमाने लिहा.
- System files/users बदलत असाल तर sudo वापरा. Check answer दाबा.
सोपं Memory तपासा
का: RAM भरल्यास server slow होतो किंवा apps बंद होतात.
काय करायचं: वापरलेली व मोकळी memory human-readable units मध्ये दाखवा.
- हे काम करणारा Linux command शोधा.
- Task ला लागणारे options (उदा. -r, -h) जोडा.
- File नावं, folders किंवा users योग्य क्रमाने लिहा.
- System files/users बदलत असाल तर sudo वापरा. Check answer दाबा.
सोपं EBS volume चा snapshot घ्या
का: Snapshot म्हणजे एका disk चा त्या क्षणीचा backup.
काय करायचं: Volume vol-0dfc00420fccfdeed चा snapshot "nightly kolhapurichappal" description सह बनवा.
- Task वाचा आणि ते कोणत्या AWS service बद्दल आहे ते ठरवा.
- aws लिहा, मग service चं नाव, मग operation (action शब्द).
- प्रत्येक आवश्यक flag (--name) व त्यापुढे task मधली value लिहा.
- Flags कोणत्याही क्रमाने चालतात. Check answer दाबा.
मध्यम Volume instance ला attach करा
का: Server ला volume दिसण्याआधी तो attach (त्याच AZ मध्ये) करावा लागतो.
काय करायचं: Volume vol-0dfc00420fccfdeed ला instance i-0da02400dac111a2b ला /dev/sdf device म्हणून attach करा.
- Task वाचा आणि ते कोणत्या AWS service बद्दल आहे ते ठरवा.
- aws लिहा, मग service चं नाव, मग operation (action शब्द).
- प्रत्येक आवश्यक flag (--name) व त्यापुढे task मधली value लिहा.
- Flags कोणत्याही क्रमाने चालतात. Check answer दाबा.
मध्यम नवा EBS volume बनवा
का: Extra data disks मुळे app data root disk पासून वेगळा राहतो.
काय करायचं: ap-south-1a Availability Zone मध्ये 20 GiB gp3 volume बनवा.
- Task वाचा आणि ते कोणत्या AWS service बद्दल आहे ते ठरवा.
- aws लिहा, मग service चं नाव, मग operation (action शब्द).
- प्रत्येक आवश्यक flag (--name) व त्यापुढे task मधली value लिहा.
- Flags कोणत्याही क्रमाने चालतात. Check answer दाबा.
मध्यम Disk चा UUID शोधा
का: /etc/fstab मध्ये UUID वापरावा, कारण reboot नंतर device नाव बदलू शकतं.
काय करायचं: /dev/xvdf चा UUID दाखवा.
- हे काम करणारा Linux command शोधा.
- Task ला लागणारे options (उदा. -r, -h) जोडा.
- File नावं, folders किंवा users योग्य क्रमाने लिहा.
- System files/users बदलत असाल तर sudo वापरा. Check answer दाबा.
मध्यम नवी disk format करा
का: नवा EBS volume रिकामा असतो. Files ठेवायला file system लागते.
काय करायचं: /dev/xvdf ला xfs file system ने format करा.
- हे काम करणारा Linux command शोधा.
- Task ला लागणारे options (उदा. -r, -h) जोडा.
- File नावं, folders किंवा users योग्य क्रमाने लिहा.
- System files/users बदलत असाल तर sudo वापरा. Check answer दाबा.
अवघड Downtime शिवाय volume मोठा करा
का: EBS volumes वापरात असताना मोठे होतात. नंतर file system पण वाढवतात.
काय करायचं: Volume vol-0dfc00420fccfdeed 50 GiB करा.
- Task वाचा आणि ते कोणत्या AWS service बद्दल आहे ते ठरवा.
- aws लिहा, मग service चं नाव, मग operation (action शब्द).
- प्रत्येक आवश्यक flag (--name) व त्यापुढे task मधली value लिहा.
- Flags कोणत्याही क्रमाने चालतात. Check answer दाबा.
अवघड मोठ्या files शोधा
का: Disk भरल्यावर आधी मोठ्या files शोधा.
काय करायचं: /var खाली कुठेही 100 MB पेक्षा मोठ्या files शोधा.
- हे काम करणारा Linux command शोधा.
- Task ला लागणारे options (उदा. -r, -h) जोडा.
- File नावं, folders किंवा users योग्य क्रमाने लिहा.
- System files/users बदलत असाल तर sudo वापरा. Check answer दाबा.
अवघड Instance resize करा (vertical scaling)
का: Server लहान पडल्यास stop असताना type बदला.
काय करायचं: Stop असलेल्या i-0da02400dac111a2b ला जास्त power हवी. त्याचा instance type t3.large करा.
- Task वाचा आणि ते कोणत्या AWS service बद्दल आहे ते ठरवा.
- aws लिहा, मग service चं नाव, मग operation (action शब्द).
- प्रत्येक आवश्यक flag (--name) व त्यापुढे task मधली value लिहा.
- Flags कोणत्याही क्रमाने चालतात. Check answer दाबा.
झटपट उजळणी cards
हा lesson दोन मिनिटांत revise करा. Cards phone वर save करा किंवा PNG download करा. प्रत्येक card वरचा QR त्याचा lesson उघडतो.











अजून cards: Ravi Sir's Cards.