Documentation Index
Fetch the complete documentation index at: https://docs.apinizer.com/llms.txt
Use this file to discover all available pages before exploring further.
Diğer
Sistem saatini “date” komutuyla kontrol ederek yanlış bölgede olması durumunda düzeltmek için
sudo ln -sf /usr/share/zoneinfo/Europe/Istanbul /etc/localtime
Doğru bölgede ancak hala yanlış olması durumunda tarihi manuel ayarlamak için
date -s '2014-12-25 12:34:56'
Ubuntu no-key hatası alınması durumunda
# W: GPG error: https://download.docker.com/linux/ubuntu focal InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 7EA0A9C3F273FCD8
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 7EA0A9C3F273FCD8
Kullanıcının tanımından kaynaklı SSH sonrasında bash yerine dash ile çalışmasını düzeltmek için
chsh -s /bin/bash $(whoami)
OOM Killer tarafından öldürülen uygulamaları görmek için
dmesg -T | egrep -i 'killed process'
Disk Kontrolleri
Tüm Diskteki Mevcut Kullanım ve Limitleri Görmek İçin
Belirli Bir Adresteki Mevcut Kullanım ve Limitleri Görmek İçin
Bellek Kontrolleri
Bellek Bilgileri
Mevcut Bellek Miktarı ve Limitleri Görmek İçin
İşlemci Kontrolleri
CPU Bilgileri
Sadece İşlemci Sayısını Görmek
cat /proc/cpuinfo | grep processor | wc -l
Toplam Thread Sayısını Görmek
ps -eo nlwp | tail -n +2 | awk '{ num_threads += $1 } END { print num_threads }'
cat /proc/sys/kernel/threads-max
Java Uygulamasına Ait Toplam Thread Sayısını Görmek
ps -ef | grep java
# Java'nın id'si aşağıya yazılır, ör: 10057
ps huH p 10057 | wc -l
Dump almak
# jcmd -> JRE'nin altında iken
sudo -u apinizer ./jcmd 26032 Thread.print > ./Thread.dump
sudo -u apinizer ./jcmd 26032 GC.heap_dump ./Heap.dump
Mevcut Kullanıcı İçin İşlem Sayısını Belirlemek
Jar İşlemleri
Dosyayı Jar’dan Çıkarmak
jar -xf apinizer-gateway-2.1.2.jar
Dosyayı Jar’lamak
jar -cf apinizer-gateway-2.1.2.jar **
Dosyayı manifest Dosyası ile Birlikte Jar’lamak
/opt/apinizerManager/jre8162linux/bin/jar -cfm apinizer-gateway-2.1.2.jar ./META-INF/MANIFEST.MF **
Dosya İşlemleri
SCP ile Başka Sunucuya Klasör Aktarımı
scp -r /opt/apinizerManager/* <REMOTE_SERVER_USER>@<REMOTE_SERVER_ID>:<PATH_TO_COPY_TO>
tar.gz Dosyasını zip’e Çevirmek İçin
tar xzf jre282linux.tar.gz && zip jre282linux.zip $(tar tf jre282linux.tar.gz)
Açık Dosyaları Görmek
Dosyalarla İlgili Ayarları Görmek
cat /etc/sysctl.conf
# system-wide maximum number of files
cat /proc/sys/fs/file-max
cat /proc/sys/fs/file-nr
En Çok Açık Olan On Dosya Tanımlayıcılarını Görmek
cd /proc
for pid in [0-9]*
do
echo "PID = $pid with $(ls /proc/$pid/fd/ | wc -l) file descriptors"
done | sort -rn -k5 | head | while read -r _ _ pid _ fdcount _
do
command=$(ps -o cmd -p "$pid" -hc)
printf "pid = %5d with %4d fds: %s\n" "$pid" "$fdcount" "$command"
done
En Çok Dosya Açık Tutan İşlemler
lsof -Fnst | awk '
{ field = substr($0,1,1); sub(/^./,""); }
field == "p" { pid = $0; }
field == "t" { if ($0 == "REG") size = 0; else next; }
field == "s" { size = $0; }
field == "n" && size != 0 { print size, $0; }
' | sort -k1n -u | tail -n42 | sed 's/^[0-9]* //'
Firewall İşlemleri
sudo iptables -A PREROUTING -t nat -i ens160 -p tcp --dport 443 -j REDIRECT --to-port 9443
iptables-save > /opt/apinizerManager/iptables.conf
# Aşağıdaki startManager içine yazılır
iptables-restore < /opt/apinizerManager/iptables.conf
max_allowed_packet=500M
lower_case_table_names=1
innodb_log_file_size=2G
Wget İşlemleri
Wget ile Google Drive’dan Dosya İndirme
wget --load-cookies /tmp/cookies.txt "https://docs.google.com/uc?export=download&confirm=$(wget --quiet --save-cookies /tmp/cookies.txt --keep-session-cookies --no-check-certificate 'https://docs.google.com/uc?export=download&id=Adres_Unique_Idsi_yZ8JlXtWwdOQg_5h' -O- | sed -rn 's/.*confirm=([0-9A-Za-z_]+).*/\1\n/p')&id=Adres_Unique_Idsi_yZ8JlXtWwdOQg_5h" -O apinizer.zip && rm -rf /tmp/cookies.txt
Dosya Boyutuna Göre Sıralama
sudo lsof | grep REG | grep -v "stat: No such file or directory" | grep -v DEL | awk '{if ($NF=="(deleted)") {x=3;y=1} else {x=2;y=0}; {print $(NF-x) " " $(NF-y) } }' | sort -n -u | numfmt --field=1 --to=iec
Network İşlemleri
Belirli Bir Port’u Kullanan İşlemi ya da Servisi Görmek
netstat -ltnp | grep -w ':80'
Çalışan Portlar
Çıktı örneği:
State Recv-Q Send-Q Local Address:Port Peer Address:Port
LISTEN 0 128 0.0.0.0:22 0.0.0.0:* users:(("sshd",pid=734,fd=4))
ESTAB 0 0 173.249.11.199:22 3.83.11.233:48610 users:(("sshd",pid=44179,fd=5),("sshd",pid=44178,fd=5))
Diğer sık kullanılan parametreler:
-t: Show only TCP sockets on Linux
-u: Display only UDP sockets on Linux
-l: Show listening sockets. For example, TCP port 22 is opened by SSHD server.
-p: List process name that opened sockets
-n: Don’t resolve service names i.e. don’t use DNS
Sertifika İşlemleri
Sunucu sertifikasını Linux sunucusu üzerinden almak
openssl s_client -showcerts -connect <URL>:443 </dev/null 2>/dev/null|openssl x509 -outform PEM > mycertfile.pem
Jar dosyalı bir uygulamaya sertifika import
/opt/apinizerManager/jre8282linux/jre/bin/keytool -import -trustcacerts -keystore /opt/apinizerManager/jre8282linux/jre/lib/security/cacerts -storepass changeit -alias <CERTIFICATE_ALIAS> -import -file <CERTIFICATE_FILE>
Vi Editör İşlemleri
Vi ve vim ile ilgili tüm komutları yazmak için öncelikle escape tuşuna basılarak komut girme moduna geçilmeli ve bir çoğunda : (iki nokta üst üste) karakteri ile başlanmalı.
Düzenlemeleri kaydetmeden çıkmak için
Düzenlemeleri kaydederek çıkmak için
Tümünü Değiştir
CURL İşlemleri
Parametreler:
-k: SSL’li adreslere doğrulama olmadan gidebilmek için
-v: Log için
-m 10: Timeout için
-u <USERNAME>: Username gönderip password’ü girdirmek için
--output response.txt: Çıktıyı kaydetmek için
SOAP request atıp cevabını loglamak
curl -D - --header "Content-Type:text/xml;charset=UTF-8" --header "SOAPAction:XXX" -d '<SOAP_BODY_GOES_HERE>' https://api.adres/apigateway/relativepath >> response.txt
Basic auth’lu WSDL adresine erişmek (şifreyi soracak) ve onu kaydetmek
curl -u username "http://api.address.com?wsdl" --output response.wsdl