반응형

리눅스에서 명령어를 사용하다 보면 결과 값을 다른 명령어로 전달하고 싶은 때가 있다. 내 경우에는 k8s pod 이름을 다른 명령어로 전달 하고 싶었다.

찾아보니 xargs 라는 명령어가 있었다.

xargs = eXtended ARGuments 
- 사용 방법 : xargs [options][command][arguments]
- 옵션 : 여러가지가 있는데 내가 사용해본 옵션만 적겠다.
  -i : 원하는 위치에 인자 입력하기  - 인자를 입력하고 싶은 위치에 {} 를 입력하여 지정할수 있다. 
  -v : 실행된 명령어 확인하기

 

k get pod -o=custom-columns='DATA:metadata.name' | grep test-[0-9] | xargs -i -t kubectl get po {}
kubectl get po test-67b7988799-j8gks
NAME                                        READY   STATUS    RESTARTS   AGE
test-67b7988799-j8gks   1/1     Running   0          17h

1. k get pod -o=custom-columns='DATA:metadata.name'  : k8s pod 이름을 검색한다.
2. grep test-[0-9] | : pod 이름중 "test-숫자" 라는 패턴의 pod 이름을 검색한다.
3. xargs -i -t kubectl get po {}검색한 pod 이름을 {} 에 넣어준다.
4. kubectl get po test-67b7988799-j8gks : -t 옵션에 의해서 실행된 명령어를 확인할 수 있다.

 

728x90
반응형
반응형

시스템의 mac 주소를 확인할때 사용한다. 

root@myserver-001:~# arp
Address                  HWtype  HWaddress           Flags Mask            Iface
10.32.0.2                ether   e2:be:6b:98:75:27   C                     weave
10.32.0.3                ether   c2:2b:4a:0f:0b:5b   C                     weave
10.36.0.1                ether   02:84:38:18:ac:31   C                     weave
10.36.0.2                ether   8e:21:c9:42:d3:da   C                     weave
10.36.0.3                ether   a2:7f:5e:83:5b:c4   C                     weave
10.44.0.4                ether   2a:54:11:6b:1f:fe   C                     weave
10.44.0.5                ether   b6:bb:2c:98:2b:7b   C                     weave
_gateway                 ether   02:50:56:56:44:52   C                     ens160
192.168.0.2                      (incomplete)                              ens160
myserver-002             ether   00:50:56:99:e5:ba   C                     ens160
10.44.0.1                ether   46:bf:dd:bc:51:8a   C                     weave
192.168.30.18                    (incomplete)                              docker0
10.44.0.2                ether   e6:4a:dc:2d:f4:e7   C                     weave
myserver-003             ether   00:50:56:99:1e:4d   C                     ens160
10.44.0.3                ether   96:38:40:ba:ac:a0   C                     weave

다음과 같이 뒤에 host 명을 붙여주면 해당 host 의 정보만 출력한다.

root@myserver-001:~# arp myserver-002
Address                  HWtype  HWaddress           Flags Mask            Iface
myserver-002             ether   00:50:56:99:e5:ba   C                     ens160

 

728x90
반응형

'Development > Linux' 카테고리의 다른 글

xargs 명령어  (0) 2024.01.17
[리눅스 명령어] nohup  (0) 2021.06.09
[리눅스 명령어] 디스크 관련 명령어  (0) 2021.06.04
파일 찾기, 파일 날짜별 삭제  (0) 2021.05.21
[리눅스 명령어] IP 관련 명령어  (0) 2021.03.08
반응형
nohup은 HUP(hangup) 신호를 무시하도록 만드는 POSIX 명령어이다. HUP 신호는 전통적으로 터미널이 의존 프로세스들에게 로그아웃을 알리는 방식이다. 일반적으로 터미널로 향하는 출력은 별도로 넘겨주기 처리를 하지 않았을 경우 nohup.out이라는 이름의 파일로 출력된다.

(출처 : https://ko.wikipedia.org/wiki/Nohup)

다시 말해 nohup 명령어는 터미널을 종료해서 세션이 끊어지더라도 계속 동작을 할수 있게 해준다. 

사용방법

nohup 프로세스 &

nohup.out 파일 생성하지 않으려면 

nohup 프로세스 1>/dev/null 2>&1 &

1>dev/null 은 표준출력 사용하지 않는다는 의미
2>&1 표준 에러를 표준 출력과 같게 한다는 의미

참고사항

표준입력 = 0
표준 출력 = 1
표준 에러 = 2

> :  파일이 없으면 새로 만들고 있으면 덮어쓴다.
>> : 파일이 없으면 새로 만들고 있으면 끝에 덧붙인다. 

 

728x90
반응형

'Development > Linux' 카테고리의 다른 글

xargs 명령어  (0) 2024.01.17
[리눅스 명령어] arp  (0) 2021.11.16
[리눅스 명령어] 디스크 관련 명령어  (0) 2021.06.04
파일 찾기, 파일 날짜별 삭제  (0) 2021.05.21
[리눅스 명령어] IP 관련 명령어  (0) 2021.03.08
반응형
du 디렉토리명

디렉토리와 모든 하위 디렉토리 용량을 표시해준다.

옵션
-s : 선택한 디렉토리의 용량을 보여준다.
-h : 용량 단위를 알기 쉽게 보여준다.
-d : 숫자 숫자만큼의 하위디렉토리까지 출력한다.
-a : 파일 용량도 출력한다.

df -h

디스크의 사용량을 알 수 있다.

 

728x90
반응형

'Development > Linux' 카테고리의 다른 글

[리눅스 명령어] arp  (0) 2021.11.16
[리눅스 명령어] nohup  (0) 2021.06.09
파일 찾기, 파일 날짜별 삭제  (0) 2021.05.21
[리눅스 명령어] IP 관련 명령어  (0) 2021.03.08
dpkg lock 에러  (0) 2020.09.17
반응형

특정 기간이 지난 파일을 삭제할때

 

find -mtime 옵션 사용

find -mtime n(일수)
-> n 일전 * 24시간 (시간 기준이다)

find -mtime -3 : 3일전부터 현재까지

find -mtime 3 : 4일전에서 3일전까지

find -mtim +3 : 3일 이전

ex) find -name "*.log" -mtime +3 -delete

이렇게 하면 3일 이전 생성된 파일들이 삭제됨

find -name "*.log" -mtime -1 -exec ls -lrt {} \;  ->> 파일 목록들 확인할때.

 

728x90
반응형

'Development > Linux' 카테고리의 다른 글

[리눅스 명령어] nohup  (0) 2021.06.09
[리눅스 명령어] 디스크 관련 명령어  (0) 2021.06.04
[리눅스 명령어] IP 관련 명령어  (0) 2021.03.08
dpkg lock 에러  (0) 2020.09.17
netstat 사용 중인 포트 찾기  (0) 2020.07.30
반응형

ip link
- ip link set eth0 up
- eth0 인터페이스활성화

ip addr
- IP 정보 출력

ip addr add
- ip addr add ip/24 dev eth0
- eth0 인턴페이스에 IP 추가

route
- 라우팅 정보 출력

ip route add
- ip route add default via XXX.XXX.X.X
- 게이트웨이 설정
- ip route add XX.XX.XX.X/24 via XXX.XXX.X.X dev eth0
- 정적 라우팅 정보 설정

 

728x90
반응형

'Development > Linux' 카테고리의 다른 글

[리눅스 명령어] 디스크 관련 명령어  (0) 2021.06.04
파일 찾기, 파일 날짜별 삭제  (0) 2021.05.21
dpkg lock 에러  (0) 2020.09.17
netstat 사용 중인 포트 찾기  (0) 2020.07.30
openSSH 서버 활용하기  (0) 2017.04.18
반응형

E: Could not get lock /var/lib/dpkg/lock-frontend - open (11: Resource temporarily unavailable)
E: Unable to acquire the dpkg frontend lock (/var/lib/dpkg/lock-frontend), is another process using it?

/var/lib/dpkg/lock 잠금 파일을 얻을 수 없습니다 - open (11: Resource temporarily unavailable)
E: 관리 디렉터리를 (/var/lib/dpkg/) 잠글 수 없습니다. 다른 프로세스가 사용하고 있지 않습니까?

 

위와 같은 에러 발생시 해결 방법

 

lock 걸린 파일들을 하나씩 지워준다.

 

- sudo rm /var/lib/dpkg/lock-frontend
- sudo rm /var/lib/dpkg/lock*


728x90
반응형
반응형

 

netstat

-a [all] 모든 네트워크 상태 출력
-c [continuous] 현재 실행 명령어를 매 초마다 실행
-l [listening] 대기중인 네트워크 
-n [numeric] 도메인 주소를 숫자로 출력
-p [program] pid 와 사용중인 프로그램명 출력
-r [route] 라우팅 테이블 출력
-t [tcp] TCP 프로토콜만 출력
-u [udp] UDP 프로토콜만 출력

 

LISTENING : 현재 서비스를 대기중 

ESTABLISHED : 다른 컴퓨터와 연결된 상태

CLOSED : 연결이 완전히 종료된 상태

TIME WAIT : 연결은 종료되었지만 당분간 소켓은 열어놓은 상태

 

netstat -ano | find "7000"

- 포트가 7000 번인 

 

PID 가 7000번인 프로스세 찾기

- tasklist /FI "PID eq 7000"

 

프로세스 종료 

- taskkill /pid 7000

 

프로세스 강제 종료 

- taskkill /f /pid 7000

 

 

728x90
반응형

'Development > Linux' 카테고리의 다른 글

[리눅스 명령어] IP 관련 명령어  (0) 2021.03.08
dpkg lock 에러  (0) 2020.09.17
openSSH 서버 활용하기  (0) 2017.04.18
우분투 리눅스 설치 삽질기!  (3) 2017.04.17
Command Line 명령어  (0) 2016.01.14
반응형

현재 우분투 리눅스가 설치되어있는 넷북은 작업 환경이 정말 열악하다.

집에서 쓰는 거라서 보조 모니터가 있는것도 아니고 조그만한 화면을 들여다 보고 있으면 정말 목이 아프다. 

그래서 굳이 넷북에서 직접 작업할 필요가 있을까라는 생각을 했다. 

데스크탑도 있고 맥북도 있는데 굳이 그 조그만한 화면을 들여다 볼 필요가 있을까라는 생각을 했다. 

원격 접속해서 사용해도 큰 무리가 없을것 같은데.


그래서 책을 찾아보니 OpenSSH 서버라는 것이 있었다. 


telnet 과는 거의 동일 하지만 데이터 전송 시 암호화를 한다는 차이점을 가지고 있다. 


apt-get install openssh-server


이렇게 간단하게 명령어 한번만 치면 설치가 순식간에 진행된다. 



참고로 내가 사용한 -y 옵션은 패키지 설치시 설치여부 확인을 자동으로 진행해주는 옵션이다. 



systemctl restart ssh : 서비스를 재기동한다.

systemctl enable ssh : 서비스를 항상 기동하도록 설정한다.

systemctl status ssh : 서비스 상태를 확인한다. 


그리고 나서 여기 캡쳐 상에는 없지만 ufw allow 22/tcp 로 방화벽에서 SSH 포트인 22번 포트를 허용하도록 한다.



이 화면은 맥북에서 접속한 화면이다. 

ssh 사용자이름@IP 로 접속을 하면 된다. 위에는 이름과 IP 가 나와서 블러 처리를 했다. 

이렇게 함으로써 이제부터는 굳이 작은 넷북 화면 안쳐다보고 맥북에서 작업을 할 수 있게 되었다. 

필요한 것을 찾아가면서 이것 저것 적용해보는 재미가 쏠쏠한것 같다. 그러면서 아는것도 생기니 일석이조다. 


728x90
반응형

'Development > Linux' 카테고리의 다른 글

dpkg lock 에러  (0) 2020.09.17
netstat 사용 중인 포트 찾기  (0) 2020.07.30
우분투 리눅스 설치 삽질기!  (3) 2017.04.17
Command Line 명령어  (0) 2016.01.14
sed 명령어  (0) 2016.01.12

+ Recent posts