WinXp-Linux間でsambaを用いてファイル交換をしています。
その際、Win側で作成したtxtファイルをLinux側にsamba経由で転送した場合、Linux側に転送されたtxtファイルの改行コードや文字コードをLinux側に合わせるためにはどうすればよいでしょうか?
できれば、sambaの設定でなんとかしたいのですが。
そういうことができるでしょうか?

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

A 回答 (3件)

#1さんのはファイル名のエンコーディングの話.


ご希望のような動作は無理です.
    • good
    • 0

ちょっと質問が漠然としすぎだと思います。


多分、S-JISのファイルをLINUXに入れる際に自動的にEUCにしたいと言う事のように見えますが、私はこう言った(自動での)方法は知りません。
使用法によって(ファイルの中身に半角カナがある場合など)は問題が発生しますし・・・
又、同様の機能をFTPを使う等では問題は解決できないのでしょうか?
いっそ、Linux側をS-JISにしちゃうとか・・・?

いずれにしても利用したい内容(ファイル共有なのかデータの転送なのか、ただ見たいだけならコマンドのオプションで可能かも?)によっても解決方法が違ってくると思います。
    • good
    • 0

EUCにしてください。



ちなみに、うちの会社ではS-JISにしてます。
ただし、どちらにしてもロングファイル名や、WIN98系の問題は残ります。

そういった問題が解消(してるかも)されてる最新バージョンをお勧めします。

ちなみに、SAMBAの「全体設定」の「coding system」項です。
    • good
    • 0

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

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

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

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

Q改行コードを自動変換してくれるFTPクライアント

テキストファイルをアップロードするときに、改行コードを自動変換してくれるFTPクライアントを探してます。
今まではFFFTPを使用していたのですが、このソフト、自動で改行コードを変換してくれないようです。
サーバーの漢字コードにEUCを選択し、転送モードをアスキーにして転送してみましたが、改行コードはCRLFのままでした。
テキストファイルのアップロードではFTPソフトが自動で改行コードを変換してくれるものだと思い込んでいたのですが。。。

やりたいことは、Windowsで作ったS-JIS/CRLFのテキストファイルを、漢字コードはS-JISのままで改行コードだけをLFのみに自動変換してLinuxサーバーにアップロードしたいのです。

質問としては、

(1),
FFFTPで、自動で改行コードのみを変換し、漢字コードはそのままでアップロードする方法がありましたら教えてください。

(2),
もし、(1)ができないようでしたら、他のソフトでお勧めがありましたら紹介してください。
できれば、FFFTPのように、ビューワにメモ帳など自分の好きなアプリケーションを指定できる機能があれば助かります。

宜しくお願いします。

テキストファイルをアップロードするときに、改行コードを自動変換してくれるFTPクライアントを探してます。
今まではFFFTPを使用していたのですが、このソフト、自動で改行コードを変換してくれないようです。
サーバーの漢字コードにEUCを選択し、転送モードをアスキーにして転送してみましたが、改行コードはCRLFのままでした。
テキストファイルのアップロードではFTPソフトが自動で改行コードを変換してくれるものだと思い込んでいたのですが。。。

やりたいことは、Windowsで作ったS-JIS/CRLFのテキス...続きを読む

Aベストアンサー

その確認方法だと、FFFTPがDLしてそれを開いているので、DL時にFFFTPがLFをCRLFに再度変換しています。

ちゃんと確認するなら、FFFTPでアップしたものを変換しない方法で落として確認しないとだめです。

当方で、FFFTPでアップしたものを、sambaで直接アクセスしてひらいたら、ちゃんとLFになっていました

QWinのファイルをLinuxに転送するには?

自宅LAN内で WindowsXP → RedHatLinux8.0 にファイルを転送しようと思っています。LinuxにはFTPサーバーを設置し、FFFTPを使用し接続は出来たのですが、Linux側にファイルを転送すると以下のエラーがかえってきます。

553 Could not create file.

バイナリー・アスキーモード両方試したのですが、だめでした。元のファイルは普通のhtmlファイルです。アドバイスお願いします。

Aベストアンサー

試しに、Linuxにあるディレクトリー(例:tmp)を作って、
chmod 777 tmp でだれも書き込みできる権限を設定して、
tmpにファイルを伝送してください。
 終わったら、お忘れなく、セキュリティーのため、
tmpを消してください。

Q改行コードの変換と削除

改行コード変換メソッドで$dataには配列形式のデータが入ります。
public function v_line($val, $arr = false)
{
$line = '';
if(is_array($val)){
return array_map(array($this, 'v_line'), $val);
}

return str_replace(array("\r", "\n"), $line, $val);
}

//メソッド実行
$this->v_line($data);

この結果全ての改行コードが削除されます。これを特定のキーのみ削除ではなく"\n"に
統一させるように変換したいのですがどのようにすればできますでしょうか?

//改行コード削除しないキー配列
$arr = array('comment01', 'comment02');
//$arrのキーのみ改行コードを変換しその他は改行コード削除
$this->v_line($data, $arr);

改行コード変換メソッドで$dataには配列形式のデータが入ります。
public function v_line($val, $arr = false)
{
$line = '';
if(is_array($val)){
return array_map(array($this, 'v_line'), $val);
}

return str_replace(array("\r", "\n"), $line, $val);
}

//メソッド実行
$this->v_line($data);

この結果全ての改行コードが削除されます。これを特定のキーのみ削除ではなく"\n"に
統一させるように変換したいのですがどのようにすればで...続きを読む

Aベストアンサー

function v_line($val, $arr, $line=""){
$ret = array();
if(!is_array($val)){
return str_replace(array("\r\n", "\r", "\n"), $line, $val);
}else{
foreach($val as $key=>$value){
if(in_array($key, $arr)){
$ret[$key] = v_line($value, $arr, "\n");
}else{
$ret[$key] = v_line($value, $arr);
}
}
return $ret;
}
}

こんな感じでしょうか。

QLinuxのSAMBAがIPアドレスを認識しません・・・

Linuxを最近初めて使い始めたのですが、
書籍(はじめてのRedHatLinux8 SOFTBANK社)
の通りに、SAMBAをインストールして
設定したのですが、相手のWinodws2000が認識しません。

確認のため、STATUSとかいうPAGEで、Restartsmbd
とRestartnmbdを押して再起動させたんですが、
表示された情報欄のIPアドレスの項目が
「0.0.0.0」です。ルーター等のネットワークを
どうも認識していないようなんですが、
どういう理由が考えられますでしょうか?
何卒、アドバイスのほどをお願い致します。

Aベストアンサー

> Win2000/NTの場合、暗号化問題があると聞いたんですが。

「聞いたんですが」という前に,先にご紹介したURLはお読みになったのでしょうか?

日本Sambaユーザー会
http://www.samba.gr.jp/

→ 「ドキュメント」 http://www.samba.gr.jp/doc/
→ 「Windows98 , WindowsNT4.0 , Windows2000からSambaを使用するときの注意事項(暗号化パスワード問題)」 http://www.samba.gr.jp/doc/encrypt-passwd.html

それでもだめな場合は,「smb.confを提示して」 「正確なエラーの内容を記述して」,再度補足してください.

Q改行コードを変換せずにアップする際の不具合

FTPでアップする際の改行コードについてお教え下さい。
Windowsの改行コードのまま(バイナリーモード)にてunixサーバーへアップロードすると
apacheやphpなどモジュールやhtmlの表示で不具合が発生することはありますか?

目的として、バイト数で差があるか確認したいので、crlf > lf 変換をしたくありません。

どなたかご教授頂けますと助かります!

Aベストアンサー

CRコード1文字を「CR」と表記します。

CRが改行の一部ではなく、「CR」という文字である、と認識され、正常に動作しないことがあります。
たとえば、CGI用のPerlスクリプトで、1行目に
#!/usr/bin/perl
と等書きますが、これは、/usr/bin/perlコマンドでこのスクリプトを処理しろ、という意味です。
ところが、CRがあると
「/usr/bin/perlCRコマンドでこのスクリプトを処理しろ」
という意味になり、/usr/bin/perlCRコマンドで実行しようとします。
通常はそんなコマンドは無いのでエラーです。

システム標準の改行コードによらず、CRLF/LFどちらも改行として処理するものもありますので、必ずおかしくなるとは限りません。
ただ、相手に合せるのが無難です。


対処としては、次のようなのも考えられます。
・Windows側でLFコードで書く
大抵のエディタでLFでの改行をサポートしています。
・バイト数での確認をやめる。
例えば、md5sumのテキストモードでハッシュを比べる、とか。

QBフレッツをLinuxのsquid経由で使用したい

こんにちは!

教えて下さい。
RedHat6.2でBフレッツをLinuxのsquid経由で使用したいのですが
うまくいきません。
RedHat6.2が入っているPC上からsquidを使用しなければBフレッツを
利用出来、squidを起動して(サービスはきちんと動いています)
squid経由で利用しようとすると、squidが起動していない
又は設定が間違っているみたいなメッセージが出ます。
これってsquidの設定が悪いのでしょうか?
PPPoEとTCP/IPは同時に使用出来ないのでしょうか?
(出来ると思うのですが・・)

アバウトな質問ですが、考えられる原因がありましたら
推測でも結構ですので教えて下さい。

Aベストアンサー

ifconfigを参照してみてください。
eth0とppp0が正しく存在していれば、NIC一枚でもPPPOEとLANを共存させることは可能です。
#多分なんですけど・・・
#FletsADSLでの設定でそのような実例があるのでB'Fletsでもいけると

・クライアント(LAN)からGateway(RH6.2)にPing
・GatewayからinternetへのPing
・GatewayからクライアントへのPing
これらが成功すればIP設定は問題ないでしょう。

それでもProxyが動作しないのであれば、squidの設定に問題があるのでしょう。
行き詰まってしまったら暫定的にipchainsでMASQを利用してネットにつながることを確認してみてください、何かヒントを掴めるかも・・・

Q改行コードを変換できません(>_<)

突然、改行コードの変換ができなくなりました。
使っているエディタはJedit4です。
改行コードをLFにして、保存してもなぜか開いてみるとCRになって保存されているんです。

新規作成して保存した書類は、LFにちゃんと保存できるのですが、
CGIをカスタマイズしようとしてあるファイルを開いて、改行コードをLFに設定して保存しても、なぜかLFにならないのでCGIを動かすこともできないんです。

いったい何が原因なんでしょうか?
何かアドバイスをお願いします。

Aベストアンサー

初期設定の「コード変換」の「jisコードKOUT」が切り替わっているなんて事はないですか?

Qsambaで指定したPrivate IPのパソコンでファイル共用

 LinuxマシーンにSAMBAを入れてファイルサーバとして
使っています。LANで許可したPrivate IPのパソコンしか
アクセスできないようにしたいですが、どう設定すればよいのですか。よろしくお願いします。

Aベストアンサー

smb.confに以下の様に指定できます。

hosts allow = 127. 192.168.0.
hosts allow = 192.168.0. EXCEPT 192.168.0.100
hosts allow = ホスト名1 ホスト名2

同様に
hosts deny =

も使えます。

Q改行コードの変換について

OS:Solaris2.6

改行コードをunixからms-dosへ、ms-dosからunixへ変換したいと思っています。
ながれとしては、ms-dosで作成したファイルをunixのほうで編集(プログラム)
して、再びms-dosに戻すといったことがしたいと思っています。

そこで、
nkf -e aaa | tr '\r\n' '\n' > bbb
nkf -e ccc | tr '\n' '\r\n' > ddd

aaa:ms-dos
ccc:編集後のファイル

これでできると思ったのですが、dddの改行コードの表示がE'で
Macintoshの改行コードになってしまします。
また、bbbのファイルですが改行が2回行われてしまいます。

aaa のファイルの内容

123
456

bbb のファイルの内容

123

456

どのようにすれば、解決できるか教えていただけないでしょうか?
お願いします。

Aベストアンサー

ちなみに、
sed では通常 \n を行の区切りとして認識しているので、
 s/\n/\r\n/
は、そもそも前半部分がマッチしません。つまり、一度もこの置換コマンドは実行されません。
上記のようなことに対応するのが、
 s/$/\r/
になりますが、たぶん、\rは文字通り 文字\ と 文字r として認識されてしまうと思います。そこで、
 s/$/^M/
とするわけです。

QSambaでファイル共有がしたいのですが

Linux初心者です。
Sambaを使ってVineLinux2.6からルータ越しにつながっているWindowsMeマシンのファイルを見れるようにしたいのですが、いろいろ調べましたがどの情報も、私のレベルを越えているものなので、基本的な質問をいくつかさせて下さい。
1。Sambaの設定をする前に、Windowsマシンを認識させる作業は何か必要でしょうか?
2。hosts.denyでALL:ALLにして、hosts.allowの方には何も記述していないのですが、これはどのように変更すべきでしょうか?
3。ルーターの設定変更は何か必要でしょうか?

初歩的な質問で恥ずかしいのですが、よろしくお願いします。

Aベストアンサー

>Sambaを使ってVineLinux2.6からルータ越しにつながっ
>ているWindowsMeマシンのファイルを見れるようにしたい

これを素直に読むと、Linux側からWindowsにアクセスし
たい。つまり、Windows側に共有フォルダがあると読める
のですが、その通りですか?
そうであるなら、それはSambaの仕事じゃありません。
たしかに、Sambaのパッケージに含まれている、smbmount
というコマンドを利用しますが、Samba側で何の設定も
いりません。

>1。Sambaの設定をする前に、Windowsマシンを認識させる
>作業は何か必要でしょうか?

/etc/hosts ファイルに、Windowsのコンピュター名と
IPアドレスの名前解決が出来る用に記述して下さい。

>2。hosts.denyでALL:ALLにして、hosts.allowの方には
>何も記述していないのですが、これはどのように変更
>すべきでしょうか?

何もいりません。

>3。ルーターの設定変更は何か必要でしょうか?

「ルータ越し」って書いてありますけど、本当に
ルータを越えているんですか?どういうネットワーク
構成になっているんでしょうか。Samba側のIPアドレス
とネットマスク。Windows側のIPアドレスとネットマス
クはどうなっていますか?だいたいルータはどんな風
に、どこに接続されているんですか?
とにかく、詳しいネットワーク構成が分からないこと
には、これ以上のアドバイスは無理です。

>Sambaを使ってVineLinux2.6からルータ越しにつながっ
>ているWindowsMeマシンのファイルを見れるようにしたい

これを素直に読むと、Linux側からWindowsにアクセスし
たい。つまり、Windows側に共有フォルダがあると読める
のですが、その通りですか?
そうであるなら、それはSambaの仕事じゃありません。
たしかに、Sambaのパッケージに含まれている、smbmount
というコマンドを利用しますが、Samba側で何の設定も
いりません。

>1。Sambaの設定をする前に、Windowsマシンを認識させる
>作業は何か...続きを読む


人気Q&Aランキング

おすすめ情報