Top / Linux / コマンド集

cronをviで編集するための設定。

setenv EDITOR /usr/bin/vi

を設定しておく*1

フォーマットコマンド

mkfs -L Firewire /dev/sda1 -t ext3

でボリュームラベルがFirewireで/dev/sda1をext3ファイルタイプでフォーマットする。

grepで前後何行を一緒に出す

Linuxだけみたいですが

-a 後ろ何行。
-c 前後何行

ファイルの分割、結合

バイナリ

split -b 2000m hoge.bin  <-2GBごとにファイルを分ける。

テキスト

split -60000 hoge.csv <-60000行ごとにファイルを分ける

結合するときはcatですね。

cat hoge.* > hoge.new

WEBからダウンロード

wgetコマンドを使うと、コマンドライン上でファイルをダウンロードできます。たとえば

wget http://ezix.sourceforge.net/software/files/lshw-B.02.03.tar.gz

など。いままでWindowsでダウンロードしてFTPしてたので、これは便利(ていうか常識なのかな?)。

grepでor検索

egrep '(hoge | fuga)' ファイル名

属性を保持してコピー

\cp -a 

コピー先で、できる限り元のファイルの構成と属性を保持する (ディレクトリ構造体は保存しない) 。-dpR と同じ。

定期的にコマンドを実行

いわゆるcrontabです(参考)

crontab -e

でviが起動されるので、そこに記述する。記述方法は上記サイトを参考にしてください。

設定したcrontabを参照する

crontab -l

結果はたとえば

02 2 * * * /var/hoge.sh (毎日2時2分にhoge.shを実行)

Shellの条件判定方法をmanで見る

man test

xinetdのリスタート

/sbin/service xinetd restart

言語の設定

setenv LANG ja

WebSphereのプロセス参照(Solarisのみ?)

 /usr/ucb/ps -alxww | grep WebSphere

gzファイルの解凍

gzip -d hoge.gz

isoイメージマウント

mount -t iso9660  -o loop WAS5.0forLinux.iso /mnt/iso/

指定ディレクトリのサイズ

du -hs [ディレクトリ|ファイル]

オプション

-hわかりやすい単位にして表示する。
-s引数で指定したファイルの総計だけを表示する。

ユーザ追加

useradd mqm ←ユーザmqm を作成します。

グループ追加

groupadd mqbrkrs ←グループmqbrkrs を作成します。

グループにユーザを追加

usermod -G [group] [user] ←user をグループ group に追加します。
usermod -G mqm,mqbrkrs root ←root をグループmqm とmqbrkrs に追加します。
usermod -G mqm mqm ←mqm をグループmqm に追加します。

groupid: wsadmin,userid: user1 というユーザを作成する

[root@node1 root]# useradd -g wsadmin user1
[root@node1 root]# su - user1
[user1@node1 user1]$ id
uid=502(user1) gid=502(wsadmin) 所属グループ=502(wsadmin)
[user1@node1 user1]$

group1というgroupidを作成する

[root@node1 root]# groupadd  group1

user1というuseridのプライマリグループをwasgroupにする

[root@node1 root]# usermod -g wasgroup user1
[root@node1 root]# su - user1
[user1@node1 user1]$ id
uid=502(user1) gid=501(wasgroup) 所属グループ=501(wasgroup),503(user1)
[user1@node1 user1]$

user1というuseridをuser1,wasgroupというgroupに属させる

[root@node1 root]# usermod -G user1,wasgroup user1
[root@node1 root]#

引数にないgroupに属していた場合、そのgroupからは削除される*2

ユーザのパスワード変更

passwd [username]

ユーザを指定する。指定しない場合、自分のパスワードを変更する。

ユーザのuidやgidを変更したい

たとえば

uid:502(hoge),gid:502(hoge1) を
uid:506(hoge),gid:506(hoge1) に変更したい。

とします。

以下の手順でOKっぽい。。

groupmod -g 506  hoge1   <- hoge1というグループのidを506に
↑ これで、hoge1というグループのgidは506となる
   (この段階でhogeというユーザは無名のグループ(gid=502は存在しなくなるので)に属する)
usermod -g hoge1 hoge    <- hogeというユーザのgidをhoge1に(gid=506になる)
↑ これで、hogeというユーザはhoge1というグループに属する(gid=506に変更される)
usermod -u 506 hoge      <- hogeというユーザのuidを 506にする
↑ これで、hogeという名称のuidは506となった。

終わり。あ、あとはすでに作っちゃったファイルのオーナの変更が必要です。

というか、

/etc/passwd
/etc/group

の値を直接変えちまえばよい??

参考
http://blog.goo.ne.jp/gleaning/e/c96f5b71df3acb64cafa46888ce2b787

逆に、gidはそのままに表示名称を変えたい

たとえばwasgroup -> new_wasgroup と変更したい場合

# groupmod -n new_wasgroup wasgroup

この記事は

選択肢 投票
おもしろかった 31  
そうでもない 1  

Top / Linux / コマンド集

現在のアクセス:54768


*1 bashは export EDITOR=/usr/bin/vi か
*2 つまりこの一覧にあるgroupのみに属するようになる

トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS