トップページunix
1001コメント281KB

Cygwin使っている人いますか? その9

■ このスレッドは過去ログ倉庫に格納されています
0001 ◆Cygwins4NU NGNG
前スレ
Cygwin使っている人いますか? その8
http://pc.2ch.net/test/read.cgi/unix/1047489645/l50

地鎮祭、関連リンク、お約束は>>2-10あたり
0566名無しさん@お腹いっぱい。NGNG
>>565
Cygwinパッケージのpythonを使うのは駄目なの?
0567565NGNG
>>566
Cygwin版は重そうなのと、
日本語との相性が悪そうなので避けています。

あと、今後他のツールでも同じ問題が発生する可能性があるので、
何かナイスな解決方法は無いかなと。
まん○。
0568名無しさん@お腹いっぱい。NGNG
>>565
> cyg形式のパスが理解できなくて
> そんなファイルねーよって怒られてしまいます。
どうしようもないだろ、そんなこと。

あと、メタキャラクタを含んだ引数で泣きたくなければ
#!/bin/bash
args=()
for param
do
  if [ -r $param ]
  then
    param="`cygpath -d "$param"`"
  fi
  args=(${args[@]} "$param")
done
exec "$cmd" "${args[@]}"
0569名無しさん@お腹いっぱい。NGNG
#!C:/py/bin/python.exe

これでとうるんじゃねーの?
0570名無しさん@お腹いっぱい。NGNG
>>569
ばか。いっぺんやってみな。
0571名無しさん@お腹いっぱい。NGNG
>>567
> Cygwin版は重そうなのと、
> 日本語との相性が悪そうなので避けています。

それはつまりちゃんと検証を行なったということでしょうか?
もしよろしければその検証結果を教えて頂けませんか?
0572名無しさん@お腹いっぱい。NGNG
>>571
検証しないとわからない奴は痴呆
0573565NGNG
>>569
動きますた。
Windowsのパスが使えるとは考えてもいませんでした。
ありがとうございます。

>>568
>>569でpythonに付いては解決いたしましたが、
別なWinベースのツールで依然としてこのスクリプトは必要でしたので助かります。
頂戴したスクリプトをこんな感じに
> ./test test test\ test
試しみましたが、上手く行きませんでした。
しかし、if を以下のようにすることで上手くいきました。
 if [ -r "$param" ]

メタキャラクタは盲点でした。
ありがとうございます。

>>571
すいません。検証はしてはおりません。

それでは。
○んこ。
0574名無しさん@お腹いっぱい。NGNG
>>571
>重そうなのと
>悪そうなので

文脈から検証をしていないと誰でもわかる
0575名無しさん@お腹いっぱい。NGNG
検証もしないで偉そうなことを、というまわりくどい皮肉
0576名無しさん@お腹いっぱい。NGNG
夏全開ですね
0577名無しさん@お腹いっぱい。NGNG
何気なくCygwin付属のSSHサーバーにログインしてみて
> cd ..
と打ってみた。
>
なるほどホームディレクトリへは行けるんだな。
> ls -l
Administrator       more
何気なく・・・
> cd Administrator
>
っておい!
> pwd
/home/Administrator
ぎゃっ!Σ(゚д゚;||)
ちょっとCygwinのSSHが怖くなった・・・
0578名無しさん@お腹いっぱい。NGNG
CygwinのXのバイナリって相変わらずXLOCALEなんだな
いい加減、CygwinのLOCALE使うようにしちゃえばいいのに
そうすりゃ不完全なところを直そうっていう気にもなるんだが
0579名無しさん@お腹いっぱい。NGNG
>>577
問題ないようだが。

netbsd$ slogin tstusr@win2k
tstusr@win2k's password:
Last login: Tue Aug 12 02:10:32 2003 from netbsd

Welcome to Cygwin!

-bash-2.05b$ pwd
/home/tstusr
-bash-2.05b$ ls ..
Administrator All Users Default User tstusr hoge
-bash-2.05b$ cd ../Administrator/
-bash: cd: ../Administrator/: Permission denied
-bash-2.05b$ cd ../hoge/
-bash: cd: ../hoge/: Permission denied
-bash-2.05b$
0580名無しさん@お腹いっぱい。NGNG
>>577
おまえそれSSHの問題ちゃう。
useraddがないんだから個々人で$HOMEにパーミッションつけろと
0581名無しさん@お腹いっぱい。NGNG
>>580
ユーザマネージャで新規ユーザ作ったら、そのプロファイル
フォルダは(AdministratorsとSYSTEMを除けば)自分しか
触れないようACL設定される。

にも関わらずcdできちゃうって事は、ログインしたユーザが
Administratorsに属してるんじゃないかと思うが。
0582名無しさん@お腹いっぱい。NGNG
cygwinのsshでX forwardがちゃんとできてる人いますか?

0583名無しさん@お腹いっぱい。NGNG
すまん、DISPLAYが設定してなかった。
0584名無しさん@お腹いっぱい。NGNG
と思ったけど、ssh通すと重くてやってられん。
0585名無しさん@お腹いっぱい。NGNG
d:\cygwin を指定してインストールしたのに、
c:\cygwin も同時に作られてそこに \bin とかができてしまうんんだけど、
どうしたら全部を d:\cygwin にインストールできますか?

c:\cygwin を d:\cygwin に上書き移動するだけじゃ駄目ですよね?
0586名無しさん@お腹いっぱい。NGNG
>>581
普通、Cygwin でいうところの $HOME はプロファイルフォルダと違う
0587名無しさん@お腹いっぱい。NGNG
>>585
「C:\Program Filesにいろんなディレクトリができるのはいやだから、
全部 C:\Windows にブチまけてくれ。」
って言っているのと同じだよ。

/bin を作る文化が気に入らないのなら、Sygwin とか作ってそっちでやってくれよ。
0588名無しさん@お腹いっぱい。NGNG
(´-`).。oO(わかりにくい煽りだね…)
0589名無しさん@お腹いっぱい。NGNG
>>587
この場合の問題はCドライブにもインストールされてしまうことだろ。
bin云々は関係無いと思われ。

>>585
とりあえず、パッケージのダウンロードフォルダを別のディレクトリ(d:\cygwin\setup_filesとか)にして、
インストールディレクトリ(d:\cygwin)と分けてから試してみては。
0590585NGNG
もちろん、ダウンロードフォルダとインストールディレクトリは別です。
/cygwin/bin, /cygwin/etc, /cygwin/usr だけが c ドライブにできてしまいます。
/cygwin/sbin などは、指定どおり d ドライブにできるのですが。
0591名無しさん@お腹いっぱい。NGNG
>>590
過去に C:\cygwin に入れたことがあるとかそういうことはないすか?
それだとレジストリにあるCygwinのマウント情報も消したほうがよさげだが
(マウント情報が残ってるとイクナイ気がする)
0592585NGNG
なるほど。マウント情報消してもう一回やってみます。
0593名無しさん@お腹いっぱい。NGNG
http://www.cv.its.hiroshima-cu.ac.jp/~kazutaka/Windows/app.html
の通りにTgifをインストールしようとしたんですが、makeの段階でエラー。
何か忘れていることがありますか?
0594名無しさん@お腹いっぱい。NGNG
心。
0595585NGNG
マウント情報を消して、今再インストールしているところですが、
今度はちゃんと d ドライブにインストールされているようです。
どうもありがとうございました。
0596名無しさん@お腹いっぱい。NGNG
>>594 ワラタ
0597593NGNG
心はどこで手に入りますか?
0598593NGNG
xmkmfは次のように成功(?)して終わります。

$ xmkmf
imake -DUseInstalled -I/usr/X11R6/lib/X11/config

>>593のURLでは、このあと make tgif, make install と進むのですが、

$ make tgif
gcc tgif.o -ldl -lm -o tgif
/usr/lib/gcc-lib/i686-pc-cygwin/3.2/../../../../i686-pc-cygwin/bin/ld: cannot find -ldl
collect2: ld returned 1 exit status
make: *** [tgif] Error 1

となり失敗してしまうのです。
対処法を教えてください。

0599名無しさん@お腹いっぱい。NGNG
>>598
どっかのImakefileに"-ldl"とか書いてあるのを削ってみればぁ〜
0600593NGNG
>>599

Makefile 中の -ldl を削除して、その他
http://www.netlaputa.ne.jp/~kose/Software/compile/index.html#tgif-4.x
を参考に、何とかインストールできたようです。

ありがとうございました & お騒がせしました。
0601577NGNG
補足

さらにcdでさかのぼるとドライブCのルート/までたどり着きました。
この調子だとどんなフォルダ・ファイルでものぞけそうな予感です・・・。
SSHのログイン時にパスワード管理されているとはいえ、ちょっと真夏の肝試し〜な感じです。

SSHでログインしたユーザーが自分のホームディレクトリのみの活動を許可するには
どうしたらいいのでしょうか?
0602名無しさん@お腹いっぱい。NGNG
ログインしてんだからそりゃできるだろ。
ACLで狭めるくらいしかありえまい。
0603名無しさん@お腹いっぱい。NGNG
あるいはrsh。
cygwinにあるかどうかは知らん。
0604名無しさん@お腹いっぱい。NGNG
>>601
581が指摘した
>ログインしたユーザがAdministratorsに属してるんじゃないかと思うが。
はどうなんよ?まぁどっちみちWin2K/XPのデフォルトは制限緩いから
Unix並の状態にしたいなら自分でアクセス権設定してやるしかないけど。

>>603
bash -rで代用かな。でも制限きつすぎかも。
0605601NGNG
>>604
Power Userの権限はありますがAdminの権限は付与していません。

FTPとかでは自分のホームディレクトリより上には上がれない仕組みに
するのが一般的かと思いますがCygwinのSSHにはそういう機能は無いのかもしれません・・・。

> Unix並の状態にしたいなら自分でアクセス権設定してやるしかないけど。

上のフォルダにあがることは阻止できませんが、ユーザー間での情報の漏洩は
ある程度防げるかもしれません。

余談ですが私が大学に入り立ての頃はUNIXのパーミッション設定がおろそかだったため
他人のフォルダへも侵入可能だったんです。クラスで可愛い娘のフォルダにcdして
アヒャ(゚∀゚)!なこともできてたんですよ。今考えると恐ろしい限りですが。
0606名無しさん@お腹いっぱい。NGNG
え?普通他人のフォルダはread可能なんでないの?
設定ファイルは他人のから盗めとかよくいうじゃん。
0607名無しさん@お腹いっぱい。NGNG
質問失礼します

CygwinのプログラムにWinNTの名前付きパイプを
FIFOに見せかける方法はありませんか?
0608601NGNG
>>606
そうなんです。ほんの5,6年前まではその意見が主流でした。
ただネットに性善説は通用しないのか、私みたいな輩がいたためか
4年ほどまえから他人のフォルダには一切アクセスできないような
設定になりました。多人数が集まるところではそれでいいかと思います。

CygwinもおそらくUNIXのデフォルトの精神にのっとって他人のフォルダ
へもアクセスできるようになっているのかもしれませんが、願わくは
これを禁止したい次第であります。
各自フォルダにアクセス権を設定し直せば問題無いわけですが・・・
0609名無しさん@お腹いっぱい。NGNG
>>608
それって同じ場所の同じ機械なん?

リプレースされてたりすると、意図的に変えている可能性もあるが
デフォルト設定のままならそれはOSによったりしない?

あと、学校か会社かによってもポリシーが違うだろうと思われ。
# ていうか、見えて困るものには自分で鍵かけろと漏れは思う。
0610名無しさん@お腹いっぱい。NGNG
見えるものは見てもいいものだと解釈してます。
0611名無しさん@お腹いっぱい。NGNG
>>605
あー、私の大学も同じようなことになってた。
速攻で chmod 700 $HOME とかしておきましたが。
さすがにレポートなんかが見れる/見られる状態なのはアレだし。


しかし605は幸せだね。
うちの学科の中には娘などいない。
0612名無しさん@お腹いっぱい。NGNG
> FTPとかでは自分のホームディレクトリより上には上がれない仕組みに
> するのが一般的かと思いますがCygwinのSSHにはそういう機能は無いのかもしれません・・・。

一般的じゃないと思うし、そもそも元々のSSH(OpenSSH)にもそんな機能はねーよ。

> CygwinもおそらくUNIXのデフォルトの精神にのっとって

それはCygwinがじゃなくて、NTがだろー。

> 上のフォルダにあがることは阻止できませんが、ユーザー間での情報の漏洩は
> ある程度防げるかもしれません。

ちゃんとNTの設定をすれば完璧に阻止できるっつーの。
0613名無しさん@お腹いっぱい。NGNG
というわけで、>>612ネ申が世界中のNTの設定を完璧にしてくれるそうです。
0614605NGNG
>>611
いやいや、結構焦りましたよ。
それまで他人が自分のフォルダのぞけるなんて思いもしなかったんで
(1997年当時)大学のネットを利用してかき集めた大量のエロ画像を
他人に見られたんじゃないか内心ひやひやしていました。
表向きはまじめな学生で通っていたんで。

他人のフォルダにもcdできるんだって知った日からは自分の
$HOMEにはパーミッション付けて、同じクラスの可愛い女の子
(学生番号=アカウント名だから容易に分かる)のフォルダを
チェックするのが日課になりますた。

一番ショックだったのが自分の中で一押しだった女の子が
レズであること知ってしまったことです(交換日記かな?)。
たしかにボーイッシュなところはあったんですがそこがまた
意地らしくて可愛かったのに゜ ・(ノД`)・゜ ・
0615名無しさん@お腹いっぱい。NGNG
はいはいよかったね。

見られてることを知って、君に嫌われようと必死だった子の気持ちにも
なってごらんよ。
0616名無しさん@お腹いっぱい。NGNG
そしてそんな>>605の行動を密かに覗き見ていた管理者が居て…
0617609NGNG
見えるものは見てもいいとは漏れは思わないけど、
見られたからといって文句を言うなとも思う。

>>614
エロ画像を見つけた香具師がいてもそいつはたぶん黙ってコピーして楽し(略
0618名無しさん@お腹いっぱい。NGNG
605みたいな香具師がrootになったらと思うと鬱だ…。
0619名無しさん@お腹いっぱい。NGNG
>>618
激しく同意。
605がrootになったら、他人のメール覗きみしまくりだろうね。
ついでにlastcomm有効にしたりして、自分の行為がばれて墓穴掘るのがオチかも(w
0620名無しさん@お腹いっぱい。NGNG
Cygwinなんてシングルユーザでしか使わないだろ?普通
0621名無しさん@お腹いっぱい。NGNG
ApacheのUserDirも考慮するとホームは0751あたりじゃない?
で、見せたくないものがあれば~/...とか作って0700とすればいいだけ。

>>620
それをいっちゃ…
0622名無しさん@お腹いっぱい。NGNG
レズ(・∀・)イイ!
0623あぼーんNGNG
あぼーん
0624あぼーんNGNG
あぼーん
0625名無しさん@お腹いっぱい。NGNG
いちおう保守
0626名無しさん@お腹いっぱい。NGNG
>>605
・FATで使ってました
・nontsecしてました
・Windowsで chmod 0777 相当の設定をしてましたが自覚がありませんでした
0627名無しさん@お腹いっぱい。NGNG
cygwinインストールするとスタートメニューにemacsのショートカットができてるんですけど
これって>>364さんが書いてるみたいにコンソールなしでemacs起動できるんですよね?
ショートカット起動してもなにもおこらないんですけどどうすればできるんでしょう?
パスはこうなってます。
C:\cygwin\usr\X11R6\bin\run.exe emacs -display 127.0.0.1:0.0
0628名無しさん@お腹いっぱい。NGNG
>>627
Xサーバは動いているのか?
DISPLAY は設定されているのか?
0629名無しさん@お腹いっぱい。NGNG
たぶん概出だと思うのですが、過去ログが読めないので、すいません。
init-configでinitのサービスを開始しようとするのですが、
エラーがでてとまります。
質問にはno,yes,yesと入力し、initscriptsも何回かやってみました。
理由がわかる方はいますか?

エラーメッセージ
 CYGWIN init サービスを開始します.
 CYGWIN init サービスを開始できませんでした。
0630名無しさん@お腹いっぱい。NGNG
(´-`).。oO 「エスパー求む」?
0631名無しさん@お腹いっぱい。NGNG
>>629
/var/log/init.log
Windowsのイベントビューワ
0632_NGNG
http://homepage.mac.com/yamazaki8/hankaku10.html
0633_NGNG
http://homepage.mac.com/yamazaki8
0634629NGNG
>>631
まずそれがないですね。サービスが開始できないといメッセージの後にメッセージがないというエラーもでてます。
0635Cygwin ◆ZIDRv2SdAk NGNG
>>629
一般論。サービスを起動できない場合に考えられること。
1.権限の不足。/var/log/…(←あくまでも一例)に書きこみ権限がない、など。
2.パーソナル・ファイアウォール等による実行の拒絶。
3.依存する他のサービスが起動していないための実行不可。
4.ロックファイルが残っていることによるサービス起動不可。
などいろいろあると思います。
0636裏技郵便局NGNG
↓コレで勘弁してよ!!
http://www.geocities.jp/ishigaki1998/allking1998.htm
0637629NGNG
>>635
なるほど。メジャーなバグとかではなくて、固有の環境の問題なんですね。
0638627NGNG
>>628
それってあらかじめstartxwin.shをやっとけってことですか?
startxwin.shやってでてきたコンソール上でecho $DISPLAYやると
127.0.0.1:0.0がでてきました。でもショートカットからはうまくいきません。
一応xhost+とかやってみましたけどだめでした。
0639名無しさん@お腹いっぱい。NGNG
「うまくいきません」とか「だめでした」とか言われてもなぁ
0640名無しさん@お腹いっぱい。NGNG
transcode とか mplayer の cygwin 向けバイナリってありますか?
0641名無しさん@お腹いっぱい。NGNG
>>640 例えあったとしても。
普通に Windows アプリ使いなさい
0642名無しさん@お腹いっぱい。NGNG
transcodeは普通に./configure && makeできるんじゃない?
バッチ処理には便利だね。
0643名無しさん@お腹いっぱい。NGNG
ディフォルトシェルをzshに変更したいんですが上手くいきません。

win2kを使っていて、windowsでの環境変数は
HOME = d:/home
SHELL = /usr/bin/zsh
と設定しました。

cygwinを起動し、whoamiを実行すると "administrator"と表示され、
$SHELLは /usr/bin/zsh $HOMEは /cygwindrive/d/home です。

/etc/passwdでも、administratorのシェルは /usr/bin/zsh に設定
しました。

ところがcygwindriveを起動するとシェルがbashのままなんです。
他に何を設定したらいいですか?よろしくおねがいします。
0644名無しさん@お腹いっぱい。NGNG
「cygwin を起動」って言うのは、Cygwin というタイトルのついたアイコンを
ダブルクリックすることを指してるんですよね?

そのアイコン(ショートカット)の中の人が bash を起動するようになっているので、
中の人をいじらないと zsh には変わらないです。

あと、cygwindrive って cygdrive の間違いですか?
0645名無しさん@お腹いっぱい。NGNG
>>644
そうです。cygwin.batを実行することです。中の人ってのは
何でしょうか?よく分からないです。。
ついでにcygdriveの間違いでした。
0646名無しさん@お腹いっぱい。NGNG
>>645
ショートカットを右クリック→プロパティ→ショートカット→リンク先→cygwin.batの場所を確認。
→cygwin.batをメモ帳で開く→bash --login -iをゴニョゴニョする。

俺って親切?
0647名無しさん@お腹いっぱい。NGNG
>>646
親切!
0648名無しさん@お腹いっぱい。NGNG
>>646
zsh --login -i
でOKでした。さんくす!
0649名無しさん@お腹いっぱい。NGNG
cygterm+putty+zsh な環境なのですが,フロー制御(Ctrl+S)が止められません.
putty 単独でリモートログインした時には問題なく,emacs -nw 等で Ctrl+S
が効くのですが...

stty -ixon や stty stop undef も効果ありません.そもそもどいつが原因な
のかもよくわかっていないのですが,お知恵をお貸し下さい.
0650名無しさん@お腹いっぱい。NGNG
cygtermを使うメリットって何?
0651名無しさん@お腹いっぱい。NGNG
>>650
|Cygwinでは、DOS窓上でシェル(bash)が使えるようになっていますね。
|しかしDOS窓ではサイズの制限やコピー&ペーストなど、いろいろ使いにくいです。
|普段UNIXマシンをTelnetで使っている人は多いと思います。
|Cygwinもそれと同じように使いたい、つまり VT100 の端末エミュレータで操作したいものです。

ってあるけど.まぁ,単に DOS 窓より putty のほうが慣れているから.
0652名無しさん@お腹いっぱい。NGNG
>>649
stty ixoff
stty stop undef
したときの stty -a の結果は?
0653名無しさん@お腹いっぱい。NGNG
MyString.h、MyString.cppとmain.cpp作って
g++ main.cppってやったんだけど
undefined reference to ってメッセージが出てコンパイルできない。。。
一応、VCでは特になんもしなくてもコンパイルできたから中身は合ってると思うけど。
C++のプログラムコンパイルするのって手間かかるものなんですか?
0654名無しさん@お腹いっぱい。NGNG
そりゃまあGCCとVCぢゃあお作法がだいぶ違うけど、基本的なコードなら
GCCでもそれできちんとバイナリ吐くはずだぞ。

つーかundefined reference toの後はどういうことが出力されたんだ?
0655名無しさん@お腹いっぱい。NGNG
コンパイルしようとしたコードや、エラーメッセージを全部晒してみては
いかがでしょうか?
0656名無しさん@お腹いっぱい。NGNG
まさか…
g++ main.cpp MyString.cpp
とやったらっていう話じゃないよな?
0657名無しさん@お腹いっぱい。NGNG
きっと
#include "MyString.cpp"
を忘れてるんだよ。
0658名無しさん@お腹いっぱい。NGNG
ありがとうございまつ。
#include "MyString.cpp"追加したらコンパイルできた。
ヘッダファイルしか書かないようにするなら
ちゃんとメイクファイル書かないと駄目なの?
Javaみたいに芋蔓式にコンパイルしてくれるのかと思ったw
あと、エラーメッセージ中に自分の名前と怪しい文字の羅列が出てきたんで
どこまでさらして良いのか判断つきませんでして。。。
0659名無しさん@お腹いっぱい。NGNG
> Javaみたいに芋蔓式にコンパイルしてくれるのかと思ったw

せっかく答えてもらって、そんな態度なのはいかがなものかと。


> あと、エラーメッセージ中に自分の名前と怪しい文字の羅列が出てきたんで

自分の名前に関しては、 xxx とかに置き換えればいいわけだし、
文字化けを除く怪しい文字の羅列にこそ意味がある場合もあります。
0660名無しさん@お腹いっぱい。NGNG
>>657
こらこら
0661名無しさん@お腹いっぱい。NGNG
>>660
別にいいんじゃねーの?
0662名無しさん@お腹いっぱい。NGNG
>>661
うーん…ま、いいや…
0663名無しさん@お腹いっぱい。NGNG
全部includeって
ttp://member.nifty.ne.jp/yamazaki/yz2/c_maga_yz2.html
を思い出したよ…
0664名無しさん@お腹いっぱい。NGNG
コンパイルできるのはいいとして、リンクはちゃんとできてるのだろうか・・・
0665名無しさん@お腹いっぱい。NGNG
>>663
『ライセンス形式は FreeBSD としていますが、要するに著作権以外なんでもありです。
だた、コードの著作権は私にあります。万が一、じゃんじゃんコピーしてビルが建つほどのお金
を稼いでしまった方には、伝家の宝刀「著作権」を行使して、ちょっぴり還元してもらうかもしれ
ません。』

( ´,_ゝ`)
■ このスレッドは過去ログ倉庫に格納されています