/home/sakura/docディレクトリ以下のファイルの所有者は現在sakuraになっているが、そのディレクトリ以下の全ファイルの所有者をtomoyoに変更するにはどうすればよいか。 1 chown -d /home/sakura/doc tomoyo 2 chown -d tomoyo /home/sakura/doc 3 chown tomoyo -d /home/sakura/doc 4 chown tomoyo /home/sakura/doc 5 chown -R tomoyo /home/sakura/doc |
5 -R オプションは、指定されたディレクトリ以下の全ファイルの所有者を再帰的に変更します。書式は、 chown [オプション] user名[:group名] file/directory名 となります。 なお、実際に所有者を変更できるのは スーパーユーザーだけですので注意して下さい。 |
以下のファイルは、iノード番号が同じだがファイル名が異なる。 $ ls -li /bin/gzip /bin/gunzip 16175 -rwxr-xr-x 4 root root 49320 Jun 6 11:43 /bin/gzip 16175 -rwxr-xr-x 4 root root 49320 Jun 6 11:43 /bin/gunzip このように、iノード番号が同じで異なるファイル名のファイルを作成するコマンドは何か? |
ln iノード番号が同じでファイル名が異なるのはハードリンクです。1つのファイル(実体)を別の名前でも参照できるようにしています。iノード番号はファイルシステムごとに用意されますから、ファイルシステムを越えてはハードリンクを作成できないことになります。シンボリックリンクは、リンク先ファイルのパスが格納されたファイルで、リンク先とはiノード番号は異なります。 |
/linkディレクトリにアクセスすると/originディレクトリが参照できるよう、リンクを作成したい。どのコマンドを実行すればよいか。 1 ln /link /origin 2 ln /origin /link 3 ln -s /link /origin 4 ln -s /origin /link |
4 シンボリックリンクは、 ln -s <リンク元(実体)> <リンク先> で作成します。なお、ディレクトリのシンボリックリンクは作成できますが、ディレクトリのハードリンクは作成できません。また、別のファイルシステムへのリンクが作成できるのはシンボリックリンクだけです。 |
| ファイル/data/maronへのシンボリックリンク/data/jeanneを作成するためのコマンドを記述せよ。 |
ln -s /data/maron /data/jeanne シンボリックリンクを作成するには、 ln -s <リンク元(実体)> <リンク先> の順になります。順序に注意しましょう。 |
pasteコマンドのフルパスを知りたい場合に利用できるコマンドを3つ選べ。 1 which 2 whatis 3 what 4 whereis 5 type |
1 , 4 , 5 各コマンドの出力は次のとおりです。 $ which paste /usr/bin/paste $ type paste paste is /usr/bin/paste $ whereis paste paste: /usr/bin/paste /usr/share/man/man1/paste.1.gz |
以下のディレクトリの中で、FHS2.2ではオプション扱いされているものはどれか? 1 /tmp 2 /var 3 /home 4 /root 5 /mnt |
3 , 4 /homeと/rootは、FHS2.2ではオプション扱いとなります。それ以外の選択肢にあるディレクトリは必須です。 |
chownコマンドのインストール元パッケージ名を特定したい。下線部に入るコマンドは何か。 # rpm -qf `___________ chown` |
which rpm -qfで、フルパスで指定したファイルのインストール元パッケージが特定できます。つまり下線部には、chownコマンドのフルパスを検索するwhichコマンドが当てはまります。「which chown」がバッククォーテーションで囲まれているので、この部分はchownコマンドのフルパスに置き換えられます。 |
ローカルシステムでの一般ユーザーが利用するコマンドを新たに作成し、インストールしたい。どのディレクトリにインストールするのが適切か? 1 /bin 2 /sbin 3 /usr/local/bin 4 /usr/local/sbin 5 /home |
3 一般ユーザー用のコマンドは通常 /usr/local/bin 以下にインストールするのが適切です。/bin ディレクトリにも一般ユーザー用のコマンドが置かれていますが、ここに新たにコマンドを追加すべきではありません。 |
以下のディレクトリのうち、ルートファイルシステムになければならないのはどれか?(該当するものすべて) 1 /boot 2 /etc 3 /bin 4 /home 5 /root 6 /mnt |
2 , 3 /etc, /lib, /sbin, /bin, /dev ディレクトリはルートファイルシステムになければなりません。 |
一般ユーザー用のコマンドを新たに作成し、インストールしたい。どのディレクトリにインストールするのが適切か? 1 /bin 2 /sbin 3 /usr/local/bin 4 /usr/local/sbin 5 /home |
3 一般ユーザー用のコマンドは通常 /usr/local/bin 以下にインストールするのが適切です。/bin ディレクトリにも一般ユーザー用のコマンドが置かれていますが、ここに新たにコマンドを追加すべきではありません。 |
| locateコマンドが利用するファイル名データベースの更新を行うためのコマンドは何か? |
updatedb updatedb もしくは slocate -u で locateデータベースを更新します。locateは、あらかじめ作成されたデータベースを参照して、find より高速にファイル検索を行えます。データベースの更新は、通常 cronにより定期的に実行されています。 |
以下のようにI/Oアドレスの一覧を表示するには、なんというファイルを参照すればよいか。 0000-001f : dma1 0040-005f : timer 0060-006f : keyboard 0070-007f : rtc |
/proc/ioports I/Oアドレスを参照するには、/proc/ioportsをcatコマンドなどで表示します。 |
一般的なPCで、BIOSセットアップを使って設定できる項目はどれか?(適切なものを全て選択) 1 起動デバイスの検索順序の選択 2 ディスプレイの解像度の設定 3 シリアルポートへのIRQの割り当て 4 パーティションの設定 5 USB ポートを使用不可にする |
1 , 3 , 5 BIOSで設定できる主な項目、BIOSセットアップの起動方法などは必ず理解しておきましょう。 |
1台のSCSIハードディスクで利用できる最大論理パーティション数はどれか? 1 7 2 8 3 11 4 16 5 128 |
3 SCSIディスクは、最大16のサブデバイスに分割できます。そのうち1つはデバイス自身に、残りの4つは基本パーティションに使用されます。 |
現在、2台のSCSIハードディスクを利用している。SCSI-IDはそれぞれ2と4でありデバイスファイル名は/dev/sda、/dev/sdbである。ここで、SCSI-IDが1のハードディスクを追加した。このハードディスクのデバイスファイル名はどうなるか? 1 /dev/sda 2 /dev/sdb 3 /dev/sdc |
1 通常、SCSI-IDの小さいデバイスから順にアクティブになり、デバイスエントリが割り当てられます。 |
SCSIデバイスの詳細な情報を表示できるコマンドはどれか? 1 cat /dev/sd* 2 cat /etc/scsi 3 scsi_info 4 cat /proc/scsi_info 5 lspci |
3 scsi_infoコマンドで、SCSI IDやデバイスのモデル名などの情報を表示することができます。 # /sbin/scsi_info /dev/sda |
SCSIについての説明で、正しいものをすべて選択せよ。 1 SCSIコントローラを除くと,7台もしくは15台までのデバイスを接続できる 2 SCSI機器は、ハードウェア固有のMACアドレスで識別される 3 SCSI機器の基本設定は、Linuxconf を利用できる 4 SCSI接続の両端には終端装置が必要である 5 Ultra SCSI や Fast SCSI はバス幅が8ビットである |
1 , 4 , 5
[解説] 1:SCSI-2などは7台、Wide SCSIなどは15台が接続できます。 2:MACアドレスはネットワークカードの識別に使われます。 3:Linuxconfでは設定できません。 4:終端装置(ターミネータ)が必要です。内蔵されている場合も多いです。 5:バス幅が8ビットのものは、7台のデバイスが接続できます。 |
| 16ビットバスであるWide SCSIを利用している。SCSIホストアダプタ以外に、何台のSCSIデバイスを接続することができるか? |
15 Wide SCSIは16ビットバスであるため、SCSIホストアダプタを含めて16台接続することができます。したがって、ホストアダプタを除いた15台までデバイスを接続することができます。 |
IRQの割り当てについて確認するには、なんというファイルをcatコマンドなどで表示すればよいか。
/proc/_______________ |
interrupts /proc/interruptsを参照することで、IRQの割り当てを確認することができます。 |
IRQについての説明として、適切なものはどれか?
1 一般的に0番~15番までのIRQ番号がある 2 /proc/irqで割り当てを調べることができる 3 デバイスへのIRQの割り当てが重複するとトラブルが発生することがある 4 PCIバスでは、複数デバイスで1つのIRQを共有することができる 5 IRQを手動で割り当てるには、/etc/pcidevicesファイルを編集する |
1 , 3 , 4 IRQについての情報は/proc/interruptsにあります。/proc/irqというファイルは 存在しません。 IRQを手動で割り当てるには、BIOSセットアップで設定を行います。 |
シリアルポートのIRQやUARTチップの種類を表示するコマンドはどれか。 1 cat /etc/serial 2 setserial 3 tty_view 4 cat /proc/serial 5 xcomview |
2 setserialコマンドは、指定したシリアルポートのIRQ、I/Oアドレス、UARTチップの種類などを表示します。/proc/serialや/proc/serialといったファイルはありません。tty_viewやxcomviewといったコマンドはありません。 |
ひとつめのシリアルポートを示すデバイスファイルはどれか? 1 /dev/tty0 2 /dev/tty1 3 /dev/ttyS0 4 /dev/ttyS1 5 上記のいずれでもない |
3 シリアルポートは /dev/ttyS[0,1,2..] で表されます。/dev/ttyS0 が、Windowsでいうところの COM1 になります。/dev/tty0 などは、コンソールを表すデバイスファイルです。 |
USBは、カーネル2.4でホットプラグに対応し、/sbin/hotplugが適切な処理を行う。このとき使われるスクリプトが格納されているディレクトリはどれか? 1 /etc/usb/hotplug 2 /proc/bus/usb 3 /etc/hotplug 4 /proc/usb 5 /etc/rc.d/init.d |
3 ホットプラグのスクリプトは/etc/hotplugに格納されます。 |
USB1.1規格の説明として適切なものはどれか? 1 ホットプラグに対応している 2 プラグ&プレイに対応している 3 最大接続機器数は15台である 4 転送速度は最大480Mbpsである 5 Linuxではカーネル2.0で正式に対応した |
1 , 2 USBの最大接続機器数は127台です。USB1.1の転送速度は最大12Mbpsであり、USB2.0になって最大480Mbpsとなりました。Linuxで正式に対応したのはカーネル2.4からです(カーネル2.2でも一部機能を使えるバージョンがあります)。 |
USBデバイスクラスと対応するデバイスについて不適切な組み合わせはどれか。 1 Mass Strage Devices...ハードディスクやCD-ROMドライブ 2 HID...USB HUB 3 Communication Devices...モデムやNIC 4 Audio Devices...音源モジュールやスピーカ 5 Printer Devices...プリンタ |
2 HID(Human Interface Devices)は、キーボードやマウスなどに対応するデバイスクラスです。 |
利用しているコンピュータに搭載されているUSBコントローラの種類を確認するときに役立つと考えられるコマンドを2つ選択せよ。 1 lsmod 2 ldconfig 3 cat /etc/usb-core 4 dmesg 5 cat /proc/ioports |
1 , 4 lsmodコマンドやdmesgコマンドの結果をgrepするなどして、USBコントローラの種類を確認できます(ただし、カーネルに認識されていないときやモジュールが存在しないときなどは確認できません)。USBコントローラにはUHCIとOHCIがあり、使用するマザーボードなどによって異なります。Linuxでは双方に対応しています。 |
fdiskコマンドを使ってパーティションを作成している。パーティションタイプを、デフォルトのext2(83)から、Linux RAID(fd)へ変更したい。パーティションタイプを変更するには、どのサブコマンドを使えばよいか? 1 p 2 t 3 s 4 type 5 :fd |
2 パーティションには、格納するファイルシステムのタイプに合わせ、16進数のパーティションタイプが付けられています。パーティションタイプを変更するには、fdiskの対話モードでtサブコマンドを使います。 |
搭載メモリ量が64MBであるマシンがある。このマシンにLinuxをインストールするとき、確保すべきスワップ領域用パーティションのサイズとして適切なものを2つ選択せよ。 1 6MB 2 30MB 3 60MB 4 120MB 5 200MB |
3 , 4 スワップ領域のサイズは、搭載メモリ量と同等~2倍程度を目安とします。 |
あなたは1.2GBの容量を持つハードディスクを搭載したマシンに、新規にLinuxをインストールしようとしている。マシンにメモリは96MB搭載されている。どのようにパーティションを分割すればよいか。 ※なお、ここでは1.2GB=1,200MBとする 1 /bootに1MB, /swapに 10MB,/ に1,189MB 2 /bootに1MB /swapに300MB, / に899MB 3 /bootに10MB /swapに100MB, / に1090M 4 /bootに100MB, /swapに300MB, / に800MB 5 /swapに300MB, /に900MB |
3 ・/boot は 1MBでは小さすぎます。 ・/swap は 10MBでは小さすぎ、300MBでは大きすぎます。 一般的に搭載メモリと同じか2倍程度が目安となります。 ・/boot は 1024シリンダに収まるように。 BIOSの制限を回避するためです。 以上はあくまでも「ガイドライン」ですので、実際の運用に当たってサイズを決定する必要があるのは言うまでもありません。 |
搭載メモリが128MB、ハードディスク容量が20GBのマシンにLinuxをインストールしたい。スワップ領域としてどの程度確保すればよいか?適切な容量を2つ選択せよ。 1 12MB 2 100MB 3 250MB 4 500MB 5 2GB |
2 , 3 スワップ領域サイズは、搭載メモリと同等から2倍程度を目安とします。 |
以下はgrub.confの一部である。 title Linux (2.4.21-1) root (hd0,1) _______ /vmlinuz ro root=/dev/hda3 mem=128M initrd /initrd-2.4.21-1.img ここで、下線部に当てはまるキーワードはどれか? 1 label 2 boot 3 kernel 4 root 5 append |
3 kernelキーワードは、ロードするカーネルイメージとカーネルオプションを指定します。その他のキーワードには次のようなものがあります。 title ... OSのラベル root .... ルートパーティション initrd .. 初期RAMディスクイメージ makeactive ... パーティションをアクティブにする default ...... デフォルトのOS |
以下は/etc/lilo.confの一部である。 image=/boot/vmlinuz label=linux root=/dev/hda2 _______________ read-only ここで、搭載メモリが128MBであることをカーネルに渡したい場合、下線部にはどのように記述すればよいか? 1 option="mem 128M" 2 append="mem=128M" 3 mem=128M 4 kernel-option "mem=128M" |
2 カーネルが起動するときにカーネルに渡すオプションは、appendで指定します。カーネルがメモリ容量を正しく認識できない場合などに有効です。カーネルに渡すオプションは、起動時にブートプロンプトで指定することもできます。 |
| /dev/hdaのMBRにGRUBをインストールしたい。適切な引数を含め、コマンドを記述せよ。 |
grub-install /dev/hda GRUBをMBRにインストールするには、デバイスファイルを引数として、grub-installコマンドを実行します。 |
| カーネルの再構築を行い、新しいカーネルから起動できるように/etc/lilo.confを変更した。次回起動時に変更内容が反映されるようにするには、何というコマンドを実行すればよいか? コマンドをフルパスで記述せよ。 |
/sbin/lilo カーネルを再構築した後で、新しいカーネルから起動したい場合などは、lilo.conf を設定するだけではなく、/sbin/lilo を実行する必要があります。 |
以下のアーカイブを展開したい。下線部に当てはまるオプション1文字を記述せよ。 $ tar ___xvf software.tar.bz2 |
j ~.bz2は、bzip2で圧縮されたことを示します。bzip2はgzipより高圧縮を実現します。tarコマンドで扱うには、jオプションを利用します。bunzip2コマンドを使っても解凍できます。 |
以下はソースからのインストール手順である。この中で、一般的にroot権限がなければ実行できないものはどれか? 1 gunzip pack.tar.gz 2 tar xvf pack.tar;cd pack 3 ./configure 4 make 5 make install |
5 make installは、/usr/local以下など書き込みにroot権限が必要な場所にインストールされることが多いので、一般的にroot権限が必要になります。 |
Makefileに基づいてソースをコンパイルしたい。Makefileのあるディレクトリで、どのコマンドを実行すればよいか? 1 gcc 2 cc 3 make 4 makefile 5 ldd |
3 makeを実行すると、Makefileの記述に基づいてソースがコンパイルされます。システムに合わせたMakefileは通常、configureスクリプトで作成します。 |
システムに合わせたMakefileを生成するためのコマンドはどれか? 1 tar 2 make 3 makefile 4 configure 5 make install |
4 $ ./configure でconfigureスクリプトが実行され、その環境に合わせたMakefileが生成されます。必要なライブラリがない場合などはエラーを出力して停止しますので、その出力を見て対応します。 |
プログラムのソースアーカイブ「prog.tar.gz」がある。これを展開してインストールしたい場合、コマンドを実行する正しい手順はどれか? A : make B : ./configure C : tar zxf prog.tar.gz D : make install E : cd prog 1 C - A - D - B - E 2 C - E - A - D - B 3 C - E - B - A - D 4 C - E - A - B - D |
3 tar で展開し、展開されたディレクトリに cd で移動し、configure ~ make ~ make install が基本です。 |
共有ライブラリは/libや/usr/libに配置されるが、それ以外の何箇所かにもライブラリファイルを配置している。ldconfigコマンドがそれらのディレクトリも調べるようにするには、設定をどのファイルに記述すればよいか?
/etc/________________ |
ld.so.conf ldconfigコマンドは、標準ディレクトリ/libおよび/usr/lib、/etc/ld.so.confファイルにあるディレクトリを調べ、ライブラリのキャッシュファイルである/etc/ld.so.cacheを更新します。 |