Rehber Linux üzerinde Windows uygulama entegrasyonu ekleme

Bu rehberden sonra hangi özelliklere sahip olacaksınız:


Bu rehberdeki amacımız Wine ile açılmayan uygulamaları (Adobe, Office 2019) kuracağımız sanal makineden her defasında sanal makineyi açmadan, uygulama yöneticisi ve terminal ile nasıl açıp, sanki Linux uygulaması kullanıyor gibi kullanmak.

Nasıl çalışıyor:​

  1. Arka planda bir Windows VM konteyneri çalıştırıyor.
  2. Office, Adobe gibi yüklü uygulamaların RDP sunucusunda kontrol ediyor.
  3. Eğer yüklüyse hem uygulama tepsisine hem de terminal için RDP kısayolları oluşturuyor.
  4. Linux dosya sistemini Windows 10 üzerinden erişebilme imkânı tanıyor.
  5. Linux host üzerinde MIME girdilerini gerekli uzantılara göre düzenliyor, böylece kolay bir şekilde dosyalarınızı açabiliyorsunuz.

Sistem gereksinimleri:​

  • Intel VT-x/VT-d* veya AMD-V/AMD-Vi*
  • 16 GB RAM öneririm, sanal makineye en az 4 GB RAM vereceğiz.
  • 6+ çekirdekli işlemci. En az 3 çekirdek vereceğiz.
  • SDD öneririm.
  • IOMMU destekli anakart*
*Not: Eğer GPU passthrough yapmayacaksanız, bu özelliklere gerek yok. Ben bu rehberde kısa olması adına yapmayacağım, GPU passthrough rehberini başka bir makalede ekleyeceğim.

Gerekli dosyalar:​

  1. Windows 10/11 ISO dosyası. Buradan indirebilirsiniz.
  2. Virtio driverları. İndirme linki.
  3. Aşağıdakı paketler:
Kod:
virt-manager
virt-viewer
qemu
edk2-ovmf
vde2
ebtables
dnsmasq
bridge-utils
openbsd-netcat
libguestfs
freerdp2
bc

Windows misafir kurulumu:​

Libvirt kurulumu​

Eğer daha önce QEMU ile sanal makine kurduysanız, bu başlığı geçebilrisiniz.
  • libvirt servisini etkinleştirme:
Bash:
systemctl enable libvirtd.service
systemctl start libvirtd.service
  • Varsayılan kullanıcıya KVM kullanma yetkisi verelim:
Bash:
sudo nano /etc/libvirt/libvirtd.conf
Dosyaya aşağıdakı satırları ekliyoruz.
Kod:
unix_sock_group = "libvirt"
unix_sock_ro_perms = "0777"
unix_sock_rw_perms = "0770"
  • Varsayılan kullanıcıyı kvm ve libvirt kullanıcı grubuna ekleme.
Bash:
sudo usermod -a -G kvm $(whoami)
sudo usermod -a -G libvirt $(whoami)
Hesaba yeniden giriş yaptığınızda işlemlerin bitmesi gerekir.
Adımların doğruluğunu Virt-Manager ile QEMU bağlantı türünden anlayabilirsiniz.

Windows 10 sanal makineyi hazırlama:​

  • Yeni sanal makine yaratıyoruz.

  • İndirdiğimiz ISO dosyasını ekliyoruz.


Aşağıda otomatik olarak “win10” veya “win11” belirmesi gerekiyor. LTSC gibi bir ISO kullanıyorsanız, bazen algılamayabiliyor. Bunun için “Automatically detect from the installation media/source” tikini kaldırmanız ve arama kutusundan gerekli OS’i seçmelisiniz.

Doğru yaptıysanız, aşağıdakı gibi görünecek:

  • CPU ve RAM miktarını ayarlama.
En az 3 çekirdek ve 4 GB RAM önerilir. Kuracağınız uygulamaya göre bunlar değişebilir.

  • Disk boyutunu seçme.
En az 40 GB disk alanı önerilir. Kuracağınız programlara göre bu daha da fazla olabilir.



Makine ismini win10 yerine RDPWindows yapıyoruz. Böylece Winapps kurduğumuz sanal makineyi algılayacak.

Son olarak Virt-Manager üzerinde Edit -> Preferences -> Enable XML Editing seçeneğini açıyoruz. Böylece direkt Virt-manager üzerinde ince ayarlarımızı yapabileceğiz.




Sanal makine donanım ayarları​

XML:
<clock offset='localtime'>
<timer name='hpet' present='yes'/>
<timer name='hypervclock' present='yes'/>
</clock>
Yukarıdakı XML kodunu CPU bölmesinde <clock> girdisi ile değiştiriyoruz.


"Boot Options" bölmesinde Start virtual machine on startup tikini aktif ediyoruz.



Disk bölmesinde disk tipi SATA yerine VirtIO olarak değiştiriyoruz.


NAT ayarlarında bağdaştırıcını e1000 yerine virtio yapıyoruz.

Daha sonra "Add Hardware" kısmında indirdiğimiz Virtio sürücü diskini de ekliyoruz.


Windows 10 kurulumu​

Aslında aşağı yukarı aynı kurulum. Nasıl yapıldığını muhtemelen biliyorsunuzdur.

Disk seçme ekranında disklerinizin belirmemesi normal, bunun için indirdiğimiz VirtIO dosyasında kendi işletim sistemimize göre seçtikten sonra disk gözükecektir.


Ek olarak kullanıcı oluşturma kısmında mutlaka kullanıcı parolası da ekleyin!
Her şey tamamlandıktan sonra Dosya Gezgini üzerinden eklediğimiz VirtIO diskini açıyoruz. İçerisinde bulunan setup dosyasını kuruyoruz.

Böylece çözünürlüğü 1920x1080 piksel yapabiliriz sorunsuzca. Ayrıca sürücü kurulumu sonrası takılmalar da azalacaktır.


Windows üzerinde RDP’yi etkinleştirme.​

Windows üzerinden son bir işimiz daha kaldı.


  • Sistem ayarlarından RDP’yi açıyoruz.

Bu ayarları da tamamladıktan sonra sistemi yeninden başlatabilirsiniz.

Winapps Linux host üzerinde kurulumu​

  • Projenin klonlayın.
Bash:
git clone https://github.com/winapps-org/winapps.git
cd winapps
  • Winapps configi oluşturun.
~/.config/winapps/winapps.conf dosyasını oluşturun ve aşağıdakıları oraya yapıştırın.
Kod:
RDP_USER="MyWindowsUser" # Kendi Windows kullanıcı adınız ile değiştirin
RDP_PASS="MyWindowsPassword" # Windows kullanıcı parolanız ile değiştirin
#RDP_DOMAIN="MYDOMAIN"
#RDP_IP="192.168.123.111"
#RDP_SCALE=100
#RDP_FLAGS=""
#MULTIMON="true" # Çoklu monitör kullanıyorsanız bunun yorum satırını kaldırın
#DEBUG="true"
  • RDP bağlantısını kontrol edelim.
Bash:
bin/winapps check
Sertifika onaylama metni geliyorsa, bağlantı tamam, “Y” dedikten sonra Ctrl+C ile işlemi durdurabilirsiniz.

Son olarak ./installer.sh ile yazılımı bilgisayara kurun.


Ve boyle Windows desteği olan tüm uygulamaları buradan açabilirsiniz.

Örnek:

Bilinen sorunlar:​

  • KDE ile menü girdileri açılmayabilir. Bende açılmadı, sadece terminal üzerinden kullanabiliyorum. GNOME ve Mutter kullanan diğer masaüstü ortamlarında sorun yaşanmıyor.
  • Çok fazla RAM tüketiyor. Düşük sistemler için önermem, ne de olsa canlı bir işletim sistemi çalıştırıyosunuz.
  • Tam ekranda sapıtıyor. Bende flickering sorunu oluştu tam ekran modunda. Mecbur pencere modunda kullanmanız lazım.
  • Windows ikonları gelmiyor uygulamaların. Geliştirici sadece Adobe ve Office için ikonları eklemiş, siz isterseniz başka ikonları da oraya ekleyebilirsiniz.
  • Ses varsayılan olarak yok. RDP üzerinden bir tane flag eklenmesi gerekiyor ve bana kalırsa hiç gerek duymuyorum bu özelliğe. Bu yüzden eklemedim.
Proje linki: GitHub - winapps-org/winapps: The winapps main project, forked from https://github.com/Fmstrat/winapps/
GitHub uzerinden projeyi yildizlamayi da unutmayin, boyle guzel projeyi one cikartmak lazim.
 
Artık açılmayan her programın çözümü budur. Daha da süper hale getirecekler, eminim.
 
İfadeler: 001
Çok güzel bir rehber olmuş elinize sağlık.

Bir de ben sisteme Wine kurarak "bu cihaz artık Winux" kafasında takılıyordum. Bu çok daha çılgın bir şey, bildiğin Windows+Linux çalışıyor.
 
Son düzenleme:
Çok güzel bir rehber olmuş elinize sağlık.

Bir de ben siteme Wine kurarak "bu cihaz artık Winux" kafasında takılıyordum. Bu çok daha çılgın bir şey, bildiğin Windows+Linux çalışıyor.
Adamlar neler yapıyor. Bir gece aklımızı alırlar vallahi .
 
Çok ama çok faydalı bir rehber olmuş, teşekkürler!
 
İfadeler: 001
Gerçekten süper bir rehber ancak merak ettiğim bir konu var, program üzerinde işlem yaptık ve belgeyi kaydedeceğiz, bu belgeyi sanal makine'nin diskine mi yoksa, ana sistemimizdeki diske mi kaydediyor? Yarın deniyeceğim PIC C Compiler diye bir uygulama var Wine ile düzgün çalıştıramadım bununla deniyeceğim.
 
Iki turlu de kaydetmek mümkün. Kaydetme sirasinda bilgisayar degil de ag olarak secmen lazim.
 
Bu siteyi kullanmak için çerezler gereklidir. Siteyi kullanmaya devam etmek için çerezleri kabul etmelisiniz. Daha Fazlasını Öğren.…