Rubyなどをインストール。Rubyはrbenvで入れた方がいろいろできるが、今回は手軽なyumで。# yum install ruby-devel gcc-c++gemでItamaeなどをインストール。# gem install itamae io-console --no-documentパスワードも生成するならこれも必要# gem install unix-crypt --no-document参考 floatingdays: Itamaeセットアップメモ Itamae自分メモ[1] userとかsshとかportの初期設定
2016年12月25日日曜日
Itamaeセットアップ on CentOS7
2016年12月3日土曜日
CentOS 7に NginXをインストール
ダウンロード・インストール
CentOS7.1でnginxを用いたウェブサーバの構築 - Qiita
Webのルートのディレクトリは下記になる
(SELinuxが有効な場合は変更しない方が面倒が無い?)
/usr/share/nginx/html/
設定
/etc/nginx/nginx.conf
worker_processesはautoで良さそう。
参考 nginx の worker_processes を auto にしたときの挙動 - やまぶろぐ
サービス開始
systemctl start nginx.service
起動時にサービス開始するようにする
systemctl enable nginx.service
HTTPS(TLS)対応
既存の/etc/nginx/conf.d/default.confのserver{}内に下記を追加したらできた。
(公開サーバの場合はセキュリティ設定をもっと絞り上げたほうが良い。)
listen 443 ssl;参考 はてなブックマーク - Bマイナー志向 - 2016年1月30日
ssl_certificate /path/to/server.crt;
ssl_certificate_key /path/to/server.key;
リバースプロキシ
同じく/etc/nginx/conf.d/default.confのserver{}内に下記を追加。
location /foo/ {
proxy_pass https://example.jp/test/;
}
参考
nginx.confが読めるようになる - 魔法使いの卵
Nginx設定のまとめ - Qiita
2010年8月15日日曜日
CentOS5.5に PostgreSQL8.4をインスール&セットアップする手順
手順のメモ。
古いpostgresがインストールされていたので削除。
yum remove postgresql*釣られてhttpd(Apache)もアンインストールされたが今回は構わない。
yumでpostgresをインストール。(CentOS5.5からは標準のyumリポジトリにPostgreSQL8.4がある。今までのpostgresと区別するために名前に"84"が付いている。)
yum install postgresql84-server以下がインストールされる。
- postgresql84-libs
- postgresql84
- postgresql84-server
必要に応じてdevelもインストール。
yum install postgresql84-devel
合わせてLinuxユーザーとして"postgres"が登録されるので、ユーザーを切り替える。
su postgres
初期化。
initdb --encoding=UTF-8 -D /var/lib/pgsql/data/--encoding=UTF-8は無いとまずい?
--no-localeは要るのかな?
rootに戻り起動。
/etc/init.d/postgresql start
OS起動時にpostgresが起動するようにしておく。
chkconfig postgresql on
yumのリポジトリに RPMforgeを追加する手順
CentOS5の場合。
wget http://packages.sw.be/rpmforge-release/rpmforge-release-0.5.1-1.el5.rf.i386.rpm
rpm --import http://apt.sw.be/RPM-GPG-KEY.dag.txt
rpm -K rpmforge-release-0.5.1-1.el5.rf.*.rpm
rpm -i rpmforge-release-0.5.1-1.el5.rf.*.rpm
"--enablerepo=rpmforge"を付けた場合のみRPMforgeを使うようにする。
vi /etc/yum.repos.d/rpmforge.repo下記のように変更する。
enabled=1
↓
enabled=0
参考:AdditionalResources/Repositories/RPMForge - CentOS Wiki
2010年4月16日金曜日
Amazon EC2の AMIとして 自分でCentOSをインストールする方法
Amazon EC2上の仮インスタンス上でCentOSのAMIを作成する方法を書こうとしたのだけれど、途中試行錯誤したので作業ログ的なメモになってしまった。
- Amazonが用意しているFedoraのAMIでAmazon EC2 API Toolsが既に入っているインスタンスを立ち上げる。(Amazon EC2 API Toolsをインストールする手間が省ける)
- 下記サイトを参考に、X.509証明書と秘密鍵をダウンロードする
- 2でダウンロードした2つのファイルを、1で立ち上げたインスタンスに転送する
- 下記サイトを参考に、1のインスタンス上でCentOSをセットアップする
- 下手な鉄砲も・・・ » Amazon EC2用Centos5イメージを作って、EC2上で動作させてみる(1)
- Amazon EC2 API Toolsをセットアップする。AMI Toolsの方は既に入っているので作業不要
- API Toolsのダウンロードは
wget http://s3.amazonaws.com/ec2-downloads/ec2-api-tools.zip
- .bashrcへの追記をすぐに反映させるには
source ~/.bashrc
- GNUのJavaではAPI Toolsが使えないようなので注意 → Amazon Web Services Developer Community : ec2-register + java error ...
(yumでインストールしたらGNUのJavaだったので動かなかった)
- JDKのダウンロードはJava SE Downloads - Sun Developer Network (SDN)から
- /etc/profileへの追記の反映
source /etc/profile
- API Toolsが無いと後でやるec2-registerができない
- 下手な鉄砲も・・・ » Amazon EC2用Centos5イメージを作って、EC2上で動作させてみる(2)
- yum-xen.confのバージョン番号(5.2)のところは、使いたいバージョン(現在の最新は5.4)に変更すること
- 下手な鉄砲も・・・ » Amazon EC2用Centos5イメージを作って、EC2上で動作させてみる(3)
- 「起動時に「ec2-add-keypair で作った公開鍵」を受け取るためのスクリプトを用意」のところで出てくるURL「http://169.254.169.254/1.0/meta- data/public-keys/0/openssh-key」のIPアドレス「169.254.169.254」は、AmazonのLAN内のIPアドレスらしい
- 作業用のインスタンスにあるスクリプトを持っていってもいいらしい → EC2のAMIを自作するならEC2上で作業すると楽できる - Lism.in * blog - nekoya (id:studio-m)
- 下手な鉄砲も・・・ » Amazon EC2用Centos5イメージを作って、EC2上で動作させてみる(4)
- EC2登録用バンドルイメージの作成(ec2-bundle-image)は全然終わらないので中断して再実行したらできた。(EC2のSmallインスタンスでやるとけっこう時間がかかる?)
- バンドルイメージ作成時にディレクトリを指定しないと/tmp内に作られる。S3へのアップロードは/tmpにcdしてから行う
- バンドルイメージのS3へのアップロード(ec2-upload-bundle)のパラメータについての補足説明
- -b → バケット名。自分で決める。事前にバケットを作成する必要はない
- -a → Access Key ID
- -s → Secret Access Key
- バンドルイメージのEC2からS3へのアップロードは数分で終わった
- イメージの登録(ec2-register)の時にpemのパスが違う(どこかで間違えたみたい)というエラーになったので、パスに合わせてpemをコピーした
- イメージの登録で下記のエラーが出たので、-n オプションで適当な名前をつけたらOKだった
Required option '-n, --name NAME' missing (-h for usage)
- イメージの登録まで済めば、AWS Management Consoleの左側のメニューの「Images」のAMIsのところに、作ったAMIが表示される!
でもこの方法だとEBSからの起動ではなくinstance-store(S3)からの起動になってしまう。
なのでEBSから起動できるAMIを作ってみる。
- 作成したOSイメージ(centos5.img)を/tmpに移動(移動は不要?)
- 後はsuz-lab - blog: Migrating a CentOS S3 Based AMI to an EBS Based AMIを参考に進める
- ddでAMIイメージをコピーしたらいつまでたっても終わらないので別のssh繋げて見てみたら終わってるように見えたのでそのまま進めてしまった
- ec2regはec2-registerのalias
- ec2regの -d オプションはdescriptionの登録なので省略してもOK
S3に作った時の「バンドルイメージの作成」以降がEBSへのコピーに変わった感じか。こっちの方が作るのも楽だ。
今ではもうEBSからの起動が普通なので、こちらの方法で手順をまとめられると良かったのだが。
CentOSに lsyncをセットアップするメモ
- gccをインストールしてない場合は、gccをインストール
yum install gcc
- あとは下記リンク先の説明のとおりに
Linuxでリアルタイムミラーリング « Fosters Technical Blog
(この例はlsyncd.conf.xmlの代わりにlsyncd.confに1行書くだけという設定が少し特殊)
- rsyncdの詳細な設定(ログファイルの指定等)についてはこちらを参照
rsyncd.conf - こちらのパッチを使えばssh経由で使えるらしい
lsyncdを使ってみた - ドンゴレ日記 via lsyncd設定 - kame-tの日記
でも現在はoptionの指定だけでssh経由にできる?
Issue 6 - lsyncd - SSH on another port - Project Hosting on Google Code
その他の参考
2010年3月3日水曜日
VMware上の Linux (CentOS)のシステム時刻が狂うのを防ぐ
詳しくはVMwareの時刻あわせ 2008年冬版 - SH2の日記にまとまっている。(本当に詳しい。)
これ以外だと古いやり方を説明しているサイトが多い。
とりあえずある程度それらしい時間になってればOKなら、下記だけでもOKみたい。
- /boot/grub/grub.conf を編集し、下記の箇所にパラメータを追加する。
title CentOS (2.6.18-164.11.1.el5)
これでLinuxを再起動するとシステム時刻のズレがかなり小さくなる。
root (hd0,0)
kernel /vmlinuz-(中略) quiet divider=10 clocksource=acpi_pm
initrd /initrd-2.6.18-164.11.1.el5.img
(参考:VMwareの時刻あわせ 2008年冬版 - SH2の日記の「4. CentOS 5.2のカーネルパラメータを変更する」) - /etc/ntp.conf を編集し、同期するサーバを日本のntpサーバに変更する。
#server 0.centos.pool.ntp.org
centos.pool.ntp.orgの3つはコメントアウトし、ntp.nict.jpとかインターネットマルチフィード(MFEED) 時刻情報提供サービス for Publicにする。
#server 1.centos.pool.ntp.org
#server 2.centos.pool.ntp.org
server ntp.nict.jp - ntpdが起動していない場合は起動する。
/etc/init.d/ntpd start
ブート時に起動するようになっていない場合はブート時に起動するようにする。
/sbin/chkconfig ntpd on
2010年1月30日土曜日
CentOSを Webサーバとしてセットアップ
VMwareでCentOSをインストールした場合の参考サイトのメモ。
構成はApache + PHP + PostgreSQL。
IPアドレスを固定にする
- 参考:[Linux]CentOSで手動で固定IPアドレスの設定を行う | Web&MUSICブログ QUALL
- Bridgedの場合、GATEWAYはVMWare ServerとかVMwareのホスト機とか考えずにルータでOK
- DNSサーバはGoogle Public DNSでいいんじゃない?
- 確認は ifconfig コマンド
- ifconfig command not foundになったら /sbin/ifconfig で
- 念のためにサーバごと再起動して設定が有効になってるか確認した方が堅いと思う
yumの使い方を知る
ファイアウォールの設定
- 参考:floatingdays: Linuxのファイアウォール設定の参考サイト
- PostgreSQLにPgAdmin IIIで外から繋ぎたい時などに
PHP 5.3をyumでインストール
- 参考
- yumの設定 - KAWANO's PukiWiki
- CentOS 5.3 に PHP 5.3 をインストールする - 総天然色頁
- CentOS 5.3 に PHP 5.3 をインストールする。 - はるはる。の開発日記
- デフォルトのyumリポジトリでは、現在のPHPのバージョンは5.1(!)
PHP 5.3を配布しているyumリポジトリとしては、Remiが有名らしい - Remiを使うにはEPELも必要らしい
- EPELのバージョン番号のところはRepoView: "Fedora EPEL 5 - i386"で確認?
- RemiのURLはRepoView: Les RPM de Remiで見られる
- 拡張も入れる
- 例
yum --enablerepo=epel,remi install php-mbstring
- php -v で確認。phpinfo()も見てみる
PostgreSQL 8.4をyumでインストール
- 参考:CentOS 5.3 に postgresql-8.4 をインストール | お試しlog4
- 最新バージョンはRepoView: PostgreSQL PGDG Repository RPMsで確認
- パッケージ一覧はPostgreSQL RPM Repository (with Yum)
PostgreSQLの初期設定
- 参考
- floatingdays: Linuxでの PostgreSQLの初期操作
- floatingdays: PostgreSQLで外部からのアクセスを受け付ける設定
- postgreSQL基本操作 : マロンくん.NET
- 外部からの接続でSSLを使うかどうかは状況に応じて
サーバ起動時にデーモンを自動で起動する
システム時刻
- 参考:
VMware 上の CentOS でシステム時刻がずれる - foldrrの日記
コッチの方がよい → floatingdays: VMware上の Linux (CentOS)のシステム時刻が狂うのを防ぐ - 確認はパラメータ無しで date
2008年7月28日月曜日
CentOSで vsFTPdに 匿名(anonymous)でアクセス
自分しかアクセスしない(できない)FTPサーバ(vsFTPd on CentOS)にanomnymousでファイルを転送できるようにしたい。
(vsFTPdやファイアウォール等の他の設定は既にしてある。)
- vsFTPdで使うディレクトリの所有者設定(グループは関係ないかも)
mkdir /var/ftp/my
chown ftp:ftp /var/ftp/my - vsFTPdの設定ファイルを編集する
vi /etc/vsftpd/vsftpd.conf
- anonymousについての設定をする
# Allow anonymous FTP? (Beware - allowed by default if you comment this out).
anonymous_enable=YES
# obviously need to create a directory writable by the FTP user.
anon_upload_enable=YES - vsFTPdを再起動
/etc/init.d/vsftpd restart
Windowsのコマンドプロンプトから接続してみる
- 接続(-Aはanonymousにするオプション)
C:>ftp -A 192.168.1.xxx
Connected to 192.168.1.xxx.
220 (vsFTPd 2.0.5)
331 Please specify the password.
230 Login successful.
Anonymous login succeeded for xxx@xxx - 最初いる場所は「/var/ftp」なので、所有者をftpにしたディレクトリに移動
ftp> cd my
250 Directory successfully changed. - ファイルを転送
ftp> put c:test.txt
200 PORT command successful. Consider using PASV.
150 Ok to send data.
226 File receive OK.
ftp: 24 bytes sent in 0.00Seconds 24000.00Kbytes/sec. - これで/var/ftp/my/test.txtに転送された。このファイルのアクセス権限を見てみる
-rw------- 1 ftp ftp
- vsftpd.confのlocal_umaskは"022"にしてあるが、これはanonymousには適用されないようだ
参考:
floatingdays: Linuxコマンド備忘録
How to build Internet Server with Linux: ftpのセキュリティ
ファイルのパーミッション、アクセス権限について (Unix Linux)
登録:
投稿 (Atom)
tags
- php (176)
- javascript (82)
- apache (54)
- windows (53)
- google (47)
- mysql (41)
- linux (39)
- security (39)
- css (38)
- network (37)
- api (36)
- web (35)
- ruby (34)
- install (31)
- mobile (31)
- firefox (30)
- html (27)
- ie (27)
- config (26)
- postgres (26)
- image (25)
- library (25)
- search (25)
- mail (23)
- db (22)
- feed (22)
- rails (22)
- amazon (19)
- cakephp (19)
- map (19)
- tool (19)
- url (19)
- video (19)
- service (18)
- ec2 (17)
- encoding (17)
- error (17)
- jquery (17)
- server (17)
- flash (16)
- hatena (16)
- setting (16)
- chrome (15)
- blogger (14)
- java (14)
- android (13)
- yahoo (13)
- yui (13)
- del.icio.us (12)
- extensions (12)
- http (12)
- sql (12)
- aws (11)
- compare (11)
- framework (11)
- microsoft (10)
- centos (9)
- date (9)
- free (9)
- google-maps (9)
- php5.3 (9)
- rss (9)
- safari (9)
- yum (9)
- https (8)
- office (8)
- python (8)
- smart-phone (8)
- trouble (8)
- version-up (8)
- web-browser (8)
- adsense (7)
- calendar (7)
- cdn (7)
- jquery-ui (7)
- rakuten (7)
- twitter (7)
- android-apps (6)
- backup (6)
- command (6)
- gmail (6)
- google-app-engine (6)
- pear (6)
- reference (6)
- test (6)
- tuning (6)
- ui (6)
- validation (6)
- xmail (6)
- xml (6)
- zip (6)
- amazon-linux (5)
- atom (5)
- excel (5)
- gem (5)
- ip-adress (5)
- opera (5)
- systemdesign (5)
- titanium (5)
- array (4)
- bookmarklet (4)
- bootstrap (4)
- cache (4)
- color (4)
- cron (4)
- crypt (4)
- customize-google (4)
- feedcreator (4)
- flickr (4)
- font (4)
- form (4)
- function (4)
- gettext (4)
- google-analytics (4)
- google-code (4)
- greasemonkey (4)
- helper (4)
- html5 (4)
- iphone (4)
- jquery-mobile (4)
- laravel (4)
- mac (4)
- password (4)
- perl (4)
- regexp (4)
- rspec (4)
- sbm (4)
- sitemaps (4)
- subversion (4)
- template (4)
- tls (4)
- trac (4)
- utf-8 (4)
- version (4)
- web-service (4)
- active-record (3)
- analytics (3)
- au (3)
- cloud (3)
- date-picker (3)
- dns (3)
- docomo (3)
- domain (3)
- firewall (3)
- ftp (3)
- git (3)
- google-calendar (3)
- google-docs (3)
- hardware (3)
- hatena-bookmark (3)
- hosting (3)
- i18n (3)
- ie8 (3)
- itamae (3)
- json (3)
- log (3)
- openssl (3)
- pdo (3)
- photo (3)
- png (3)
- post (3)
- postgis (3)
- price (3)
- prototype.js (3)
- s3 (3)
- selinux (3)
- seo (3)
- shift-jis (3)
- smarty (3)
- ssh (3)
- ssl (3)
- strage (3)
- string (3)
- tab (3)
- tortoise-git (3)
- url-shortener (3)
- user-agent (3)
- windows-update (3)
- xhtml (3)
- zend-framework (3)
- about-config (2)
- active-resource (2)
- aide (2)
- android-studio (2)
- anti-virus (2)
- auth (2)
- bing (2)
- bitly (2)
- blog (2)
- books (2)
- bootstrap-cdn (2)
- bot (2)
- browser (2)
- bug (2)
- capture (2)
- cdnjs (2)
- centos7 (2)
- cert (2)
- certbot (2)
- class (2)
- convert (2)
- cookie (2)
- csv (2)
- datetime (2)
- debug (2)
- django (2)
- dojo (2)
- download (2)
- dropbox (2)
- ebs (2)
- eclipse (2)
- editor (2)
- feedly (2)
- google-reader (2)
- google-search (2)
- grids (2)
- hash (2)
- highslide (2)
- ipad (2)
- japanese (2)
- jpeg (2)
- language (2)
- lets-encrypt (2)
- link (2)
- mcrypt (2)
- memory (2)
- mod-security (2)
- moible (2)
- mouse (2)
- music (2)
- node-js (2)
- oauth (2)
- paas (2)
- pdf (2)
- permission (2)
- pocket (2)
- rds (2)
- referer (2)
- rest (2)
- rewrite (2)
- rfc (2)
- sample (2)
- scraping (2)
- session (2)
- simplexml (2)
- sjis (2)
- smtp (2)
- snoopy (2)
- softbank (2)
- tag-cloud (2)
- task (2)
- tips (2)
- todo (2)
- tomcat (2)
- travel (2)
- update (2)
- upload (2)
- v8 (2)
- v8cgi (2)
- vmware (2)
- vue-js (2)
- webBrowser (2)
- wordpress (2)
- youtube (2)
- ab (1)
- actionscript (1)
- addon (1)
- adminer (1)
- aes (1)
- affiliate (1)
- ajax (1)
- analyze (1)
- android-market (1)
- apple (1)
- aurora (1)
- avast (1)
- bake (1)
- behavior (1)
- blowfish (1)
- bookmarks (1)
- bootswatch (1)
- bread-crumb (1)
- button (1)
- c (1)
- cakphp (1)
- camel-case (1)
- casio (1)
- chalice (1)
- circle-ci (1)
- clam-av (1)
- cloudformation (1)
- cloudfrare (1)
- cloudn (1)
- cloudwatch (1)
- cman (1)
- codec (1)
- codeigniter (1)
- counter (1)
- crawler (1)
- cucumber (1)
- dao (1)
- database (1)
- datastore (1)
- delete (1)
- dena (1)
- deploy (1)
- deprecated (1)
- design (1)
- django2 (1)
- dokuwiki (1)
- dump (1)
- ecoder (1)
- emacs (1)
- encrypt (1)
- english (1)
- erd (1)
- ethna (1)
- exception (1)
- f-route (1)
- file (1)
- filter (1)
- firebug (1)
- float (1)
- flv (1)
- font-awesome (1)
- font-family (1)
- fontawesome (1)
- format (1)
- formula (1)
- fulephp (1)
- gd (1)
- gdmail (1)
- gears (1)
- geo (1)
- geo-coding (1)
- geolocation-api (1)
- get (1)
- gis (1)
- github (1)
- go-lang (1)
- golang (1)
- goo (1)
- google-apps (1)
- google-checkout (1)
- google-labs (1)
- google-libraries-api (1)
- google-play (1)
- google-plus (1)
- google-trends (1)
- gpl (1)
- gps (1)
- gradle (1)
- grep (1)
- grid.css (1)
- grids.css (1)
- group-ware (1)
- hmac (1)
- hotel (1)
- html-escape (1)
- htmlsql (1)
- http-status (1)
- httpd (1)
- iaas (1)
- ids (1)
- ie6 (1)
- iftt (1)
- igoogle (1)
- iis (1)
- import (1)
- include (1)
- index (1)
- infra (1)
- innodb (1)
- insert (1)
- integer (1)
- ios (1)
- ipad-mini (1)
- ipod (1)
- itunes (1)
- j-phone (1)
- japan (1)
- jetty (1)
- jmeter (1)
- jruby (1)
- jsdelivr (1)
- kohana (1)
- labs (1)
- lambda (1)
- lamp (1)
- layout (1)
- lift (1)
- livedoor (1)
- load-balance (1)
- locale (1)
- logo (1)
- logwatch (1)
- lsync (1)
- magic-method (1)
- maintenance (1)
- math (1)
- maven (1)
- mbstring (1)
- md5 (1)
- menu (1)
- merb (1)
- migration (1)
- mime-type (1)
- minify (1)
- mock (1)
- mod-pagespeed (1)
- mod_cache (1)
- modernizr (1)
- module (1)
- monit (1)
- mootools (1)
- myisam (1)
- myrt-mobile (1)
- mysqldump (1)
- nec (1)
- neta (1)
- nginx (1)
- normalize (1)
- null (1)
- objective-c (1)
- on2 (1)
- onload (1)
- oo (1)
- openid (1)
- or-mapper (1)
- passenger (1)
- pc (1)
- pecl (1)
- photoshop (1)
- phpexcel (1)
- phpmailer (1)
- pipes (1)
- plugin (1)
- podcast (1)
- poderosa (1)
- port (1)
- postal (1)
- postfix (1)
- powerset (1)
- print (1)
- pure (1)
- python3 (1)
- qdmail (1)
- qr-code (1)
- query-string (1)
- quota (1)
- radio (1)
- rating (1)
- rbenv (1)
- reader (1)
- realtime-search (1)
- redhat (1)
- redmine (1)
- remi (1)
- replace (1)
- replication (1)
- request (1)
- require (1)
- reserve (1)
- reset (1)
- restore (1)
- return (1)
- reverse-proxy (1)
- rgb (1)
- rijndael (1)
- rkhunter (1)
- robots.txt (1)
- rootkit (1)
- round (1)
- rpm (1)
- rpmforge (1)
- rt (1)
- saas (1)
- safri (1)
- samba (1)
- scala (1)
- schedule (1)
- screen-shot (1)
- script.aculo.us (1)
- search-wiki (1)
- seasar (1)
- serverless (1)
- sever-side (1)
- sha-2 (1)
- sha-256 (1)
- sha-512 (1)
- share (1)
- shell (1)
- shopping (1)
- simpletest (1)
- simulator (1)
- sinatra (1)
- skype (1)
- sns (1)
- sort (1)
- sqlite (1)
- struts (1)
- sum (1)
- symantec (1)
- symfony (1)
- table (1)
- tag (1)
- tiips (1)
- timezone (1)
- title (1)
- toolbar (1)
- topic-path (1)
- tripwire (1)
- twango (1)
- uninstall (1)
- unit-test (1)
- url-encode (1)
- user-script (1)
- vacuum (1)
- virtual (1)
- voderfone (1)
- web-flavor (1)
- web-fonts (1)
- webdav (1)
- widjet (1)
- willcom (1)
- windows-10 (1)
- windows-7 (1)
- word (1)
- xen (1)
- xinetd (1)
- xmlrpc (1)
- xpath (1)
- xss (1)
- yaml (1)
- yii (1)
- zend (1)