USBメモリをマウントしましたが、そこに書き込むことができません。
OS:Debian Lenny
USBメモリのファイルフォーマット:NTFS

1, /mnt/usbmemディレクトリをアクセス権777で作成する
2, USBメモリをUSBスロットに差し込む
3, GNOMEの「システム」→「コンピュータ」にUSB Flash Diskのアイコンが表示される
4, 「アイコン右クリック」→「プロパティ」で、DriveタブとVolumeタブのマウント・ポイントをusbmemに、ファイルシステムをntfsに設定
5, 「アイコン右クリック」→「ボリュームのマウント」でマウント
6, 素の中身のファイルは表示されるが、そこに新しいファイルやフォルダを作成することができない
7, 「アイコン右クリック」→「プロパティ」→「アクセス権」タブにてアクセス権が読み込み専用となっていたので、変更しようとしたが、「アクセス権を変更できませんでした。」となる。

試行錯誤:
マウントをしている時のみ、/mediaディレクトリにusbmemというフォルダが作成されており、そのアクセス権は555です。このアクセス権を777にすると、
シェル上では「許可されていない操作です」と、変わらずなります。
GNOME上では、右クリックでフォルダの作成メニューがでますが、作成しようとすると「転送先への書き込み権限がありません。」となってしまいます。

NTFSにはlinuxのアクセス権設定が存在しない事が原因かもしれないと考えていますが、何をどうすれば書き込みができるようになるのか分かりません。

というわけでどうか教えてください。

このQ&Aに関連する最新のQ&A

A 回答 (15件中1~10件)

まず、環境がどうなっているのかが不明です。


勝手に想像して確定項目を書きます。
間違っていたら、補足されたし。
1.Debian n.nをHDDのパーティションにインストールして、使用している。
2.USBメモリにNTFSフォマットして、そこに、読み書きしたい。
3.そこでこのマウントコマンドがよく分からないので質問をしている。

ここで、補足して貰う必要があること。
1./etc/fstabのUSBメモリの状態を補足すること。
2.fdisk -lで、USBメモリの物理アドレス(/dev/sdb1等)は何か。
3.NTFSフォマットしなければならない理由。
FAT32フォマットの方が、WINDOWSと、LINUXのデータのやり取りで、
便利がよく、NTFSフォマットでは、特殊なmountコマンドを使用する
ため。
[ヒント]
mount -t ntfs-3g /dev/sdb2 /media/sdb2 -o remove_hiberfile

man mountの説明を読むこと。

どうしてもntfを読み書きの必要がある場合、
man mountを読んでも不明である場合は、不明店を記載すること。
全てを説明する時間も根気もないため。

この回答への補足

すでにvaiduryaさんの回答で、当初の目的は達成できましたが、yakan9さんの回答の、ヒントで書かれている例が若干理解できませんでした。
しかし、より掘り下げて下さっていて、大変ありがたいです。

> 1./etc/fstabのUSBメモリの状態を補足すること。
fstabには記入しておらず、現在手動で行っています。
が、これから頻繁にマウントする時には、yakan9さんの#6のfstabの書き方も参考にさせて頂きます。(実際にはman fstabも見ますが。)

> 2.fdisk -lで、USBメモリの物理アドレス(/dev/sdb1等)は何か。
USBメモリのデバイスは/dev/sdb1です。
もうすでにvaiduryaさんへのお礼で、実際行った手順にも書いてしまいましたが。。

> 3.NTFSフォマットしなければならない理由。
・Windowsとデータをやりとりしたいことと、Windowsで普通に作成されたUSBメモリデータを少ない手順(マウント操作)で行いたい。(今回の試みのUSBメモリがNTFSであったため、これからもNTFSメモリの読み書きが多い事が予想される)
・Windowsがインストールされているパーティションを読み書きしたい(ntfscloneを使ってバックアップとってからやってみるつもりです)。

> [ヒント]
> mount -t ntfs-3g /dev/sdb2 /media/sdb2 -o remove_hiberfile
おお、-tオプションには、ntfs-3gなるものを指定できたんですか。
この場合、ntfs-3gは、
 1 ntfs-3gコマンドのことを意味する?
 2 ntfs-3gというファイルシステムを認識している?
のどちらなのでしょうか。(manpageに載っていませんよね?)

-o remove_hiberfileの説明も、manpageに載っていなかったのですが・・、どういう意味になりますか?

補足日時:2009/05/19 09:23
    • good
    • 0

> 長い間お付き合い下さり、どうもありがとうございました


いえいえ、こちらこそ、勘違いで間違ったことを書いたり、
検証もしないで、UBUNTUができるから、大元のDebianも同じ仕様と
思い込み、-o remove_hiberfileのことも間違ったことを
書いてしまいました。

ここまで書くつもりは、なかったのですが、ここが分からないと具体的に書かれると、それはこうですよ、とついつい書いてしまいました。
うまく技術的なことを聞き出すのがうまいので、ついつい書き過ぎた感がします。
でわでわ。
    • good
    • 1

> 余談ですが、debianのGNOME上からハイバーネートしても電源が落ちてくれない状態なので、


> ハイバーネート用のswapが無いと
こちらの環境は、Debian5.0 swapパーティション1GB、メモリ768MB
で、前回書いた通りの設定で電源ボタンでも、システム→シャットダウン→ハイバネートでも正しく休止状態に入ります。

この回答への補足

余談としたのは、こちらで調べれば解決しそうだけど、お返事遅れちゃうなぁという感じが強かったのですが、なかなか時間がかかりそうです・・。

こちらは
 Debian 5.0.1
 swapパーティションなし・・これが原因ぽ
 メモリ4GB  4GBあるからswapなくていーやと思ってました
です。
(ぐは、yakan9さんのように環境を書いてはじめて原因に気づきました)

swapつくってから試してみます

補足日時:2009/05/20 10:12
    • good
    • 0
この回答へのお礼

時間が掛かってお返事送れました。
linuxでハイバーネートできないという問題は、直接には-o remove_hiberfileとは関係なかったのですが、こちらも解決しました。

原因としては、「OSインストール時にswapを作成していなかったため、後からswapを作成しても、ハイバーネーション時にそのswapを使用していなかったから」、でした。
dpkg-reconfigure uswsusp
とした後、適当に設定した後に解決しました。多分、ハイバーネーション時に使用するメモリサイズの設定を行った事が影響したのだと思います。
(私の遭遇した症状は、swapパーティションをswapoffしてからハイバーネートすると再現できます)

で、-o remove_hiberfileのほうは、あいかわらずだめです。
fstabに定義しているのではなく、
yakan9さんの#9の回答にあった
mount -t ntfs-3g -o remove_hiberfile /dev/hda1 /media/hda1
の書き方で、
mount -t ntfs-3g -o remove_hiberfile /dev/sda1 /mnt/vista
としていました。

あいかわらずだめではあるのですが、man ntfs-3gで、remove_hiberfileの記述を見つけました。
「Use this option for your own responsibility.」という言葉が怖かったので、今後実際にこのオプションは使わないでいこうと思います。(つまりremove_hiberfileは成功しなくてもいい=解決?)

remove_hiberfileオプションは、mountのものではなく、ntfs-3gの仕様のオプションだったということですね。

これで、当初の疑問であった、マウントしたntfsへの読み書きだけでなく、fstabの書き方、mountの-tオプションに指定できるもの、remove_hiberfileオプションはntfs-3gのものであるということを勉強できました。

それだけでなく、ハイバーネートが成功しないのを、さらりと見ぬふりをしていたのも解決できました。
yakan9さん、長い間お付き合い下さり、どうもありがとうございました。

お礼日時:2009/05/21 10:52

> しかし、-o remove_hiberfileでマウントしようとしてもマウントできませんでした。


> Mount is defined because NTFS is marked to be in use.
いろんなことが想定されます。
1.どんなマウントコマンドを入力したか.
2./etc/fstabに、Windowsパーティションのエントリ定義をしたか、
また、そのエントリ定義は、正しいか。
[ヒント]
/dev/hda1 /media/hda1 ntfs defaults 0 0
3./mediaに、hda1エントリを定義したか.
[ヒント]
cd /media
ls -al
mkdir hda1
ls -al

なお、2.→ 3.→ 1.という作業手順は一連のものです。

> 余談ですが、debianのGNOME上からハイバーネートしても電源が落ちてくれない状態なので、
Debian5.0では、ハイバーネートはできます。
システム → 設定 → 電源管理 → 全般
電源ボタンを押したら
ハイバーネートにする
を選択するだけだと思います。
    • good
    • 0

いま、Debian5.0で、検証しましたが、Debianは、休止状態の


検出をしていませんね。
mount /media/hda1
で、休止状態であってもノーチェックです。

Fedoraや、KNOPPIX、UBUNTUでは、休止状態の検出をしています。
Debianには、-o remove_hiberfileのオプションはないかもしれません。
どんな状態でも、読み書きしてしまうという怖さがある仕様のようです。
またまた、間違ったことを書いてしまいましたね。
    • good
    • 0

> 1, Windowsを休止状態にする


> 2, 再び電源スイッチを入れる
> 3, 有無をいわさずWindowsが再開される
> となって、linuxが起動できないので、確認のしようがない
> ような気がするんですけど
どういう環境かは不明ですが、GRUBのデュアルブートであれば、
休止状態にすれば、電源は落ちます。
また電源を入れると、GRUBのOS選択画面で、Debianへいくだけなんですが。
何か勘違いしていませんか。
それとも、特殊なデュアルブート方式でしょうか。

この回答への補足

GRUBを使用したデュアルブートにしたのが最近でしたので、知りませんでした。
で、Windowsから休止状態にして、電源を入れ直すと、GRUBが立ち上がったのでdebianをブートすることができました。

しかし、-o remove_hiberfileでマウントしようとしてもマウントできませんでした。
Mount is defined because NTFS is marked to be in use.

余談ですが、debianのGNOME上からハイバーネートしても電源が落ちてくれない状態なので、CUIからならどうかとaptitude install hibernateしたろころ、ハイバーネート用のswapが無いと怒られたりしたので、設定のしかたを少し調べているところです・・

補足日時:2009/05/19 22:45
    • good
    • 0

> man mountの-tオプションに対して指定できるとされている


> タイプ + インストールしたファイルシステムドライバ
> という認識でOKでしょうか?
そのとおりです。

回答番号:No.9の補足になりますが、
エラーメッセージは、「シャットダウンして、使ってください、
そうでなければ、こんなオプションをつけること」
といったメッセージです。
この、-o remove_hiberfileオプションをつけて、検証した後、
C:\直下を見ると、hiberfile.sysが削除されていると思います。
どうも安易に削除して、休止状態を解除しているといった感じです。
まぁ、Windowsの仕様まで、知ったことかといった感じです。
老婆心ながら、検証した後、Windowsのチェックディスクをかけておくと安全です。
理由は、各プログラムの終了処理をしていないため、一時ファイル等のシステム返還とかがなされていないためです。
    • good
    • 0
この回答へのお礼

> 老婆心ながら、検証した後、Windowsのチェックディスクをかけておくと安全です。
> 理由は、各プログラムの終了処理をしていないため、一時ファイル等のシステム返還とかがなされていないためです。

おほ、そういえば今まで事故やバグで強制終了した後にチェックディスクとかしてなかったです。。習慣にしようと思います。(すごい当初の質問からずれてしまいましたが)

お礼日時:2009/05/19 20:54

> 本当にremove_hiberfileをサポートしているかどうかの確証が得られ> ません。

公式な仕様に書いてあれば信じることができますが。。
確証は簡単でしょう。
Windowsを休止状態にして終了させておいて、Debianを起動し、
Windowsのパーティションをマウントしてみれば、
mount -t ntfs-3g -o remove_hiberfile /dev/hda1 /media/hda1
と、エラーメッセージに続いて、指示されますよ。

これをやったあと、Windowsを起動したとき、休止状態が解除され、
通常起動というより、「ようこそ」画面から開始されますよ。

この回答への補足

1, Windowsを休止状態にする
2, 再び電源スイッチを入れる
3, 有無をいわさずWindowsが再開される

となって、linuxが起動できないので、確認のしようがないような気がするんですけど、いったいどうすれば「Windowsを休止状態にして終了させておいて、Debianを起動」ができるのでしょうか。

ひょっとして、次のようなことをしなければいけませんか?
1, ハードディスクAにWindowsを、ハードディスクBにdebianをインストール
2, ハードディスクAをプライマリとして接続し、Windowsを起動
3, Windowsを休止
4, ハードディスクBをプライマリとして接続しなおし、debianを起動
5, linuxからハードディスクAに対してremove_hiberfileの確認

で、もしかして、公式な仕様に書かれてないとかですか?
ググっても公式っぽいところでヒットしないんですけれど。
ごめんなさい、現在remove_hiberfileが必要なわけではないのですが、その調べ方を知りたいなと・・。(manを読めば質問しなくてもいい内容があるように、remove_hiberfileについての調べ方がわかれば、もっと多くのことを質問しなくても自己解決できるようになるかもしれないから。)

補足日時:2009/05/19 19:09
    • good
    • 0

前回の解答は間違っていたかもしれません。


> > -o remove_hiberfileの説明も、manpageに載っていなかったの
> > ですが・・、どういう意味になりますか?
これは、WindowsパーティションのNTFSフォマットのアクセスで、
Windowsが、休止状態の場合は、強制的に休止状態を解除し、
データの読み込みと書き込みができる状態にして、Windowsの
バックアップができるようにするためのオプションでした。
いろいろなことが、混ざり合っていて間違えました。

また、debianは、既定値では、ntfs-3gはインストールされていないと思います。
apt-get install ntfs-3g
が必要かもしれません。
よって、
mount -t ntfs-3g /media/sdb1
ですね。
    • good
    • 0
この回答へのお礼

おお、計4回も回答頂いてます。感謝。

休止状態のwindowsのボリュームにマウントする時は
-o remove_hiberfile
不正終了したwindowsのボリュームにマウントする時は
-o force
というようなことが掲示板などに書いてありました。

ちなみに、
-o non_existing_option
のように、存在しないオプションを指定してもエラーとならなかったので、本当にremove_hiberfileをサポートしているかどうかの確証が得られません。公式な仕様に書いてあれば信じることができますが。。

お礼日時:2009/05/19 17:44

> この場合、ntfs-3gは、


>  1 ntfs-3gコマンドのことを意味する?
>  2 ntfs-3gというファイルシステムを認識している?
> のどちらなのでしょうか。(manpageに載っていませんよね?)
ntfs-3gという、vfatのtypeをしています。
man mount
その他、「ntfs-3g」というキーで、web検索してください。

> -o remove_hiberfileの説明も、manpageに載っていなかったの
> ですが・・、どういう意味になりますか?
hiberfileという言葉は、windowsでも使います。
hibernate「冬眠する」ということで、コンピュータ用語としては、
「休止」ということに置き換えています。
よって、「移動のときは、休止ファイルを利用してもよい」
というオプションだと思います。
これは、マウントコマンドを間違って指定したりすると、
「こういうオプションがあるから、使用してみろ」
と出てきます。
何でも失敗すると知識は増えていくものです。
    • good
    • 0
この回答へのお礼

> ntfs-3gという、vfatのtypeをしています。
> man mount
> その他、「ntfs-3g」というキーで、web検索してください。

-tオプションの値(vfstype)に指定できるタイプは、
man mountの-tオプションに対して指定できるとされているタイプ + インストールしたファイルシステムドライバ
という認識でOKでしょうか?

お礼日時:2009/05/19 18:04

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

QSDカード(fat32)が 読み込み専用モード

debian を使っていて
SDカード(fat32)が自動マウントされた時に
読み込み専用モードでマウントされてしまい、
書き込みできないことがよくあります。
SDカード横のスイッチで書き込み不能になっているわけでもないのにです。
次のコマンドを試すのですが、うまくいきません。

$ sudo chmod 777 -R /media/usb0
chmod: `/media/usb0/Thunderbird/j29smriz.default/Inbox' のパーミッションを変更しています: 読み込み専用ファイルシステムです

$ sudo mount -t vfat -o rw,remount /media/usb0
Usage: mount -V : print version
mount -h : print this help
mount : list mounted filesystems
mount -l : idem, including volume labels
So far the informational part. Next the mounting.
The command is `mount [-t fstype] something somewhere'.
Details found in /etc/fstab may be omitted.
mount -a [-t|-O] ... : mount all stuff from /etc/fstab
mount device : mount device at the known place
mount directory : mount known device here
mount -t type dev dir : ordinary mount command
Note that one does not really mount a device, one mounts
a filesystem (of the given type) found on the device.
One can also mount an already visible directory tree elsewhere:
mount --bind olddir newdir
or move a subtree:
mount --move olddir newdir
One can change the type of mount containing the directory dir:
mount --make-shared dir
mount --make-slave dir
mount --make-private dir
mount --make-unbindable dir
One can change the type of all the mounts in a mount subtree
containing the directory dir:
mount --make-rshared dir
mount --make-rslave dir
mount --make-rprivate dir
mount --make-runbindable dir
A device can be given by name, say /dev/hda1 or /dev/cdrom,
or by label, using -L label or by uuid, using -U uuid .
Other options: [-nfFrsvw] [-o options] [-p passwdfd].
For many more details, say man 8 mount .

解決法をご教授ください。
よろしくお願いいたします。

debian を使っていて
SDカード(fat32)が自動マウントされた時に
読み込み専用モードでマウントされてしまい、
書き込みできないことがよくあります。
SDカード横のスイッチで書き込み不能になっているわけでもないのにです。
次のコマンドを試すのですが、うまくいきません。

$ sudo chmod 777 -R /media/usb0
chmod: `/media/usb0/Thunderbird/j29smriz.default/Inbox' のパーミッションを変更しています: 読み込み専用ファイルシステムです

$ sudo mount -t vfat -o rw,remount /media/usb0
Usage: mount ...続きを読む

Aベストアンサー

同じく、読み込み専用になるのは不明ですが…
vfatにchmodが効くのかどうか…という問題もあるかと。

vfat(fat32)自身にUNIX系のパーミッションという考え方自体(オーナー/グループ/その他への読み書き実行)がありません。
# 属性として「読み込み専用」「隠しファイル」とかはありますな。

http://d.hatena.ne.jp/Tanakky/20080327
とか。ちょっと古いブログエントリですが。


マウントした先で特定のディレクトリ/ファイルだけ…ということであれば、カード上のフラッシュメモリの破損の可能性も考えた方がいいかと思われます。
ものによっては変な壊れ方しますので。
# 安物デジカメに使っていたSDカードはフォーマットは出来る(完了したように見えただけかも知れん)のに撮影データの書き込みが出来ない。とか、
# USB3.0のメモリは、ある時点で書き込んである内容が変更できなくなった(読み込みは全く問題ない)。とか…。

あんましオススメはしませんがWindowsでスキャンディスク(エラーセクタの検査あり)してみるとか。
# ただし、コレでトドメを刺す場合もありますし正常だった場合でもフラッシュメモリの寿命を削ります。そういう意味でオススメできない。

Windowsで読み込みできるウチに別のSDカードにコピーしておくことを勧めますね。

同じく、読み込み専用になるのは不明ですが…
vfatにchmodが効くのかどうか…という問題もあるかと。

vfat(fat32)自身にUNIX系のパーミッションという考え方自体(オーナー/グループ/その他への読み書き実行)がありません。
# 属性として「読み込み専用」「隠しファイル」とかはありますな。

http://d.hatena.ne.jp/Tanakky/20080327
とか。ちょっと古いブログエントリですが。


マウントした先で特定のディレクトリ/ファイルだけ…ということであれば、カード上のフラッシュメモリの破損の可能性も考えた方がいい...続きを読む

QUSBが読み取り専用

USBが、”読み取り専用です”となって、上書きができなくなってしまいました。
特に、何か、設定した覚えもないのですが、急に、上記のようになってしまって。読み取り専用を、書き込み可能変更する方法などはあるのでしょうか?
教えてください!

Aベストアンサー

USB機器は何でしょうか? USBメモリーでしょうか? カードリーダーでしょうか? MOでしょうか? HDDでしょうか?
何かわからなければ書けません。機種名も必要です。
USBメモリーなら、メモリーにスイッチみたいなものがあり、書き込み禁止になってませんか?

Q/ が何時の間にか「Read-only file system」になってしまった

PlamoLinuxの3くらいを使っています。
18日間起動しているマシンで、
いつものように作業をしようと思ったら、
なぜか動作が変でした。
いろいろと調べてみると、どうやら
/ が何時の間にか「Read-only file system」になっていました。
そのため、/tmpに一時的に書き込んだりする
プログラムの動作がおかしくなったのではないかと思っています。
試しに「# touch /tmp/test」を実行すると
「Read-only file system」とか「読み込み専用ファイルシステムです」
と文句を言われてしまいます。
/etc/fstabと/etc/mtabを確認したところ、
「/dev/hda2 / ext3 defaults 1 1」
「/dev/hda2 / ext3 rw 0 0」
だったので、問題はないかなと思っています。
「# mount -o rw,remount /」を試してみると、
block device /dev/hda2 is write-protected, mounting read-only
と言われてしまいました。
ログを確認したところ、7/30 04:26に書き込まれたのが最後で、
それ以上書かれていないところからすると、
その直後くらいに / がRead-onlyになってしまったようです。
ちなみに、ログにはおかしな記録は見当たりませんでした。

/dev/hda1がswap
/dev/hda2が/
/dev/hda3が/boot
/dev/hda4が/home
で、/だけがRead-onlyになってしまったようで、
/home, /bootは書き込めました。
再起動はできるだけしたくないのですが、
元にもどす方法はないでしょうか?
宜しくお願いします。

PlamoLinuxの3くらいを使っています。
18日間起動しているマシンで、
いつものように作業をしようと思ったら、
なぜか動作が変でした。
いろいろと調べてみると、どうやら
/ が何時の間にか「Read-only file system」になっていました。
そのため、/tmpに一時的に書き込んだりする
プログラムの動作がおかしくなったのではないかと思っています。
試しに「# touch /tmp/test」を実行すると
「Read-only file system」とか「読み込み専用ファイルシステムです」
と文句を言われてしまいます。
/etc/fsta...続きを読む

Aベストアンサー

dmesg を実行したり /var/log/messages を調べると kernel から何かファイルシステムに関するエラーが出力されていませんでしょうか。経験上、ファイルシステムのエラー(I/O error)によって強制的に Read-Only モードに移行させられているように見えます。

もし I/O error 等のエラーが出ている場合は、/ 以下だけではなく、出来れば全パーティションのバックアップを早急に行うことをオススメします。もしディスクの破損が原因であれば、バックアップ作業中に止まってしまう事もありますので、バックアップ作業自体にもリスクを伴うことにご注意下さい(止まってしまうと二度とブートできなくなる、という現象を目の当たりにしたこともあります)。

HDD のセクタ内の情報が単に矛盾しているだけであれば、サーバの再起動後にシングル・ユーザ・モードで fsck を実行してファイルの整合性を確認することが必要です。

もしファイル情報の不整合がハードディスクの物理的な故障によるものであれば、ハードディスクの交換作業が必用になってしまいます。。

まずは、ログを確認して、どのようなメッセージが出ているか確認をなされてみては如何でしょう。上記の記述は最悪のケース、ですので。。

dmesg を実行したり /var/log/messages を調べると kernel から何かファイルシステムに関するエラーが出力されていませんでしょうか。経験上、ファイルシステムのエラー(I/O error)によって強制的に Read-Only モードに移行させられているように見えます。

もし I/O error 等のエラーが出ている場合は、/ 以下だけではなく、出来れば全パーティションのバックアップを早急に行うことをオススメします。もしディスクの破損が原因であれば、バックアップ作業中に止まってしまう事もありますので、バックアップ作...続きを読む

Qapt-get install ****** でinstallしたものをuninstallするには?

御世話になります。
vncserverだけをinstallするつもりが
誤って
apt-get install vncとうってしまいました。
これをuninstallしたいのですが
どのようにすればよろしいでしょうか?

教えて下さい。

Aベストアンサー

# apt-get remove パッケージ名
では、設定ファイルは削除されずに残ります。

完全に削除するときは、
# apt-get --purge remove パッケージ名
です。

Q書き込み権限が無いためコピーできない

フォルダーの中のファイルやフォルダーをほかのフォルダーにコピーをしたり移動をすると「このフォルダーの書き込み権限がありません」というエラーが出ます。
~$su
~# にして、コピペしても,コマンドからコピーしても同じ結果です。
なぜでしょうか?
OSはebian GNU/etchです。

過去ログを参考にしたのですが、その回答を引用すると
>
エラー対象のフォルダが
所有者:root
パーミッション:read olny
となっていませんか?
$ ls -lコマンドで確かめてください。
dr-------- xx root xxx
と表示されませんか。?そうであれば
$ chmod u+w エラーとなるフォルダ
で書き込み属性を追加して下さい。

で、その通りしてみたのですが。

~$ ls -l /etc/sj□□□
合計 24
drwxr-xr-x 2 book book 4096 2009-04-20 15:18 □□□d
-rw-rw---- 1 book book 393 2009-04-20 15:23 □□□.inc
-rw-r--r-- 1 root root 299 2009-04-20 15:23 □□t
-rw-r--r-- 1 root root 873 2009-04-20 15:23 □□□
-rw-r--r-- 1 root root 2086 2009-04-20 15:23 □□.env
-rw-r--r-- 1 root root 0 2009-04-20 15:23 □□.inc
-rw-r--r-- 1 root root 0 2009-04-20 15:23 □□.inc
-rw-rw---- 1 book book 49 2010-01-16 01:33 passwd
となります。

ちなみに、
/etc/sj□□□ のプロパティでアクセス権 をみるとroot root
コピーしたいファイル のプロパティでアクセス権 をみると アカウントユーザ名 ユーザーの本名となっていて、両者全然別物です。

とりあえず言われた通り
~$ chmod u+w /etc/sj□□□
してみたら
chmod: changing permissions of `/etc/sj□□□': 許可されていない操作です。
となるし、
chown でコピーしたいファイルの方を root:root に書き換えてみましたが
これもエラーがでました。

どなたか解決策教えてください。

フォルダーの中のファイルやフォルダーをほかのフォルダーにコピーをしたり移動をすると「このフォルダーの書き込み権限がありません」というエラーが出ます。
~$su
~# にして、コピペしても,コマンドからコピーしても同じ結果です。
なぜでしょうか?
OSはebian GNU/etchです。

過去ログを参考にしたのですが、その回答を引用すると
>
エラー対象のフォルダが
所有者:root
パーミッション:read olny
となっていませんか?
$ ls -lコマンドで確かめてください。
dr-------- xx root xxx
と表示さ...続きを読む

Aベストアンサー

root になったら、出来ないことはないくらいの権限が与えられるはずなのですが・・・

/etc にあるファイルって、全部といっていいくらい root の所有ファイルだと思うのですが、book さん所有のファイルも入ってるってことですか。

book さんのファイルの所有者を root に変更する場合、御存じだとは思いますが、まず
 $ su
 # chown root.root foo (foo は任意のファイル名のことです)
とやれば、何らかのファイル(ここでは foo)の所有者は root.root になるはずです。

けれど、ファイルをコピーするのに、/etc の中で所有者を変更する必要もないのでは?
たとえば、/etc 以下の foo というファイルを、自分のホームディレクトリにコピーしようと思えば、
 $ cp /etc/foo /home/watashi/ (watashi は、ホームディレクトリのユーザー・アカウント)
とすればコピーできてしまうはずです。
その後で、ホームディレクトリで root に変身して
 # chown watashi.watashi foo
とすれば、ホームディレクトリ下の foo というファイルの所有者は watashi になりますから、
 # exit
とやって、元の身分(?)に戻ってから、そのファイルに対する処理を行えばよいはずだと思います。

> ~$ chmod u+w /etc/sj□□□

これは、当該ファイルの所有者が自分に変更された後なら分りますが、所有権がないのに実行しても、エラーになるのではないでしょうか。
私だったら、その前にコピーをすませておいて、そのコピーされたファイルの所有者を変更してから、
 $ chomod u+w sj□□□
とします(つまり、/etc にある方のファイルは、設定をいじらずに、そのままにしておきます)。
しかし、単にそのファイルの内容を見るだけなら、chmod は不要でしょう。

以上、かなり分りにくい書き方になったかもしれませんが、そもそも、仮に cp コマンドが効かないとしたら、何かが根本的におかしいのではあるまいかという気がします。

root になったら、出来ないことはないくらいの権限が与えられるはずなのですが・・・

/etc にあるファイルって、全部といっていいくらい root の所有ファイルだと思うのですが、book さん所有のファイルも入ってるってことですか。

book さんのファイルの所有者を root に変更する場合、御存じだとは思いますが、まず
 $ su
 # chown root.root foo (foo は任意のファイル名のことです)
とやれば、何らかのファイル(ここでは foo)の所有者は root.root になるはずです。

けれど、ファイルをコ...続きを読む

QUSBメモリーの書き込み禁止の解除

USBメモリーを本体のデータのバックアップに使っています。
突然バックアップが「ディスクの書き込み禁止……解除して下さい」で終わってしまいました。この解除方法をご教示頂きたい。よろしくお願いします。USBメモリーは一般のSONY4GBです。

Aベストアンサー

あなたが管理者権限になれば大丈夫です。

管理者権限で検索してその通り実行すればいいのですがあなたのOSがわからないので

WindowsXP
http://www.java.com/ja/download/help/admin_permissions.xml

Winodws 7/VISTA
http://helpx.adobe.com/jp/x-productkb/global/230789.html

QLinuxでUSBをマウントできない

Linux初心者なのですが、

部屋でホームサーバを立てようとASUSのUN42を購入し
公式で
ubuntu-15.04-server-amd64.iso
をダウンロードし、インストールしました。

rootでログインし、
その後、USBメモリからデータを移そうとしたところ
USBメモリを接続すると
[sdb] Asking for cache data failed
[sdb] Assuming drive cache : write through
と表示されてその後

http://whzat.dyns.net/shoko2/USB_F_Memory/
このページを見つつ
# mkdir /mnt/usb
# mount -t vfat /dev/sdb1 /mnt/usb
とマウントしようとしましたが、
special device /dev/sdb1/ does not exist
となり、lsでファイルを確認できないのでおそらくマウントできていないものと思います。

回答お願いいたします。

Linux初心者なのですが、

部屋でホームサーバを立てようとASUSのUN42を購入し
公式で
ubuntu-15.04-server-amd64.iso
をダウンロードし、インストールしました。

rootでログインし、
その後、USBメモリからデータを移そうとしたところ
USBメモリを接続すると
[sdb] Asking for cache data failed
[sdb] Assuming drive cache : write through
と表示されてその後

http://whzat.dyns.net/shoko2/USB_F_Memory/
このページを見つつ
# mkdir /mnt/usb
# mount -t vfat /dev/sdb1 /mnt/usb
とマ...続きを読む

Aベストアンサー

他のUSBポートで試してみましたか?
> special device /dev/sdb1/ does not exist
USBデバイスが認識できない(適切なドライバーをロードできない、ドライバーがそのUSBデバイスを認識できない)ので、パーティション情報が読み取れなく、スペシャルデバイスファイルの自動生成が行われていない状況です。
/var/log/messagesにデバイスの認識状況が記録されているので確認しましょう。

QマウントしたFAT32領域に一般ユーザーで書き込めない(2)

先ほど
http://okweb.jp/kotaeru.php3?q=1717405
で質問させていただいた者です。

PCFREAK様に教えていただいた方法で、一旦は上手くいったように見えました。
しかし、実際に確認してみると上手くいっていませんでした。

具体的には、
(1)/dataから/dev/hda4をアンマウント
(2)/dataのパーミッションを777に変更(ここではちゃんと変更されている)
(3)/dataに/dev/hda4をマウント
とすると、/dataのパーミッションが755になってしまいます。

この場合、どうすればいいのでしょうか?
何度も申し訳ありませんが、よろしくお願いします。

Aベストアンサー

こんにちは。
/etc/fstab の記述を簡略化してみてはいかがでしょう。

/dev/hda4 /data vfat user,rw,suid,dev,exec,auto,iocharset=utf8 0 0

を、

/dev/hda4 /data vfat noauto,users,rw 0 0

でいかがでしょう。

user と users の違いですが、users だと、マウントした人以外のユーザーでもアクセスできるようです。
noauto 指定なので、当然自動マウントではなく、使用時にユーザーがマウントします。

Qシェルスクリプトでファイル内の数値文字列を数値として扱うには

失礼します。
シェルスクリプトでファイル内のテキスト(数値文字列)を取得して、それを使って計算するにはどうすれば良いでしょうか?

str:ファイル内のテキスト(数値文字列)

res=$(( $str + 1 ))

・エラー
")syntax error: invalid arithmetic operator (error token is "


よろしくお願いします。

Aベストアンサー

bashをご使用と判断して

res=$(( $str + 1 ))
ではなく、
res=$(( str + 1 ))
だと思います。

> exprもやってみたのですが、処理が遅くなるので使いません。
興味があって以下のシェルで検証してみました。

#!/bin/bash

str=1
i=0

echo 'Using $((str + 1))'
date '+%H:%M:%S.%N'

while [ $i -lt 10000 ]
do
str=$(( str + 1))
i=`expr $i + 1`
done

date '+%H:%M:%S.%N'

exit

$ ./test.sh
Using $((str + 1))
09:18:46.290418000
09:18:56.929345000
これをexprに書き換えたところ
$ ./test2.sh
Using expr
09:19:00.302748000
09:19:19.259990000

exprだと19秒ですが、$(( 演算 )) だと10秒程度なので、演算が多くなれば確かにexprは不利ですね。

bashをご使用と判断して

res=$(( $str + 1 ))
ではなく、
res=$(( str + 1 ))
だと思います。

> exprもやってみたのですが、処理が遅くなるので使いません。
興味があって以下のシェルで検証してみました。

#!/bin/bash

str=1
i=0

echo 'Using $((str + 1))'
date '+%H:%M:%S.%N'

while [ $i -lt 10000 ]
do
str=$(( str + 1))
i=`expr $i + 1`
done

date '+%H:%M:%S.%N'

exit

$ ./test.sh
Using $((str + 1))
09:18:46.290418000
09:18:56.929345000
これをe...続きを読む

Q外付けHDが読み取り専用になる

今まで外付けHD(USB接続)は,FAT32で使っていました。

このたびNTFSにしたら,コピーしたデータが読み取り専用になりました。
(OSはWin7です。XPだと問題ありません。)

フォルダを右クリックし,セキュリティを見ると,普段使っているユーザー名
「user」に,「変更」にチェックが入ってないせいかと思います。

ところが,数台ある内1台は読み取り専用になっていません。
セキュリティを見ると,「変更」にチェックが入っていて,訳が分かりません。

このHDをXPでフォーマットしたか,7でしたか忘れてしまいましたし,
NTFSのHDからコピーしたかFat2からコピーしたかも忘れました。
最も,そのせいかどうかも分かりません。

現在読み取り専用になっているHDを,「変更」または「フルコントロール」にするには,
どうしたらいいでしょうか?
FAT32のときのように,読み書き可能になるなら,フォーマットして
コピーし直してもかまわないので,お助け下さい。

Aベストアンサー

こちらが参考になりそうです。

「Windows7で、SDカードや外付けHDDが、読み込み専用になってしまった場合の対処方法」
http://oguma-tsubuyaki.at.webry.info/201007/article_2.html

「Windows 7/Vistaで、外付けHDD(Windows XP環境でNTFSフォーマット済)に
データを保存できないのですが?」
http://www.iodata.jp/support/qanda/answer/s16188.htm


このQ&Aを見た人がよく見るQ&A

人気Q&Aランキング

おすすめ情報