Cara Memasang dan Melepas Perangkat Penyimpanan dari Terminal Linux
Sistem file di Linux dan sistem operasi mirip Unix seperti macOS dapat dipasang, dilepas, dan dipasang kembali menggunakan terminal. Ini adalah alat yang kuat dan serbaguna — inilah semua yang perlu Anda ketahui.
Sistem File Linux
Sistem file di Linux, macOS, dan sistem operasi mirip Unix lainnya tidak menggunakan pengenal volume terpisah untuk perangkat penyimpanan seperti, katakanlah, Windows. Windows menetapkan setiap volume huruf drive seperti C: atau D: dan sistem file untuk setiap volume adalah pohon direktori yang ada di bawah huruf drive itu.
Di Linux, sistem file adalah pohon direktori all-in-one. Perangkat penyimpanan yang dipasang memiliki sistem file yang dicangkokkan ke pohon itu sehingga tampaknya menjadi bagian integral dari satu sistem file yang kohesif. Sistem file yang baru dipasang akan dapat diakses melalui direktori tempatnya dipasang. Direktori itu disebut titik pemasangan untuk sistem file itu.
Banyak sistem file dipasang secara otomatis pada saat boot atau saat itu juga sebagai volume penyimpanan yang terhubung ke komputer selama runtime. Admin sistem yang berhati-hati dapat menonaktifkan fitur pemasangan otomatis waktu proses sehingga mereka dapat mengontrol koneksi ke sistem.
Ini berarti perangkat penyimpanan yang terhubung selama runtime mungkin tidak dipasang secara otomatis dan perlu dipasang secara manual. Memasang sistem file secara manual memungkinkan Anda membuat keputusan tentang sistem file tersebut, seperti di mana titik pemasangannya dan apakah sistem file akan menjadi hanya-baca atau tulis-baca.
Apakah itu karena kebutuhan atau melalui pilihan, perintah mount
, umount
dan remount
memberi Anda kemampuan untuk mengendalikan aspek penting dari sistem Linux Anda ini.
Interogasi Sistem File Anda Dengan mount
Mount memiliki banyak pilihan, tetapi untuk mendaftar semua sistem file yang dipasang di komputer Anda tidak memerlukan pilihan sama sekali. Cukup ketik mount
dan tekan Enter:
mount
akan mencantumkan semua sistem file yang terhubung di jendela terminal.
Mungkin sulit untuk memilih melalui dump data tersebut untuk menemukan apa yang Anda cari.
Anda dapat mempersempit keluaran dengan meminta mount
untuk mendaftar hanya sistem file yang Anda minati. Opsi -t
(tipe) memberi mount
tahu tipe sistem file apa yang akan dilaporkan.
mount -t tmpfs
mount -t ext4
Sebagai contoh, kami hanya meminta mount
untuk mencantumkan tmpfs
sistem file. Kami mendapatkan hasil yang jauh lebih mudah dikelola.
Sistem tmpfs
file tampak seolah-olah itu adalah sistem file yang dipasang dan biasa tetapi sebenarnya disimpan dalam memori volatil — tmp berarti sementara — bukan pada perangkat penyimpanan persisten.
Anda ingin mengganti tmpfs
parameter untuk jenis file yang Anda minati.
Kami juga telah mengeluarkan perintah untuk mencantumkan ext4
sistem file. Pada komputer uji ini, ada satu ext4
sistem file, yaitu pada perangkat sda
— perangkat penyimpanan pertama yang dipasang, biasanya hard drive utama — dan dipasang /
, yang merupakan root dari pohon sistem file.
Indikator lainnya berarti:
- rw : Sistem file dapat dibaca dan ditulis.
- Relatime : Kernel menggunakan skema yang dioptimalkan untuk merekam akses file dan modifikasi meta-data.
- error = remount -o : Jika error yang cukup serius terdeteksi, sistem file akan dipasang kembali dalam mode read-only untuk memungkinkan diagnosis.
TERKAIT: Sistem File Linux Mana yang Harus Anda Gunakan?
Interogasi Sistem File Anda Dengan df
The df
perintah juga dapat digunakan untuk menampilkan sistem yang berkas yang dipasang dan di mana mereka mount point berada.
df
digunakan tanpa parameter memberi Anda masalah kelebihan informasi yang sama seperti mount
. Sebagai contoh, di Ubuntu Linux, ada squashfs
sistem file semu yang dibuat untuk setiap aplikasi yang telah diinstal menggunakan snap
perintah. Siapa yang ingin melihat semua itu?
Untuk memaksa df
mengabaikannya — atau jenis sistem file lainnya — gunakan opsi -x
(kecualikan):
df -x squashfs
Anda dapat dengan mudah melihat nama sistem file, kapasitasnya, ruang yang digunakan dan kosong, serta titik kaitnya.
TERKAIT: Cara Melihat Ruang Disk dan Penggunaan Disk Gratis Dari Terminal Linux
Memasang Ulang Semua Sistem File di fstab
Semua sistem file yang dipasang pada saat boot memiliki entri dalam sebuah file bernama fstab
, yang merupakan tabel sistem file yang terletak di dalamnya /etc
.
Anda dapat menggunakan mount
untuk memaksa "menyegarkan" dan memasang kembali semua sistem file yang terdaftar di fstab
. Dalam kondisi pengoperasian normal hal ini tidak diperlukan. Itu benar-benar menjadi miliknya sendiri jika Anda memiliki masalah dengan banyak sistem file.
Anda harus menggunakan sudo
, jadi Anda akan diminta memasukkan kata sandi.
sudo mount -a
Memang, pada komputer yang beroperasi dengan benar, ini sedikit mengecewakan.
Namun, pada komputer dengan masalah sistem file, pemasangan ulang mungkin dapat mengatasi masalah tersebut. Jika itu tidak terjadi, setidaknya Anda akan mendapatkan pesan diagnostik di layar dan di log sistem yang akan memandu Anda untuk mencari penyebab masalah.
TERKAIT: Apa Itu File fstab Linux, dan Bagaimana Cara Kerjanya?
Memasang Gambar ISO
Mudah untuk memasang citra ISO sehingga Anda dapat mengakses isinya sebagai bagian dari sistem file.
Ini akan bekerja dengan gambar ISO apa pun. Dalam contoh ini, kami kebetulan menggunakan Tiny Core Linux ISO karena ukurannya yang kecil dan cepat untuk diunduh. (Distribusi Linux kecil dengan GUI, dalam 18 MB! Anda mungkin memiliki file .mp3 yang lebih besar dari itu.)
Di direktori yang sama dengan image ISO, jalankan perintah ini. Gantikan nama file ISO yang Anda pasang.
sudo mount -t iso9660 -o loop TinyCore-current.iso / mnt
Karena kami perlu menggunakan sudo
Anda harus memasukkan kata sandi Anda.
Opsi -t
(type) memberi mount
tahu jenis sistem file apa yang kami pasang. Ini adalah file ISO, jadi kami menyediakan iso9660
penentu tipe.
The -o
(pilihan) flag digunakan untuk melewatkan parameter tambahan untuk mount
. Parameter kami adalah loop
.
Kami menggunakan loop
untuk memaksa mount
menggunakan file perangkat loop untuk terhubung ke image ISO kami. File perangkat loop memungkinkan file (seperti image ISO) untuk dipasang dan diperlakukan seolah-olah itu adalah perangkat penyimpanan.
File perangkat adalah file khusus yang digunakan sebagai antarmuka sehingga perangkat yang terhubung tampak seperti file sistem file normal. Ini adalah bagian dari segalanya di Linux adalah filosofi desain file.
Ada banyak jenis file perangkat. Kami melihatnya sebelumnya ketika kami mencatat bahwa satu-satunya ext4
sistem file pada mesin uji ini telah dipasang /
dan dipanggil sda
.
Untuk lebih akuratnya, ext4
sistem file itu ada pada perangkat penyimpanan yang terhubung ke sistem file melalui /dev/sda
file perangkat dan sistem file pada perangkat penyimpanan yang dipasang di /
.
Kami harus memberikan nama image ISO tentu saja, dan kami perlu memberi mount
tahu di mana kami ingin sistem file dipasang. Kami telah memilih /mnt
.
Gambar ISO sudah terpasang. Pengingat bahwa citra ISO selalu dipasang dalam mode hanya-baca muncul di jendela terminal.
Menjelajahi Citra ISO
Sekarang setelah dipasang, kita dapat menavigasi direktori dalam citra ISO dengan cara yang sama seperti bagian lain dari sistem file. Mari daftar file di image ISO. Itu dipasang di /mnt
ingat.
ls / mnt
ls / mnt / cde /
Melepas Gambar ISO
Untuk melepas sistem file yang dipasang, gunakan umount
perintah. Perhatikan bahwa tidak ada "n" antara "u" dan "m" —perintahnya adalah umount
dan bukan "lepaskan".
Anda harus memberi tahu umount
sistem file mana yang Anda lepaskan. Lakukan dengan memberikan titik pemasangan sistem file.
sudo umount / mnt
Tidak ada berita adalah kabar baik. Jika tidak ada yang perlu dilaporkan, semuanya berjalan lancar.
Membuat Mount Point
Anda dapat membuat dan menggunakan titik pemasangan Anda sendiri. Kami akan membuat satu yang disebut isomnt
dan memasang gambar ISO kami di sana. Titik pemasangan hanyalah sebuah direktori. Jadi kita bisa gunakan mkdir
untuk membuat titik pemasangan baru kita.
sudo mkdir / media / dave / isomnt
Sekarang kita dapat menggunakan format perintah yang sama seperti sebelumnya untuk memasang citra ISO kita. Kali ini kami tidak akan memasangnya /mnt
, kami akan memasangnya di /media/dave/isomnt/
:
sudo mount -r -t iso9660 -o loop TinyCore-current.iso / media / dave / isomnt /
Kami sekarang dapat mengakses sistem file yang dipasang dari titik pemasangan baru kami.
ls / media / dave / isomnt / cde / opsional
Tapi jalur itu menjadi sangat panjang. Itu akan cepat melelahkan. Mari kita lakukan sesuatu tentang itu.
Mengikat Mount Point
Anda dapat mengikat titik kait ke direktori lain. Sistem file yang dipasang kemudian dapat diakses baik melalui titik pemasangan asli atau melalui direktori yang terikat padanya.
Inilah contoh yang berhasil. Kami akan membuat direktori di direktori home kami bernama iso
. Kemudian kita akan mengikat titik mount dari image ISO /media/dave/isomnt
ke iso
direktori baru di direktori home kita.
Kami akan dapat mengakses citra ISO melalui titik pemasangan asli /media/dave/isomnt
dan melalui iso
direktori baru . Opsi -B
(bind) membutuhkan nama mount point dan nama direktori untuk mengikatnya.
mkdir iso
sudo mount -B / media / dave / isomnt / iso
ls iso
ls / media / dave / isomnt
cd iso
ls
cd cde
Menggunakan umount With Binds
Sistem file yang titik pemasangannya terikat ke direktori lain memerlukan pelepasan dari titik pemasangan dan titik ikatannya.
Bahkan jika kita melepas sistem file dari titik pemasangan aslinya, Anda masih dapat mengakses sistem file dari direktori terikatnya. Sistem file juga harus dilepas dari direktori itu.
sudo umount / media / dave / isomnt
ls iso
sudo umount iso
ls iso
Memasang Floppy Disk
Floppy drive (dengan floppy disk di dalamnya) adalah perangkat penyimpanan. Itu berarti file perangkat sd (untuk perangkat penyimpanan) akan digunakan untuk menghubungkan ke perangkat fisik. Kita harus menetapkan mana file perangkat sd gratis berikutnya. Kita dapat melakukan ini dengan menyalurkan output df
melalui grep
dan mencari entri dengan "sd" di dalamnya.
df | grep / dev / sd
Di komputer ini, ada satu file perangkat sd yang digunakan. Ini dia /dev/sda
. File perangkat sd berikutnya yang dikeluarkan adalah /dev/sdb
. Artinya ketika kita menghubungkan floppy drive ke komputer, Linux akan menggunakannya /dev/sdb
untuk menghubungkan ke floppy drive.
Kami akan memberitahu mount
untuk me-mount sistem file pada floppy disk dalam floppy drive yang terhubung ke /dev/sdb
ke /mnt
mount point.
Masukkan floppy disk ke dalam floppy drive dan hubungkan floppy drive ke port USB di komputer. Keluarkan perintah berikut:
sudo mount / dev / sdb / mnt
Label Sistem File
Kita dapat menggunakan opsi -l
(label) dengan mount
untuk mengetahui apa, jika ada, label yang dilampirkan ke sistem file. Label tidak lebih dari nama sembarang. Mereka tidak memiliki tujuan fungsional.
Kami menggunakan opsi -t
(tipe) untuk meminta mount
laporan hanya pada vfat
sistem file.
mount -l -t vfat
Anda akan menemukan label dalam tanda kurung siku di akhir daftar. Label untuk floppy drive ini adalah NORTUN.
Kita bisa mengakses floppy drive melalui /mnt
mount point.
cd / mnt
ls
ls -l AMATCH.C
Floppy berisi file kode sumber bahasa C. Stempel tanggal dari satu file menunjukkan bahwa file tersebut terakhir diubah pada Oktober 1992. Mungkin lebih tua dari kebanyakan pembaca kami. (Tak perlu dikatakan lagi arti NORTUN sebagai label hilang dalam kabut waktu.)
Jika kita mengulangi perintah df
piped through grep
untuk membuat daftar file perangkat sd, kita akan melihat bahwa sekarang ada dua di antaranya.
df | grep / dev / sd
Floppy drive kami ditampilkan sebagai terpasang /dev/sdb
seperti yang kami harapkan. Sistem file pada floppy disk di drive dipasang di /mnt
.
Untuk melepas floppy yang kami gunakan umount
dan berikan file perangkat sebagai parameter.
sudo umount / dev / sdb
Opsi Malas umount
Apa yang terjadi jika Anda (atau pengguna lain) menggunakan sistem file saat Anda mencoba melepaskannya? Pelepasan akan gagal.
sudo umount / dev / sdb
Gagal karena direktori kerja pengguna saat ini berada dalam sistem file yang dia coba lepaskan. Linux cukup pintar untuk tidak membiarkan Anda melihat cabang tempat Anda duduk.
Untuk mengatasinya gunakan opsi -l
(malas). Hal ini menyebabkan umount
menunggu hingga sistem file dapat dilepas dengan aman.
sudo umount -l / dev / sdb
ls
cd ~
ls / mnt
Meskipun umount
perintah dikeluarkan, sistem file masih terpasang, dan pengguna dapat membuat daftar file seperti biasa.
Segera setelah pengguna mengubah direktori ke direktori home mereka, sistem file floppy dilepaskan dan di-unmount. Mencoba untuk membuat daftar file /mnt
tidak membuahkan hasil.
Memasang Berbagi Samba
Samba adalah sekumpulan layanan perangkat lunak yang memungkinkan pembagian jaringan diakses secara bergantian antara sistem operasi mirip Linux dan Unix, dan sistem operasi Windows.
Menyiapkan Samba berada di luar cakupan artikel ini. Tetapi, jika Anda memiliki akses resmi ke share Samba yang telah disediakan untuk Anda, berikut adalah cara Anda memasangnya di Linux.
Sebuah Raspberry Pi terhubung ke jaringan yang sama dengan mesin uji yang memiliki share Samba di dalamnya. Ini adalah direktori bernama Cadangan yang diberi nama Samba "share". Mari buat koneksi SSH ke sana dan lihat konten direktori bersama. Direktori bersama ada di stik USB yang dipasang di Pi.
Nama pengguna adalah pi
dan nama jaringan Raspberry Pi marineville.local
.
ssh [email protected]
ls / media / pi / USB64 / Backup
keluar
Pengguna mengeluarkan SSH
perintah dan diminta memasukkan kata sandi Raspberry Pi mereka.
Mereka memberikan kata sandi mereka dan diautentikasi. Jendela terminal berubah menjadi pi@marineville
karena terhubung ke Raspberry Pi.
Mereka mencantumkan konten direktori bersama di /media/pi/USB64/Backup
. Isinya adalah dua direktori, satu dipanggil dave
dan satu lagi dipanggil pat
. Jadi sekarang kita tahu apa yang diharapkan ketika kita memasang share Samba.
Mereka mengetik exit
untuk memutuskan sambungan dari Raspberry Pi dan prompt berubah kembali ke dave@howtogeek
.
Untuk menggunakan Samba, Anda harus menginstal cifs-utils
paketnya.
Gunakan apt-get
untuk menginstal paket ini ke sistem Anda jika Anda menggunakan Ubuntu atau distribusi berbasis Debian lainnya. Di distribusi Linux lainnya, gunakan alat manajemen paket distribusi Linux Anda.
sudo apt-get install cifs-utils
Setelah instalasi selesai, pasang share dengan perintah seperti berikut, ubah alamat IP, nama share dan mount point (yang pasti sudah ada) agar sesuai dengan keadaan Anda.
sudo mount -t cifs -o credentials = / etc / samba / creds, uid = 1000, gid = 1000 //192.168.4.13/share / media / dave / NAS
Mari kita uraikan bagian-bagian dari perintah itu.
- -t cifs : Jenis sistem file adalah cifs.
- -o credentials = / etc / samba / creds, uid = 1000, gid = 1000 : Parameter opsi adalah jalur ke file bernama
creds
yang diamankan dan berisi nama pengguna dan kata sandi untuk pengguna Raspberry Pi; ID Pengguna (UID) dan ID Grup (GID) yang digunakan untuk mengatur pemilik dan grup root sistem file. - //192.168.4.13/share : Lokasi jaringan perangkat dengan share Samba di atasnya, dan nama Samba dari direktori bersama. Akar dari share adalah direktori yang dipanggil
Backup
, tetapi nama share Samba-nya diatur keshare
. - / media / dave / NAS : Nama titik pemasangan. Anda harus membuat titik pemasangan terlebih dahulu.
Dengan mengakses titik pemasangan kami saat /media/dave/NAS
kami mengakses direktori bersama di Raspberry Pi di seluruh jaringan. Kita bisa melihat dua folder di Raspberry Pi bernama dave
dan pat
.
cd / media / dave / NAS
Membuat dan Memasang Sistem File
Anda dapat menggunakan dd
perintah untuk membuat file gambar, lalu gunakan mkfs
untuk membuat sistem file di dalamnya. Sistem file itu kemudian dapat dipasang. Ini adalah cara yang baik untuk berlatih dan bereksperimen mount
.
Kami menggunakan opsi if
(file input) untuk memberitahu dd
untuk menggunakan aliran nilai nol dari /dev/zero
sebagai file input.
The of
(output file) adalah file baru bernama geek_fs
.
Kami menggunakan opsi bs
(ukuran blok) untuk meminta ukuran blok 1 MB.
Kami menggunakan count
opsi untuk memberi tahu dd
untuk menyertakan 20 blok di file output.
dd if = / dev / zero of./geek_fs bs = 1M count = 20
Itu menciptakan file gambar kami untuk kami. Ini tidak berisi apa-apa selain nilai nol.
Kita dapat membuat sistem file yang berfungsi di dalam geek_fs
file menggunakan mkfs
perintah. Opsi -t
(type) memungkinkan kita memilih jenis sistem file . Kami sedang membuat ext4
sistem.
mkfs -t ext4 ./geek_fs
Hanya itu yang diperlukan untuk memiliki sistem file yang berfungsi.
Mari kita pasang /media/dave/geek
dan kemudian gunakan chown
untuk mengatur pemilik dan kepemilikan grup untuk mengizinkan akses ke sana.
sudo mount ./geek_fs / media / dave / geek
sudo chown dave: pengguna / media / dave / geek
Apakah itu bekerja? Mari kita ubah ke sistem file baru dan salin file untuk dilihat.
cd / media / dave / geek
cp / etc / fstab.
ls -l
Kami dapat mengubah direktori menjadi sistem file baru, dan kami berhasil membuat salinan /etc/fstab
file tersebut. Bekerja!
Jika kami menggunakan mount
untuk membuat daftar sistem file yang dipasang tetapi membatasi outputnya ke ext4
sistem file menggunakan opsi -t
(tipe), kami akan melihat bahwa sekarang ada dua ext4
sistem file yang dipasang .
mount -t ext4
Memasang Kembali Sistem File
Remount sistem file menggunakan -o remount
opsi. Ini biasanya dilakukan untuk mengubah sistem file dari status baca-saja (pengujian) ke status baca-tulis (produksi).
Mari pasang kembali floppy drive kita. Kali ini kita akan menggunakan -r
flag (read-only). Kemudian kita akan pipa mount
melalui grep
dan melihat rincian dari sistem floppy berkas.
sudo mount -r / dev / sdb / mnt
mount | grep / mnt
Seperti yang Anda lihat, yang disorot ro
menunjukkan sistem file dipasang hanya-baca.
Menggunakan -o remount
opsi dengan rw
flag (baca-tulis) kita dapat melepas dan memasang kembali sistem file dengan pengaturan baru, semuanya dalam satu perintah.
sudo mount -o remount, rw / mnt
Mengulangi perpipaan mount
melalui grep
menunjukkan kepada kita bahwa ro
telah diganti oleh rw
(disorot). Sistem file sekarang dalam mode baca-tulis.
mount | grep / mnt
(Tidak) Memindahkan Sistem File
Anda dulu dapat melepas sistem file dan memasangnya kembali di titik pemasangan lain dengan satu perintah.
Opsi -M
(pindah) mount
ada secara khusus untuk memungkinkan Anda melakukan itu. Tetapi itu tidak lagi berfungsi di distribusi Linux yang telah dipindahkan ke systemd
. Dan itulah sebagian besar nama besar.
Jika kami mencoba untuk memindahkan sistem file dari /mnt
ke ./geek
, gagal dan memberikan pesan kesalahan seperti di bawah ini. Mencoba untuk membuat daftar file dalam file ystem melalui ./geek
tidak ada hasil.
sudo mount -M / mnt ./geek
ls ./geek
Solusinya adalah dengan menggunakan opsi -B
(bind) yang kita gunakan sebelumnya untuk mengikat titik pemasangan asli ke titik pemasangan baru.
sudo mount -B / mnt ./geek
ls ./geek
Selain tidak membebaskan titik pemasangan asli, ini akan memiliki hasil praktis yang sama.
Pengamatan Akhir
Menggunakan --make-private
opsi itu adalah mungkin untuk memaksa pindah ke tempat yang dibawa pada systemd
versi Linux. Teknik itu tidak disajikan di sini karena dua alasan.
- Ini mungkin memiliki perilaku yang tidak dapat diprediksi.
- Itu tidak persisten dan perlu diulangi setiap kali reboot.
Devuan Linux menggunakan SysV
init tidak systemd
. Komputer dimuat dengan Devuan versi terbaru dan diuji. Opsi -M
(pindah) bekerja seperti yang diharapkan pada sistem itu.
Terlepas dari systemd
masalah dengan opsi -M
(pindah), Anda harus menemukan penggunaan mount
dan umount
langsung. Ini adalah perintah yang bagus untuk digunakan saat menghadapi sistem yang rusak, dan Anda harus mulai menyatukan kembali sistem file dengan tangan.