.deb File 설치방법
확장자가 .deb 인 파일은 debian 리눅스에서의 설치파일로, 같은 계열인 ubuntu 에서 손 쉽게 설치 가능합니다.
설치
$ sudo dpkg -i filename.deb
제거
$ sudo dpkg -r PACKAGE_NAME
보통은 apt-get 을 이용하지만 .deb 파일을 직접 설치할 경우 유용한 명령입니다.
확장자가 .deb 인 파일은 debian 리눅스에서의 설치파일로, 같은 계열인 ubuntu 에서 손 쉽게 설치 가능합니다.
$ sudo dpkg -i filename.deb
$ sudo dpkg -r PACKAGE_NAME
보통은 apt-get 을 이용하지만 .deb 파일을 직접 설치할 경우 유용한 명령입니다.
Ubuntu 우분투 14.04 docker 설치
$ sudo apt-get update
$ sudo apt-get install -y docker-engine
을 하면 에러가 나고 아래와 같은 메시지를 만나게 됩니다.
Reading package lists... Done
Building dependency tree
Reading state information... Done
docker-engine is already the newest version.
You might want to run 'apt-get -f install' to correct these:
The following packages have unmet dependencies:
docker-engine : Depends: libsystemd-journal0 (>= 201) but it is not going to be installed
Recommends: aufs-tools but it is not going to be installed
Recommends: cgroupfs-mount but it is not installable or
cgroup-lite but it is not going to be installed
Recommends: git but it is not going to be installed
E: Unmet dependencies. Try 'apt-get -f install' with no packages (or specify a solution).
보면 docker
가 libsystemd-journal0
에 의존성이 걸려있어서 그런데요.
설치가 안되는 이유는 잘 모르겠으나, 그냥 수동으로 설치해줬습니다.
파일을 찾아보다가 나중에 또 이런일이 생길 듯하여 기록에 남겨둡니다.
$ wget http://kr.archive.ubuntu.com/ubuntu/pool/main/s/systemd/libsystemd-journal0_204-5ubuntu20_amd64.deb
위 명령으로 *.deb 파일을 다운로드 받은 뒤에 수동 설치합니다.
$ sudo dpkg -I libsystemd-journal0_204-5ubuntu20_amd64.deb
설치 후 다시 docker
install 을 시도합니다.
$ sudo apt-get install -y docker-engine
정상 설치가 되었습니다.
Reading package lists... Done
Building dependency tree
Reading state information... Done
docker-engine is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 29 not upgraded.
1 not fully installed or removed.
After this operation, 0 B of additional disk space will be used.
Setting up docker-engine (17.05.0~ce~rc3-0~ubuntu-trusty) ...
docker start/running, process 3434
Processing triggers for ureadahead (0.100.0-16) ...
설치가 잘 되었는지 확인합니다.
$ docker
정상 설치되었다면 usage
가 나옵니다.
잘 설치되었다면 이제 docker
를 잘 이용하시면 됩니다.
http://ftp.daumkakao.com/centos/7/isos/x86_64/CentOS-7-x86_64-Minimal-1511.iso
$ sudo yum install -y mariadb mariadb-server
$ sudo systemctl start mariadb
$ sudo mysql_secure_installation
mysql_secure_installation prompts: Enter current password for root (enter for none): OK, successfully used password, moving on... Setting the root password ensures that nobody can log into the MariaDB root user without the proper authorisation. New password: password Re-enter new password: password Password updated successfully! Reloading privilege tables.. ... Success!
$ sudo systemctl enable mariadb
$ sudo vi /etc/my.cnf.d/client.cnf
[client] default-character-set=utf8
$ sudo vi /etc/my.cnf.d/server.cnf
[mysqld] collation-server = utf8_unicode_ci init-connect='SET NAMES utf8' character-set-server = utf8
$ sudo systemctl restart mariadb
$ sudo rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
$ sudo yum install nginx
$ sudo systemctl start nginx $ sudo systemctl enable nginx
yum install -y epel-release rpm -ivh http://rpms.remirepo.net/enterprise/remi-release-7.rpm yum --enablerepo=remi update remi-release yum --enablerepo=remi-php70 install -y php php-fpm php-mysql php-gd php-common php-cli php-json php-opcache php-devel php-imagick
$ sudo vi /etc/php.ini
cgi.fix_pathinfo=0
$ sudo vi /etc/php-fpm.d/www.conf
listen = /var/run/php-fpm/php-fpm.sock listen.owner = nginx listen.group = nginx user = nginx group = nginx
$ sudo vi /etc/nginx/nginx.conf
server {
listen 80 default_server;
listen [::]:80 default_server;
server_name server_domain_name_or_IP;
root /usr/share/nginx/html;
index index.php index.html;
# Load configuration files for the default server block.
include /etc/nginx/default.d/*.conf;
location / {
try_files $uri $uri/ /index.php?/$request_uri;
}
error_page 404 /404.html;
location = /40x.html {
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
}
location ~ .php$ {
fastcgi_split_path_info ^(.+.php)(/.+)$;
fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
location ~ /.ht {
deny all;
}
}
$ sudo systemctl restart nginx
/usr/share/nginx/html/
$ sudo yum install unzip
$ sudo unzip ciboard.zip
MariaDB 설치 하기 for CentOS 6.4
mysql 버전이 5.1이어서 버전업을 마음먹었다.
그런데 5.6으로 올리느니 마리아DB로 갈아타고 싶어졌다.
자 마리아 DB를 설치하자.
1. 기존 mysql을 제거한다.
yum remove mysql mysql-server
2. 기존 mysql 디렉토리를 제거한다. 여기서는 백업을 해뒀다. 워드프레스 db를 살릴려고~
cp -rf /var/lib/mysql /var/lib/mysql_ rm -rf /var/lib/mysql
3. Maria DB의 yum설치를 위해서 repository 파일 추가를 한다.
공식사이트를 참고하자.
vi /etc/yum.repos.d/MariaDB.repo
4. 아래 내용 파일에 추가.
[mariadb] name = MariaDB baseurl = http://yum.mariadb.org/10.0/centos6-amd64 gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB gpgcheck=1
5. install MariaDB
아래 Maria-devel은 개발용이다. 필요없으면 설치하지 말자.
sudo yum install MariaDB-server MariaDB-client MariaDB-devel
6. maria db server 실행
sudo /etc/init.d/mysql restart
7. maria db 접속 확인
mysql -uroot
ps. 나처럼 기존 mysql database가 있는 경우는 아까 백업해둔 곳에서 db를 카피한다.
cp -rp /var/lib/mysql_backup/database_name /var/lib/mysql chown -R mysql.mysql /var/lib/mysql/database_name
그대로 db사용이 가능하다. 마리아 db 설치 끝.
python pip install for CentOS
python 2.7.6을 centos 6.5에 설치했다.
파이썬 2.7.6 centos에 설치하기
이제 장고를 설치하려는데 일단 패키지 매니저(pip)부터 설치를 해보자
파이썬 패키지 매니저를 설치하기 앞서 sudo 했을 때 PATH를 확인하자.
sudo env |grep PATH
/usr/local/bin이 없으면 아래 내용을 /etc/profile에 추가하고 shell을 재실행한다.
vi /etc/profile alias sudo='sudo env PATH=$PATH'
wget http://peak.telecommunity.com/dist/ez_setup.py sudo python ez_setup.py
sudo easy_install pip
pip를 실행해보자.
centos에 파이썬이 기본적으로 설치되어 있는데 버전이 2.6이다.
파이썬 2.7을 설치해보자.
파이썬 설치를 해보자.
python 2.7.6 install with CentOS 6.5
먼저 필요 라이브러리 설치
yum groupinstall "Development tools" yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel
wget으로 파이썬 설치파일 다운로드
wget http://python.org/ftp/python/2.7.6/Python-2.7.6.tar.xz
xz파일이다. xz 압축을 풀기위해서 xz설치
yum install xz
압축 해제
tar xvfJ Python-2.7.6.tar.xz
폴더 이동.
cd Python-2.7.6.tar.xz
빌드하자
./configure --prefix=/usr/local --enable-unicode=ucs4 --enable-shared LDFLAGS="-Wl,-rpath /usr/local/lib" make sudo make altinstall
파이썬 설치 완료
이제 PATH를 확인하자.
env | grep PATH
기본으로 /usr/local/bin이 /usr/bin보다 앞에 나와있다.
기존 파이썬이 설치된 디렉토리로 이동
cd /usr/bin
기존 파이썬 파일명 변경
sudo mv python python.old
리눅스 터미널에 재접속해서 python 2.7이 정상적으로 설치되었는지 확인
python Python 2.7.6 (default, Apr 27 2015, 17:35:43) [GCC 4.4.7 20120313 (Red Hat 4.4.7-11)] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>>
rbenv 를 이용해서 ruby 2.0.0 p247을 설치할 때 에러가 발생한다. centos 6.5에서 발생했다.
해결법을 기록해둔다. 참고가 되길 바란다.
rbenv install 2.0.0-p247
위의 명령을 실행했을 때 아래 상황 발생
problem:
BUILD FAILED Inspect or clean up the working tree at /tmp/ruby-build.20150424111036.5089 Results logged to /tmp/ruby-build.20150424111036.5089.log Last 10 log lines: ossl_pkey_ec.c:821: error: for each function it appears in.) make[2]: *** [ossl_pkey_ec.o] Error 1 make[2]: Leaving directory `/tmp/ruby-build.20150424111036.5089/ruby-2.0.0-p247/ext/openssl' make[1]: *** [ext/openssl/all] Error 2 make[1]: *** Waiting for unfinished jobs.... installing default callback libraries linking shared-object dl/callback.so make[2]: Leaving directory `/tmp/ruby-build.20150424111036.5089/ruby-2.0.0-p247/ext/dl/callback' make[1]: Leaving directory `/tmp/ruby-build.20150424111036.5089/ruby-2.0.0-p247' make: *** [build-ext] Error 2
solution:
1. Create “patch.diff” file.
2. Copy the content below.
Index: ChangeLog =================================================================== --- ChangeLog (revision 41807) +++ ChangeLog (revision 41808) @@ -1,3 +1,16 @@ +Sat Jul 6 07:37:43 2013 Martin Bosslet <Martin.Bosslet@gmail.com> + + * ext/openssl/ossl_pkey_ec.c: Ensure compatibility to builds of + OpenSSL with OPENSSL_NO_EC2M defined, but OPENSSL_NO_EC not + defined. + * test/openssl/test_pkey_ec.rb: Iterate over built-in curves + (and assert their non-emptiness!) instead of hard-coding them, as + this may cause problems with respect to the different availability + of individual curves in individual OpenSSL builds. + [ruby-core:54881] [Bug #8384] + + Thanks to Vit Ondruch for providing the patch! + Sat Jul 6 07:12:39 2013 Martin Bosslet <Martin.Bosslet@gmail.com> * test/openssl/test_x509crl.rb: Remove unused variable. Index: ext/openssl/ossl_pkey_ec.c =================================================================== --- ext/openssl/ossl_pkey_ec.c (revision 41807) +++ ext/openssl/ossl_pkey_ec.c (revision 41808) @@ -762,8 +762,10 @@ method = EC_GFp_mont_method(); } else if (id == s_GFp_nist) { method = EC_GFp_nist_method(); +#if !defined(OPENSSL_NO_EC2M) } else if (id == s_GF2m_simple) { method = EC_GF2m_simple_method(); +#endif } if (method) { @@ -817,8 +819,10 @@ if (id == s_GFp) { new_curve = EC_GROUP_new_curve_GFp; +#if !defined(OPENSSL_NO_EC2M) } else if (id == s_GF2m) { new_curve = EC_GROUP_new_curve_GF2m; +#endif } else { ossl_raise(rb_eArgError, "unknown symbol, must be :GFp or :GF2m"); } Index: test/openssl/test_pkey_ec.rb =================================================================== --- test/openssl/test_pkey_ec.rb (revision 41807) +++ test/openssl/test_pkey_ec.rb (revision 41808) @@ -7,28 +7,28 @@ @data1 = 'foo' @data2 = 'bar' * 1000 # data too long for DSA sig - @group1 = OpenSSL::PKey::EC::Group.new('secp112r1') - @group2 = OpenSSL::PKey::EC::Group.new('sect163k1') - @group3 = OpenSSL::PKey::EC::Group.new('prime256v1') + @groups = [] + @keys = [] - @key1 = OpenSSL::PKey::EC.new - @key1.group = @group1 - @key1.generate_key + OpenSSL::PKey::EC.builtin_curves.each do |curve, comment| + group = OpenSSL::PKey::EC::Group.new(curve) - @key2 = OpenSSL::PKey::EC.new(@group2.curve_name) - @key2.generate_key + key = OpenSSL::PKey::EC.new(group) + key.generate_key - @key3 = OpenSSL::PKey::EC.new(@group3) - @key3.generate_key - - @groups = [@group1, @group2, @group3] - @keys = [@key1, @key2, @key3] + @groups << group + @keys << key + end end def compare_keys(k1, k2) assert_equal(k1.to_pem, k2.to_pem) end + def test_builtin_curves + assert(!OpenSSL::PKey::EC.builtin_curves.empty?) + end + def test_curve_names @groups.each_with_index do |group, idx| key = @keys[idx]
3. Create “fedora.configure” file
4. Copy the content below.
#!/bin/sh patch -p0 -i /tmp/patch.diff exec ./configure "$@"
5. Execute this command.
RUBY_CONFIGURE=/home/user/fedora-configure rbenv install 2.0.0-p247
6. check ruby version.
rbenv versions
How to install RVM for multi user.
RVM 설치하기
참고:
다중사용자 설정
sudo curl -sSL https://get.rvm.io | sudo bash -s stable
아래 내용처럼 나올 경우
Downloading https://github.com/rvm/rvm/archive/1.26.11.tar.gz Downloading https://github.com/rvm/rvm/releases/download/1.26.11/1.26.11.tar.gz. asc gpg: Signature made Tue 31 Mar 2015 06:52:13 AM KST using RSA key ID BF04FF17 gpg: Can't check signature: No public key Warning, RVM 1.26.0 introduces signed releases and automated check of signatures when GPG software found. Assuming you trust Michal Papis import the mpapis public key (downloading the si gnatures). GPG signature verification failed for '/usr/local/rvm/archives/rvm-1.26.11.tgz' - 'https://github.com/rvm/rvm/releases/download/1.26.11/1.26.11.tar.gz.asc'! try downloading the signatures: sudo gpg2 --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A170 3113804BB82D39DC0E3 or if it fails: command curl -sSL https://rvm.io/mpapis.asc | sudo gpg2 --import - the key can be compared with: https://rvm.io/mpapis.asc https://keybase.io/mpapis
공개키가 없다고 하니 공개키를 받아줘야할 듯.
콘솔 창에 나온데로 실행한다.
sudo gpg2 --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3
그리고 다시 첫번째 명령 실행
rvm이 잘 설치되었는지 아래 명령을 통해 확인한다.
type rvm | head -n 1
rvm is a function
이라고 나오면 정상
rvm을 사용할 계정을 rvm group에 포함시킨다.
sudo vi /etc/group ... rvm:x:505:user,user2,user3
이제 rvm을 사용할 계정으로 다시 로그인 한다.
로그인을 다시 하는 이유는 rvm이 로그인 시간정보를 가지고 유효한 유저인지 판별하기 때문인 듯 하다. 공식사이트에서 확인해보시길.
설치 가능 목록 확인
rvm list known
2.0.0 설치
rvm install 2.0.0
여러 유저가 사용하므로 ruby에서 참조하는 gem을 다르게 할 수 있다.
rvm use 2.0.0@newgemset --create --default
newgemset 이라는 gem set을 만들어서 기본으로 사용하라는 명령이다. 이름은 마음대로 바꾸자.
환경 ubuntu 13.04
rvm 설치
ruby 2.0.0
gem install rdoc gem install rails
— Mysql 설정(선행되어 있다면 무시) —
mysql 라이브러리 설치
sudo apt-get install ruby-mysql2 libmysqlclient-dev
mysql2 젬 설치
gem install mysql2
mysql 사용자 추가
create user 'username'@'localhost' identified by 'password'; grant all privileges on *.* to 'username'@'localhost';
create user 'username'@'%' identified by 'password'; grant all privileges on *.* to 'username'@'%';
%로 호스트를 설정할 경우 모든 ip접속 허용을 뜻한다.
— Mysql 설정 끝 —
rails 로 테스트 프로젝트 blog 생성
rails new blog --database=mysql
젬 설치
bundle install
execjs 에러가 난다면,
blog/Gemfile 오픈후 하단에 아래 두줄 추가
gem 'execjs' gem 'therubyracer'
blog/config/database.yml 오픈
필요없다면 blog_development 만 남기고 하단 주석 or 삭제
mysql user, password 입력
development: adapter: mysql2 encoding: utf8 database: blog_development pool: 5 username: test_user password: test1234 socket: /var/run/mysqld/mysqld.sock
빈 데이터베이스 생성
rake db:create
rails 서버 실행
rails s
자세한 정보나 더 많은 정보를 원할 경우 하단 링크 참조
레일스 시작하기
How to install RVM for Single user.
단일 사용자 설정
root 유저가 아닌 일반 계정으로 Ruby RVM 설치하기!
bash < <(curl -L https://raw.github.com/wayneeseguin/rvm/master/binscripts/rvm-installer)
echo '[[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm" # Load RVM function' >> ~/.bash_profile
source .bash_profile
type rvm | head -1
성공시: rvm is a function
설치 가능한 목록
rvm list known
rvm install 2.0.0