---
# System prepended metadata

title: LINUX NOTLARI

---

# LINUX NOTLARI

## Sınav Soruları:
lvm-disk-thinprovision-chunk-strip size/
passwordrecovery/
repo-subscription_manager/
podman
kullanıcı oluşturma ve gruba alma/ nologin
logger komutunu her dakika calistiracak crontab’e yazın
setfacl/getacl
gid/id change
web sayfasını 82 portundan çalışmama sebebi
configure web service

## Komutlar:

### Kernel ve Version bilgisi
```uname -r``` -->Kernel version görüntüler
```uname -a``` -->Linux version ve Kernel bilgisi görüntüler
```cat /etc/redhat-release``` -->Linux version bilgisi görüntüler

### User oluşturma:
```
useradd -d /home/U05544 -m -s  /bin/bash -u 1003  -c "U05544" U05544
useradd -d /home/A05403 -m -s  /bin/bash -u 1002  -c "A05403" A05403
useradd -d /home/U05395 -m -s  /bin/bash -u 1001  -c "U05395" U05395
useradd -d /home/U05544 -m -s  /bin/bash -G wheel -c "U05544" U05544
useradd -d /home/U05544 -m -s  /bin/bash -G wheel -c "U05544" U05544
```
### Grafik interface olup olmadığına bakma:

```systemctl get-default```
```runlevel``` 

### User Admin Yapma
```usermod -a -G wheel u05395```

### Redhat Subscription:

```
subscription-manager register --username eurobanktekfen --auto-attach
subscription-manager attach --pool=POOLID
subscription-manager repos
```


### Satallite Un-Register:

```
subscription-manager clean 
rpm -qa | grep -i katello-ca
rpm -e <Katelo-ca-Package-from-above-command-with-satellite-fqdn>

### Dosya sayısını görüntüleme:
ls | wc -l
```



Telnet yerine nc:
```nc -v -n IP Port```


### Ubuntu hostname resulation:
```
vi /etc/resolve.conf'a
search ebt.bank ekle
service systemd-resolved restart
```

### Ubuntu network manager restart
```systemctl restart systemd-networkd```

### .net Core kurulum:
```dnf install -y aspnetcore-runtime-3.1```

### Açık (Listening) Portlar:
```
netstat -tanp | grep LISTEN
netstat -tupln 
nmap -sT -O localhost
netstat -anu -->UDP
netstat -ant-->TCP
netstat -antup -->TCP+UDP+Process ID
```

### NTP Komutları
```
systemctl status chronyd
chronyc sources
chronyc clients
config /etc/chronyd
```

### linux sunucularda zaman sync için;
```timedatectl```

#NTP Servers for Sync:
```
server 0.tr.pool.ntp.org iburst
server 1.tr.pool.ntp.org iburst
server 2.tr.pool.ntp.org iburst
server 3.tr.pool.ntp.org iburst
```

### RPM Komutları:
```
rpm paketi sorgulama:
rpm -qa | grep -i webmin
```

### Subscription Manager Repo list:
```subscription-manager repos --list```

### Yum repo listeleme:
```
yum repolist
yum repolist -v
yum list installed | grep nfs 
yum clean all
```

### Python Kontrol
```yum list installed | grep platform-python```

### Repo lokasyon:
```/etc/yum.repos.d/```

### Repo temizleme:
```
yum clean all
rm -rf /etc/yum.repos.d/* 
```
### Python libselinux kontrol:
```
rpm -q python3-libselinux
rpm -qa | grep python3-libselinux
```

### Python Version Configuration:
```
alternatives  --config python

Python 3.6 için:
alternatives --set python /usr/bin/python3 
Python 3.8 için:
alternatives --set python /usr/bin/python3.8
Python 2 için:
alternatives --set python /usr/bin/python2

### Executable Search:
which <komut adı>
locate-->DB üzerinden verir

### SeLinux:
getenforce --> Enforcing: Selinux Enable
sudo sed -i 's/^SELINUX=.*/SELINUX=disabled/g' /etc/selinux/config
cat /etc/selinux/config | grep SELINUX= | grep -v ^#
```
### Root'u Ssh'a kapatma:
```sed -i '/^PermitRootLogin/s/yes/no/' /etc/ssh/sshd_config```

### LdapSearch:
```
ldapsearch -H ldaps://xxx.bank:636 -x -D "CN=xxxxx,OU=,DC=xxxx,DC=xxx" -w xxxxxxx -b "xxxxx,DC=ebt,DC=xxxxx" -s sub -a always "(objectClass=User)" c
```

### Linux Version information:
```
cat /etc/os-release
hostnamectl
lsb_release -a
```

### Linux yorum olmayan satır görüntüleme:
```grep -v '^#' /etc/dnsmasq.conf```

### Selinux disable:
```sudo sed -i 's/^SELINUX=.*/SELINUX=disabled/g' /etc/selinux/config```


### grep ile filtreleme:
```
IP adresini grep ile alma:
ifconfig ens192 | grep inet | grep -v inet6 | tr -s " " ":" | cut -f 3 -d ":"
```

### grep ile bulunduğu klasörde arama yapma: 
grep "TASK" * -->bulunduğu klasördeki dosyalara bakar
grep "TASK" * -R -->alt klasörlerde arama yapar
grep -i  "TASK" * -->non-keysensitive olarak arar
grep -i "^TASK" * -->Bulunduğu klasördeki dosyalarda TASK ile başlayanlara bakar
grep -i "TASK$" -->task ile bitenlere bakar

### ps komutları:
```
ps aux
ps aux | less
pstree 
pstree | less
ps aux | sort -nk 4 -->number key 4. sütun memory'e göre dize
ps aux | sort -nk 4  | tail -3 -->
```

### Servis ağacı görüntüleme:
```pstree | less```

### Service location:
```/usr/lib/systemd/system```

### Tüm servisleri görüntüleme:
```
cat /etc/services | grep ntp
systemctl list-unit-files | less
systemctl list-unit-files --type service | --type service
systemctl -a | grep service name
```

### Journalctl:
```
journalctl -r -->Reverse son logları başa yazar
journalctl --since yesterday
journalctl -n 100 --> Son 100 kaydı gösterir
journalctl -f  --> Canlı görüntüler
journalctl -b  -->Boot session'u görüntüler
journalctl -b -p err -->Boot sonrasında hataları görüntüler
journalctl -b -n 5 -->Son 5 tane boot session kaydını görüntüler
journalctl sonrasonda /error yazıp search edilebilir
journalctl -xb -r -->Boot hatalarını sondan başa doğru gösterir
```

### Errorlog:
```grep "error" /var/log/messages```

### Sisteme login olan kullanıcılar:
```
lastlog | grep -v -i never
lastlog -t 5 -->Son beş günde bağlanan kullanıcılar
```

### dmesg (Kernel ve donanım logları)
```
dmesg
dmesg --level=err
dmesg | grep -i eth0
dmesg | grep -i disk --> Disk logları
```

### PCI Ethernet kartı kontrolü (kernel discovered)
lspci --> 0b:00.0 Ethernet controller: VMware VMXNET3 Ethernet Controller (rev 01)
lsmod vmxnet3

### Ethernet kartı driver version bilgisi
modinfo vmxnet3

### Default Gateway görüntüleme
route -n

### lsof Açık (locked) dosyaları görüntüleme
yum install lsof
lsof
lsof -u a04856
lsof -u a04856 | grep -v mem

### fuser ile açık PID görüntüleme
yum install psmisc
fuser -v -n tcp 22


### Top komutları:
top -->Running process
d-->Delay girilebilir
f-->Aktif sütunlar eklenebilir

### Crontab Konutları:
crontab -e -->Editler
crontab -l  -->Listeler

### Last Activity:
$?

### Ntp Commands:
ntpq -pn


### SSH Key Konutları:
ssh-keygen -t rsa
ssh-copy-id username@hostname
Client tarafında;
ssh-add

### Interface Link Görüntüleme:
ip link show

### tar komutları:
tar -cvzf
tar -xvzf

### Template için silinecekler:
rm -rf /etc/ssh/ssh_host_*
 vi /etc/machine-id içi silinecek
etc/resolv.conf search satırı silinir
mmcli -p -c 
nmcli connection delete ens192
disklerin fstab'da uuid bilgisi silinir
rm -Rf /var/log/*.log


### Vi komutları:
shift + g -->Ekranın sonuna geçer
o --> Bir sonraki satıra geçer
dd --> Satırı keser
yy --> Satırı kopyalar
/Arama yapar

### nmcli interface komutları:
interface bilgilerini alma:
mmcli -p -c
nmcli connection delete ens192
nmcli connection delete ID

### Run Level
runlevel -->Runlevel görüntüler
init --> Runlevel değiştirir
systemctl get-default
systemctl list-units -t target
systemctl set-default multi-user.target
Runlevel 0: Shutdown
Runlevel 1: Single User Mode
Runlevel 3: Multiple User Mode with Network 
Runlevel 5: Graphical Interface
Runlevel 6: Reboot



## File System 

### XFS Repair:
xfs_repair -L /dev/sdb -->unmount gerekmez
xfs_repair -n /dev/sdb
xfs_repair -v /dev/sdb -->Verbose

### File System Check
fsck /dev/sdb 
fsck -y /dev/sdb -->Hataları düzeltir


### Mount Error Boot error görüntüleme
cat /var/log/messages | grep mount
cat /var/log/messages | grep fail

### journalctl ile Error Boot görüntüleme
1.Step: journalctl -xb -r
2.Step: /fail

### Rescue Mode
Step 1 DVD Boot
Step 2 Trobleshooting
Step 3 Rescue a Red Hat Enterprise Linux System
Step 4 chroot /mnt/sysimage

### Fix Partition Rescue Mode
fsck /dev/sda3

### Fix Boot Partition Rescue Mode
fsck /dev/sda1
fsck /dev/sda2

### Fix Boot Partition Rescue Mode with xfs_repair
umount /dev/sda1
xfs_repair /dev/sda1

### File System Check 
1. Step -->unmount
2. Step --> e2fsck -f /dev/sdb1

### Disk Kernel Logs 
dmesg | grep -i eth0
dmesg | grep -i disk --> Disk logları

### lsblk
Diskleri görüntüler

### Scsi rescan (Disk eklendikten sonra):
scsi-rescan

### Klasör bazlı disk size görüntüleme:
du -sh klasörname

Dosya boyutu görüntüleme:
du -sh *
du -sh Klasör adı

Disk Size görüntüleme:
df -hT

### LVM Yeni Disk Ekleme:
scsi-rescan
lsblk
pvcreate /dev/sdb
vgcreate vgdata01 /dev/sdb
lvcreate -l 100%FREE -n lvdata01 vgdata01
mkfs.xfs /dev/vgdata01/lvdata01
mkdir /data01
mount /dev/mapper/vgdata01-lvdata01 /data01
df -hT
blkid
vi /etc/fstab

### LVM Disk Büyütme:
1. Step: Diski listele: fdisk -l
2. Step:  Diski oluştur: pvcreate /dev/sdd 
3. pvdisplay 
4. vg extend et--> vgextend vgdata01 /dev/sdd
5. lv extend et-->lvextend -l +100%FREE /dev/mapper/vgdata01-lvdata01
6. xfs_growfs /dev/mapper/vgdata01-lvdata01

### ext4 oluşturma:
mkfs -t ext4 /dev/vgdata01/lvdata01

### xfs oluşturma:
mkfs -t xfs /dev/vgdata01/lvdata01

### nfs Mount:
"mount -t nfs 10.180.141.10:/nfs /mnt"





### Shrink the file system
1. Step -->unmount
2. Step -->resize2fs /dev/sdb1 TargetsizeG

### Swap Space
4GB Ram'e kadar 2 GB SWAP yeterli
4 GB üstü 4 GB SWAP verilmeli
Template'lerde 4GB SWAP verilmeli
Swap görüntüleme-->lvs
cat /proc/meminfo | grep -i swap

### lsblk

AME                           MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda                              8:0    0   80G  0 disk     -->Disk Size   
├─sda1                           8:1    0  600M  0 part /boot/efi  -->EFI Boot
├─sda2                           8:2    0    1G  0 part /boot
└─sda3                           8:3    0 58.4G  0 part -->root swap home
  ├─rhel_svtstdengagedb01-root 253:0    0 85.2G  0 lvm  /
  ├─rhel_svtstdengagedb01-swap 253:1    0    6G  0 lvm  [SWAP]
  └─rhel_svtstdengagedb01-home 253:2    0 67.2G  0 lvm  /home
sdb                              8:16   0   50G  0 disk 
└─rhel_svtstdengagedb01-home   253:2    0 67.2G  0 lvm  /home
sdc                              8:32   0   51G  0 disk -->New Disk LVM 
└─sdc1                           8:33   0   51G  0 part 
  └─rhel_svtstdengagedb01-root 253:0    0 85.2G  0 lvm  /
sr0                             11:0    1 1024M  0 rom -->CD-Room 
    
### Profile.d altını çalıştırma
```source /etc/profile```






