CentOS 8 Depoların Düzenlenmesi, Depoların Erişilebilir Hale Getirilmesi
Published: 2021-09-13 06:43:40

Merhabalar, bugün CentOS makinelerde update işlemi sırasında karşılaşılan hatadan ve çözümünden bahsedeceğiz. Hadi başlayalım :)

CentOS makinelerde, yükleme ve güncelleme için tutulan Repository'ler ``/etc/yum.repos.d`` dizini altında yer almaktadır.

![1](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/20dui46bvjmad2jqgi2y.png)

Bu repo'lar sayesinde makine update edilir ve makineye uygulamalar yüklenir. Bu depolara erişim, makine internete açıksa oldukça basittir fakat makine iç ağda ise (yani internete çıkamıyorsa) erişimde hata alınabilmektedir. Alınan hata şu şekilde olabilir: 

` [Operation too slow. Less than 1000 bytes/sec transferred the last 30 seconds] `

Depolara erişilemediği için bu hata ile karşılaşılabilir ve gerekli güncellemeler gerçekleştirilemez ya da askıda kalır. Tekrar tekrar update işlemini gerçekleştirmeye çalışmak da herhangi bir işe yaramaz.

Bu sorunun üstesinden gelmek için repo dosyalarının içerisindeki bazı satırların değiştirilmesi gerekmektedir. Çalıştığınız kurumun size sağlamış olduğu CentOS repo adresine giderek (örnek olarak: http://depofiles.turan.lab.tr/centos/8/ gibi bir adres) gerekli repo dosyalarının bulunduğundan emin olun.

![2](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/lcwtqnfcmt331m8u7lns.png)

Görüldüğü üzere adreste bulunan çoğu dizin, makinemizde bulunan repo dosyalarımızın adları ile uyuşmakta. (AppStream, BaseOS, FastTrack vb.)

Temel güncellemeler genelde **BaseOS.repo** dosyası üzerinden gerçekleştiği için sadece **BaseOS.repo** dosyasının içeriğini değiştirmek yeterlidir fakat spesifik uygulamaların kurulumu ve güncellenmesi için diğer repo dosyalarının içeriğinin de değiştirilmesi gerekmektedir.

## BaseOS.repo dosyasının düzenlenmesi

Öncelikle **nano** komutu ile BaseOS.repo dosyasını açalım.

``` 
nano /etc/yum.repos.d/CentOS-Linux-BaseOS.repo
```

Daha sonra **mirrorlist** satırını yorum satırı olarak işaretleyelim ve **baseurl** satırını yorum satırı olmaktan çıkarıp bize verilen adrese göre düzenleyelim:

![3](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/2lbppfvf5n7brggitutd.png)
 
baseurl satırında düzenleme yaparken, 
```
kurum_tarafından_size_verilen_adres/centos/8/BaseOS/$basearch/os/ 
```
 
şeklinde olduğundan emin olun.

Bu işlemi gerçekleştirdikten sonra dosyayı kaydedip çıkın ve tekrar update işlemini gerçekleştirin.

``` 
yum update
```

Bu sefer karşınıza erişim hatasının çıkmaması gerekiyor, eğer farklı uygulamalar ve güncellemeleri gerekiyorsa diğer repo dosyalarının da içeriklerini değiştirebilirsiniz.



## PowerTools.repo dosyasının düzenlenmesi

Örnek olarak benim powertools reposu içerisindeki paketlere ihtiyacım var. İlk olarak dosyayı düzenliyorum.

```
nano /etc/yum.repos.d/CentOS-Linux-PowerTools.repo
```

Dosyanın ilk hali:

![4](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/1nwwlzz0lu3184p92z3y.png)

Yapılan işlemler:

- Mirrorlist satırı yorum satırı olarak işaretlendi,
- Baseurl satırı yorum satırı olmaktan çıkarıldı,
- Baseurl satırındaki url kısmı kurumun vermiş olduğu adrese göre düzenlendi.

Dosyanın son hali:

![5](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/gws6vb3t70hb37pmny04.png)
 
Update işlemi:

```
yum update
```

![6](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/2we13fbeugcsz5ecl31s.png)

Makinem hali hazırda güncel olduğu için **Nothing to do** yazmakta böylelikle herhangi bir update işlemi gerçekleşmeyecek. Sizin makinenizde ise update işlemi başarıyla başlayacaktır.