Category Archives: Linux

CentOS7.4でzlibをインストールするメモ

# cat /etc/redhat-release
CentOS Linux release 7.4.1708 (Core)
#cd /usr/local/src
#wget http://zlib.net/zlib-1.2.11.tar.gz
#tar xvzf zlib-1.2.11.tar.gz
# make
gcc -O3 -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -I. -c -o example.o test/example.c
gcc -O3 -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -c -o adler32.o adler32.c
gcc -O3 -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -c -o crc32.o crc32.c
gcc -O3 -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -c -o deflate.o deflate.c
gcc -O3 -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -c -o infback.o infback.c
gcc -O3 -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -c -o inffast.o inffast.c
gcc -O3 -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -c -o inflate.o inflate.c
gcc -O3 -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -c -o inftrees.o inftrees.c
gcc -O3 -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -c -o trees.o trees.c
gcc -O3 -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -c -o zutil.o zutil.c
gcc -O3 -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -c -o compress.o compress.c
gcc -O3 -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -c -o uncompr.o uncompr.c
gcc -O3 -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -c -o gzclose.o gzclose.c
gcc -O3 -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -c -o gzlib.o gzlib.c
gcc -O3 -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -c -o gzread.o gzread.c
gcc -O3 -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -c -o gzwrite.o gzwrite.c
ar rc libz.a adler32.o crc32.o deflate.o infback.o inffast.o inflate.o inftrees.o trees.o zutil.o compress.o uncompr.o gzclose.o gzlib.o gzread.o gzwrite.o
gcc -O3 -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -o example example.o -L. libz.a
gcc -O3 -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -I. -c -o minigzip.o test/minigzip.c
gcc -O3 -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -o minigzip minigzip.o -L. libz.a
gcc -O3 -fPIC -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -DPIC -c -o objs/adler32.o adler32.c
gcc -O3 -fPIC -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -DPIC -c -o objs/crc32.o crc32.c
gcc -O3 -fPIC -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -DPIC -c -o objs/deflate.o deflate.c
gcc -O3 -fPIC -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -DPIC -c -o objs/infback.o infback.c
gcc -O3 -fPIC -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -DPIC -c -o objs/inffast.o inffast.c
gcc -O3 -fPIC -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -DPIC -c -o objs/inflate.o inflate.c
gcc -O3 -fPIC -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -DPIC -c -o objs/inftrees.o inftrees.c
gcc -O3 -fPIC -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -DPIC -c -o objs/trees.o trees.c
gcc -O3 -fPIC -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -DPIC -c -o objs/zutil.o zutil.c
gcc -O3 -fPIC -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -DPIC -c -o objs/compress.o compress.c
gcc -O3 -fPIC -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -DPIC -c -o objs/uncompr.o uncompr.c
gcc -O3 -fPIC -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -DPIC -c -o objs/gzclose.o gzclose.c
gcc -O3 -fPIC -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -DPIC -c -o objs/gzlib.o gzlib.c
gcc -O3 -fPIC -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -DPIC -c -o objs/gzread.o gzread.c
gcc -O3 -fPIC -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -DPIC -c -o objs/gzwrite.o gzwrite.c
gcc -shared -Wl,-soname,libz.so.1,–version-script,zlib.map -O3 -fPIC -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -o libz.so.1.2.11 adler32.lo crc32.lo deflate.lo infback.lo inffast.lo inflate.lo inftrees.lo trees.lo zutil.lo compress.lo uncompr.lo gzclose.lo gzlib.lo gzread.lo gzwrite.lo -lc
rm -f libz.so libz.so.1
ln -s libz.so.1.2.11 libz.so
ln -s libz.so.1.2.11 libz.so.1
gcc -O3 -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -o examplesh example.o -L. libz.so.1.2.11
gcc -O3 -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -o minigzipsh minigzip.o -L. libz.so.1.2.11
gcc -O3 -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -I. -D_FILE_OFFSET_BITS=64 -c -o example64.o test/example.c
gcc -O3 -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -o example64 example64.o -L. libz.a
gcc -O3 -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -I. -D_FILE_OFFSET_BITS=64 -c -o minigzip64.o test/minigzip.c
gcc -O3 -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN -o minigzip64 minigzip64.o -L. libz.a
# make install
rm -f /usr/local/lib/libz.a
cp libz.a /usr/local/lib
chmod 644 /usr/local/lib/libz.a
cp libz.so.1.2.11 /usr/local/lib
chmod 755 /usr/local/lib/libz.so.1.2.11
rm -f /usr/local/share/man/man3/zlib.3
cp zlib.3 /usr/local/share/man/man3
chmod 644 /usr/local/share/man/man3/zlib.3
rm -f /usr/local/lib/pkgconfig/zlib.pc
cp zlib.pc /usr/local/lib/pkgconfig
chmod 644 /usr/local/lib/pkgconfig/zlib.pc
rm -f /usr/local/include/zlib.h /usr/local/include/zconf.h
cp zlib.h zconf.h /usr/local/include
chmod 644 /usr/local/include/zlib.h /usr/local/include/zconf.h

Dockerfileの作成コマンドのメモ

1. Dockerfileの作成
$ vim Dockerfile
FROM centos
MAINTAINER Admin <admin@example.com>
RUN echo “now building…”
CMD echo “now running…”

2.イメージの作成
$ sudo docker build -t admin/echo .

3.”admin/echo”イメージからコンテナの作成
$ sudo docker run admin/echo

4. httpdのインストール、apache起動
RUN yum install -y httpd
ADD ./index.html /var/www/html/
EXPOSE 80
CMD [“/usr/sbin/httpd”, “-D”, “FOREGROUND”]

5.8080ポートを80ポートにリダイレクト
sudo docker run -p 8080:80 -d admin/httpd
アクセスURL:
xxx.xxx.xxx.xxx:8080

Linuxにgroovyをインストールするメモ

コマンド下記
curl -s get.sdkman.io | bash
source “$HOME/.sdkman/bin/sdkman-init.sh”
sdk install groovy
groovy -version

Linuxにファイルシステムを作成するメモ

ext3の場合は
# mkfs.ext3 /dev/sdb1

ext4の場合は
# mkfs.ext4 /dev/sdb1
# mkfs -t ext4 /dev/sdb1

XFSの場合は
# mkfs.xfs /dev/sdb1

Linuxにユーザを作成、削除するコマンド

1.初期設定確認
# useradd -D

2.ユーザー作成
# useradd yamada
ユーザー確認
# id -a yamada
ホームディレクトリ確認
# ls -ld /home/yamada/

3.パスワード設定
# useradd -m -s /bin/bash oosaki
# passwd oosaki

4.ユーザー削除
# userdel samauser

diffでディレクトリを比較する

コマンド
ls -l /tmp/r
ls -l /tmp/
diff /tmp/r/ /tmp/s/
Fig. : Finding differences between folders

echoでファイル複数のディレクトリにコピーする

コマンド
echo /usr/dir1 /var/dir2 /nas/dir3 | xargs -n 1 cp -v /path/to/file


echo /usr/data1 /var/data2 /nas/data3 | xargs -n 1 cp -v /data/back/changfa

「Linux入門」execコマンドを利用するサンプル

サンプル
#!/bin/bash
#file_desc

exec 3<&0 0<name.txt
read line1
read line2
exec 0<&3
echo $line1
echo $line2

ubuntu 14.04/16.04にdockerのプロキシを設定するメモ

アップデート
$ sudo apt-get update
$ sudo apt-get upgrade docker-engine

1.proxy設定の変更
$ sudo mkdir /etc/systemd/system/docker.service.d
$ sudo touch /etc/systemd/system/docker.service.d/http-proxy.conf
$ sudo vi /etc/systemd/system/docker.service.d/http-proxy.conf

2.プロキシの設定ファイルの変更
/etc/systemd/system/docker.service.d/http-proxy.conf
[Service]
Environment=”HTTP_PROXY=http://proxy.abcde.com:80/” “NO_PROXY=localhost,127.0.0.1”

3.設定内容の反映
$ sudo systemctl daemon-reload
$ systemctl show –property=Environment docker
Environment=HTTP_PROXY=http://proxy.abcde.com:80/ NO_PROXY=localhost,127.0.0.1
$ sudo systemctl restart docker

「Linux入門」ファイルの圧縮、解凍コマンド

1.tar.gz
圧縮
#tar -zcvf sample.tar.gz /var/data/
解凍
#tar -zxvf sample.tar.gz

2.tar.bz2
圧縮
#tar -jcvf sample.tar.bz2 /var/data/
解凍
#tar -jxvf sample.tar.bz2

3.tar.xz
圧縮
#tar -Jcvf sample.tar.xz /var/data/
解凍
#tar -Jxvf sample.tar.xz

4.tar
圧縮
#tar -cvf sample.tar /var/data/
解凍
#tar -xvf sample.tar

5.zip
圧縮
#zip -r sample.zip /var/data/
解凍
#unzip sample.zip