/lib や /usr/lib以下にあるライブラリー

/etc/ld.so.conf  —–>  ldconfigコマンド ——-> /etc/ld.so.cache生成

上記のライブラリーを必要に応じて,ロードする。

 

ldconfig.jpg

 


/proc/interruptsにて現在利用しているIRQの確認が出来ます。 (※setserialなどのコマンドもあります)

irq.jpg

 

 

 

 

 

 

 

 

 

 

 

 

PCIデバイス確認

lspci.jpg


■インストールされているか調査

[root@localhost BACKUP]# rpm -q mysql
mysql-5.0.27-1.fc5

■詳細情報

[root@localhost BACKUP]#  rpm -q -i mysql
Name        : mysql                        Relocations: (not relocatable)
Version     : 5.0.27                            Vendor: Red Hat, Inc.
Release     : 1.fc5                         Build Date: 2006年11月24日 05時34分01秒
Install Date: 2007年04月15日 00時45分09秒      Build Host: hs20-bc2-4.build.redhat.com
Group       : Applications/Databases        Source RPM: mysql-5.0.27-1.fc5.src.rpm
Size        : 6047337                          License: GPL
Signature   : DSA/SHA1, 2006年11月28日 00時01分06秒, Key ID b44269d04f2a6fd2
Packager    : Red Hat, Inc. <http://bugzilla.redhat.com/bugzilla>
URL         : http://www.mysql.com
Summary     : MySQL のクライアントプログラムと共有ライブラリ。
Description :
MySQL is a multi-user, multi-threaded SQL database server. MySQL is a
client/server implementation consisting of a server daemon (mysqld)
and many different client programs and libraries. The base package
contains the MySQL client programs, the client shared libraries, and
generic MySQL files.
[root@localhost BACKUP]#

■インストールパス

[root@localhost BACKUP]#  rpm -q -l mysql
/etc/ld.so.conf.d/mysql-i386.conf
/etc/my.cnf
/usr/bin/msql2mysql
/usr/bin/mysql
/usr/bin/mysql_config
/usr/bin/mysql_find_rows
/usr/bin/mysql_tableinfo
/usr/bin/mysql_waitpid
/usr/bin/mysqlaccess
/usr/bin/mysqladmin
/usr/bin/mysqlbinlog
/usr/bin/mysqlcheck
/usr/bin/mysqldump
/usr/bin/mysqlimport
/usr/bin/mysqlshow
/usr/lib/mysql

■依存しているパッケージを表示

[root@localhost BACKUP]#  rpm -q -R mysql
/bin/sh
/bin/sh
/bin/sh
/bin/sh
/sbin/install-info
/sbin/ldconfig
/usr/bin/perl
bash
chkconfig
config(mysql) = 5.0.27-1.fc5
fileutils
grep

■インストールパッケージを調査

[root@localhost BACKUP]# rpm -qf /usr/bin/mysql
mysql-5.0.27-1.fc5

■どのようなファイルがインストールされるか事前調査

[root@localhost BACKUP]# rpm -qlp mysql-5.0.45-1.fc6.remi.x86_64.rpm
警告: mysql-5.0.45-1.fc6.remi.x86_64.rpm: ヘッダ V3 DSA signature: NOKEY, key ID 00f97f56
/usr/bin/msql2mysql
/usr/bin/mysql
/usr/bin/mysql_config
/usr/bin/mysql_find_rows
/usr/bin/mysql_tableinfo
/usr/bin/mysql_waitpid
/usr/bin/mysqlaccess
/usr/bin/mysqladmin
/usr/bin/mysqlbinlog
/usr/bin/mysqlcheck
/usr/bin/mysqldump
/usr/bin/mysqlimport
/usr/bin/mysqlshow
/usr/lib64/mysql/mysql_config
/usr/lib64/mysql/mysqlbug
/usr/share/doc/mysql-5.0.45
/usr/share/doc/mysql-5.0.45/COPYING
/usr/share/doc/mysql-5.0.45/EXCEPTIONS-CLIENT
/usr/share/doc/mysql-5.0.45/README
/usr/share/info/mysql.info.gz
/usr/share/man/man1/mysql.1.gz
/usr/share/man/man1/mysql_find_rows.1.gz
/usr/share/man/man1/mysql_tableinfo.1.gz
/usr/share/man/man1/mysql_waitpid.1.gz
/usr/share/man/man1/mysqlaccess.1.gz
/usr/share/man/man1/mysqladmin.1.gz
/usr/share/man/man1/mysqldump.1.gz
/usr/share/man/man1/mysqlshow.1.gz
[root@localhost BACKUP]#

 

■パッケージの依存関係を調べる

[root@localhost BACKUP]# rpm -qRp mysql-5.0.45-1.fc6.remi.x86_64.rpm
警告: mysql-5.0.45-1.fc6.remi.x86_64.rpm: ヘッダ V3 DSA signature: NOKEY, key ID 00f97f56
/bin/sh
/bin/sh
/bin/sh
/sbin/install-info
/usr/bin/perl
bash
fileutils
grep
libc.so.6()(64bit)
libc.so.6(GLIBC_2.2.5)(64bit)
libc.so.6(GLIBC_2.3)(64bit)
libc.so.6(GLIBC_2.3.4)(64bit)
libc.so.6(GLIBC_2.4)(64bit)
libcrypt.so.1()(64bit)
libcrypto.so.6()(64bit)
libgcc_s.so.1()(64bit)
libm.so.6()(64bit)
libm.so.6(GLIBC_2.2.5)(64bit)
libmysqlclient.so.15()(64bit)
libmysqlclient.so.15(libmysqlclient_15)(64bit)
libncurses.so.5()(64bit)
libnsl.so.1()(64bit)
libpthread.so.0()(64bit)
libpthread.so.0(GLIBC_2.2.5)(64bit)
libpthread.so.0(GLIBC_2.3.2)(64bit)
libssl.so.6()(64bit)
libstdc++.so.6()(64bit)
libstdc++.so.6(CXXABI_1.3)(64bit)
libz.so.1()(64bit)
mysql-libs = 5.0.45-1.fc6.remi
perl(DBI)
perl(Exporter)
perl(Fcntl)
perl(File::Temp)
perl(Getopt::Long)
perl(IPC::Open3)
perl(Sys::Hostname)
perl(strict)
rpmlib(CompressedFileNames) <= 3.0.4-1
rpmlib(PayloadFilesHavePrefix) <= 4.0-1
rtld(GNU_HASH)
[root@localhost BACKUP]#


ldd コマンドで”コマンド”や”アプリケーション”がどんなライブラリを

ダイナミックリンクしているか調べる。

 

[root@localhost xinit]# /usr/bin/ldd /usr/local/apache2/bin/httpd
        linux-gate.so.1 =>  (0x00c3a000)
        libm.so.6 => /lib/libm.so.6 (0x00819000)
        libaprutil-1.so.0 => /usr/local/apache2/lib/libaprutil-1.so.0 (0x0086d000)
        libsqlite3.so.0 => /usr/lib/libsqlite3.so.0 (0x008b1000)
        libexpat.so.0 => /lib/libexpat.so.0 (0x00a4f000)
        libapr-1.so.0 => /usr/local/apache2/lib/libapr-1.so.0 (0x00110000)
        libuuid.so.1 => /lib/libuuid.so.1 (0x00133000)
        librt.so.1 => /lib/librt.so.1 (0x02a21000)
        libcrypt.so.1 => /lib/libcrypt.so.1 (0x03396000)
        libpthread.so.0 => /lib/libpthread.so.0 (0x00a78000)
        libdl.so.2 => /lib/libdl.so.2 (0x00840000)
        libc.so.6 => /lib/libc.so.6 (0x006e4000)
        /lib/ld-linux.so.2 (0x006c7000)

[root@localhost xinit]# /usr/bin/ldd /usr/bin/mysql
        linux-gate.so.1 =>  (0x00251000)
        libncurses.so.5 => /usr/lib/libncurses.so.5 (0x02ee5000)
        libmysqlclient.so.15 => /usr/lib/mysql/libmysqlclient.so.15 (0x0085b000)
        libcrypt.so.1 => /lib/libcrypt.so.1 (0x03396000)
        libnsl.so.1 => /lib/libnsl.so.1 (0x00d27000)
        libssl.so.6 => /lib/libssl.so.6 (0x00680000)
        libcrypto.so.6 => /lib/libcrypto.so.6 (0x0053f000)
        libz.so.1 => /usr/lib/libz.so.1 (0x00846000)
        libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x0042c000)
        libm.so.6 => /lib/libm.so.6 (0x00819000)
        libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00d54000)
        libc.so.6 => /lib/libc.so.6 (0x006e4000)
        libdl.so.2 => /lib/libdl.so.2 (0x00840000)
        libgssapi_krb5.so.2 => /usr/lib/libgssapi_krb5.so.2 (0x00dde000)
        libkrb5.so.3 => /usr/lib/libkrb5.so.3 (0x00d67000)
        libcom_err.so.2 => /lib/libcom_err.so.2 (0x00d62000)
        libk5crypto.so.3 => /usr/lib/libk5crypto.so.3 (0x00518000)
        libresolv.so.2 => /lib/libresolv.so.2 (0x00d3f000)
        /lib/ld-linux.so.2 (0x006c7000)
        libkrb5support.so.0 => /usr/lib/libkrb5support.so.0 (0x00df9000)
[root@localhost xinit]#


findコマンド

-name ファイル名

-atime 最終アクセス時間

-mtime 最終更新時間

-perm アクセス権限

-size ファイルサイズ

-type ファイルの種類

-user ファイルの所有者

-print マッチしたファイルを表示(省略可能)

-exec マッチしたファイルに対して,コマンド実行

 

RPMファイルを検索

[root@localhost ~]# find /home -name “*.rpm”
/home/admin/mysql-5.0.45-1.fc6.remi.x86_64.rpm
[root@localhost ~]#

一日以内に更新されたファイル

[root@localhost ~]# find /home/ -type f -mtime -1
/home/admin/right/umaskconfirm
/home/admin/linktest/red.log
/home/admin/linktest/error.log
/home/admin/linktest/test.log
/home/admin/linktest/cp_red_sym.log
/home/admin/linktest/test2.log
/home/admin/linktest/red_hard.log
/home/admin/linktest/test1.log
/home/admin/linktest/test3.log
/home/admin/.bash_history
[root@localhost ~]#

SUIDが設定されたファイルを検索

[root@localhost ~]# find /usr/bin/ -type f -perm -u+s
/usr/bin/rsh
/usr/bin/newgrp
/usr/bin/kon
/usr/bin/rcp
/usr/bin/chsh
/usr/bin/gpasswd
/usr/bin/rlogin
/usr/bin/Xorg
/usr/bin/at
/usr/bin/passwd
/usr/bin/sudo
/usr/bin/chfn
/usr/bin/sudoedit
/usr/bin/newvc
/usr/bin/newrole
/usr/bin/crontab
/usr/bin/chage
[root@localhost ~]#

/tmp/から所有者がadminのファイルやディレクトリー検索

[root@localhost ~]# find /tmp/ -user admin
/tmp/gconfd-admin
/tmp/mapping-admin
[root@localhost ~]#

365日アクセスされていないファイルを検索

[root@localhost ~]# find /home/admin/ -atime +365
/home/admin/.gtkrc
/home/admin/1.txt
[root@localhost ~]# ls /home/admin/1.txt
/home/admin/1.txt
[root@localhost ~]# ls -l /home/admin/1.txt
-rw-r–r– 1 root root 25  5月 29  2006 /home/admin/1.txt

365日アクセスされていないファイルを検索して削除

[root@localhost ~]# find /home/admin/ -atime +365 -exec rm {} \;
[root@localhost ~]# find /home/admin/ -atime +365
[root@localhost ~]#

 

LOCATE(ファイルデータベースに基づいて検索:データベースを更新する為にはupdatedb)

[root@localhost ~]# locate “*.rpm”
/home/admin/mysql-5.0.45-1.fc6.remi.x86_64.rpm
/usr/share/doc/vim-common-7.0.042/Changelog.rpm
/var/cache/alchemist/printconf.rpm
[root@localhost ~]#

 

updatedb.jpg

WHICH(コマンドを探して,コマンドの絶対パスを表示します)

[root@localhost ~]# which ifconfig
/sbin/ifconfig
[root@localhost ~]# which route
/sbin/route
[root@localhost ~]# which vi
/bin/vi
[root@localhost ~]#

* whichコマンドは,パスが通っていないと検索出来ません。

WHEREIS (指定されたコマンドのバイナリーファイル,ソースコード,マニュアルファイルの場所を検索)

[root@localhost ~]# whereis ifconfig
ifconfig: /sbin/ifconfig /usr/share/man/man8/ifconfig.8.gz
[root@localhost ~]# whereis route
route: /sbin/route /usr/share/man/man8/route.8.gz
[root@localhost ~]# whereis vi
vi: /bin/vi /usr/share/man/man1p/vi.1p.gz /usr/share/man/man1/vi.1.gz
[root@localhost ~]#


ハードリンク

ハードリンクは元のファイルとiノードが同じで,どちらか変更したら同一の実体にも

変更を加える事になります。ハードリンクが存在する場合は,その全てを削除するまでは

ファイルの実体を削除する事は出来ません。

*ハードリンクはiノードで管理されているので,異なるファイルシステムには作成する事は出来ません。

ディレクトリーのハードリンクを作成する事も出来ません。

 

シンボリックリンク

シンボリックリンクはファイルの元の場所を指し示します。リンク元へのポインターを持っています。

シンボリックリンクを残したままファイルを削除する事も可能です。但しリンクはエラーになります。

ハードリンクと異なり,他のファイルシステムへもリンクを貼ることが出来ます。またディレクトリーの

リンクも作成することが可能です。

 

シンボリックリンクをコピーする時は,”-d”オプション付きでコピーするとリンク自体をコピーできます。

[root@localhost linktest]# ls -li
合計 60
1436427 -rw-r–r– 1 root root 516  9月 16 23:00 error.log
1436428 -rw-r–r– 2 root root 401  9月 16 23:00 red.log
1436428 -rw-r–r– 2 root root 401  9月 16 23:00 red_hard.log
1436433 lrwxrwxrwx 1 root root   7  9月 16 23:01 red_sym.log -> red.log
1436429 -rwxr-xr– 1 root root 149  9月 16 23:00 test.log
1436430 -rw-r–r– 1 root root 187  9月 16 23:00 test1.log
1436431 -rw-r–r– 1 root root 374  9月 16 23:00 test2.log
1436432 -rw-r–r– 1 root root 374  9月 16 23:00 test3.log

[root@localhost linktest]# cp red_sym.log cp_red_sym.log
[root@localhost linktest]# cp -d red_sym.log cp_d_red_sym.log
[root@localhost linktest]# ls -l
合計 72
lrwxrwxrwx 1 root root   7  9月 16 23:11 cp_d_red_sym.log -> red.log
-rw-r–r– 1 root root 401  9月 16 23:11 cp_red_sym.log
-rw-r–r– 1 root root 516  9月 16 23:00 error.log
-rw-r–r– 2 root root 401  9月 16 23:00 red.log
-rw-r–r– 2 root root 401  9月 16 23:00 red_hard.log
lrwxrwxrwx 1 root root   7  9月 16 23:01 red_sym.log -> red.log
-rwxr-xr– 1 root root 149  9月 16 23:00 test.log
-rw-r–r– 1 root root 187  9月 16 23:00 test1.log
-rw-r–r– 1 root root 374  9月 16 23:00 test2.log
-rw-r–r– 1 root root 374  9月 16 23:00 test3.log
[root@localhost linktest]#

【 ハードリンクとシンボリックリンク】

symlink.jpg


ファイルを作成した場合のアクセス権 644 (666 – 022)

ディレクトリーを作成した場合のアクセス権755 (777 – 022)

[root@localhost right]# umask
0022

[root@localhost right]# vi umaskconfirm
[root@localhost right]# ls -l
合計 8
-rw-r–r– 1 root root 6  9月 16 22:23 umaskconfirm
[root@localhost right]# mkdir folder
[root@localhost right]# ls -l
合計 16
drwxr-xr-x 2 root root 4096  9月 16 22:26 folder
-rw-r–r– 1 root root    6  9月 16 22:23 umaskconfirm
[root@localhost right]#

 

 

i 変更不可オプション

[root@localhost right]# chattr +i umaskconfirm
[root@localhost right]# lsattr umaskconfirm
—-i——– umaskconfirm

-Rオプションでディレクトリーとその中にある全ファイルの所有者を変更する。

[root@localhost ~]# chown -R admin:admin share/


 

[root@localhost etc]# ls -ld /tmp
drwxrwxrwt 5 root root 4096  9月 12 23:43 /tmp

drwxrwxrwt ← 書き込み権はあるが,他のユーザーが所有するファイルを削除する事は出来ない。

1000+通常権限で設定。若しくはchmod +tでスティッキービットの設定が出来ます。

SUID(4000), SGID(2000)も設定出来ます。