Kategori Arşivi Linux

Ubuntu jpg pdf dönüştürme (jpg to pdf) / pdf birleştirme / pdf sayfa dönderme

Öncelikle aşağıdaki komut ile img2pdf programını yüklüyoruz.

sudo apt-get install img2pdf

Daha sonra çevirmek istediğimiz jpg dosyalarımızı bir klasöre koyuyoruz. Komut satırı o dizindeyken aşağıdaki komutu çalıştırıyoruz. Böylelikle klasördeki bütün jpg uzantılı dosyalar pdf’ye dönüştürülüyor.

ls -1 ./*jpg | xargs -L1 -I {} img2pdf {} -o {}.pdf

Bu pdf dosyaları birleştirmek isterseniz pdftk programından yararlanabilirsiniz.

sudo apt-get install pdftk

Aşağıdaki komut satırı iki pdf dosyasını bir pdf dosyasında birleştiriyor.

pdftk belge1.pdf belge2.pdf output birlesik_belge.pdf

Eğerki pdf sayfaları ters olarak kaydedilmişse bu defa aşağıdaki komuttan yararlanabilirsiniz. Bu komut ilgili pdf dosyasındaki bütün sayfaları 180 derece döndürmektedir.

pdftk birlesik_belge.pdf cat 1-endsouth output birlesik_belge_son.pdf

 

Linux / Windows – Youtube’dan mp3 indirme

LINUX İÇİN

Linux’ta bu işlem oldukça basit. Öncelikle youtube-dl adlı programı kuruyoruz.

sudo apt-get install youtube-dl

Kurulumdan sonra bir dizin oluşturup dizin içerisinde aşağıdaki şekilde programı çalıştırıyoruz. Komutun sonundaki linki indireceğiniz mp3’ün linki ile değiştirmeyi unutmayın.

youtube-dl --extract-audio --audio-quality 0 --audio-format mp3 https://www.youtube.com/watch?asdas

WINDOWS İÇİN

Windows’ta ise YoutubeByClick programını kullanabilirsiniz. Programı bağlantıdan indirip kuruyorsunuz. Kurulum aşamasından sonra programı başlatıyorsunuz. Youtube’dan müzik dinlerken o müziği indirmek mi istediniz, sadece linki kopyalıyorsunuz. Kopyalar kopyalamaz küçük bir pencere açılıyor ve mp3 olarak mı yoksa video olarak mı indirmek istediğinizi soruyor. Tıklıyorsunuz ve işlem tamam.

Ubuntu 18.04 Siyah Ekran Hatası

Daha önceleri versiyonlar arası geçişte birar tedirgin oluyordum. Yeni bir versiyon çıktıntan sonra stabil olması için uzun süreler beklediğim oldu. Ne kadar tedirgin olursam o kadar da sorunla karşılaşır olmuştum. Uzunca bir süredir bu alışkanlığımı bıraktım ve yeni bir versiyon çıkar çıkmaz ona geçiyorum. Tabi bunda çok fazla third party uygulama kullanmamamında etkisi var. Kullanan biri olsa iki kez düşünürdüm bu konuyu.

Ubuntu 18.04 çıkar çıkmaz Ubuntu 17.10’dan sudo do-release-upgrade -d diyerek yeni versiyona geçtim. Başlarda sorun da çıkmadı. Ama bir sabah iş yerime geldiğimde önce şifre yanlış dedi. Şifremi ingilizce klavyeye göre tekrar girdim bu kez şifre ekranını geçti ama siyah ekranda takıldı kaldı. Anladım ki ben yokken elektrik gidip gelmiş ve bilgisayar yeniden başlamış. O sırada ne olduysa bilgisayar siyah ekranda takılıyor. Öncelikle bilgisayarı kapatma tuşuna basarak tekrar açtım ama bir önceki senaryo tekrarlandı. Sonrasında aşağıdaki adımlarla problemi çözdüm.

  1. Siyah ekrandayken Ctrl + Alt + F3‘e basarak yeni bir terminal açtım. Bu ekranda aşağıdaki komutlarla güncellemeleri yaptım (güncelleme yapmaya gerek de kalmayabilir aslında).
    • sudo apt-get update
    • sudo apt-get upgrade
    • sudo apt-get dist-upgrade
  2.  Güncelleme bittikten sonra da sudo reboot ile bilgisayarı yeniden başlattım ve sorun çözüldü.

Linux Screen Programı ve Kullanımı

Daha önce Tmux ve Terminatör programlarından bahsetmiş, Tmux kullanımı ve komutları konusunda bilgiler vermiştim. Bu yazıda ise Screen programında bahsedeceğim. Screen bir terminal ekranından birden çok terminal ekranı kullanmaya yarar. Tmux ve Terminatör’den farkı ise ekranda sadece bir tane terminal ekranı görürsünüz. Diğer açtığınız terminaller ise arka planda çalışmaya devam eder. Biraz karmaşık gelmiş olabilir ama aslında anlaşılması ve kullanımı çok kolay bir programdır.

Screen’e ihtiyaç duyacağınız en önemli senaryo şu olabilir; ssh bağlantısı ile uzak bir bilgisayar veya sunucuya bağlandınız diyelim. Bir iş başlatacaksınız ama işlem uzun sürecek ve siz işi başlatıp uzak bilgisayarda çalışmaya devam etsin, ben de bilgisayarımı kapatıyım istiyorsunuz. Bu çok normal çünkü bazen şarjınız yetmeyebiliyor, internet paketinden çok yemek istemiyorsunuz yada bulunduğunuz yer dizüstü bilgisayarınızı kullanmaya devam etmek için uygun değil vs. vs. Screen sayesinde işi başlatıyorsunuz. İş çalışmaya devam ederken bilgisayarınızı kapatıyorsunuz. İsterseniz arada bağlanıp kontrol ediyorsunuz. Hatta iş bitince bana mail atsın bile diyebilirsiniz. Bu konu hakkında da bu yazıdan bilgi edinebilirsiniz.

Aşağıdaki komut ile programı kuruyoruz.

sudo apt-get install screen

Kurulum bu kadar. Şimdi ise kullanılmasından bahsedeyim. Diyelim ki screen’de bir python dosyası çalıştıracaksınız. Yapmanız gerek komutun önüne screen eklemek.

screen python dosya.py

Komutu çalıştırdığınızda terminal içerisinde yeni bir terminal açılacak ve dosya çalışmaya başlayacak. Diyelim bu program saatlerce süren bir program bu durumda Ctrl + a + d komutu ile bir önceki ekrana geri dönebilirsiniz. Arka planda program çalışmaya devam edecek.

Çalışan işleri ise screen -ls komutu ile görebilirsiniz. Aşağıdaki gibi bir görüntüyle karşılaşırsınız.

Bu işe geri dönmek için işin ID numarasını kullanacağız.

screen -r 31935

Bu komutla işin çalıştığı terminale geçmiş olduk. Screen -ls ile çalışan işlere baktığımızda şu an için bir iş görmekteyiz. Bu sebepten dolayı ID numarasını kullanmadan direkt olarak screen -r komutunu da kullanabilirdik.

Screen’i aynı andan birden fazla iş için kullanabiliriz.

Peki Screen’de çalışan bir işi öldürmek istiyorsak ne yapacağız. Bu durumda aşağıdaki komut satırını kullanacağız.

screen -X -S 31935 kill

Normalde Screen’de bir iş çalıştırıldığında yeni Screen terminali attach edilmiş olarak açılır ve siz Ctrl + a + d ile bu işi detach edersiniz. Direkt olarak detach edilmiş bir iş başlatmak için ise aşağıdaki komut satırını kullanabiliriz.

 screen -dm bash -c "python dosya.py

Terminalde attach edilmiş olarak kalmış bir işi komut satırından detach etmek için aşağıdaki komut dizinini kullabilirsiniz. Ssh bağlantısı kullanırken böyle bir durumla karşı karşıya kalmış olabilirsiniz.

screen -d 31935

Screen ile çalıştırılmış bütün işleri öldürmek için aşağıdaki komutu kullabilirsiniz.

killall screen

Buraya kadar kullandığım kodlar Screen’in temel kullanımı için yeterlidir. Kullanım ihtiyacı duyduğum kodları buraya eklemeye devam edeceğim.

 

Linux shell üzerinden gmail kullanarak mail gönderme

Linux üzerinden komutlarla e-mail göndermek için sSMTP programı kullanılabilir. Peki bu ne işe yarayacak? Ben bu işlemi uzun sürecek işlemlerim tamamlandığında kendime e-mail atmak için kullanacağım. Başka bir kullanım amacı da mesela sunucu da sürekli çalışması gereken bir programın yada sunucunun kendisinin çalışması durduğunda haberdar olmak olabilir.

Öncelikle sSMTP programını kuruyoruz.

sudo apt-get install ssmtp

Sonrasında /etc/ssmtp/ssmtp.conf dosyasını sudo ile açıp aşağıdaki şekilde düzenliyoruz. İlk satırda ilgili yere gmail adresinizi, ikinci satıra da şifrenizi yazıyorsunuz. Gerisi olduğu gibi kalıyor.

AuthUser=........@gmail.com
AuthPass=........
FromLineOverride=YES
mailhub=smtp.gmail.com:587
UseSTARTTLS=YES

Daha sonra aşağıdaki gibi bir text dosyası oluşturuyoruz. Bu dosya bizim göndereceğimiz mail ile ilgili bilgileri içeriyor. Dosyanın ismi mail.txt olsun.

To: myemailaddress@gmail.com
Subject: konu

E-mail içeriği burada olacak.

Bu text dosyasındaki bilgileri kullanarak e-mail göndermek için aşağıdaki komutu kullanıyoruz.

ssmtp gonderilecekadres@blablamail.com < mail.txt

Ben text dosyası kullanmak istemiyorum direkt olarak bir satırla işimi halletmek istiyorum derseniz aşağıdaki komutu da kullanabilirsiniz. Yalnız bu durumda konu kısmı boş kalıyor ve konu yok şeklinde kalıyor.

echo -e "mail içeriği burada olacak" | mail nuhazginoglu@gmail.com

Tmux terminal programı – Linux

Tmux programından ve bazı komutlarından bahsetmek istiyorum. Tmux programı bir terminal ekranından birden fazla terminali kullanmaya yarayan bir terminal programıdır. Böylelikle özellikle birden fazla terminalden çalışmak zorunda kalanlar o terminalden o terminale geçmeyecek, tüm terminal ekranları bir terminal içerisinde önlerinde olacaktır. Böylelikle karmaşıklık ve zaman kaybının da önüne geçilebilecektir. Tmux’tan önce ben mouse ile direkt bölebildiğim Terminator programını kullanıyordum. Kullanış olarak Tmux’tan daha basit ama birçok kez çalışırken hata verip kapandığı oldu. Çalışmanın tam ortasında bunun başınıza gelmesi çok can sıkıcı bir durum. Ben de araştırırken bu programı buldum.  Aslında screen programı gibi bir seçenek de var ama o bu programlardan biraz daha farklı ve kullanım amacı da değişebiliyor. (Fırsat bulursam bu screen programı ile alakalı da bir yazı yazmayı düşünüyorum   Screen programı ile ilgili yazdığım yazıya buradan ulaşabilirsiniz.) Tmux kullanmak öncelikle biraz zahmetli ve zor gelebilir çünkü Tmux’ı kullanırken karakter kombinasyonları kullanmak zorundasınız. Ama alıştıkça seveceğinizden eminim. Tmux’ı kurmak için aşağıdaki komutu kullanabilirsiniz.

apt-get install tmux

Kurulum tamamlandıktan sonra direkt olarak aşağıdaki komut ile programı çalıştırıp kullanmaya başlayabilirsiniz. Programı başladığında terminalin alt kısmında yeşil bir bar belirecektir.

tmux

Programı çalıştırdık peki şimdi ekranı nasıl böleceğiz. Ekranı dikey olarak ikiye bölmek için aşağıdaki kombinasyonu yapmanız gerekmektedir.

Ctrl + b + %

Ekranı yatay olarak ikiye bölmek için aşağıdaki kombinasyonu kullanabilirsiniz.

Ctrl + b + "

Aşağıdaki resimdeki terminal önce dikey olarak bölünmüş sonrasında ise ikinci pencere yatay olarak bölünmüş, böylelikle üç adet terminal açılmıştır.

Peki bu pencerelerden bir diğerine nasıl geçilecek. Bunu da aşağıdaki kombinasyonla yapıyoruz. (Ctrl + b) + o yaptığınızda diğer pencereye geçersiniz. (Ctrl + b + o) yaptığınızda ise pencereler saat yönünün tersine yer değiştirirler. Böylece çalıştığınız ekran başka bir ekranla yer değiştirmiş olur.

Ctrl + b + o

Çalıştığınız pencerelerden birini kapatmak için aşağıdaki komutu kullanabilirsiniz.

exit

Uzak bir sunucuya ssh bağlantısı yapmış iseniz bazı zamanlar pencerenin donduğuna rastlamışsınızdır. Hiç bir işlem yapamazsınız. Bir müddet sonra bağlantı kopacaktır ama o an için donmuştur. Yapılacak şey o pencereyi kapatıp yeni bir pencerede bağlantıyı sağlamaktır. Ama tmux programı açıkken mevcut pencereyi arayüzden kapatmak gibi bir durum sizi sıkıntıya sokabilir çünkü diğer pencerelerde kapanacaktır. O yüzden kapatmak istediğiniz pencereye gelip bu işlemi komutla yapmak durumundasınız. Aşağıdaki komut ile bu işlemi gerçekleştirebilirsiniz. Komutu çalıştırdıktan sonra emin olup olmadığınız soracaktır y (yes) tuşuna basarak işlemi tamamlarsınız.

Ctrl + b + x

Yatay olarak böldüğünüz ekranları dikey yada dikey olarak böldüğünüz ekranları yatay olarak çevirmek istiyorsanız aşağıdaki komut ile bu işlemi gerçekletirebilirsiniz.

Ctrl + b + space

 

İlk etapta bu kadar komut Tmux’ı kullanmak için gayet yeterli. Ama Tmux’ın daha birçok komutu olduğunu da unutmayın. Tmux kullanırken kullanmak durumunda kaldığım başka komut kombinasyonları olursa bu kodları da bu yazı içerisinde paylaşmaya devam edeceğim.

Ubuntu/Debian apt-get Failed to fetch 404 Not Found Package Repository Hatası

Eski bir Xubuntu sürümüne ait olan işletim sisteminde paket güncellemesi yapmaya çalıştığımda Err: http: … 404 Not Found W: Failed to fetch hatası ile karşılaştım. Sanırım uzun süredir güncelleme yapmadığımdan dolayı repository eski kalmış bunu düzeltmek için yaptığım araştırmalarda sorunu şu şekilde hallettim. Aşağıdaki komutu terminalde çalıştırdım. Böylelikle paket kaynak listem eski ubuntu paketlerini destekleyecek şekilde güncellenmiş oldu.

sudo sed -i -e 's/archive.ubuntu.com\|security.ubuntu.com/old-releases.ubuntu.com/g' /etc/apt/sources.list
Sonrasında apt-get update ile listeyi güncelledim. Daha sonra upgrade ve dist-upgrade işlemlerini gerçekleştirdikten sonra do-release-upgrade komutu ile işletim sisteminin versiyonunu güncelledim.

Linux: sed komutu belli bir yere satır ekleme, değiştirme

Bir dosya içerisinde bir satırın altına başka bir satır eklemek istiyorsanız sed komutunu kullanabilirsiniz. sed komutu bir dosyanın içeriğinin değiştirilmesinde kullanılır. Örnek olarak içeriği aşağıdaki gibi olan deneme.txt adında bir dosyamız olsun.

1
2
4
6

Aşağıdaki komut sayesinde 2’nin altına 3 ekleyeceğiz.

sed -i '/2/a 3' deneme.txt

Böylelikle dosya içeriği aşağıda şekle dönüşmüş oldu.

1
2
3
4
6

Peki eklemek yerine değiştirmek istiyorsak ne yapacağız. Bu durumda da aşağıdaki komutu kullanabiliriz.

sed -i 's/6/5/' deneme.txt

veya

sed -i s/6/5/ deneme.txt

Böylelikle dosyadaki 6, 5 ile yer değiştirecek ve dosya içeriği aşağıdaki gibi olacaktır.

1
2
3
4
5

Dosya içeriği değiştirilmesini sağlayan awk ve grep gibi komutlarında olduğunu söylemeliyim. Ayrıca sed komutuyla daha farklı şeyler de yapılabilmekte elbette. Fazlası için sed komutunun help‘inden yardım alabilirsiniz.

escort bursa escort ankara escort adana escort sakarya ankara escort ankara escort ankara escort bayan escort ankara escort ankara ankara escort ankara escort ankara escort bayan escort ankara escort ankara izmir escort- bornova escort- kocaeli escort-