くだらねえ質問はここに書き込め! Part 156at LINUX
くだらねえ質問はここに書き込め! Part 156 - 暇つぶし2ch562:login:Penguin
07/11/25 17:05:33 XjWuWSF0
uid 100, gid 500のファイル"test"があって
uid 100のユーザが gid 500と501の両方に所属しているとき,
次のグループ変更プログラムを実行すると

#include <unistd.h>
int main() { setuid(100); chown("test", -1, 501); }

実行者uid=100の場合成功,uid!=0 && uid!=100の場合失敗なのは問題ないのですが
実行者uid=0(root)の場合にも失敗するのは何故でしょう?
fedora6とdebian(version不明)で確認しています

chownの前にsetgid(500)やsetgid(501)を入れてもNGでした。
もちろんsetuid(0)とすればrootなので成功しますが
そうせずにrootがuid=100のユーザになりきる方法はないのでしょうか?

出来ないならその理由は?

563:login:Penguin
07/11/25 17:11:41 ETp8YHeK
>>562
どこで失敗しているのかよく見れ。

564:login:Penguin
07/11/25 17:11:57 bvHuAEPh
一番重いディストリってなんですか?

565:562
07/11/25 17:17:50 XjWuWSF0
chownで失敗しました. -1を返しerrnoは13(permission denied)
setuid, setguidはrootなので成功します

566:login:Penguin
07/11/25 17:18:17 9NvW6LQM
>>564
軽い/重いはディストリの問題ではなく
ディストリ上で何をどういう設定で動かすかの問題。
やりようによってはどのディストリもいくらでも重くできる。

567:login:Penguin
07/11/25 17:36:36 ETp8YHeK
>>565
そこまで解ってるんなら解るだろ。
前後でgetgid()してみな。

568:562
07/11/25 17:57:59 XjWuWSF0
chownが返すerrnoは1(permission error)の間違いです

>>567
562に書きましたが、setgid(500)を試したときに
getuid,getgidの出力をダンプし、
見掛け上uid=100のユーザが実行した場合と同じ状態であることを確認しましたが
それでも実行開始時のuidが0の場合、chownに失敗します

この結果は、setuid/gidの代わりにseteuid/egidを使っても変わりませんでした

569:562
07/11/25 18:07:12 XjWuWSF0
再現用プログラムです uid,gid1,gid2は適当に変えてください
#include <unistd.h>
#include <stdio.h>
#include <errno.h>
int main() {
const char *path="poi";
uid_t uid=100; gid_t gid1=500; gid_t gid2=501;
printf("(uid,gid)=(%d,%d)\n", getuid(), getgid());
printf("setuid(%d)=>%d, setgid(%d)=>%d\n", uid, setuid(uid), gid1, setgid(gid1));
printf("(uid,gid)=(%d,%d)\n", getuid(), getgid());
printf("chown(%d)=>%d\n", gid2, chown(path, -1, gid2));
printf("chown(%d)=>%d\n", gid1, chown(path, -1, gid1));
}

570:562
07/11/25 18:11:32 XjWuWSF0
実行結果はこんな感じ uid,gidは仮の数字です
$ touch poi
$ ./a.out
(uid,gid)=(100,500)
setuid(100)=>0, setgid(500)=>0
(uid,gid)=(100,500)
chown(501)=>0
chown(500)=>0
$ su
# ./a.out
(uid,gid)=(0,0)
setuid(100)=>0, setgid(500)=>0
(uid,gid)=(100,500)
chown(501)=>-1
chown(500)=>0

571:login:Penguin
07/11/25 18:16:59 L706Q2im
東芝製のパソコンで5分使わなければ自動的にサスペンド、20分使わなければハイバネート
というふうにしたいのですが、↓のソフトで本当にできるのでしょうか?
URLリンク(www.buzzard.me.uk)

また、できれば他社製のパソコンでもできる方法があれば教えていただきたいのです。

572:562
07/11/25 19:49:46 XjWuWSF0
自己解決しました

chownによるgid操作は、補助IDグループリストを設定する必要があるようで、
setgroups()かinitgroups()を使って
変更前後のgidを両方登録すればchownに成功しました

573:login:Penguin
07/11/25 20:33:25 kXQprHKd
インストール時など
テラタームを使ってログをテキストに保存しているんですが
スペルミスや回帰コマンドを使うとテキストログがずれていって
非常に見づらいのですがなにかいい方法ありましたら
教えてください。

574:login:Penguin
07/11/25 20:57:46 1qgRKSwZ
PuTTYに関しての質問はココでいいのでしょうか?

Vine4.1をインストールして、ネットワークの接続を確認した後
XP Pro SP2+putty0.60 jpでリモートアクセスしようと思ったのですが
ホストが見つからないというようなエラーが出て、接続できません。
pingが通るのは確認済みで、ファイアウォールも切ってみたのですが
状況変わらず…

もしかして根本的にわかってないんでしょうか?
ハードウェア的に繋がっていて、SSHサーバが有効になってれば
いいんだと思ってたのですが…

575:login:Penguin
07/11/25 21:19:45 9NvW6LQM
>>573
回帰コマンドって何?

576:login:Penguin
07/11/25 21:20:37 9NvW6LQM
>>573
テキストファイルじゃなくなっちゃうけど、
ttyrec で録るとか。

577:login:Penguin
07/11/25 21:21:14 ETp8YHeK
>>571
やりもせずに聞くな。やってから聞け。

>>572
補助グループか主グループのどこかで対象のグループが入ってなきゃダメということだ。

>>574
板違い。

578:login:Penguin
07/11/25 21:30:20 YeDBK0Gc
>574
puttyの設定が間違ってるんじゃ?
ポート番号なんか間違えやすいかな

579:login:Penguin
07/11/25 21:39:08 Fgg0cuE8
?,mutt`{console}で,e-mail`送信を,GUI`無しで試みたいのですが…
出来ますか…

580:login:Penguin
07/11/25 21:47:53 mlK4fdww
Linux100%についてきたknoppixで起動しようとしているのですが
うまくいきません。

UBUNTUやSuseなどは「acpi=off」でいけるのですが
knoppixでも同じように「knoppix acpi=off」をやっても

Autoconfigurating devices... ■■■Done

の後で止まってしまいます。
どなたか解決策を教えてください。

581:login:Penguin
07/11/25 21:55:24 8tGhPhaJ
>>580
windows100%の奴だから専用スレが転がってる気がする。
あのknoppixはなかなか起動率低いかも。
fb1024x768とか画面関係も試してみるといいと思われ

582:login:Penguin
07/11/25 21:55:30 ETp8YHeK
>>580
起動まわりで問題が発生するようであれば、
acpi=off, noapic, vga=normal, apm=off
あたりを組み合わせてみるといいだろう。

583:login:Penguin
07/11/25 22:03:31 qUWRRluq
>>580
本家から時間かけてダウソしれば確実に動くと思う。

584:login:Penguin
07/11/25 22:12:48 PccgykZ2
ja_JP.EUC-JP
ja_JP.eucJP
ってどう違うの?


585:login:Penguin
07/11/25 22:18:37 1qgRKSwZ
>>577-578
Puttyが原因なのかイマイチつかめなかったのと
Linuxディストリだったので、ここかなと思いましたが…
とりあえずもう一度設定を見直して、ダメならUNIX板の専用スレいってきます。
ありがとうございました。

586:580
07/11/25 22:20:16 mlK4fdww
>>581-582
BootOption試してみましたが、やはり起動はしないですねぇ・・・。
>>582の方のオプションを試してみると、上記のエラーが出ていたところは
通過しましたが、次に

「Mouse is bitboys OY Unknown device 00c3 at /dev/input/mice」で止まり
10分くらい放置してたらいきなり

started.

と出てここで現在止まっています。

587:login:Penguin
07/11/25 22:37:14 PFztUo+e
>>584
詳しく

588:login:Penguin
07/11/25 22:49:13 PccgykZ2
>>584
>>587
URLリンク(www.hondarer-soft.com)

/etc/sysconfig/i18n
/.dmrc
の2つで使い分けてるけど何が違うんだろうと思って


最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch