うつ病双極性感情障害を抱えたけんけんFedoraFreeBSD勉強日記。
Linux/Unixデスクトップ用途として使う秘訣お教えします。
 since 2006年2月16日(木)

コマンド

gsettingsを使ってGnome-Shellで日付を表示させる方法。

Fedoraに採用されたGnome-Shellでは、時間と曜日は表示されますが日付が表示されません。
不便…

というわけで、日付を表示させましょう。
gnome-tweak-toolsをインストールして設定する方法がありますが、
コマンドgsettingsを使って設定してみましょう。

gsettings set org.gnome.desktop.interface clock-show-date true

とするだけです。

うまく表示されましたか?

その他にもgsettingsコマンドはカスタマイズ出来ます。

gsettings list-recursively

とすると、設定できる一覧が表示されます。

憩いの場さんは、このコマンドを利用して
[Fedora 18] GNOME Shellのステータスメニューにログアウトの項目が無い Fedora
Gnome-Shellのスタートメニューにログアウトを表示させてますね♪
(以下のコマンドを実行するとログアウトするので、アプリケーションなどはデータを保存して閉じましょう。)

gsettings set org.gnome.shell always-show-log-out true
gnome-session-quit

Systemdの使い方。iptablesを例に。 on Fedora

成人式も終わりそろそろ、学生の皆さんは受験ですね。
さて、私はそんなことをそっちのけでLinuxの記事をあげちゃいます。

というのも、VNCでお家クラウド(クラウドと言っていいかどうか…)しようとiptablesを設定しようと思ったら、/etc/init.d/iptablesが無い!!
で、Fedora 15からinitスクリプトはsystemDに移行だよんって事なんで、ここで軽くまとめておきます。

なお、ここでうつコマンドは基本的には管理者権限かsudoかで。

Fedora25ではfirewalldに移行されたのでiptablesサービスは存在しません。(2016年12月21日)

iptablesのインストール

普通にFedoraをインストールしていれば、iptablesはインストールされているはずですが、念の為。

yum install iptables

で、ちゃんとインストールされているか確認するには、

rpm -q iptables

と打ってみる。

iptables-1.4.12-2.fc16.x86_64

なんて、出ます。バージョン名やx86_64がi686になってても気にしない、木にしない。 で、

rpm -ql iptables|head

とiptablesパッケージに含まれるファイルを呼び出してみると、

/bin/iptables-xml
/etc/sysconfig/ip6tables-config
/etc/sysconfig/iptables-config
/lib/systemd/system/ip6tables.service
/lib/systemd/system/iptables.service
/lib64/libip4tc.so.0
/lib64/libip4tc.so.0.0.0
/lib64/libip6tc.so.0
/lib64/libip6tc.so.0.0.0
/lib64/libipq.so.0

なんてあって、iptables.serviceなんてものが/lib/systemd以下にあったりするので、これをsystemdでいじるんだと思う。

systemDを使ったサービスのコントロール

systemDを使ったサービスのコントロールをしてみましょー。 /etc/inittabを書き換えるのに相当するランレベルの変更方法は今回はお預け。

サービスのコントロール

まずはサービスの起動関係を弄ってみましょう。 起動はiptablesはしてるはずなんで、まずは停止から。

停止

停止するには

systemctl stop iptabes.service

ちなみに/etc/init.d/iptables stopは使えませんが、 これまでのsysV系の方法である、

service iptables stop

は使えます。

起動

systemdを使って、iptablesを即座に起動する方法は、

systemctl start iptables.service

とする。

service iptables start

とすることも可能。

再起動

iptablesを即座に再起動するには、

systemctl restart iptables.service

restartはstartの時と同様、sysV系の方法では、

service iptables restart

とします。

Fedora起動時の設定

起動

Fedoraが起動時にiptablesが起動するには、

systemctl enable iptables.service

とします。そして、これまでのsysV系の方法では、

chkconfig iptables on

とすれば、起動時にiptablesが起動されます。

停止

Fedoraが起動時にiptablesが起動しないようにするには、

systemctl disable iptables.service

とします。そして、これまでのsysV系の方法では、

chkconfig iptables off

とすれば、起動時にiptablesが起動しません。

サービス起動一覧

chkconfig

sysV系のコマンドで使っていた、

chkconfig --list

とすると、

Note: This output shows SysV services only and does not include native
      systemd services. SysV configuration data might be overridden by native
      systemd configuration.

ceph           	0:off	1:off	2:off	3:off	4:off	5:off	6:off
ebtables       	0:off	1:off	2:off	3:off	4:off	5:off	6:off
iscsi          	0:off	1:off	2:off	3:on	4:on	5:on	6:off
iscsid         	0:off	1:off	2:off	3:on	4:on	5:on	6:off
libvirt-guests 	0:off	1:off	2:on	3:on	4:on	5:on	6:off
libvirtd       	0:off	1:off	2:on	3:on	4:on	5:on	6:off
livesys        	0:off	1:off	2:off	3:on	4:on	5:on	6:off
livesys-late   	0:off	1:off	2:off	3:on	4:on	5:on	6:off
netconsole     	0:off	1:off	2:off	3:off	4:off	5:off	6:off
netfs          	0:off	1:off	2:off	3:on	4:on	5:on	6:off
network        	0:off	1:off	2:off	3:off	4:off	5:off	6:off
sandbox        	0:off	1:off	2:off	3:off	4:off	5:on	6:off
svnserve       	0:off	1:off	2:off	3:off	4:off	5:off	6:off
vboxballoonctrl-service	0:off	1:off	2:on	3:on	4:on	5:on	6:off
vboxdrv        	0:off	1:off	2:on	3:on	4:on	5:on	6:off
vboxweb-service	0:off	1:off	2:on	3:on	4:on	5:on	6:off
vmware         	0:off	1:off	2:on	3:on	4:off	5:on	6:off
vmware-USBArbitrator	0:off	1:off	2:off	3:off	4:off	5:off	6:off
xenconsoled    	0:off	1:off	2:off	3:on	4:on	5:on	6:off
xend           	0:off	1:off	2:off	3:on	4:on	5:on	6:off
xendomains     	0:off	1:off	2:on	3:on	4:on	5:on	6:off

と表示されて、iptablesがいません。表示されてるものはvmwareやVirtual box、Xenなど仮想化関係のものがほとんど。つまり、まだsystemdに対応していないかサードパーティのアプリケーションだからsysV系のものばかりだったりする。

で、もちろん、

chkconfig --list|grep iptables

とすると、

Note: This output shows SysV services only and does not include native
      systemd services. SysV configuration data might be overridden by native
      systemd configuration.

なんて言われてiptablesの起動時のon/off状況は表示されず、systemd使ってよ!!って言われるのん。

ただし、chkconfigをつかっても

chkconfig iptables

とすると、

Note: Forwarding request to 'systemctl is-enabled iptables.service'.
enabled

と、注意書きがあるけど、enabledと出て起動時にiptablesが起動することは確認できる。

systemd

systemdを使ってサービスが起動する設定になっているかどうかは、

systemctl is-enabled iptables.service

として、

enabled

となっていれば、有効に。

disabled

になっていたら、起動時にサービスが起動しない設定。

サービス起動状況の一覧

systemdを使って、起動しているサービス一覧を見るには、

systemctl --full list-units --type=service

とします。

--fullは無くてもいいけど肝心のサービス名が省略されて見えなくなるので。

で、このコマンドの結果は、

UNIT                                 LOAD   ACTIVE SUB     JOB DESCRIPTION
abrt-ccpp.service                    loaded active exited      Install ABRT core
abrt-oops.service                    loaded active running     ABRT kernel log w
abrt-vmcore.service                  loaded active exited      Harvest vmcores f
abrtd.service                        loaded active running     ABRT Automated Bu
accounts-daemon.service              loaded active running     Accounts Service
atd.service                          loaded active running     Job spooling tool
auditd.service                       loaded active running     Security Auditing
avahi-daemon.service                 loaded active running     Avahi mDNS/DNS-SD
console-kit-daemon.service           loaded active running     Console Manager
console-kit-log-system-start.service loaded active exited      Console System St
crond.service                        loaded active running     Command Scheduler
cups.service                         loaded active running     CUPS Printing Ser
dbus.service                         loaded active running     D-Bus System Mess
fcoe.service                         loaded active running     Open-FCoE Initita
fedora-loadmodules.service           loaded active exited      Load legacy modul
fedora-readonly.service              loaded active exited      Configure read-on
fedora-storage-init-late.service     loaded active exited      Initialize storag
fedora-storage-init.service          loaded active exited      Initialize storag
fedora-wait-storage.service          loaded active exited      Wait for storage 
ip6tables.service                    loaded active exited      IPv6 firewall wit
iptables.service                     loaded active exited      IPv4 firewall wit
irqbalance.service                   loaded active running     irqbalance daemon

と、ちゃんとiptables.serviceが表示されてactiveになってます。iptables以外のサービスもちゃんと表示されてますね^^;

systemctl --full list-units --type=service|grep iptables

とgrepを使うと、

iptables.service                     loaded active exited      IPv4 firewall with iptables

とiptablesが有効になってることが一目瞭然に。

まとめ

さて、systemdを使ったサービスの制御はこれだけ知っていれば十分かと。たまに、@付きのサービスがあるのですがこれはまた別で解説します。Fedora 17ではsystemdにinitが完全移行だそうなので皆さんこの記事を読んで千本ノックしてください。恐らく、systemdに移行してもserviceコマンドやchkconfigコマンドの--list無しなら使えるとは思いますが、今のうちに習得しておきましょー。

参考:Fedora公式wiki Systemd

Linuxエンジニア養成読本 [仕事で使うための必須知識&ノウハウ満載!] (Software Design plus)
Linuxエンジニア養成読本 [仕事で使うための必須知識&ノウハウ満載!] (Software Design plus)
クチコミを見る

Linuxコマンドの鬼門、ddコマンドを色々試してみた!!

ブログネタ
Linux Tips に参加中!

ブロックサイズ指定なし

$ dd if=/dev/zero of=tempfile count=1
1+0 records in
1+0 records out
512 bytes (512 B) copied, 8.5871e-05 s, 6.0 MB/s
$ ls -l tempfile 
-rw-rw-r-- 1 kenken kenken 512 2010-02-09 17:43 tempfile
$ du -b tempfile 
512	tempfile
$ rm tempfile 

ブロックサイズ512バイトになる。manにもそう書いてある。

サイズ1MiB

1024 * KB = 1MiB、KB = 1024、1MiB = 1048576 バイト

ブロックサイズ1M

$ dd if=/dev/zero of=tempfile bs=1M count=1
1+0 records in
1+0 records out
1048576 bytes (1.0 MB) copied, 0.0101611 s, 103 MB/s
$ ls -l tempfile 
-rw-rw-r-- 1 kenken kenken 1.0M 2010-02-09 17:46 tempfile
$ du -b tempfile 
1048576	tempfile
$ rm tempfile 

ブロックサイズ1024k

$ dd if=/dev/zero of=tempfile bs=1024k count=1
1+0 records in
1+0 records out
1048576 bytes (1.0 MB) copied, 0.0280721 s, 37.4 MB/s
$ du -b tempfile 
1048576	tempfile
$ ls -l tempfile 
-rw-rw-r-- 1 kenken kenken 1048576 2010-02-09 17:47 tempfile
$ rm tempfile 

サイズ1MB

ブロックサイズ1000k、カウント1

$ dd if=/dev/zero of=tempfile bs=1000k count=1
1+0 records in
1+0 records out
1024000 bytes (1.0 MB) copied, 0.00693231 s, 148 MB/s

ブロックサイズ100k、カウント10

$ dd if=/dev/zero of=tempfile bs=100k count=10
10+0 records in
10+0 records out
1024000 bytes (1.0 MB) copied, 0.00615993 s, 166 MB/s

ブロックサイズ10k、カウント100

$ dd if=/dev/zero of=tempfile bs=10k count=100
100+0 records in
100+0 records out
1024000 bytes (1.0 MB) copied, 0.00561817 s, 182 MB/s

ブロックサイズ1k、カウント1000

$ dd if=/dev/zero of=tempfile bs=1k count=1000
1000+0 records in
1000+0 records out
1024000 bytes (1.0 MB) copied, 0.00913101 s, 112 MB/s

サイズ10MB

ブロックサイズ10000k、カウント1

$ dd if=/dev/zero of=tempfile bs=10000k count=1
1+0 records in
1+0 records out
10240000 bytes (10 MB) copied, 0.0980506 s, 104 MB/s

ブロックサイズ1000k、カウント10

$ dd if=/dev/zero of=tempfile bs=1000k count=10
10+0 records in
10+0 records out
10240000 bytes (10 MB) copied, 0.121644 s, 84.2 MB/s

ブロックサイズ100k、カウント100

$ dd if=/dev/zero of=tempfile bs=100k count=100
100+0 records in
100+0 records out
10240000 bytes (10 MB) copied, 0.349259 s, 29.3 MB/s

サイズ100MB

ブロックサイズ100000k、カウント1

$ dd if=/dev/zero of=tempfile bs=100000k count=1
1+0 records in
1+0 records out
102400000 bytes (102 MB) copied, 2.423 s, 42.3 MB/s

ブロックサイズ10000k、カウント10

$ dd if=/dev/zero of=tempfile bs=10000k count=10
10+0 records in
10+0 records out
102400000 bytes (102 MB) copied, 1.84167 s, 55.6 MB/s

ブロックサイズ1000k、カウント100

$ dd if=/dev/zero of=tempfile bs=1000k count=100
100+0 records in
100+0 records out
102400000 bytes (102 MB) copied, 1.88423 s, 54.3 MB/s

ブロックサイズ100k、カウント1000

$ dd if=/dev/zero of=tempfile bs=100k count=1000
1000+0 records in
1000+0 records out
102400000 bytes (102 MB) copied, 2.42257 s, 42.3 MB/s

ブロックサイズ10k、カウント10000

$ dd if=/dev/zero of=tempfile bs=10k count=10000
10000+0 records in
10000+0 records out
102400000 bytes (102 MB) copied, 2.18087 s, 47.0 MB/s

ブロックサイズ1k、カウント100000

$ dd if=/dev/zero of=tempfile bs=1k count=100000
100000+0 records in
100000+0 records out
102400000 bytes (102 MB) copied, 1.67401 s, 61.2 MB/s

ブロックサイズ512、カウント200000

$ dd if=/dev/zero of=tempfile bs=512 count=200000
200000+0 records in
200000+0 records out
102400000 bytes (102 MB) copied, 1.45254 s, 70.5 MB/s

サイズ1G

空ファイル

$ dd if=/dev/zero of=tempfile bs=1M count=1 seek=999
1+0 records in
1+0 records out
1048576 bytes (1.0 MB) copied, 0.0223442 s, 46.9 MB/s
$ ls -lh tempfile 
-rw-rw-r-- 1 kenken kenken 1000M 2010-02-09 17:47 tempfile
$ du -h tempfile 
1.0M	tempfile
$ rm tempfile 

ブロックサイズ1M、カウント1000

$ dd if=/dev/zero of=tempfile bs=1M count=1000
1000+0 records in
1000+0 records out
1048576000 bytes (1.0 GB) copied, 53.7109 s, 19.5 MB/s
$ du tempfile 
1001M	tempfile
$ rm tempfile 

ブロックサイズ10M、カウント100

$ dd if=/dev/zero of=tempfile bs=10M count=100
100+0 records in
100+0 records out
1048576000 bytes (1.0 GB) copied, 57.4014 s, 18.3 MB/s
$ du tempfile 
1001M	tempfile
$ ls -l tempfile 
-rw-rw-r-- 1 kenken kenken 1000M 2010-02-09 17:53 tempfile

ブロックサイズ100M、カウント10

$ dd if=/dev/zero of=tempfile bs=100M count=10
10+0 records in
10+0 records out
1048576000 bytes (1.0 GB) copied, 59.8352 s, 17.5 MB/s

ブロックサイズ1000M、カウント1

$ dd if=/dev/zero of=tempfile bs=1000M count=1
1+0 records in
1+0 records out
1048576000 bytes (1.0 GB) copied, 1413.82 s, 742 kB/s

Fedora 16リリースまであと一ヶ月。バックアップをして正式リリースを待とう!!

ブログネタ
Linuxに関する運用 に参加中!

現在のFedoraの最新versionは15です。
来月、11月頭にはFedora 16 (Verne)がリリースされるでしょう。
新しいFedoraをインストールをする前に大事なバックアップ方法を紹介しておきます。
もちろん、普段からもバックアップをしておくことは非常に大事です。
と言っておきながらついこの前、 データをすっ飛ばしてしまいましたが。(自分の不注意で。)

バックアップ方法

まず、十分な空き容量のある(ご自分のデータ量による) 外付けのHDDもしくはUSBのメモリスティックなどの 外部メディアを用意し、USB端子に挿入します。 このとき、外付けのHDDやUSBメモリスティックの マウント先を/media/usbとします。 (状況によって異なるので注意して下さい。)

ログアウトします。

そして、 [Ctrl]+[Alt]+[F2]でコンソール画面(真っ黒な画面)に切り替えます。 ユーザー名、パスワードを入力(入力時何も表示されませんので注意!!)

su
(rootのパスワード入力)
cd /
tar cvzf home.tar.gz /home
tar cvzf etc.tar.gz /etc
tar cvzf var.tar.gz /var
rpm -qa --qf %{NAME}"\n"|sort > rpm.list
cp home.tar.gz etc.tar.gz var.tar.gz rpm.list /media/usb

Fedoraのバージョンが13,14以前のバージョンを使用しているなら、 ISOイメージをCDもしくはDVDに焼いて、 アップデートなしにインストールするクリーンインストールの方が互換性や新しいアプリの確認がしやすいという点でお勧めです。

そうすれば、最新のバージョンのFedoraのISOイメージをダウンロードして、 インストールしましょう。 バージョン15であれば、 riken iij dti などからダウンロードしてください。

個人で使うバージョン管理ソフト【git入門】最低限の使い方まとめ。

gitリポジトリを作成

gitリポジトリを作る前にプロジェクトなり、 ファイルなりを用意しましょう。

tar xvzf project.tar.gz 

tar.gzファイルでなく、新規にファイルを作成するなら、ファイルを展開したり、エディタなどファイルを作成する。

cd project
ls file1 file2 file3
git init

設定

初期設定をします。 個人だけで使うならいらないような気もしますが。

git config --global user.name "Kenken"
git config --global user.email fedorakenken@example.com

git で使う(というか個人で使う)好きなエディタを設定します。

echo EDITOR="vim" >> ~/.bashrc
source ~/.bashrc

ファイルを追加、削除

commitするまで変更可能。

リポジトリに更新したファイルを追加

追加

git add file1 file2

全て追加

カレントディレクトリの全てのファイルを追加するなら、

git add .

リポジトリからファイルの登録を削除する

gitの管理しているリポジトリに登録しているファイルを登録解除する。

git rm file3

commitコミット

gitリポジトリを更新。ここで、初めてgitに情報,ファイル内容がが登録される。

git commit 
# On branch master
# Changes not staged for commit:
#   (use "git add ..." to update what will be committed)
#   (use "git checkout -- ..." to discard changes in working directory)
#
#	added:   file1 file2
#
no changes added to commit (use "git add" and/or "git commit -a")

と言われる場合は、 gitへ登録されていないので、

git add file1 file2

とかして、更新したファイルを登録する。 その後、

git commit

すれば、コミットが完了する。 すでにgitに登録してある全てのファイルを登録して、コミットするなら、

git commit -a

つまり、新たに作ったファイルや削除したフィルは、含まれないので注意すること。 追加、削除は、上記を参照。

コミットしたときのログファイル

#はgit logに表示されない。 # Newfile:や# Modifired:などの情報が自動的に書き込まれるが、 #を削除しないとこれらの情報はgit logでは見れなくなるので、 必要に応じて#を削除する事。

gitに追加しないファイルを設定する

.gitignoreに記述。

*~
*.swp
*.o

などとして、

git add .gitignore
git commit

すると、次回から無視してくれる。

コミットの取り消し

コミットのlogやファイルの追加、削除のし忘れがある場合、 直前のコミットを一旦取り消すことができます。

git commit --amend
入門Git
入門Git
クチコミを見る
ブログ内の検索
Google

WWW を検索
このblog内を検索
最新コメント
コンピューター オススメ
Linuxオススメ本
コマンド本
アクセスカウンター

    はてブリスト - 現在
    • ライブドアブログ