Gunung kesalahan “bukan sebuah perangkat block”

22

Saya mencoba untuk membuat olddirdiakses dari newdirdengan perintah mount:

mount olddir newdir

Mengapa saya mendapatkan error berikut?

mount: olddir bukan sebuah perangkat block

Juuso Ohtonen
sumber

Jawaban:

15

me-mount atase memblokir perangkat penyimpanan yang berisi filesystem ke direktori, yang tidak apa yang Anda coba lakukan, maka pesan kesalahan. Yang Anda inginkan adalah membuat tautan dari nama direktori baru ke nama lama yang ada. Untuk itu Anda harus menggunakan lnperintah untuk membuat tautan simbolik.

ln -s olddir newdir
Kyle Jones
sumber
Saya mencoba apa yang disarankan, tapi bukannya menghubungkan dari olddir ke newdir, itu membuat symlink disebut olddir dalam newdir. Jadi misalnya, setelah melakukan ln -s /olddir /newdirsaya berakhir dengan / newdir / olddir @ yang terhubung ke / olddir. Bagaimana saya membuatnya melakukan apa yang Anda katakan?
trusktr
newdir haruslah nama yang ingin Anda buat yang menunjuk kembali ke olddir . newdir seharusnya belum ada.
Kyle Jones
Aku benar-benar mengerti apa yang Anda maksud, dan itulah apa yang saya coba lakukan, tapi itu melakukan sesuatu yang benar-benar aneh, benar-benar berbeda. /olddirada, dan /newdirtidak ada. Lalu, setelah saya jalankan ln -s /olddir /newdir, itu membuat /newdir/olddirtautan ke mana /olddir. Saya tidak ingin itu dibuat /newdir/olddir. Saya hanya ingin membuatnya /newdir, yang harus ditautkan /olddir, tapi bukan itu yang terjadi. Jadi, bukannya membuat /newddir, itu membuat /newdir/olddir. Sangat aneh !!! Dapatkan yang saya maksud?
trusktr
26

Di Linux seseorang dapat melakukan bind mount , yang akan memecah direktori yang ada ke titik mount baru.

mount --bind <olddir> <mountpoint>

Solaris mendukung sintaks alternatif:

mount -F lofs <olddir> <mountpoint>

* BSD menggunakan mount_nullsebagai gantinya (meskipun tidak datang dengan OS X).

mount_null <olddir> <mountpoint>
Ignacio Vazquez-Abrams
sumber
1
Jawabannya tepat!
trusktr
2

Jika Anda mencoba memasang HDD / SDD logis

  • I dual boot: Windows 10 / Ubuntu
  • Saya menemukan ini mencari cara untuk me-mount drive Windows saya di Linux

Langkah Diambil

  • tunjukkan blok perangkat

    ℹ️ HDD / SDD Anda adalah perangkat penyimpanan blok

    sudo blkid
    
    /dev/sda5: UUID="a6aa3891-1dc2-439a-b449-b9b1848db028" TYPE="ext4" PARTUUID="e4887e0f-05"
    /dev/sda1: LABEL="System" UUID="C6F4E92AF4E91E05" TYPE="ntfs" PARTUUID="e4887e0f-01"
    /dev/sda2: LABEL="Windows" UUID="4ABAF478BAF461BD" TYPE="ntfs" PARTUUID="e4887e0f-02"
    
  • Dalam kasus saya, saya ingin memasang perangkat yang berlabel "Windows" /dev/sda2

Apa yang tidak berhasil

  • Ternyata saya membalikkan mountargumen perintah untuk mendapatkan keluhan "bukan perangkat blok"
    mkdir Windows
    sudo mount Windows /dev/sda2
    mount: /dev/sda2: /home/casey/Windows is not a block device.
    

Apa yang melakukan pekerjaan 🤦♂️️

  • mount bekerja seperti bos ketika Anda membuat daftar argumen dalam urutan yang benar!
    sudo mount /dev/sda2 Windows 
    cd Windows 
    ls
    Config.Msi                hiberfil.sys   Intel         pagefile.sys   ProgramData     'Program Files (x86)'  '$Recycle.Bin'  'System Volume Information'   WCH.CN
    'Documents and Settings'   home           msdia80.dll   PerfLogs      'Program Files'   Recovery               swapfile.sys    Users                        Windows
    
fusi27
sumber
1
Terima kasih, saya membalikkan pesanan juga
user3804598
0

Saat digunakan mount shareddir newdir, saya mendapatkan yang sama, kemudian saya menunjuk host server nfs untuk me-mount, ternyata ok. Perintahnya seperti:

mount host:shareddir newdir
nanxj
sumber