Φορματ δίσκου μέσω τερματικού.

...εγκαταστάσεις, αναβαθμίσεις, διαχείριση partitions, boot-loader, κλπ

Συντονιστής: adem1

Κανόνες Δ. Συζήτησης
Στην ενότητα αυτή γράφουμε θέματα/ προβλήματα μόνο για το UBUNTU ή τα παράγωγά του.

Φορματ δίσκου μέσω τερματικού.

Δημοσίευσηαπό Tassos10 » 05 Ιαν 2017, 13:30

Πρόσφατα, ήθελα να κάνω φορματ κάτι δίσκους μέσω τερματικού. Δεν είχα διεκπεραιώσει όμως ξανά μια τέτοια διαδικασία μέσω τερματικού ( εξαιτίας του GParted ) και έτσι σαν πρώτη φορά, αν και εν τέλει τα κατάφερα, θα ήθελα να σας ανέφερα κάποια πράγματα, να σας ρώταγα για άλλα και γενικά να το συζητάγαμε το θέμα. Το παρών θέμα θα μπορούσε στο τέλος να καταλήξει να γίνει και σαν οδηγός για του υπόλοιπους.

Σκοπός αυτού το θέματος, είναι και για εμένα τον ίδιο, αλλά και για όλους μας, να καταλάβουμε καλύτερα κάποια πράγματα πάνω στο φορμάτ των δίσκων και γενικά την διαχείριση τους μέσω όμως μη γραφικών διεπαφών όπως το GParted, αλλά από το αγαπημένο μας τερματικό.
Για τα πειράματα μου λοιπόν, έτυχε να έχω έναν δίσκο ολοκαίνουριο των 4ΤΒ και αντί να τον κάνω φορμάτ μέσω του GParted πήγα μέσω τερματικού, ώστε να διαπιστώσω τι γίνεται.

Οπότε εξ αρχής, να ξεκαθαρίσουμε και το εξής : Δεν ήθελα να κάνω διαμερίσματα ( partitions ) σε ένα δίσκο, ήθελα έναν καινούριο δίσκο να τον αρχικοποιήσω και να ορίσω ένα file system για αυτόν.

Πρώτα από όλα έπρεπε να βρω πως ονομάζει το σύστημα μου τον δίσκο όπου ήθελα να κάνω φορμάτ, παρατήρησα πως με την εντολή :
Κώδικας: Επιλογή όλων
df -alh
αν δεν έχει γίνει προσάρτηση του δίσκου ( άλλο να τον βλέπεις στον ναυτίλο πως μπορείς να τον ανοίξεις και άλλο να τον ανοίξεις ).
Δεν τον βλέπεις. Δηλαδή έχω δύο δίσκους στον υπολογιστή συνδεδεμένους με sata. Τον καινούριο και τον παλιό όπου έχω μέσα δεδομένα. Αν και τον παλιό μου τον δείχνει στον ναυτίλο, αν δεν τον πατήσω να τον ανοίξω για μια φορά, δεν θα μου τον δείχνει η παραπάνω εντολή. Μονάχα αν έστω μια φορά τον πατήσω και δω τα δεδομένα του.
Οπότε εφόσον δεν μου δείχνει αυτόν ( όπου έχω ορίσει σύστημα αρχείων και έχω μέσα δεδομένα ), που να μου δείξει και τον καινούριο δίσκο. :P

Εδώ έχω και την εξής απορία, ( ώστε να το διαλευκάνω πλήρως ) εξ αρχής αφού ο ναυτίλος εμφανίζει τον δίσκο στην πλαϊνή μπάρα, σε τι κατάσταση είναι όμως ο δίσκος; Δεν έχει γίνει η προσάρτησή του, απλώς τον αναγνωρίζει το σύστημα; Η προσάρτηση γίνεται με το που τον ανοίξω για πρώτη φορά;


Με τις παρακάτω όμως εντολές, βλέπεις όλους σου τους δίσκους προσαρτημένους και μη :
Κώδικας: Επιλογή όλων
sudo fdisk -l

Κώδικας: Επιλογή όλων
sudo fdisk -l | grep '^Disk'

Κώδικας: Επιλογή όλων
sudo lshw -C disk

Κώδικας: Επιλογή όλων
sudo lshw -class disk -short

Κώδικας: Επιλογή όλων
sudo lsblk


Οπότε, εφόσον είδα πλέον πως το σύστημα έχει ορίσει τον δίσκο μου ως /dev/sdb μένει να δω πως θα τον κάνω φορμάτ.
Αρχικά πήγα πρώτα από όλα στο κλασικό εργαλείο fdisk. Το οποίο όμως δε κατέστη το καλύτερο για εμένα, διότι πέρα από το ότι ίσος εγώ φταίω που δεν θα κατάλαβα και πολύ καλά το πως δουλεύει, δεν έκανε φορμάτ όλον τον δίσκο. Το fdisk, αυτό που κατάφερνα μονάχα ήταν να του κάνω ένα partition (διαμέρισμα) - να χώριζε ο σκληρός σε δύο μέρη. Δεν ήθελα αυτό όμως.

Έτσι πήγα στο πιο εύκολο ( κατ εμέ ) εργαλείο, το parted. Χάρης αυτό κατάφερα να κάνω την δουλειά μου, με τα εξής βήματα :

sudo parted /dev/sdb
Κώδικας: Επιλογή όλων
GNU Parted 2.3
Using /dev/sdb
Welcome to GNU Parted! Type 'help' to view a list of commands.


(parted) print
Κώδικας: Επιλογή όλων
Model: ATA WDC WD40EFRX-68W (scsi)
Disk /dev/sdb: 4001GB
Sector size (logical/physical): 512B/4096B
Partition Table: msdos

Number  Start  End  Size  Type  File system  Flags


(parted) mklabel gpt
Κώδικας: Επιλογή όλων
Warning: The existing disk label on /dev/sdb will be destroyed and all data on this disk will be lost. Do you want to continue?
Yes/No? Yes


(parted) print
Κώδικας: Επιλογή όλων
Model: ATA WDC WD40EFRX-68W (scsi)
Disk /dev/sdb: 4001GB
Sector size (logical/physical): 512B/4096B
Partition Table: gpt

Number  Start  End  Size  File system  Name  Flags


(parted) mkfs
Κώδικας: Επιλογή όλων
WARNING: you are attempting to use parted to operate on (mkfs) a file system.
parted's file system manipulation code is not as robust as what you'll find in
dedicated, file-system-specific packages like e2fsprogs.  We recommend
you use parted only to manipulate partition tables, whenever possible.
Support for performing most operations on most types of file systems
will be removed in an upcoming release.
Warning: The existing file system will be destroyed and all data on the partition will be lost. Do you want to continue?
Yes/No? y                                                                 
Partition number? 1                                                       
Error: Partition doesn't exist.


(parted) print
Κώδικας: Επιλογή όλων
Model: ATA WDC WD40EFRX-68W (scsi)
Disk /dev/sdb: 4001GB
Sector size (logical/physical): 512B/4096B
Partition Table: gpt

Number  Start  End  Size  File system  Name  Flags


(parted) check
Κώδικας: Επιλογή όλων
WARNING: you are attempting to use parted to operate on (check) a file system.
parted's file system manipulation code is not as robust as what you'll find in
dedicated, file-system-specific packages like e2fsprogs.  We recommend
you use parted only to manipulate partition tables, whenever possible.
Support for performing most operations on most types of file systems
will be removed in an upcoming release.
Partition number? 1                                                       
Error: Partition doesn't exist


(parted) mkpart
Κώδικας: Επιλογή όλων
Partition name?  []? WD_RED_Storage
File system type?  [ext2]? ntfs                                           
Start? 0%                                                                 
End? -1


(parted) print
Κώδικας: Επιλογή όλων
Model: ATA WDC WD40EFRX-68W (scsi)
Disk /dev/sdb: 4001GB
Sector size (logical/physical): 512B/4096B
Partition Table: gpt

Number  Start   End     Size    File system  Name            Flags
1      1049kB  4001GB  4001GB               WD_RED_Storage  msftdata



(parted) quit
Κώδικας: Επιλογή όλων
Information: You may need to update /etc/fstab.




Κατά αυτόν τον τρόπο ενώ η αλήθεια είναι πως περίμενα να είχα έτοιμο τον δίσκο με NTFS, δεν ήταν. Έτσι έκανα και το παρακάτω βήμα :

sudo mkfs.ntfs /dev/sdb1
Κώδικας: Επιλογή όλων
Cluster size has been automatically set to 4096 bytes.
Initializing device with zeroes:   100% - Done.
Creating NTFS volume structures.
mkntfs completed successfully. Have a nice day.


Η παραπάνω εντολή ολοκληρώθηκε έπειτα από αρκετές ώρες. Γιατί όμως έκανε τόσο πολύ; Μιλάμε για ώρες.

Τέλος ήθελα να δώσω στον δίσκο και ένα ωραίο όνομα - Label, έτσι έτρεξα την παρακάτω εντολή :
Κώδικας: Επιλογή όλων
sudo ntfslabel /dev/sdb1 WD_RED


Οπότε πλέον ο δίσκος φαινόταν όπως και ο παλιός στον ναυτίλο. Έτοιμος για χρήση.
Όμως πάλι δεν ήθελα να τον ανοίξω μέσω της γραφική διεπαφής, αλλά μέσω τερματικού και η εντολή :
Κώδικας: Επιλογή όλων
ls -alh

δεν τον εμφάνιζε. Οπότε έπρεπε να τον προσαρτήσω στο σύστημα.

Προσάρτηση με αυτόματο τρόπο.

gvfs-mount -d /dev/sdb1
Κώδικας: Επιλογή όλων
Mounted /dev/sdb1 at /media/WD_RED


και μου τον προσάρτησε αυτόματα και πλέον τον έβλεπα από παντού. :)

Προσάρτηση με χειροκίνητο τρόπο.
Πρώτα από όλα θα πρέπει να δημιουργήσουμε έναν φάκελο όπου σε αυτόν θα γίνει η προσάρτηση του δίσκου και μέσω αυτού θα μπορούμε να βλέπουμε τον δίσκο και τα περιεχόμενα του.
Κώδικας: Επιλογή όλων
sudo mkdir /media/myMountFolder


τέλος για να προσαρτήσουμε τον δίσκο, γράφουμε :
Κώδικας: Επιλογή όλων
sudo mount -o defaults /dev/sdb1 /media/myMountFolder


Πλέον μέσω του καταλόγου /media/myMountFolder , έχουμε πρόσβαση στα περιεχόμενα του δίσκου ( /dev/sdb1 ) .
Για να αποπροσαρτήσουμε τον δίσκο αρκεί να γράψουμε :
Κώδικας: Επιλογή όλων
sudo umount /media/myMountFolder/

και επειδή δεν χρειάζεται και ο κατάλογος "myMountFolder", τον διαγράφουμε και αυτόν με την εντολή :
Κώδικας: Επιλογή όλων
sudo rm -r /media/myMountFolder


Αυτά ακριβώς τα βήματα κάνει αυτόματα το σύστημα με την γραφική διασύνδεση ή κάνει και κάτι περαιτέρω;
Αυτή ήταν η διαδικασία που έκανα εγώ. Ήταν σωστή, λάθος, θα πρέπει να διορθώσω κάτι; Παρακαλώ πολύ πείτε μου την άποψη σας.


Τέλος επειδή το GParted είναι κατά την γνώμη μου, καταπληκτικό ανοιχτού κώδικα εργαλείο, ήθελα να δω τι κάνει εκείνο όταν του λέμε να κάνει φορματ σε ένα στικάκι π.χ. Και γιατί εκείνο δεν αργεί;
Είναι τόσο φοβερό και στην νοοτροπία του ανοιχτού και ελεύθερου λογισμικού, που το GParted σου λέει ακριβώς τι κάνει, ποιες εντολές εκτελεί.
Έτσι διαπίστωσα πως για να κάνει το φορμάτ σε NTFS εκτέλεσε την παρακάτω εντολή :

Κώδικας: Επιλογή όλων
mkntfs -Q -v -L "" /dev/sdc


και για να δώσει όνομα στο στικάκι :
Κώδικας: Επιλογή όλων
ntfslabel --force /dev/sdc1 "Onoma"



Περιμένω τις απόψεις & τις παρατηρήσεις σας! :)
Τελευταία επεξεργασία από Tassos10 και 05 Ιαν 2017, 22:20, έχει επεξεργασθεί 1 φορά/ες συνολικά
Spoiler: show
1 Γνώσεις Linux: Πρώτα βήματα ┃ Προγραμματισμού: Πρώτα βήματα ┃ Αγγλικών: Ικανοποιητικό
2 Ubuntu 12.04 precise 3.2.0-50-generic 64bit (el_GR.UTF-8, Unity ubuntu), Ubuntu 3.2.0-49-generic
3 Intel Core2 Quad CPU Q9400 2.66GHz ‖ RAM 3954 MiB ‖ ASRock G31M-S
4 nVidia G92 [GeForce 9800 GT] [10de:0614] {nvidia}
5 eth0: Realtek RTL8101E/RTL8102E PCI Express Fast Ethernet controller [10ec:8136] (rev 02)
Tassos10
dudeTUX
dudeTUX
 
Δημοσιεύσεις: 472
Εγγραφή: 29 Μαρ 2010, 10:43
Εκτύπωση

Re: Φορματ δίσκου μέσω τερματικού.

Δημοσίευσηαπό kyknos123 » 05 Ιαν 2017, 17:11

1ον Δεν υπαρχει σωστο η λαθος, ο καθενας χρησιμοποιει τα εργαλεια που τον βολευουν και για τον σκοπο
που τον βολευουν, η καθε εντολη ειναι για προβολη καθε devs για παραδειγμα df -alh εμφανιζει τα /dev
του εσωτερικου συστηματος που εχουν γινει mount,

και μες τους εξωτερικους δισκους ενω ειναι
προσαρτισμενοι απλα δεν εχουν γινει mount στο εσωτερικο συστημα να φαινονται,

οταν κανεις διπλο κλικ πανω τους τοτε φαινονται στο εσωτερικο του συστηματος και τοτε τις εμφανιζει στο τερματικο με την λιστα /devs,

αντιθετα οταν ειναι προσαρτισμενοι αλλα δεν εχουν γινει startup στο συστημα με blkid τους βλεπεις κανονικα ακομα
το /dev/sda που δεν εχει κανενα filesystem τον βλεπει κανονικα.


2ον οτι δουλεια κανει το gparted το ιδιο μπορεις να κανεις με το τερματικο, το οτι σου αργησε ειναι
επειδη εδωσες την εντολη mkfs.ntfs /dev/sdb, οτι εντολη χρησιμοποιει το gparted μπορεις και εσυ με το τερματικο

Σύστημα Lenovo_G510 i3-4100M 2,50ghz hd4600 with amd radeon m230 1GB hdd 1TB Ram 16GB
OS Dual Boot windows 8 with Arch kernel 4.18.1
By the way my System-Restore Linux project https://sourceforge.net/projects/archsnapshot/
Γνώσεις linux ικανοποιητικές
Άβαταρ μέλους
kyknos123
babeTUX
babeTUX
 
Δημοσιεύσεις: 56
Εγγραφή: 06 Δεκ 2016, 13:41
Εκτύπωση

Re: Φορματ δίσκου μέσω τερματικού.

Δημοσίευσηαπό Tassos10 » 05 Ιαν 2017, 22:26

Σε ευχαριστώ φίλε για ακόμη μια φορά, για όλες τις πολύ ενδιαφέρουσες πληροφορίες και τη βοήθεια.
Ότι μπορώ να χρησιμοποιήσω την εντολές του GParted, ναι σίγουρα προς θεού, απλώς το ανέφερα προς σχολιασμό και μήπως είναι καλύτερες για την δουλειά που θέλω.

Η εντολή mkfs είναι από την φύση της τόσο αργή δηλαδή; Ξέρουμε το γιατί; Κάνει μήπως τίποτα καλύτερο από ότι η mkntfs που χρησιμοποιεί το GParted για διαμόρφωση σε NTFS ; ( Σίγουρα μάλλον και από το όνομα της κιόλας η mkntfs είναι εξειδικευμένη για NTFS )
Διότι με παραξενεύει ο χρόνος εκτέλεσης της.

Πρόσθεσα στη αρχική δημοσίευση και τον χειροκίνητο τρόπο όπου κάνουμε mount και umount ένα δίσκο. ( Το αναφέρω εδώ για να το παρατηρήσετε και να μου πείτε την άποψη σας. )

Όμως κάτι ενδιαφέρον που μου ήρθε μόλις στο μυαλό είναι το εξής :
Πως θα μπορούσαμε να κάναμε το σύστημα κατά την εκκίνηση να προσαρτά αυτόματα τους δίσκους που είναι συνδεδεμένους. Εδώ θα πρέπει μάλλον να κάνουμε ένα scriptάκι όπου πρώτα να βλέπει τι είναι συνδεδεμένο και έπειτα, να το προσαρτά, σωστά;
Spoiler: show
1 Γνώσεις Linux: Πρώτα βήματα ┃ Προγραμματισμού: Πρώτα βήματα ┃ Αγγλικών: Ικανοποιητικό
2 Ubuntu 12.04 precise 3.2.0-50-generic 64bit (el_GR.UTF-8, Unity ubuntu), Ubuntu 3.2.0-49-generic
3 Intel Core2 Quad CPU Q9400 2.66GHz ‖ RAM 3954 MiB ‖ ASRock G31M-S
4 nVidia G92 [GeForce 9800 GT] [10de:0614] {nvidia}
5 eth0: Realtek RTL8101E/RTL8102E PCI Express Fast Ethernet controller [10ec:8136] (rev 02)
Tassos10
dudeTUX
dudeTUX
 
Δημοσιεύσεις: 472
Εγγραφή: 29 Μαρ 2010, 10:43
Εκτύπωση

Re: Φορματ δίσκου μέσω τερματικού.

Δημοσίευσηαπό kyknos123 » 05 Ιαν 2017, 23:07

οχι το mkfs.ntfs δεν ειναι σε τιποτα αργο απο το mkntfs απλα σου διαφευγει μια βασικη πληροφορια το mkfs.ntfs πλην του ext2-3 και 4 χρησιμοποιει by default passage zeros, και το σωστο φορματ αυτο ειναι δηλαδη δεν κανει απλα φορματ γραφει κενα bytes zeros στον σκληρο για να διαγραψει τις παλιες πληροφοριες περναει απο πανω καινουργια κενα δεδομενα απο πανω του σε ολα τa blocks μεχρι να γεμισει ο δισκος, και οσο πιο μεγαλος σε χωρητικοτητα ο δισκος καταλαβαινεις απαιτει περισσοτερο χρονο.

Στα windows xp αν θυμηθουμε στο φορματ επαιρνε πολυ χρονο γιατι εγραφε τυχαια περασματα πανω στον σκληρο, απο τα windows 7 και μετα η ms καθιερωσε το quick format οποτε μην μπερδευεσαι απο αυτο, αν γκουγκλαρεις για secure erase data hdd σε φορουμς προτρεπουν μεχρι και 4 περασματα zero bytes και σε linux περιβαλλον πολλοι συμβουλευουν για ολικη διαγραφη δεδομενων για να μην μπορει κανεις να ανακτησει τα σβησμενα δεδομενα μας σε περιπτωση που πουλησουμε τον σκληρο σε αλλον μεχρι και 7 περασματα με τη μεθοδο dd if=/dev/zero of=/dev/sda, το ποιο λογικο και προτεινωμενο ειναι μεχρι 3, δηλαδη στην περιπτωση σου ο 4TB δισκος υπολογισε 3χ4=12TB πρεπει να γραφτουν, 12TB ε νομιζω θελει και παρα πολυ χρονο, στο slow format 1 περασμα 4TB λογικο το θεωρω να αργει.

Oσο για automount partitions τα δηλωνεις στο fstab http://askubuntu.com/questions/164926/how-to-make-partitions-mount-at-startup-in-ubuntu-12-04
Σύστημα Lenovo_G510 i3-4100M 2,50ghz hd4600 with amd radeon m230 1GB hdd 1TB Ram 16GB
OS Dual Boot windows 8 with Arch kernel 4.18.1
By the way my System-Restore Linux project https://sourceforge.net/projects/archsnapshot/
Γνώσεις linux ικανοποιητικές
Άβαταρ μέλους
kyknos123
babeTUX
babeTUX
 
Δημοσιεύσεις: 56
Εγγραφή: 06 Δεκ 2016, 13:41
Εκτύπωση


Επιστροφή στο Λειτουργικό Σύστημα