Skip to content

Instantly share code, notes, and snippets.

@cemtopkaya
Last active April 18, 2023 22:07
Show Gist options
  • Save cemtopkaya/42f02597d68a1415f897be825ff82d18 to your computer and use it in GitHub Desktop.
Save cemtopkaya/42f02597d68a1415f897be825ff82d18 to your computer and use it in GitHub Desktop.
Linux komutlarını depoladığım gists

SSH

Known_Hosts Kontrolü yapmamak

known_hosts dosyasında SSH yapılmak istenen makinanın olup olmadığının kontrolünü yapmaz ve bu sayede "bilinen dosyalarda yok, eklemek ister misin" sorusunu sormaz.

ssh ubuntu@34.219.199.173 -oStrictHostKeyChecking=no

SSH Anahtarını kopyalamak

ssh -i ~/.ssh/id_rsa ubuntu@api.demo.k8s.xyz.net

rsync

rsync ile dizini kopyalama ancak bazı dizinleri ihmal etme

rsync -rva --exclude={builds,htmlreports,workspace*,cobertura} jobs/* /home/jenkins/jenkins-cinar/volume/jobs/

group

grup oluşturma

groupadd -g ${user_group_id} ${user_group_name}

useradd

kullanıcı oluşturma

useradd -c "Jenkins kullanici aciklamasi" -d "$JENKINS_USER_HOME_DIR" -u ${user_id} -g ${user_group_id} -m ${user_name} -s /bin/bash

xargs find exec

Dizin altındaki dosyaların oluşturulma/değiştirilme tarihlerini değiştiren komut

sudo find /var/lib/docker/volumes/jenkins-container_home/_data -exec touch -d "10 hours ago" {} +

docker günlüklerinin büyükten küçüğe sıralaması

sudo ls -1 /var/lib/docker/containers/ | xargs -I % sh -c 'sudo ls -thal /var/lib/docker/containers/%'

tar

Bir dizin veya dosyayı hariç tutmak için --exclude Bir dosyayı hariç tutmak için --exclude-from Eğer / dahil herhangi bir karakteri işaret etmek istersek * Eğer eğik çizgi hariç bir karakteri işaret etmek istersek --no-wildcards-match-slash bayrağı ile *

tar czvf --no-wildcards-match-slash --exclude 'jobs/**/cobertura'

jobs dizininin altında herhangi bir düzeyde olan cobertura isimli dosya/dizin hariç

     tar czvf --no-wildcards-match-slash --exclude 'jobs/**/workspace*'    
            jobs dizininin altında herhangi bir düzeyde olan workspace ve workspace2@hede gibi herhangi bir şey ile devam eden dosya/dizin hariç 

ref

tar cvzf --no-wildcards-match-slash \
         --exclude 'jobs/**/builds' \
         --exclude 'jobs/**/workspace*' \
         --exclude 'jobs/**/*svn' \
         jobs.tar jobs/*

apt /apt-get

apt'nin verbose/debug ayrıntılı görmek

-oDebug::pkgAcquire::Worker=1 bayrağı ayrıntılı çıktı verecektir:

apt -oDebug::pkgAcquire::Worker=1 update

ldapsearch

LDAP sorgularını ldapsearch ile yapmak

ldapsearch -h 192.168.10.12 -p 389 -D "akademi@ulakhaberlesme.com.tr" -w 'Akd*A2022!?' -b "cn=it test,cn=Users,dc=ulakhaberlesme,dc=com,dc=tr"

userPrincipalName ile ldapsearch sorgusu yapmak ldap://192.168.10.12:389 > sunucu adresi -D "akademi@ulakhaberlesme.com.tr" -w 'Akd*A2022!?' > sorgulamayı yaparken kullanılacak user ve şifresi -b dc=ulakhaberlesme,dc=com,dc=tr > base dn for search > aramayı içinde ulakhaberlesme.com.tr olan Users, Groups, Members ne varsa hepsinde yapacak -x userPrincipalName=it.test@ulakhaberlesme.com.tr > süzgeçimize düşsün diye istediğimiz userPrincipalName özelliği it.test@ulakhaberlesme.com.tr olsun

LDAPv3

base <dc=ulakhaberlesme,dc=com,dc=tr> with scope subtree
 filter: userPrincipalName=it.test@ulakhaberlesme.com.tr
 requesting: ALL
ldapsearch -h 192.168.10.12 -p 389 -D "akademi@ulakhaberlesme.com.tr" -w 'Akd*A2022!?' -b dc=ulakhaberlesme,dc=com,dc=tr -x userPrincipalName=it.test@ulakhaberlesme.com.tr

Kubernetes

kubectl İle NODE Bağlantısı Kuramamak ("The connection to the server localhost:8080 was refused - did you specify the right host or port?")

Ref: https://github.com/cemtopkaya/kubernetes-notlarim/blob/main/sorun-giderme-troubleshooting.md

mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf HOME/.kube/config 
sudo chown (id -u):$(id -g) $HOME/.kube/config

containerd

containerd ile docker.hub üstündeki ubuntu:focal yansısının indirilip tek bir komut uname -a çalıştırarak silinen konteyner.

ctr image pull docker.io/library/ubuntu:focal
ctr images ls
ctr run --rm -t docker.io/library/ubuntu:bionic ccc-ubuntu uname -a

diff - farklar

iki komut çıktıları arasındaki farkları renklendirerek (--color) yan yana (-y veya --side-by-side) ile istenilen sütun sayısıyla (-W 80) gösterir.

  • Sadece farkları görüntülemek için --suppress-common-lines anahtarını kullanabiliriz.
  • Farkları renkli görebilmek için --color
  • Çıktıların kolon sayısını dilediğimiz gibi ayarlamak için -W 80
  • Çıktıları satır numaları ile görüntülemek için --unified veya -u (-y ile kullanılmaz)
diff -y --color <(git show cnrupf-1.0.0.350 -s --format='%B') <(git show cnrupf-1.0.0.350 --format='%B')

Dosyaları bulup hem dosya adını hem içeriğini yazdırır:

find . -type f -name "*.yaml" -printf '%s %p\n' | sort | cut -d' ' -f2 | xargs -I {} sh -c 'printf $1; cat $1' _ {} \;
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment