web-dev-qa-db-ja.com

再起動後にフォルダリンクが壊れる

Ubuntu 14.04.1を既存のパーティションのあるドライブにインストールしました。パーティションの1つ(/ media/emily/Gaming)にインストールされたゲームの1つへのリンク/ショートカットを作成したい。 .jarファイル(FTB.jar)のリンクを作成し、そのリンクをデスクトップに移動すると機能します。しかし、再起動後、リンクが壊れているというメッセージが表示され、リンクを破棄するように求められます。

ドライブは現在、マウントされていると言います。これが起こっている理由に関する提案はありますか?

私はLinuxが初めてなので、何が起こっているのか、それを修正するための提案の詳細な説明をいただければ幸いです。

再起動後:

$ lsblk
NAME    MAJ:MIN  RM  SIZE    RO  TYPE  MOUNTPOINT
sda     8:0      0   298.1G  0   disk
├─sda1  8:1      0   28G     0   part  /
├─sda2  8:2      0   1K      0   part
├─sda3  8:3      0   6.5G    0   part  [SWAP]
├─sda4  8:4      0   65.6G   0   part  /home
├─sda5  8:5      0   100G    0   part
└─sda6  8:6      0   98G     0   part  
sr0     11:0     1   1024M   0   rom

$ cat /etc/fstab
# /etc/fstab: static file system information.
#
# Use 'blkid' to print the universally unique identifier for a
# device; this may be used with UUID= as a more robust way to name devices
# that works even if disks are added and removed. See fstab(5).
#
# <file system> <mount point>   <type>  <options>       <dump>  <pass>
# / was on /dev/sda1 during installation
UUID=2fee48ec-8d63-4125-9eca-5b2e1061602d /               ext4    errors=remount-ro 0       1
# /home was on /dev/sda4 during installation
UUID=b3804a77-7d80-40a6-8f92-212bed16a151 /home           ext4    defaults        0       2
# swap was on /dev/sda3 during installation
UUID=8fff87b8-2128-48ae-bfd4-bc959458f99d none            swap    sw              0       0

ゲームパーティションからリンクを作成した後:

$ mount
/dev/sda1 on / type ext4 (rw,errors=remount-ro)
proc on /proc type proc (rw,noexec,nosuid,nodev)
sysfs on /sys type sysfs (rw,noexec,nosuid,nodev)
none on /sys/fs/cgroup type tmpfs (rw)
none on /sys/fs/Fuse/connections type fusectl (rw)
none on /sys/kernel/debug type debugfs (rw)
none on /sys/kernel/security type securityfs (rw)
udev on /dev type devtmpfs (rw,mode=0755)
devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=0620)
tmpfs on /run type tmpfs (rw,noexec,nosuid,size=10%,mode=0755)
none on /run/lock type tmpfs (rw,noexec,nosuid,nodev,size=5242880)
none on /run/shm type tmpfs (rw,nosuid,nodev)
none on /run/user type tmpfs (rw,noexec,nosuid,nodev,size=104857600,mode=0755)
none on /sys/fs/pstore type pstore (rw)
/dev/sda4 on /home type ext4 (rw)
binfmt_misc on /proc/sys/fs/binfmt_misc type binfmt_misc (rw,noexec,nosuid,nodev)
systemd on /sys/fs/cgroup/systemd type cgroup         (rw,noexec,nosuid,nodev,none,name=systemd)
gvfsd-Fuse on /run/user/1000/gvfs type Fuse.gvfsd-Fuse (rw,nosuid,nodev,user=emily)
/dev/sda5 on /media/emily/ Gaming type fuseblk (rw,nosuid,nodev,allow_other,default_permissions,blksize=4096)
2
Emily L

Ubuntuでは、最初にNautilusでパーティションをクリックしたときにパーティションが自動的にマウントされ、右クリックして「アンマウント」を選択するとマウント解除されます。マウントされている間、作業リンクを作成できますが、再起動後、再度クリックするまでマウントされません。その後、リンクが機能します。

解決策は、パーティションを明示的にマウントすることです。これにより、選択したディレクトリのファイルシステムに接続されます。そのため、いくつかの手順が必要ですが、特にパーティションがNTFSとしてフォーマットされている場合は、アクセス許可のために少し問題がありますが、いずれも非常に複雑ではありません。

学習のために、ターミナルでmountコマンドを使用し、umountコマンドを使用してアンマウントできます。しかし、最終的には、/etc/fstabに永続的なエントリを作成する必要があります。ただし、そこには実験する方法もあります。mountコマンドの形式を使用して、ファイル内のすべてをマウントし、エラーが発生した場合。好みに合わない場合は、umountコマンドを発行して新しいパーティションをアンマウントし、ファイルを編集してから再試行してください。

これはおそらく明らかではありませんが、後で説明します。

問題の1つは、NTFSパーティションがないため、適切なアクセス許可を取得するために使用するオプションを正確に伝えることができないことです。

さて、mountコマンドが次のような行を与えたことに注意してください。

/dev/sda5 on /media/emily/ Gaming type fuseblk (rw,nosuid,nodev,allow_other,default_permissions,blksize=4096)

しかし、「ゲーム」の前にスペースがある理由はわかりません。これはエラーのように見えますが、使用するディレクトリを作成するため、問題ではありません。

A ...まず、マウントに使用する空のディレクトリを作成する必要があります。存在する必要があるためです。したがって、自動マウントポイントと混同しすぎないようにするには、次のようにディレクトリ/mntの下に作成します。

Sudo mkdir /mnt/gaming
Sudo chown emily:emily /mnt/gaming

私はエミリーがあなたのユーザー名であると仮定しています;そうでない場合は、何でも代用してください。

B ...次のステップは、パーティションのより適切な識別子を見つけることです。 「/ dev/sda5」を使用できますが、変更できるため、これは最も信頼できるラベルではありません。私は明確にするためにディスクラベルを個人的に使用していますが、ほとんどの人はフォーマット時に割り当てられ、常に一意であるUUIDを使用したいようです。このIDを見つけるには、Sudo blkidと入力し、「/ dev/sda5」で始まる行を探します。 UUID="nnnnnnnnnnnnnnnn"のような、数字と数字の組み合わせのあるセクションがあるはずです。これをfstabファイルにコピーします(大きな数字を強調表示し、shift-ctrl-Cを使用してコピーしてから、ファイルに貼り付けます(ただし、後で)。

C ...次に、/etc/fstabを開いて編集します。 geditを使用すると想定しますが、基本的なエディターは問題ありません。 gksu gedit /etc/fstabと入力します(ファイルはルートが所有しているため)。ファイルの最後に行を追加します。

UUID=nnnnnnnnnnnnnn /mnt/gaming ntfs-3g defaults,user_xattr 0 0

D ...保存しますが、ファイルを閉じないでください。ターミナルに移動し、mount -aと入力します。これにより、すべてが/etc/fstabにマウントされ、エラーが発生しないことが期待されます。追加した行でエラーが発生し、理由がわからない場合は、行の先頭にポンド記号(#)を追加して無効にし、保存し、閉じて、投稿してください。

正常に動作する場合は、/mnt/gamingディレクトリを見つけて、パーティションにアクセスできるかどうかを確認してください。そのディレクトリへのリンクを作成してみて、希望どおりに機能するかどうかを確認してください。

これが役立つことを願っています。そうでない場合は、おそらく他の誰かがもっとうまくいくかもしれません。

[〜#〜] edit [〜#〜]

箇条書きを追加しようとすると、書式設定が台無しになりましたが、急いで去らなければならなかったので気づきませんでした。したがって、2行は1行に分離されず、結果は次のようになりました。

 Sudo mkdir /mnt/gaming Sudo chown emily:emily /mnt/gaming

これには気分が悪い。 1つ以上のディレクトリを作成しました-/mnt/gamingSudochown、およびemily:emilyを作成してから、/ mnt /の作成を再試行しましたエラーメッセージが表示されます。いくつかの奇妙なディレクトリ(rootがSudoのために所有している)を除いて、実際の害はありません。 /mnt/gamingを除くそれらはすべて、コマンドを発行したときのディレクトリ(ホームディレクトリ/home/emilyである可能性があります)にあります。準備ができたら削除します。本当にごめんなさい。十分な時間がなかったので、最初は答えたくありませんでした。おそらく、試すのは間違いでした。

編集2

/mnt/gamingと入力すると、システムは「/ mnt」ディレクトリにある「gaming」という名前のファイルを実行しようとしました。ファイルを表示するにはcd /mnt/gamingを実行してからlsを実行するか、Nautilusを使用してファイルシステムのルートディレクトリの下でそのディレクトリを見つける必要があります。

Geditエラーが何であるかはわかりませんが、何にも関連していない可能性があります。 Sudo mount -aと入力した場合、機能する場合は何もしません。これがLinuxの方法です。エラーがある場合、それはあなたに知らせます。それ以外の場合は、期待どおりに静かに実行します。そのため、パーティションが表示されたと仮定すると、機能しました。

解決するまでチェックし続けます

3
Marty Fried