리눅스: 50개의 글
리눅스 서버의 네트워크가 외부 IP 에 바로 물려있다면 ifconfig 나 ip addr 명령어 같은것으로 자신의 공인아이피를 알아낼 수 있지만 공유기 안쪽 로컬에 있다면 사설 IP 만 알 수 있습니다. 웹브라우저 네이버에서 내아이피를 검색하면 자신의 Public IP를 알아낼 수 있지만 리눅스에서는 아래의 사이트를 활용하면 됩니다. [root@raspberry ~]# curl ifconfig.me 123.123.123.45 [root@raspberry ~]# curl bot.whatismyipaddress.com 123.123.123.45
현재 위치에서 디렉토리 즉 폴더 개수 세기 ls -l | grep ^d | wc -l 위의 명령어를 실행 시키면 현재 위치의 디렉토리(파일) 개수를 체크 할 수 있습니다. 현재 위치에서 파일의 개수 세기 ls -l | grep ^- | wc -l 현재 디렉토리의 하위 파일 개수 세기 find . -type f | wc -l 위의 명령어들은 외우면 편하긴 하지만... 리눅스를 주로 사용하는 것이 아니라 자꾸 잊어 버리네요. 파일 개수, 디렉토리(개수)를 세는것보다 용량 등의 체크를 더 많이 사용하지만 종종 파일 개수, 폴더 개수를 체크할일이 있어 포스팅 하였습니다. 필요하신분들 요긴하게 사용하시기 바랍니다. 감사합니다.
Find 명령이 생각보다 꽤 대단하다. 사실, 리눅스 명령어가 잘만 알고 있다면 정말 강력한 것들이 많다. 그도 그럴 수 밖에 없는 것이 다 손으로 처리해야 하던 시절의 산물이므로.. 아무튼, 지금 껏 한가지 결과를 찾는데만 사용했는데, 어제 조금 다른 사용법을 터득했다. 예를 들어, mp3 파일과 mpc 파일을 찾고 싶다면? 기본은 다음과 같다. find ~ -name '*.mp3' find ~ -name '*.mpc' ~ 는 경로를 뜻한다. . 이면 현재부터 하위 디렉토리까지. 이렇게 두 번 해주면 된다!!! 그리고 나온 결과를 합쳐 보면 된다!!! (물론.. 이렇게 해도 안되는 건 아니다.) 어쨌든, 저 방식의 첫번째 문제. mp3 는 찾아주지만, Mp3 나 mP3 등, 대소문자가 섞여있으면 찾아주..
폴더명만 출력 ls -l |grep "^d"|awk '{print $9}'
screen이란 백그라운드로 동작하는 다중 터미널을 생성. 세션을 종료해도 터미널을 종료하지 않는이상 작업이 중지되지 않는다 설치 apt-get install screen --screen 생성 screen -S [이름] -- screen 목록 확인하기 screen -ls --screen 다시 들어가기 $ screen -r [이름] -- screen에서 빠져나가기(종료되지 않음) ctrl+a d -- screen 종료하면서 빠져나가기 ctrl+a k --키보드 사용방법 확인하기 ctrl+a ? # 세로로 화면 분할 ctrl+a | # 가로로 화면 분할 ctrl+a S # 분할된 화면 으로 넘어가기 ctrl+a Tab # 새 세션 열기 ctrl+a c # 스크롤 하기(아래 명령어 후 방향키 입력) ctrl+..
서버에 걸리는 부하를 파악해서 해결하려면, 먼저 서버에 어떤 부하가 걸리는지 부터 알아야 한다. 우리가 확인할 수 있는 서버부하는 크게 네트워크 부하 와 서버의 성능 부하 로 분류됨. 네트워크 부하는 말 그대로, 서버에 접속하려는 사람이 폭발적으로 증가하여 트래픽이 급증한 경우의 네트워크에 걸리는 부하를 말한다. 이러한 경우 서버 앞단에서 트래픽 자체를 분산시켜주는 로드밸런서를 사용하거나 서버의 대수를 더 늘리는 방식으로 해결할 수 있음. 하지만, 애초에 우리의 서버가 서버 자체의 성능을 100% 발휘하고 있지 않다면 서버의 대수를 늘리거나 로드밸런서를 사용해도 그 효율이 매우 낮을 것이다. 따라서 로드밸런서 등으로 네트워크 부하에 대한 분산을 고려하기 전에, 서버 1대가 자신의 성능을 잘 발휘하고 있는..
1. 현재 나의 용량 확인하기 df : 디스크의 남은 용량을 확인 df -h : 보기 좋게 보여줌 du : 현재 디렉토리에서 서브디렉토리까지의 사용량을 확인 du -a : 현재 디렉토리의 사용량을 파일단위 출력 du -s : 총 사용량을 확인 du -h : 보기 좋게 바꿔줌 du -sh * : 한단계 서브디렉토리 기준으로 보여준다. - 가장 자주 쓰이는 것들로 정리. 2. 불필요 파일 삭제 ! 읽기 전에 파일 삭제할때는 항상 경로를 주는게 좋다. ! rm abc.txt abc.txt 파일을 삭제한다. rm *.txt '.txt'로 끝나는 파일을 모두 삭제한다. rm * 모든 파일을 삭제한다. (위험) rm -r dir1/ dir1 디렉토리를 삭제한다. 디렉토리를 삭제하기 위해서는 -r 옵션을 사용해야 한..
우분투에서 시간을 수동으로 설정하는 방법은 아래와 같다. 1. 우분투 시간 동기화 해제 # timedatectl set-ntp 0 시간 동기화가 해제 되서 date 명령어를 통해 수동으로 시간 설정가능. 2. 우분투 시간 수동 설정 # date -s "2020-01-01 17:59:48" 다시 되돌릴 때 1. 우분투 시간 동기화 설정 # timedatectl set-ntp 1 을 통해 바로 해결 가능합니다. 출처 : https://shutcoding.tistory.com/43?category=808306
들어가며: 대량의 파일을 삭제하거나 이동할때, 아래와 같이 에러가 난다. 그 이유는 mv, rm, cp 등 많은 파일에 대해서 파일 개수 제한을 두고 있다. 그렇다면 어떻게 해야지 파일을 옮길 수 있을까. bash에서는 강력한 pipeline(|)이 있기 때문에 잘 활용하면, 간단한 코드도 한줄에 끝낼 수 있으니, 리눅스에서 개발하는 개발자들은 얼마나 커맨드를 아느냐에 따라 시간, 속도를 효율적으로 사용이 가능하다. $ mv * ../ 에러내용: /usr/bin/mv: Argument list too long 아래와 같이 사용하면 대량의 파일을 옮기거나 삭제가 가능하다. $ find . -type f | xargs -i mv "{}" ../ 출처 : ourcstory.tistory.com/194?cate..
들어가며 새로운 HDD, SSD 등 스토리지가 추가가 되면, 포맷을 하고 마운트를 하게 된다. 아래 내용은 추가된 스토리지 /dev/xvdb를 포맷하고, /mnt/data1에 마운트 하는 방법에 대해서 설명한다. 데이터를 다루는 작업을 한다면 필수. 포맷하기 $ sudo /sbin/mkfs.ext3 /dev/xvdb 마운트하기 $ sudo mkdir /mnt/data1 $ sudo mount /dev/xvdb /mnt/data1 출처 : ourcstory.tistory.com/172?category=630687