dwebp 이용

1. dwebp 설치
Ubuntu/Debian 계열:

sudo apt update
sudo apt install webp


CentOS/RHEL 계열:

sudo yum install libwebp-tools


2. 변환 명령어 실행

dwebp input.webp -o output.jpg

 

 

convert (ImageMagick 사용)

1. ImageMagick 설치
Ubuntu/Debian 계열:

sudo apt update
sudo apt install imagemagick


CentOS/RHEL 계열:

sudo yum install imagemagick


2. 변환 명령어 실행

convert input.webp output.jpg

 

 

ffmpeg 사용

1. ffmpeg 설치
Ubuntu/Debian 계열:

sudo apt update
sudo apt install ffmpeg


CentOS/RHEL 계열:

sudo yum install ffmpeg


* ffmpeg static build 다운로드 방법은 https://ls-al.tistory.com/134 를 참고하세요.

 2. 변환 명령어 실행

ffmpeg -i input.webp output.jpg

 

728x90
반응형

 

 

일단위로 검색

-mtime: 파일의 내용이 수정된 시간을 기준으로 검색.
-atime: 파일의 접근 시간을 기준으로 검색.
-ctime: 파일의 속성 변경 시간을 기준으로 검색.

 

1. N일 이상 지난 파일 찾기

find /path/to/directory -mtime +N

 

• /path/to/directory: 검색할 디렉토리 경로.
• +N: N일 초과된 파일을 찾음.
• 예: find /home/user -mtime +30 → 30일 이상 지난 파일.


2. N일 내의 파일 찾기

find /path/to/directory -mtime -N


• -N: N일 이내의 파일을 찾음.
• 예: find /home/user -mtime -7 → 7일 이내에 수정된 파일.


3. 정확히 N일 전의 파일 찾기

find /path/to/directory -mtime N


• N: 정확히 N일 전에 수정된 파일.
• 예: find /home/user -mtime 10 → 정확히 10일 전에 수정된 파일.

 

 

시간 단위로 검색 (-mmin, -amin, -cmin)

1. N분 이상 지난 파일 찾기

find /path/to/directory -mmin +N


• -mmin: 수정 기준.
• 예: find /var/log -mmin +60 → 수정된 지 60분 이상 지난 파일.

 

 

복합 조건으로 검색

1. 7일 이상 30일 미만 수정된 파일 찾기

find /path/to/directory -mtime +7 -mtime -30


2. 확장자와 함께 사용

find /path/to/directory -mtime +7 -name "*.log"


• 7일 이상 지난 .log 파일 찾기.


3. 파일만 찾기

find /path/to/directory -type f -mtime +7 -name "*.log"

 

작업과 결합 (-exec 옵션)

7일 이상 지난 파일을 찾고 삭제

find /path/to/directory -mtime +7 -exec rm -f {} \;

 

728x90
반응형

 

두개이상의 랜카드를 사용할 때, 기본 게이트웨이를 변경하는 방법입니다.

route 명령을 실행하면, 아래와 같이 현재 라우팅 테이블이 보입니다.

 

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         192.168.1.1     0.0.0.0         UG    0      0        0 eth2
172.30.1.0      0.0.0.0         255.255.255.0   U     1      0        0 eth1
192.168.1.0     0.0.0.0         255.255.255.0   U     1      0        0 eth2

 

eth1, eth2 두개의 네트워크 장치가 보입니다.

eth2가 기본 장치이고 192.168.1.1이 기본 게이트웨이로 설정되어 있습니다.

 

eth1을 기본 장치로 설정하도록 하겠습니다.

루트 권한으로 아래 명령을 차례로 실행해 주면 됩니다. 172.30.1.1은 eth1의 게이트웨이 IP 주소입니다.

 

route del default
route add default gw 172.30.1.1 eth1

 

다시 route 명령을 실행해보면 아래와 같이 변경된 것을 볼 수 있습니다.

 

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         172.30.1.1      0.0.0.0         UG    0      0        0 eth1
172.30.1.0      *               255.255.255.0   U     1      0        0 eth1
192.168.1.0     *               255.255.255.0   U     1      0        0 eth2

 

traceroute 명령을 실행해보면, 아래와 같이 eth1 의 게이트웨이(172.30.1.1)를 통하는 것을 알 수 있습니다.

 

$ traceroute 8.8.8.8
traceroute to 8.8.8.8 (8.8.8.8), 30 hops max, 60 byte packets
 1  172.30.1.1 (172.30.1.1)  1.556 ms  1.562 ms  0.918 ms
.....

 

이상 기본 게이트웨이 변경 방법 이었습니다.

728x90
반응형

and

두개 이상의 패턴을 and 조건으로 검색합니다.

cat debug.log | grep 'MainActivity' | grep 'DEBUG'

debug.log에서 MainActivity와 DEBUG  모두를 포함한 줄만 출력해줍니다.

or

 주어진 패턴중 하나라도 포함하고 있으면 검색합니다.

cat debug.log | grep -e 'test 1' -e 'test 2'
cat debug.log | grep -E 'test 1|test 2'

debug.log 에서 test 1 혹은 test 2를 포함한 줄을 출력해줍니다.

not

주어진 패턴을 포함하고 있지 않은 줄을 검색합니다.

cat debug.log | grep -v 'test 3'

debug.log 에서 test 3를 포함하고 있지 않은 줄을 출력합니다.

 

 

추가로 대소문자 구분을 하지 않는 방법입니다.
옵션으로 -i 를 주면 패턴에서 대소문자 구분을 하지 않습니다.

cat debug.log | grep -i 'test'

 

debug.log 에서 test, Test, TEST, TEst  와 같이 대소문자 구분없이 test를 포함한 경우 출력합니다.

728x90
반응형

 

콘솔 명령으로 네트워크 연결 속도를 확인 하는 방법입니다.

 

알고 싶은 장치 이름을 eth1이라고 할때, sysfs와 ethtool 명령을 이용해서 간단하게 알아낼 수 있습니다.

 

cat  /sys/class/net/eth1/speed

1000 와 같이 속도를 알려줍니다. 단위는 Mbps 입니다.

 

ethtool eth1

아래와 같이 eth1에 대한 정보가 나옵니다.

Speed 항목에 속도가 나옵니다.

 

Settings for eth1:
Supported ports: [ TP ]
Supported link modes:   10baseT/Half 10baseT/Full 
                        100baseT/Half 100baseT/Full 
                        1000baseT/Full 
Supported pause frame use: No
Supports auto-negotiation: Yes
Advertised link modes:  10baseT/Half 10baseT/Full 
                        100baseT/Half 100baseT/Full 
                        1000baseT/Full 
Advertised pause frame use: No
Advertised auto-negotiation: Yes
Speed: 1000Mb/s
Duplex: Full
Port: Twisted Pair
PHYAD: 1
Transceiver: internal
Auto-negotiation: on
MDI-X: off (auto)
Supports Wake-on: pumbg
Wake-on: g
Current message level: 0x00000007 (7)
       drv probe link
Link detected: yes

728x90
반응형

 

1. 이미지 변환

이미지 품질 변환

$ convert source.jpg -quality 90 target.png

 

이미지 크기 변환

$ convert source.jpg -resize 1280x720 target.png

 

이미지 크롭

$ convert source.jpg -crop 220x160+850+460 target.jpg

source.jpg의 (x,y) 좌표 (850,460) 에서 부터 가로 220, 세로 160 크기 만큼만 크롭

 

2. 이미지에서 메타데이터 삭제

사진에 포함된 촬영 장소나 시간등등 정보를 삭제할 때 사용

 

$ mogrify -strip source.JPG

$ jhead -purejpg source.JPG      # JPEG 이미지만 가능

 

3. Exif 정보 보기

$ exiftool IMG_0047.JPG

728x90
반응형

리눅스에서 복구가 어렵도록 안전하게 파일을 삭제하는 방법입니다.

scrub, shred 와 wipe 프로그램을 이용하면 됩니다.

 

1. scrub

scrub 파일이름
scrub -r 파일이름  # scrub 후에 파일을 삭제
scrub /dev/sdf1  # 파티션 전체에 대해서 scrub
scrub -X 디렉토리 # 디렉토리를 생성하고 파티션이 가득찰 때 까지 파일을 채운다. 빈 공간에 대해서 쓰레기 데이터를 채울때 사용

 

2. shred

shred 파일이름
shred -u 파일이름    # 덮어쓰기 후, 파일을 삭제
shred /dev/sdf1
shred -v /dev/sdf1 # 진행상황표시
shred -v --random-source=/dev/urandom -n1 /dev/sdf1 # /dev/sdf1 파티션에 랜덤 데이터를 씀

 

3. wipe

wipe 파일이름
wipe -r 디렉토리

 

 

 

* 참고사이트

https://wiki.archlinux.org/title/Securely_wipe_disk#shred
https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/security_guide/sec-removing_data_securely_using_scrub

728x90
반응형

서버에 패키지 설치를 하면서 뭐가 잘못됐는지 갑자기 bash 쉘에서 한글이 ???? 로 나오는 문제가 생겼습니다.

 

아래와 같이 커맨드를 locale -a 실행해보니 한글이 빠져 버렸습니다.

 

[user@server ~]$ locale -a 
C
C.UTF-8
en_AG
en_AG.utf8
en_AU.utf8
en_BW.utf8
en_CA.utf8
en_DK.utf8
en_GB.utf8
en_HK.utf8
en_IE.utf8
en_IN
en_IN.utf8
en_NG
en_NG.utf8
en_NZ.utf8
en_PH.utf8
en_SG.utf8
en_US.utf8
en_ZA.utf8
en_ZM
en_ZM.utf8
en_ZW.utf8
POSIX

 

아래 명령어로 다시 설치해줍니다. 패키지를 못 찾을 경우 apt-get update 를 해주고 install을 해봅니다.

 

sudo apt-get install language-pack-ko language-pack-ko-base language-pack-gnome-ko language-pack-gnome-ko-base

 

다시 명령을 실행해서 보면 ko_KR.utf8 이 추가된 것을 볼 수 있습니다. 다시 ls -al 명령으로 보면 한글 파일들 이름이 제대로 보입니다.

 

[user@server ~]$ locale -a 
C
C.UTF-8
en_AG
en_AG.utf8
en_AU.utf8
en_BW.utf8
en_CA.utf8
en_DK.utf8
en_GB.utf8
en_HK.utf8
en_IE.utf8
en_IN
en_IN.utf8
en_NG
en_NG.utf8
en_NZ.utf8
en_PH.utf8
en_SG.utf8
en_US.utf8
en_ZA.utf8
en_ZM
en_ZM.utf8
en_ZW.utf8
ko_KR.utf8
POSIX
728x90
반응형

* 분할

split -b 4096m BIGFILE BIGFILE_PREFIX

BIGFILE 을 4GB 단위로 자른다.

BIGFILE_PREFIXaa, BIGFILE_PREFIXab, BIGFILE_PREFIXac ... 와 같이 파일이 생성된다.


* 합치기

cat BIGFILE_PREFIX* > BIGFILE

728x90
반응형

linux에서 tcpdump 프로그램을 이용해서 간단히 덤프를 뜰 수 있습니다. (루트권한 필요)

 

tcpdump -Z root -n -i eth0 -s 0 -w output.txt src or dst port 80

 

자세한 것은 아래 링크를 참조하세요.

http://www.cyberciti.biz/faq/linux-unix-bsd-apache-tcpdump-http-packets-sniffing/

 

덤프뜬 output.txt 파일을 보기 위해서 wireshark 를 이용합니다.

wireshark  download

728x90
반응형

'Linux' 카테고리의 다른 글

vim : Directory browsing failed  (0) 2015.06.19
Fedora upgrade  (0) 2015.05.15
How to create bootable Linux USB.  (0) 2013.09.06
[Ubuntu] "Asking for cache data failed" message.  (0) 2013.04.23
Intel PRO/1000 Network Driver / e1000e  (0) 2012.08.13

DVD 용 iso로 만들때는 8GB 이상의 스틱을 사용하길 권장합니다.


http://fedoraproject.org/wiki/How_to_create_and_use_Live_USB#Another_graphical_method:_using_Unetbootin


728x90
반응형

뭔지도 모르는;;;  RCU 관련 디버깅??을 하다가 찾은 글입니다.



리눅스 커널 락을 없애려는 시도들



위 글중에서 ftp://www6.software.ibm.com/software/developer/library/os-ltc-kernel/2.6-datacenter.pdf 문서는 링크가 깨졌는데,, 구글링해보니 여기 에 있네요.. 



728x90
반응형

제가 가진 임베디드시스템에서 ext2와 ext3 file write 시간 비교입니다.


idle/busy 상태에 따른 비교, 속도에 영향을 준다고 알려져 있는 ext3에서의 저널링 방법, noatime 옵션 유무, fs_types 옵션 과 커널 I/O 스케줄러에 따른 비교입니다.


실제 사용 환경을 가정하다보니 busy 상태는 동영상 파일을 플레이하는 것으로 정했습니다. 비트레이트가 거의 일정한 파일이니 테스트에 큰 무리는 없어 보입니다.


시간은 짧을수록 성능이 좋은 것입니다. 절대적인 수치보다는 상대적으로 비교해서 보는게 나을 듯 합니다.


(그림을 클릭하면 크게보입니다.)


ext2가 ext3에 비해서는 2배 이상 빠릅니다. 알려진대로 writeback-ordered-journal 순으로 속도가 빠릅니다. 다만 writeback 저널링 방법에서는 noatime 옵션이 오히려 성능을 떨어뜨리는 것이 의외의 결과입니다.


어디까지나 위의 결과는 제가 쓰는 시스템에서의 결과입니다. 본인의 환경과 목적에 맞는 테스트를 통해서 적절한 파일시스템을 선택하시길 권장합니다.



728x90
반응형
Firefox에서 프록시를 쓰고 싶으면 아래와 같이 하면 됩니다.

Edit -> Preferences -> Advanced -> Network 로 갑니다.


Connection에 Settings 버튼을 클릭합니다. "Use system proxy settings"가 기본값인데, 아래와 같이 "Manual proxy configuration"을 클릭하고 원하는 프록시 서버를 넣어주고 OK를 누릅니다.



사용가능한 프록시 서버는 아래 사이트에서 찾으면 됩니다.


http://www.proxy-list.org
728x90
반응형

'Linux' 카테고리의 다른 글

ext2/ext3 Filesystem Test  (0) 2012.07.11
Change ubuntu apt* sources / 우분투 apt* 패키지 소스 수정하기  (0) 2012.02.24
Advanced Linux Programming  (0) 2011.12.01
GeoIP : IP를 통해서 정보 파악  (0) 2011.11.09
Linux 관련 링크들.  (0) 2011.10.28

http://www.advancedlinuxprogramming.com/alp-folder/

Chapter 01 - Advanced Unix Programming with Linux
Chapter 02 - Writing Good GNU/Linux Software
Chapter 03 - Processes  
Chapter 04 - Threads  
Chapter 05 - Interprocess Communication  
Chapter 06 - Mastering Linux 
Chapter 07 - The /proc File System  
Chapter 08 - Linux System Calls 
Chapter 09 - Inline Assembly Code  
Chapter 10 - Security 
Chapter 11 - A Sample GNU/Linux Application  
Appendix A - Other Development Tools  
Appendix B - Low Level I/O  
Appendix C - Table of Signals  
Appendix D - Online Resources  
Appendix E - Open Publication License Version 1.0  
Appendix F - The GNU General Public License

728x90
반응형

+ Recent posts