1read 100read
2011年10月1期Linux$HOMEを整理整頓しろ! TOP カテ一覧 スレ一覧 削除依頼
・ 次のスレ
間違いない in Linux板
【輝くスレ】LiveLinux2統合スレPart4
Windows→Linux移行スレッド
mlterm 3


$HOMEを整理整頓しろ!


1 :03/11/11 〜 最終レス :11/05/15

今のところFHSでは触れられてない$HOMEのサブディレクトリ。
ゴチャゴチャになってる香具師は大勢いるだろう。
そろそろ整理整頓しようじゃないか。
片づいてる香具師はそのナイスなサブディレクトリの構成を晒してくれぃ。
要らないファイルを掃除するスクリプトなども歓迎。
FHS
http://www.pathname.com/fhs/

2 :
2

3 :
http://pc.2ch.net/test/read.cgi/unix/1020398795/

4 :
ero/
2d/ 3d/
guro/
2d/ 3d/

5 :
やだ

6 :
なんでこんなスレが立つのか = なんで $HOME が汚くなるのか
漏れにはさっぱり分からん。。。
[admin@ns2 admin]$ ls -a
. .. .bash_history .bash_logout .bash_profile .bashrc .canna .ssh
[admin@ns2 admin]$ su -
Password:
[root@ns2 root]# ls -a
. .. .Xresources .bash_history .bash_logout .bash_profile .bashrc .cshrc .gconfd .rnd .tcshrc anaconda-ks.cfg install.log install.log.syslog
これでもゴミが多いくらいだな。。。

7 :
rm -rf ~

8 :
汚くなるのはむしろ'/tmp'や'/usr/local'かと・・・。

9 :
>>6
わざとボケてるんだよな?

10 :
$ cd $HOME; ls -a | wc -l
1416
こんなもんでしょ。

11 :
%ls  ~|wc
    25      25     168
%ls -a ~|wc
    232     232    2300

12 :
ホームにインスコする場合どうしてる?
stowで管理かな。

13 :
掘ったbin, lib, shareディレクトリに普通にインストール。

14 :
皆様どこにmake installしています?
http://pc.2ch.net/test/read.cgi/linux/1017579356/

15 :
やっぱstowでしょ

16 :
これか
Stowを使ってのパッケージ管理
http://www-6.ibm.com/jp/developerworks/linux/030425/j_l-stow.html

17 :
俺のホームディレクトリきれいだよ。
.r00tkit
とかいうのしかないよ。

18 :
ICEauthority .dia/ .gp_history .swp SiteRank/ modules.conf
.RealNetworks_RealCookies_60 .dvdcss/ .grip .sylpheed/ WindowMaker-upgrade-log mp3/
.RealNetworks_RealMediaSDK_60 .dvdrip/ .gtksee/ .themerc Xrootenv.0 mplayer/
.RealNetworks_RealPlayer_60 .dvdriprc .hagaki_config .themes/ amaranth-default-.8.tar.gz mplayer_setup.txt
.RealNetworks_RealShared_00 .ee/ .hh/ .thumbnails/ av4_files/ my_web/
.Tgif/ .emacs .java/ .vine/ banana.jpg my_web_prop.txt
.WindowMaker-errors .emacs-color.el .jedrc .w3m/ bebop/ myproject/
.Xauthority .emacs-faces.el .jpi_cache/ .weblink bin/ ps7_tryout_jpn.hqx
.Xresources .emacs-fontset.el .kde/ .wgetrc bookmarks.html registry_old
.acrobat/ .emacs.el .kderc .wine/ borland_kylix_install_log rpm/

19 :
漏れのホームにはディレクトリがない

20 :
>>19
リストラされたのか?

21 :
getしたファイルはcacheディレクトリに置かれるようにしてる。
でgetした特定の拡張子のファイルは仕分けスクリプトでディレクトリ別に仕分け。
定期的にcronで回してる。
問題はエロとそうでないものがゴチャゴチャになってしまう事(w
重複したファイルの判別とか同名ファイルをリネームさせたいな。

22 :
>>20
そういうわけじゃないんですけど、さらにログインシェルが/bin/falseになっています。

23 :
何か変かもしれないけど$home以下に、etc bin sbin tmp var を作っているよ。
それでユーザ単位で環境を頭に分野ごとの環境を頭に入れておけば、それほど混乱しない。
あと、内部専用のCVSを作ってソース管理しています。
su hogehogeで環境変数変えれて(゚Д゚)ウマー

24 :
管理する程のソースがない。

25 :
ホームが独立した一つの環境になってしまってる香具師いる?

26 :
俺のhome以下にはprocファイルシステムがあるぞ

27 :
chrootするなら/procもマウントしないとな。

28 :
$ ls | wc
10 10 88
$ ls -a | wc
79 79 811
$ df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/hda3 12835536 4580176 8255360 36% /
/dev/hda1 497829 13470 458657 3% /boot
/dev/hdc1 117217208 18779644 98437564 17% /home
/dev/hdb1 120057164 31375580 88681584 27% /home/share

29 :
俺のhome以下には/があるぞ

30 :
こんなのハッケソ
function trash () {
mv $* ~/.trash-dir
}
alias rm='trash'
alias trash-look='ls -al ~/.trash-dir/ 2> /dev/null'
alias trash-clean='\rm -rf ~/.trash-dir/* 2> /dev/null'

31 :
>>30
うちは
clrtrash () { /usr/sbin/tmpreaper -v 120 $HOME/Trash }

32 :
漢の$HOMEは整理不要

33 :
昔とって来たわけのわかんないtar玉やRPMがいっぱい・・・
でもキニシナイ

34 :
>>31
おれなら、
#!/bin/bash
if [ ! -d ~/Trash ];then
mkdir ~/Trash
fi
find $HOME \( -path ~/Trash -prune -o -name '*~' -o -name '.*~' -o -name '#*' -o -name '.#*' \) -exec mv {} $HOME/Trash \; >& /dev/null

35 :
おれの~は/dev/nullへのハードリンクだ!

36 :
つまんね

37 :
ほんとつまんね。
自慢してるつもりなんだろうけど、恥じかいてるよチミタチ。

38 :
stowとxstowの違いは、何ですか?

39 :
とりあえず、archiveとsrcディレクトリ作って整理しただけで、かなり片付いた。
ある程度分野分けしたら、namazuかな。。。

40 :
>>38
Perlで書かれているかC++で書かれているか。
え?知ってるって?

41 :
.DCOPserver_hogehoge_:0 -> /home/username/.DCOPserver_hogehoge__0
.DCOPserver_hogehoge__0 .ICEauthority .RealNetworks_RealMediaSDK_60
.RealNetworks_RealPlayer_60 .RealNetworks_RealShared_00 .Tgif/
.Trash/ .Xauthority .Xdefaults .Xdefaults~ .Xmodmap .acrobat/
.addresses .addresses~ .adobe/ .alias .asmailrc .aumixrc
.axyftp/ .bash_login .bashrc .canna .canna~ .cddb/ .dir_colors
.dir_colors_medium .eggrc.old .elisp/ .elmo/ .emacs .emiclockrc
.esd_auth .exrc .folders .fonts.cache-1 .fonts.conf .fullcircle/
.fvwm2rc .fvwm2rc95 .fvwm95rc .fvwmrc .gaim/ .gaim0.71/ .gconf/
.gconfd/ .gentoo-history .gftp/ .gimp-1.2/ .gnome/
.gnome-desktop/ .gnome2/ .gnome2_private/ .gnus .gp_history
.grip .gtkrc .gtkrc-1.2-gnome2 .icons/ .im/ .inputrc .jmode
.jnethackrc .jvimrc .kde/ .kderc .kinput2/ .kinput2.PID
.kinput2rc .less .lesskey .lessrc .liece/ .login .mailcap
.mcoprc .metacity/ .mew.el .mgprc .mh_profile .mime-example
.mnews_setup .mozilla/ .mplayer/ .mtvrc .mwmrc .nautilus/
.navi2ch/ .newsrc .newsrc.eld .ninix/ .ninix.orig .phoenix/
.profile .qt/ .qti18nrc .qvwm-theme .qvwmrc .realnetworks/
.recently-used .screenrc .signature .sjhk .sjrc .sjrk .skk
.skk-jisyo .skk-record .skkinput .ssh/ .steprc .synaesthesia
.tcshrc .themes/ .thumbnails/ .tknamazurc* .twmrc .vkeybdrc
.vmware/ .vmware3.1/ .w3m/ .weblink .wl .wxg/ .xawtv .xface
.xinitrc -> .xinitrc_step* .xinitrc_kde* .xinitrc_qvwm*
.xinitrc_step* .xinitrc_step~* .xinitrc_twm* .xmascotrc .xmms/
 .xnetmaj .xscreensaver .xsession -> .xinitrc* .xvpics/
.zlogin .zshenv .zshrc Calendar/ Desktop/ Mail/ News/
Sample/ XF86Config diary -> /http/username/diary/
gnomekiss-0.5/ gnomekiss-0.5.tar.gz gnomekiss-1.6/
gnomekiss-1.6.tar.gz labo/ mp3/ timidi.tpl tmp/ win2000Pro/

42 :
>>41
Plamo使いかい?

43 :
常々思うのですが、何故linuxは、
~/.etcというフォルダに .* をまとめて入れるなど、
設定ファイルや設定フォルダを集結して格納する事を
考えなかったのでしょうか。
~/以下にダラダラと設定ファイルを保存していく現在の状況には
かなりの無節操さ・いきあたりばったり具合を感じます。

44 :
>>43
考えてないわけじゃない。さまざまな開発者たちが個別に考えたからこうなってるのだ。
ユーザ共通の設定は /etc/profileなど、/etcの下にある(事が多い)
~/.hoge は、ユーザ個別の設定を格納する。
これで各ユーザが他と干渉せずにカスタマイズできる訳だ。
(どちらにしてもデフォルトの設定は、ディストリビュータによって大差がある)
その他はアプリケーションやディストリビュータが、これまた個別に決めている。
/usr/local/apache/conf/httpd.conf とか、/usr/local/samba/lib/smb.cofとかは、/verの下だったり、/etcの下だったりする。
どれかに決め打ちできない(そうすると他で動かし難い)なら、とりあえずは慣れることだろう。

45 :
>>44
共通設定は、/etc以下に、というのが不文律になってるのに、
ユーザ個別の設定は、~/以下、というところに矛盾を感じます。
例えばの話、/の直下に、各アプリが勝って気ままにディレクトリを作ったら、
おそらくは、気分を害する人がほとんどではないでしょうか。
/直下に、/gnomeとか、/kdeとか、/fdがあったらどうでしょう?
アプリの数だけ/hogeが作られたらどうでしょう?
かなり嫌な気分になりませんか?
一般ユーザにとっての ~/は特別な場所です。
自分が管理できる領域の最上位の階層、
いわば、/に相当する階層でありましょう。
ところが、その/に相当するディレクトリ直下に、
各種設定ファイルが無断でボカスカ置かれる。
これで気分を害さないほうがおかしい。
/etc以下に設定ファイルを置くとせっかく決まっているのなら、
~/.etc以下に設定ファイルを置くと決めれば良かったのです。
もっとも今になって、急にルールを変えるわけにもいきません。
これからも私達は、大量の~/.*に、
我が領域の最上位階層を不躾に要求してくる設定ファイル群に、
いつまでもウンザリさせられるのでしょうね。
慣れるしかないのはたしかですが、ちょっぴり先人達を恨みます。

46 :
では何の為のdotfileなんだ?

47 :
>>46
隠すため、でしょうか? 合ってます?
そうなんですよね。
本来であれば、見えないファイル・ディレクトリなのだから、
どこに、どれだけ作られても、何ら問題はないはずですね。
自分は、まだLinux初心者なもので、
全てのファイルが見えていないと安心できませんで、
lsにしろ、ファイラーにしろ、dotfileを表示する設定で
作業をしているのです。だから、気になってしょうがない。
…これも慣れなのでしょうね。
1日も早く、dotfileが非表示でもキニシナイ!ユーザになれるよう
精進したいと思います。

48 :
ちょっとまってくれ、
alias ls='ls -a'
的な設定を起動スクリプトに書いておくのって常識じゃないのか?
dotfileを見えないようにしてる奴なんているのか?

49 :
lsを常時-a付きにしようとは思わないなぁ。
dotfileはやっぱり普段はあんまり見ないものだから。
常時見えてると邪魔になる。
好みにもよるだろうけど。

50 :
>>48
常識? そんな話聞いたことないな。
ls -A ~|wc
238     238    2426
ls ~|wc
20      20     131
おれはこんな状態だから、ドットファイルを表示してたらうざくて
しょうがない。
>>45の言ってることには賛成。だけど、~/.etcより~/etcの方がい
いんじゃない? おれは大事なドットファイルは~/dotfilesに入れて
~にシンボリックリンクを置いてる。

51 :
>>45
~/etc/ は存在するかどうかわらないけど
~ は確実に存在するから、ではないかな。

52 :
>>51
存在しなかったら作ればいいじゃん。

53 :
dotfileの必要性がなくなるな。

54 :
ほめ

55 :
LFS2.3でも$HOMEについては触れられてないようだな。

56 :
スラドより
ttp://slashdot.jp/askslashdot/04/03/02/021240.shtml

57 :
/bin だけど
arch* env@ logname@ printf@ test@
bash@ expr@ ls@ ps* true@
chroot@ factor@ more* pwd@ tty@
csh@ false@ mount* rm@ umount*
date@ groups@ netstat* seq@ uname@
dirname@ hostname* nice@ setserial* users@
dmesg* hostname.old* nisdomainname@ sh@ usrconfig*
dnsdomainname@ id@ nohup@ sleep@ who@
domainname@ kill* pathchk@ stty@ whoami@
echo@ ln@ ping* su@ yes@
ed* login* printenv@ tee@ ypdomainname@

58 :
hosyu

59 :
>>33
これからわ、ホームの/rpmに放りこむ事にしますた。

60 :
せめて
./
 ./bin
 ./applicationdata
 ./mydocuments
くらいに分けて欲しいな。appdataはいくら汚くても知ったこっちゃ無いし。
あまりにいまさらな話ではあるが。

61 :
hosyu

62 :
hoshu

63 :
$ ls|wc -l
886
$ ls -A|wc -l
1195
しばらく掃除してやっとここまで減った……。
ディスクの空きが800Mぐらい増えた。

64 :
>>63
頑張ってもっと整理しろ。
$ du -sh ~/
48G
$ ls ~/ |wc -l
37

65 :
漏れの$HOMEテンプレを参考までに。Kondara, RH, Debian, LFS, Gentoo, 陰でCygwinやMSYSを
使ってきた結果、たどりついた個人環境構築・整理方法です。
長いし、わかりにくい稚拙な文章だと思うので、面倒なら読まないでおくれ。
$HOMEに必ずあるものは、
bin/ etc/ lib/ src/ share/{doc,info,man} tmp@ work/ var/{tmp,run,...}
くらいかな。当然FHSでの全体構成を参考にしてます。使わないものも多いけど、こうしておくとchrootに
流用するのも楽なんだよね。
たまに/var/webappなんかを追加、public_html/は誰が管理者なのかと必要性と気分次第。
一番凝ってるのはetc。$HOMEが汚れる原因にもなるので、この下に定義ファイルを置いておき、
$HOMEにシンボリックリンクするスクリプトを使う(etc/MKLINKS.sh)。
  ln -s etc/bash/bashrc .bashrc
  ln -s etc/vi/vimrc .vimrc
  ln -s etc/vi/d.vim .vim
  ln -s etc/lynxrc .lynxrc
こんな感じ。さらに環境変数設定用のetc/env.d/ とシェル個別環境用の etc/rc.d がある。
etc/bashrc に次のような部分があって、
  [ -f ${HOME}/profile ] && sorce profile
etc/profile はこんな感じ。
  for envitem in ${HOME}/etc/env.d/*.sh
  do
    [ -f $envitem ] && source $envitem
  done
もちろん実際は既にロードしたかとか、ログインシェルかとかTERM, LANG等いろいろチェック入ってる。
rc のほうははそのチェックがなくて、ほぼ上のまんま。
etc/env.d/ には 00base.sh を始めとして 30jless.sh, 30lv.sh など。etc/rc.d/ には alias とか。
これらを tar玉にして、新しい環境で展開し、${HOME}/MKLINS.sh して実際の環境に合わせる、と。
新しい distro や version でない限り、だいたい揃ってるんで無編集だが、最初はちょっと手間がかかった。
GNOMEやKDEはまだ中途半端になってしまってる(差が大きすぎ)ので省略。

66 :
etc/以外はFHSを参照のこと。ほぼ/usr以下のサブセット。
つーか、わざわざ違う構成にする理由がわからなかったりもする。
ソフト開発するときに違う構成にしてたら、installer作るの大変でしょ。
ちなみにrpm/とかdeb/とか$HOMEに置くことがある。今はGentooだから、
/usr/local/portage 配下にスクリプトを置いてる。

67 :
$ du -sh ~/
88G
$ ls ~/ | wc -l
132
orz...

68 :
$ du -sh ~/
32G
$ ls ~/ |wc -l
140
努力不足もいいとこ。

69 :
$ du -sh ~/
90G
$ ls ~/ |wc -l
68

70 :
いや、別にアンケート取ってるわけじゃないから。

71 :
環境変数 USER_ETCDIR とか定義して、
全部そこへ放り込むようになってればいいのにね。

72 :
age

73 :
環境変数 USER_DTCDIR とか定義して
全部そこへ放り込むようにしている

74 :
結局そこの中がごちゃごちゃする罠

75 :
>>65
いまさらだがためになった。

76 :
 

77 :
~/etc にドットファイル置いて、alias hoge="HOME=~/etc hoge" を必要なだけ作る

78 :
>>77
それだと ~/etc に勝手にいろいろ放り込まれることにならないか?
ln -s etc/* ~/* して自分が編集したファイルと
勝手に作られるファイルを分ける方がよさげ.

79 :
ターミナルでエラーが文字化けして、読めないんですが。。。どうすれば治るんですかね?

80 :
>>79
http://linux2ch.bbzone.net/?About#shitsumon
を読んで↓へ。
くだらねえ質問はここに書き込め! Part 109
http://pc8.2ch.net/test/read.cgi/linux/1123924487/

81 :
~/.*が嫌な人はdozのレジストリって奴を羨ましがるのだろうか?

82 :
>>81
そんなことはない.
単に ~/ 直下にファイルが散乱するのが気持ち悪いだけ.

83 :
むしろ、目の行き届かない膨大なツリーの中に設定が散らばるので、
レジストリは一層気持ち悪い…

84 :
設定が散らばってるのは、UNIX系の方なんだが…。
レジストリは各種設定をシステムのAPIで扱え、一つのファイルとして存在するから
1.アプリがインストール時に困らない (一応ルールはある)
2.~/がすっきり (個人的には、.で隠してるんだから気にすんなと言いたい)
3.システム設定とユーザ設定の同時検索が楽
という利点がある。
欠点は全体のバックアップを取っても意味が無い所とGUIでしか扱えない所だ。
たとえライバルといえども学ぶものがあるなら検討すべきだ。
>>83
あれが膨大か?
GUIDで並んでるところはウザイが、それ以外は大したこと無い。

85 :
reg.exe があるじゃないか。
使ったことないけど。

86 :
Windows ユーザーでもレジストリを嫌がる人少なくないでしょう。
レジストリに書き込まないことを売りにするソフトもたまにあるし。
Linux でも似たようなの GNOME が使ってなかったっけ?
gconf とかいうの。

87 :
ぜんぜん理解してないっぽいな。

88 :
linux registry でググってみ、なんかそれっぽいの結構でてきた
将来的には使うようになるかもね

89 :
r00tkitとかいうのができてるが、気にしない。

90 :
>89
気にしてみませんか?
気にしてください。
お願いします。
このとおり…

91 :
おい、おまえら!
本気で整理するぞ!
遊びのためにLinuxを使っているあいつではなく、
Linuxを常用しているお前に言ってるんだぞ。
ディレクトリ構造はまあ、一旦脇に置いておこうじゃないか。
ファイルマネージャ付属のメモ機能とかエンブレムも次に話し合おう。
まず、便利な命名規則(naming rules)など、どうだ。
だれか、確立した規則使ってる奴はおらんのか?
いなければみんなで考えよう。
おれは、後ですてちゃっても良いファイルにtmpと付けるくらいしか
ルールを持っていないorz

92 :
とりあえず、共有のことを考えて、
すべてアルファベットにしている。
ついつい1単語で命名してしまうときがあるけど、
なるべく2単語以上を「_」でつなぐようにしている。

93 :
例えばホストごとに異なる .bashrc とか .emacs を読み込みたいとき,
.bashrc-host1 .bashrc-host2 .emacs-host1 .emacs-host2
みたいにするか
host1.bashrc host1.emacs host2.bashrc host2.emacs
みたいにするかとか,
スクリプトで setup-hoge にするか hoge-setup にするかでいつも悩む.

94 :
.bashrc .emacsはそのままの名前にしておいて、そこからホスト名を手掛かりに
それぞれのホスト固有の設定ファイルを読み込むようにするんじゃダメなの?
好みの問題だけど。

95 :
>>94
「ホスト固有の設定ファイル」の名前をどうするか
ということを >>93 は言ってるんじゃないだろうか。と思ったです。

96 :
やぱ、ファイルを後で見るとき、1単語と2単語では
わかりやすさが全然ちがうよな。

97 :
ここらであげてみる

98 :
ホスト別の設定は例えば ~/.site/bashrc, ~/.site/zshrc, ...
みたいに1つのディレクトリに封じ込めておいて、~/.bashrc などは変更不要にする…
というのが一案だがどうだろうか
(もっとも俺個人はそこまでする必要には駆られてないんだが)
あとは環境変数の設定を ~/.environment に書いて bash, zsh で共用するとか。
csh 系を使ってる場合一筋縄では行かないのが難点だが。
それと、$HOME 直下とはあまり関連性ないかもしれないが
00README 00INSTALL 00COPYING
みたいに、重要なファイルがソート時に先頭に来るような命名法はときどき見掛ける。
作業ディレクトリにちょっとしたメモを残したいときなどは便利かも。

99 :
・・・●#9608;#9600;#9608;#9604;

100read 1read
1read 100read
TOP カテ一覧 スレ一覧 削除依頼
・ 次のスレ
間違いない in Linux板
【輝くスレ】LiveLinux2統合スレPart4
Windows→Linux移行スレッド
mlterm 3