프로그래밍 Better Programming/리눅스 Linux
초보자를 위한 리눅스 tree 명령어 사용법 Linux ‘tree Command’ Usage Examples for Beginners
2020. 3. 15.Photo by Johannes Plenio from Pexels tree 는 디렉토리를 리스팅하거나 컨텐츠 내용을 볼 때 사용할 수 있는 간단한 명령어이다. 디렉토리 경로와 서브디렉토리내의 파일, 그리고 서브디렉토리와 파일의 전체 갯수 등을 보여준다. tree 프로그램은 리눅스, 도스, 윈도우즈 등 다양한 운영체제에서 사용가능하지만 여기서는 리눅스 환경에서의 활용에 대해 살펴본다. 본격적인 사용에 앞서 해당 라이브러리부터 설치해보자. (AnnaM) founder@hilbert:~/annam/kaggle$ sudo apt install tree Reading package lists... Done Building dependency tree Reading state information... Done T..
우분투 18.04 에 아파치 스파크 설치하기 Install Apache Spark on Ubuntu 19.04/18.04 & Debian 10/9/8
2019. 11. 4.Ubuntu 19.04/18.04 그리고 Debian 9/8/10 에 Apache Spark 를 설치하는 방법에 대해 알아봅니다. 설치에 앞서 시스템 패키지를 업데이트합니다. (AnnaM) founder@hilbert:~$ sudo apt -y upgrade Reading package lists... Done Building dependency tree Reading state information... Done Calculating upgrade... Done (AnnaM) founder@hilbert:~$ sudo apt -y upgrade Step 1: Install Java Apache Spark 는 자바를 필요로 합니다. 어떤 버전의 자바가 설치되어 있는지 java -version 으로 확인해..
아파치 웹서버 버추얼 호스팅 설정 How To Set Up Virtual Hosts in the Apache Web Server on Ubuntu 18.04
2019. 10. 21.아파치 웹서버를 사용하는 경우, 하나 이상의 도메인을 호스팅하기 위해 버추얼 호스트(Nginx 의 server blocks 과 유사)를 설정할 수 있다. 도메인 설정과 관련해서 더욱 자세한 내용은 introduction to DigitalOcean DNS 을 참조하기 바란다. 1. antilibrary.org 라는 도메인 이름으로 디렉토리를 생성한다. mkdir -p 상위경로도 함께 생성하라는 의미이다. (parabellum) founder@hilbert:~$ sudo mkdir -p /var/www/antilibrary.org/public_html 로그 파일이 저장될 디렉토리도 생성 (parabellum) founder@hilbert:~$ sudo mkdir /var/www/antilibrary.org..
아파치 삭제 후 재설치 apache2.service is not active, cannot reload.
2019. 10. 18.아래와 같이 아파치 서비스가 제대로 작동하지 않는 경우 아파치를 삭제하고 재설치하는 방법을 알아보자. 다음의 순서대로 진행하면 된다. (base) founder@hilbert:/etc/nginx/sites-available$ sudo systemctl status apache2 ● apache2.service - The Apache HTTP Server Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled) Drop-In: /lib/systemd/system/apache2.service.d └─apache2-systemd.conf Active: failed (Result: exit-code) since Fr..
터미널세션 녹화 및 공유기 asciinema
2019. 4. 20.asciinema 는 터미널 세션을 녹화하고 웹상으로 공유할 수 있게 해주는 오픈소스 솔루션이다. 간단히 녹화가 가능하고, 플레이어를 멈추고 터미널 상의 코드를 복사 및 붙여넣기가 가능하다. 손쉽게 블로그 등의 포스팅에 플레이어를 넣을 수도 있다. Installation pip 를 이용해 다음과 같이 설치할 수 있다. https://pypi.org/project/asciinema/ (cooke) founder@casey:~$ pip install asciinema Collecting asciinema Downloading https://files.pythonhosted.org/packages/a7/71/771c859795e02c71c187546f34f7535487b97425bc1dad1e5f6ad2651..
리눅스 디렉토리 크기 구하기 How to Get the Size of a Directory in Linux
2019. 4. 4.ls 명령어를 이용하여 디렉토리 콘텐츠를 리스팅하는 경우, 디렉토리의 크기가 항상 4096 bytes (4 KB) 임을 확인할 수 있다. 아래를 보자. /var$ ls -al total 56 drwxr-xr-x 14 root root 4096 Oct 27 05:19 . drwxr-xr-x 25 root root 4096 Apr 4 06:37 .. drwxr-xr-x 2 root root 4096 Apr 4 07:36 backups drwxr-xr-x 13 root root 4096 Nov 9 07:00 cache drwxrwxrwt 2 root root 4096 Nov 18 06:25 crash drwxr-xr-x 47 root root 4096 Jan 19 09:10 lib drwxrwsr-x 2 ro..
아나콘다 패키지 삭제 conda remove
2019. 3. 15.아나콘다 환경에서 설치된 패키지를 제거하는 방법은 다음과 같습니다.아래 설치된 cx_oracle 패키지를 제거해보겠습니다.(pyenv) founder@merrow:~/pyenv$ conda list # packages in environment at /home/founder/anaconda3/envs/pyenv: # # Name Version Build Channel ca-certificates 2019.1.23 0 anaconda certifi 2018.11.29 py27_0 anaconda cx_oracle 7.0.0 py27h7b6447c_0 anaconda 아래와 같이 conda remove 명령으로 패키지 제거가 가능합니다. 형식은 다음과 같습니다. 간단하게 이 정도만 기억하시면 될 것 같은데요..
우분투 18.04에 워드프레스 설치하기 How To Install WordPress with LEMP on Ubuntu 18.04
2019. 2. 14.여기서는 우분투 18.04 서버 + LEMP stack (Linux, Nginx, MySQL, and PHP) 기반으로 워드프레스를 설치하는 방법을 알아본다. Prerequisites본격적인 진행에 앞서 다음의 준비를 마쳐야 한다. - sudo 사용자 생성 - LEMP 스택 설치 : 이미 앞선 게시물에서 별도로 다룬바 있다 2018/10/27 - [리눅스 Linux] - 우분투 18.04 에 LEMP 스택 설치하기 How To Install Linux, Nginx, MySQL, PHP (LEMP stack) on Ubuntu 18.04- SSL 을 통한 사이트 보안도메인이 있는 경우 https://www.digitalocean.com/community/tutorials/how-to-secure-nginx..
아나콘다 matplotlib 설치
2018. 12. 15.아나콘다 matplotlib 설치12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394(tfKeras) founder@hilbert:~/tfKeras$ conda install -c conda-forge matplotlibSolving environment: done ## Package Plan ## environment location: /home/founder/anaconda3/envs/tfKeras added / updated specs..
데비안 9 파이어폭스 설치하기 How to install latest Firefox Browser on Debian 9 Stretch Linux
2018. 11. 25.먼저 최신 Firefox tar-ball 다운로드한다.12345678910111213141516171819fuchsia@fuchsia:~$ wget -O FirefoxSetup.tar.bz2 "https://download.mozilla.org/?product=firefox-latest&os=linux64&lang=en-US"--2018-11-24 07:58:14-- https://download.mozilla.org/?product=firefox-latest&os=linux64&lang=en-USResolving download.mozilla.org (download.mozilla.org)... 35.166.169.68, 52.41.13.96, 54.213.7.119Connecting to downlo..
Debian 9 서버 VNC 설치 및 환경설정 How to Install and Configure VNC on Debian 9
2018. 11. 24.구글 클라우드 플랫폼 환경 중 Deep Learning VM 의 기본 운영체제인 Debian 9 서버에 VNC 를 설치해보도록 하자. 데스크탑 환경 및 VNC 서버 설치기본적으로 Debian 9 서버는 그래픽 데스크탑 환경이나 VNC 서버를 제공하지 않으므로, 아래 관련 패키지를 설치하는 것에서 시작해야 한다. 특히 최신 Xfce 데스크탑 환경과 TightVNC 패키지를 사용할 예정이다.먼저 패키지 리스트를 업데이트한다. 1~$ sudo apt updateColored by Color ScriptercsXfce 데스크탑 환경을 설치한다. 설치과정에서 키보드 레이아웃 선택 화면이 뜨면 해당되는 옵션을 선택 후 설치를 계속 진행한다.1~$ sudo apt install xfce4 xfce4-goodiescs..
Debian 버전 체크하기
2018. 11. 24.Debian 버전을 체크하는 가장 간단한 방법은 /etc/issue 파일의 내용을 보는 것이다.12fuchsia@fuchsia:~$ cat /etc/issueDebian GNU/Linux 9 \n \lcs 하지만 상기 명령어는 현재 Debian 업데이트 포인트 릴리스를 보여주지 않는다. 따라서 좀 더 정확한 정보는 다음 명령을 통해서 살펴볼 수 있다.12fuchsia@fuchsia:~$ cat /etc/debian_version9.6Colored by Color Scriptercs 그리고 /etc/os-release release 파일을 통해서도 체크할 수 있다.123456789fuchsia@fuchsia:~$ cat /etc/os-releasePRETTY_NAME="Debian GNU/Linux 9 (..
리눅스 계정 및 홈디렉토리 삭제
2018. 8. 14.계정+홈디렉토리 삭제 삭제할 계정 확인1234 root@:~# cat /etc/passwd | grep kafkakafka:x:1001:1005::/home/kafka:/bin/sh Colored by Color Scriptercs 계정과 홈디렉토리 모두 삭제되었음을 알 수 있다.123root@:~# userdel -r kafkaroot@:~# cat /etc/passwd | grep kafkaroot@:~# ll /home | grep kafkacs
우분투 사용자 패스워드 변경하기
2018. 6. 19.우분투 사용자 패스워드 변경하기adduser 를 통해 생성한 사용자의 패스워드 셋팅은 다음과 같이 할 수 있다. 사용자 본인의 패스워드는 아래와 같이 변경가능하다.12345678910111213root@server:~# su - fukaeriifukaerii@server:~$ passwdChanging password for fukaerii.(current) UNIX password:passwd: Authentication token manipulation errorpasswd: password unchanged fukaerii@server:~$ passwdChanging password for fukaerii.(current) UNIX password:Enter new UNIX password:Rety..
우분투 사용자 추가 - Add user to Ubuntu via command line
2018. 6. 14.커맨드라인에서 사용자를 추가해보자. 터미널을 열고 다음과 같이 사용자이름을 인수로 갖는 adduser 명령을 실행한다. 예를 들어 아래는 fukaerii 라는 사용자 이름을 가진 유저를 생성한다. 패스워드를 제외하고 모든 정보는 선택사항이다. 1234567891011121314151617:~# sudo adduser fukaeriiAdding user `fukaerii' ...Adding new group `fukaerii' (1004) ...Adding new user `fukaerii' (1000) with group `fukaerii' ...Creating home directory `/home/fukaerii' ...Copying files from `/etc/skel' ...Enter new U..
우분투 호스트이름 바꾸기
2017. 11. 23.우분투 호스트네임은 다음과 같이 변경할 수 있다. 호스트네임 임시 변경 (재부팅시 원상복귀됨)12345root@gcloud-seoul-5d188bdade7:~# hostnamegcloud-seoul-5d188bdade7root@gcloud-seoul-5d188bdade7:~# hostname gcloudroot@gcloud-seoul-5d188bdade7:~# hostnamegcloudColored by Color Scriptercs 호스트네임 영구 변경1234567891011root@gcloud-seoul-5d188bdade7:~# hostnamectl set-hostname gcloudxroot@gcloud-seoul-5d188bdade7:~# hostnamectl Static hostname: gc..
우분투에 pgAdmin 설치하기 How To Install pgAdmin on Ubuntu 14.04
2017. 11. 18.우분투에 pgAdmin 설치하기How To Install pgAdmin on Ubuntu 14.04 시스템 패키지 업데이트 완료, 관련 패키지 설치완료, 그리고 가상환경 설치까지 마쳤다고 가정하고 진행합니다. Installing PGAdmin 4가상환경을 활성화하여 PgAdmin 파이썬 휠을 다운로드한다.12345678910111213141516171819 root@localhost:~# source venv/bin/activate(venv) root@localhost:~# wget https://ftp.postgresql.org/pub/pgadmin/pgadmin4/v1.6/pip/pgadmin4-1.6-py2.py3-none-any.whl--2017-11-18 15:35:29-- https://ftp..
Username is not in the sudoers file. This incident will be reported
2017. 11. 18.test1 으로 접속시 다음과 같은 오류가 발생하는 경우 아래와 같이 처리한다. 해당 오류와 관련한 문답은 다음 링크에서 확인할 수 있다.https://unix.stackexchange.com/questions/179954/username-is-not-in-the-sudoers-file-this-incident-will-be-reported 1234 [sudo] password for test1:test1 is not in the sudoers file. This incident will be reported. Colored by Color Scriptercs 123456 test1@localhost:/$ su -암호:root@localhost:~# visudoroot@localhost:~# cs 라인 ..
리눅스 사용가능한 사용자 계정 조회 A command to list all users and how to add, delete, modify users
2017. 11. 11.리눅스 사용가능한 사용자 계정 조회 A command to list all users and how to add, delete, modify users 사용가능한 로컬 유저 목록 보기1234567891011 postgres@localhost:~$ cut -d: -f1 /etc/passwdrootdaemonbinsyssyncpostgrestest1postgres@localhost:~$ Colored by Color Scriptercsgetent를 이용해서도 사용자 목록을 볼 수 있다. 다만 getent가 /etc/passwd 또는 LDAP 등 사용자 db 백엔드에 구성된 모든 사용자를 반환한다는 점에서 위와 방식과 차이가 있다.1234567891011 postgres@localhost:~$ getent p..
게스트 OS 와 VirtualBox 공유폴더 설정하기 Share Folders between Host and Guest OS in VirtualBox
2017. 10. 23.게스트 OS 와 VirtualBox 공유폴더 설정하기Share Folders between Host and Guest OS in VirtualBox Step 1: Update & Upgrade and Dist-UpgradeKali Linux 를 실행시킨 후 터미널창에서 다음의 명령을 실행한다. 1root@kali:~# apt update & apt -y dist-upgradecs VirtualBox 를 재부팅한다. 1root@kali:~# rebootcs Step 2: Double-checking version최신 버전을 실행 중인지 다음과 같이 확인한다.123456789101112131415161718root@kali:~# root@kali:~# root@kali:~# root@kali:~# uname..
VirtualBox 에 Kali Linux 설치하기 How To Install Kali Linux in VirtualBox
2017. 10. 21.VirtualBox 에 Kali Linux 설치하기 How To Install Kali Linux in VirtualBox 먼저 VirtualBox 를 설치한다. VirtualBox는 리눅스, OS X, 솔라리스, 윈도를 게스트 운영 체제로 가상화하는 x86 가상화 소프트웨어로, 하단 링크에서 다운로드 받을 수 있다.http://software.naver.com/software/evaluation.nhn?softwareId=MFS_103899&categoryId=B0300000 VirtualBox 설치가 완료되면 VirtualBox용 Kali Linux 이미지 파일을 아래에서 다운로드한다. https://www.offensive-security.com/kali-linux-vmware-virtualbox-..
아나콘다 가상환경 활성화 에러 -bash: activate: 그런 파일이나 디렉터리가 없습니다
2017. 7. 17.Anaconda 가상환경에서 다음과 같이 활성화가 되지않는 경우에는 전체 경로로 시도했을 경우 작동하는지부터 살펴본다.아래와 같이 가상환경 로딩이 되지 않는다. 12root@localhost:~# source activate envhaskel-bash: activate: 그런 파일이나 디렉터리가 없습니다cs해당 가상환경 존재 여부를 체크해볼려고 해도 되지 않는다. 12root@localhost:~# conda info --envsconda: 명령을 찾을 수 없습니다 cs반면 전체 경로로 시도해보면 정상적으로 작동된다. 12345root@localhost:~# /root/anaconda/bin/conda info --envs# conda environments:#envpython /root/anaconda..
디렉토리 구조 출력 tree 패키지
2015. 12. 16.유용하고 손쉽게 다룰 수 있는 패키지 tree를 설치해보자. tree는 디렉토리 구조를 보여주는 패키지로 아래와 같이 간단히 설치할 수 있다. [설치] # apt-get install tree [실행] # tree antifragile 12345678910111213141516171819202122232425262728293031323334root@localhost:~/antifragile# apt-get install tree패키지 목록을 읽는 중입니다... 완료의존성 트리를 만드는 중입니다상태 정보를 읽는 중입니다... 완료다음 새 패키지를 설치할 것입니다: tree0개 업그레이드, 1개 새로 설치, 0개 제거 및 158개 업그레이드 안 함.37.8 k바이트 아카이브를 받아야 합니다.이 작업 후 10..
Apache Worker MPM 과 Prefork MPM(Multi-Processing Module)
2015. 3. 14.MPM(Multi-Processing Module) apache 가 받아 들인 요청을 처리 하기 위해 'child processes'에게 분배하는 방식으로, Prefork MPM 과 Worker MPM 의 2가지 방식이 있다. 이 두가지의 차이점은 간단히 다음과 같다. Prefork MPM 은 하나의 쓰레드를 가진 다수의 child process 를 사용한다. 그리고 각각의 프로세스가 하나의 커넥션을 담당한다. 이에 반해 Worker MPM 은 다수의 쓰레드를 지닌 다수의 child processes 를 사용하며, 각각의 쓰레드가 하나의 커넥션을 핸들링한다. 대부분의 시스템에서는 prefor 방식이 좀 더 많은 메모리를 사용한다. 트래픽이 많은 웹사이트의 경우, 메모리 사용량 면에서 worker 방식..
아파치 동시 접속자수 확인하기 Get the number of concurrent users in Apache
2015. 3. 10.아파치 동시 접속자수 확인하기 [root@www ~]# netstat -nap | grep ESTABLISHED | wc -l 194
우분투(Ubuntu)에서 아파치(apache2) 실행하기
2015. 1. 15.root@gcloud-seoul:~# sudo -s // sudo 는 substitute user do (다른 사용자의 권한으로 명령을 이행하라는 뜻이다)의 줄임말이다 sudo: unable to resolve host gcloud-seoul root@gcloud-seoul:~# sudo vim /etc/hosts // 호스트네임을 gcloud-seoul 으로 맞춰준다 root@gcloud-seoul:~# sudo -s root@gcloud-seoul:~# sudo service apache2 restart * Restarting web server apache2 ... waiting [ OK ] root@gcloud-seoul:~#
우분투Ubuntu 터미널 색상 변경(putty 색상변경)
2014. 12. 23.putty 의 경우 ls -al 명령을 실행시켜보면 디렉토리명의 색이 파란색으로 표시되어 눈에 잘 띄지 않는다. 해당 설정의 변경은 change settings... > Window > Colours 에서 가능하나, 여기서 변경되는 사항은 재접속시 원래의 설정으로 돌아온다는 단점이 있다. ~/.bashrc 파일을 변경함으로써 재접속시에도 동일 설정을 유지할 수 있도록 해보자. dircolors >> ~/.bashrc 실행 후bashrc 파일을 열어보면 하단에 아래와 같이 LS_COLORS 값 설정 라인이 있다.여기서 디렉토리를 나타내는 di 값을 원하는 색상 값으로 변경해주면 된다.현재 값은 34, 즉 파랑으로 되어 있음을 알 수 있다. 변경 후 화면 모습이다. 훨씬 눈에 잘 들어옴을 알 수 있다. 색상..
리눅스linux 버전 확인 명령어
2014. 12. 11.[root@jpalace /]# uname -aLinux lms.kais.co.kr 2.4.20-8smp #1 SMP Thu Mar 13 17:45:54 EST 2003 i686 i686 i386 GNU/Linux[root@jpalace /]# uname -r2.4.20-8smp[root@jpalace /]# cat /proc/versionLinux version 2.4.20-8smp (bhcompile@porky.devel.redhat.com) (gcc version 3.2.2 20030222 (Red Hat Linux 3.2.2-5)) #1 SMP Thu Mar 13 17:45:54 EST 2003[root@jpalace /]# cat /etc/issueRed Hat Linux release 9 (S..
아파치apache 버전 확인 방법
2014. 12. 10.설치된 아파치의 버전을 알고 싶으면 다음과 같이 한다. 설치된 경로가 다르므로 아래와 같이 아파치 실행 경로를 확인한 후 -v 옵션으로 버전 확인 [root@dbserver ~]# ps -ef | grep httpd // 실행되고 있는 아파치 확인apache 1735 4954 0 Dec07 ? 00:00:00 /usr/sbin/httpd // 아파치 경로 확인root 4954 1 0 Jun20 ? 00:00:01 /usr/sbin/httpd[root@dbserver ~]# /usr/sbin/httpd -vServer version: Apache/2.0.52Server built: Jan 30 2007 09:56:53[root@dbserver ~]#
리눅스 방화벽 설정 iptables
2014. 11. 25.1. 변경내용 적용방법iptables 파일은 아래에서 보시다시피 /etc/sysconfig 에 위치한다. 직접 수정후 업로딩하거나 아래와 같이 콘솔상에서 직접 편집한다. #cd /etc/sysconfig/#vi iptables#service iptables restart#/etc/init.d/iptables save2. 도입부# Firewall configuration written by lokkit# Manual customization of this file is not recommended.# Note: ifup-post will punch the current nameservers through the# firewall; such entries will *not* be listed here.*fi..