Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Şunlar için geçerlidir: .NET Core 2.1, .NET Core 3.1, .NET 5
Bu makalede, Windows tabanlı bir bilgisayardan Linux sanal makinesine dosya kopyalama ve dosyaları ayıklama işlemleri açıklanır.
Önkoşullar
Bu bölümün herhangi bir önkoşulu yoktur.
Bu bölümün hedefi
Windows tabanlı bir bilgisayardan Linux sanal makinesine (VM) dosya kopyalamayı öğreneceksiniz. Bu, uygulamanızı Linux'a dağıttığınızda yararlı olacaktır.
Bu bölüm için herhangi bir önkoşul olmasa da ideal kurulum önceki bölümlerdeki yönergeleri izler. Aşağıdakilere sahip olmanız gerekir:
- Nginx otomatik olarak çalışıyor ve 80 numaralı bağlantı noktasında gönderilen istekleri dinleyecek şekilde yapılandırıldı
- 5000 numaralı bağlantı noktasında dinleyen Nginx, ters ara sunucu olarak yapılandırıldı ve gelen istekleri bir ASP.NET Core uygulamasına yönlendirdi
- Sunucu yeniden başlatıldıktan veya işlem durdurulduğunda veya kilitlendiğinde otomatik olarak başlatacak şekilde yapılandırılmış ASP.NET Core uygulaması.
- SSH ve HTTP trafiğine izin verecek şekilde yapılandırılmış bir Linux yerel güvenlik duvarı
Windows'tan Linux'a dosya kopyalama
Windows ve Linux arasında dosya kopyalamak için çeşitli seçenekler vardır. Bunun gibi çeşitli iyi makalelerde farklı yöntemleri bulabilirsiniz. Aşağıda bazı seçenekleri görebilirsiniz:
- Ağ klasörlerini paylaşma. SMB protokolüne ve Samba'ya bakın.
- FTP kullanarak dosya aktarma. Linux'taki en iyi bilinen FTP sunucularından biri PureFTPd'dir.
- Dosyaları SSH aracılığıyla güvenli bir şekilde kopyalayın. SSH üzerinden kopyalamak için scp komutunu kullanabilirsiniz. Ancak daha iyi bir araç pscp'dir (PuTTY ile birlikte).
- Eşitleme yazılımını kullanarak veri paylaşın. Eşitleme programı hem Windows hem de Linux'ta eşitleme noktaları oluşturmanıza ve ardından bir şifreleme anahtarı kullanarak eşitlemenize yardımcı olur.
- Linux VM'nizde vm olarak çalışıyorsa paylaşılan klasörleri kullanın. Oracle VirtualBox gibi çeşitli araçlar, sanal paylaşılan dizinler oluşturmanıza yardımcı olur.
Bu bölümde, dosyaları Windows'tan Linux'a aktarmak için pscp kullanacaksınız.
Temel pscp parametreleri
Pscp , linux'a dosya kopyalama gibi temel görevleri gerçekleştirmeyi kolaylaştırır. Bu araç PuTTY ile birlikte eklendiğinden, PuTTY ile birlikte Windows tabanlı bilgisayarınızda yüklü olmalıdır. Değilse şimdi yükleyin.
Aşağıda örnek bir komut verilmiştir:
pscp -i <private key path> <local file to upload> user@host:<Linux path to save>
Örneğin, c:\web\publish.zip dosyasını kullanıcınızın Linux'taki giriş dizinine kopyalamak için şu komutu kullanın:
pscp -i d:\secure\myprivatekey.ppk c:\web\publish.zip <UserName>@buggyamb:<Linux path to save>
Özel anahtar, PuTTY kullanarak VM'nize bağlanmaya çalıştığınızda .pem dosyasından dönüştürülen .ppk anahtarıyla aynıdır. Bunu başarıyla yaptıysanız, bu dosyaya zaten sahip olmanız gerekir. .ppk dosyanız yoksa, "PuTTY ile Bağlanma" bölümündeki yönergeleri izleyin ve .pem dosyanızı .ppk dosyasına dönüştürün.
Bir dosyayı Linux'a kopyalama ve başka bir klasöre ayıklama
Örnek proje indirme
Bu öğreticide BuggyAmb adlı bir test uygulamasını kopyalayacaksınız. Bu uygulama BuggyAmb hata ayıklama örnek uygulamasında kullanılabilir. Sonraki bölümlerde bu uygulama, sorun giderme laboratuvarlarındaki yüksek ve düşük CPU performans sorunlarının ve kilitlenme sorunlarının benzetimini yapmak için kullanıldığı için bu örnek uygulamayı kullanmanızı öneririz.
BuggyAmb basit bir ASP.NET Core 3.1 tabanlı Razor Pages uygulamasıdır. Bu uygulama, Linux üzerinde ASP.NET Core uygulamasının sorunlu senaryolarını gidermek için öğrenme kaynağı olarak kullanılmak üzere kasıtlı olarak bir buggy uygulaması olarak oluşturulmuştur.
Kaynak kod dosyalarını Linux için ASP.NET Core ikili dosyalarında bulabilirsiniz. Bu biçim Linux dünyasında yaygın olduğundan bu .tar.gz biçimdedir. Buggyamb_v1.1'i Windows için .zip biçimde de indirebilirsiniz.
buggyamb_v1.1.tar.gz dosyasını Linux VM'ye kopyalama
Windows tabanlı bilgisayarınızda bir Komut İstemi penceresi açın ve PuTTY'nin yüklü olduğu klasöre gidin. Dosyayı kopyalamak için aşağıdaki komutu çalıştırın:
pscp -i d:\secure\myprivatekey.ppk D:\Learn\Linux\buggyamb_v1.1.tar.gz <UserName>@buggyamb:/home/<UserName>
Ayrıca kendi özel anahtarınızı ve yollarınızı uygun şekilde kullanarak değiştirdikten sonra komutunu çalıştırın pscp . Aşağıdaki ekran görüntüsünde Windows ile Linux VM arasında başarılı bir dosya aktarımı gösterilmektedir.
Not
komutunu kullanarak pscp VM'nize ilk kez bağlandığınızda, konak anahtarı uyuşmazlığıyla ilgili bir uyarı iletisi görebilirsiniz.
Linux VM'nize bağlanın ve dosyanın orada olup olmadığını denetleyin. Komutunu kullanarak ls bunu yapabilirsiniz.
Linux ve Windows arasında dosya kopyalamanın başka yöntemleri de vardır. Ancak bu yöntem bu öğretici için yeterlidir.
Nginx'in arkasında çalışan ikinci bir ASP.NET Core uygulaması oluşturmak için buggyamb_v1.1.tar.gz dosyasını kullanın. Bu kez, bu uygulama göz atmak için bir konak adı kullanacak şekilde yapılandırılacak. Bu öğreticiyi oluşturan sorun giderme laboratuvarlarında aynı uygulama kullanılacaktır.
Not
buggyamb_v1.1.tar.gz dosyasını Linux makinenize kopyalarken sorunlarla karşılaşıyorsanız, şu basit wget komutu kullanarak .tar.gz dosyasını Linux VM'nizden indirebilirsiniz:
wget https://buggyambfiles.blob.core.windows.net/bin/buggyamb_v1.1.tar.gz
Dosyaları ayıklayın ve /var/ klasörüne kopyalayın
Buggyamb_v1.1.tar.gz, buggy uygulamanızı çalıştırmak için ihtiyacınız olan her şeyi içerir. İlk ASP.NET Core uygulamanız için yaptığınız gibi, aynı adımları izleyerek bu uygulamayı her zaman Nginx'in arkasında çalışacak şekilde yapılandırın.
.tar.gz dosyasını ayıklayın ve /var klasörüne kopyalayın. Bunu yapmanın iki basit yolu vardır:
- 1. Seçenek: komutunu çalıştırarak
tar -xf filename.tar.gztar.gz dosyasını geçerli dizine ayıklayın. Ardından, ayıklanan klasörü /var klasörüne kopyalayın. - Seçenek 2: tar.gz dosyasını doğrudan /var dizinine ayıklayın.
1. Seçenek: buggyamb_v1.1 klasörünü oluşturmak için komutunu çalıştırıntar -xf buggyamb_v1.1.tar.gz. Ardından komutunu kullanarak sudo cp -a buggyamb_v1.1 /var/ /var klasörüne kopyalayın.
2. Seçenek: Komutunu kullanarak uygulamayı doğrudan /var/ klasörüne ayıklayın sudo tar -xf buggyamb_v1.1.tar.gz -C /var/ .
buggyamb_v1.1 uygulama dosyalarını ayıklamak için iki seçenek arasından birini belirleyin. Kurulumu tamamlamak için bunlar ayıklanmalıdır veya /var/buggyamb_v1.1 klasörüne taşınmalıdır. Bu klasör, yeni ASP.NET Core uygulaması için çalışma dizini olarak kullanılacaktır.
Sonraki adımlar
Bölüm 2.6 - İki ASP.NET Core uygulamasını aynı anda çalıştırma
Buggy ASP.NET Core uygulamasını Nginx'in arkasında yapılandırın ve çalıştırın. Bu adımların sonunda Nginx'in arkasında çalışan iki ASP.NET Core uygulamasına sahip olacaksınız.