MTP özellikli cihazların Ubuntu ile çalışmasını sağlamak?


69

Ubuntu 13.04'ten beri MTP üzerinden harici cihazlara depolama erişiminin bir GVFS-MTP modülü aracılığıyla kutunun dışında çalışması gerekiyor .

Bu soru Galaxy Nexus ile ilgili olsa da, diğer Android cihazları, Windows Phone ve MTP destekli medya oynatıcıları da destekleniyor .

İçin sorun giderme bakın bu anwser .


Galaxy Nexus ile MTP üzerinden çalışan dosya transferlerini almakta oldukça sıkıntı yaşıyorum. Kubuntu 11.10 64-bit kullanıyorum ve yaptığım şey ve elde ettiğim sonuç:

  1. İçindeki cihaz için kural eklendi /etc/udev/rules.d/51-android.rules. Kural aşağıdaki gibidir ve için çalışır adb:

    SUBSYSTEMS=="usb", ATTRS{idVendor}=="04e8", ATTRS{idProduct}=="6860", MODE="0666", OWNER="leob" #Galaxy Nexus
    
  2. Yeniden başlatıldı udev(ve yalnızca emin olmak için bilgisayar).

Adb çalışıyor ve MTP üzerinden cihazdan okumak için tüm yöntemler işe yarıyor (mtpfs, gmtp ile montaj ve doğrudan mtp-tools paketini kullanmaya çalıştım). Ancak aygıta yazmaya çalıştığımda, denediğim hiçbir şey çalışmıyor.

Örnek olarak, koşu mtp-newfolder test_dir 0 0aşağıdaki çıktıyı verir:

libmtp version: 1.1.0
Device 0 (VID=04e8 and PID=6860) is a Samsung GT-P7510/Galaxy Tab 10.1.
Folder creation failed.
ERROR: Could not close session!

mtp-foldersArızalı bir mtp-newfolder'dan sonra cihazı yeniden takmadan çalıştırırsam şu çıktıyı alırım:

Attempting to connect device(s)
Device 0 (VID=04e8 and PID=6860) is a Samsung GT-P7510/Galaxy Tab 10.1.
PTP_ERROR_IO: failed to open session, trying again after resetting USB interface
LIBMTP libusb: Attempt to reset device
mtp-folders: Successfully connected
Friendly name: (NULL)
Error 1: Get Storage information failed.
Error 2: PTP Layer error 02fe: get_all_metadata_fast(): could not get proplist of all    objects.
Error 2: (Look this up in ptp.h for an explanation.)
Error 2: PTP Layer error 02fe: get_handles_recursively(): could not get object handles.
Error 2: (Look this up in ptp.h for an explanation.)
LIBMTP_Get_Storage()
: Resource temporarily unavailable
OK.

Dmesg'de aşağıdakiler eşliğinde:

[ 1000.912082] usb 2-4: reset high speed USB device number 7 using ehci_hcd
[ 1001.045877] usb 2-4: usbfs: process 3166 (mtp-folders) did not claim interface 0 before use

Ne yapılması gerektiği hakkında fikri olan var mı?

DÜZENLE:

PTP modunu da denedim. Yine, okuma iyi çalışıyor, ancak aygıta hiçbir şey yazamıyorum.


Samsung olduğunu sanmıyorum .... ve Android olduğunu düşünüyorum. Petek destekli cihazım, sadece MTP kullanmanız gerektiği gibi. Tüm 2.3 sonrası Android cihazların böyle olacağını düşünüyorum.

Yanıtlar:


37

Ubuntu 13.04'ten bu yana, MTP üzerinden harici cihazlara depolama erişimi bir GVFS-MTP modülü ile kutudan çıkar.

İlgili soru: Gelecekteki Ubuntu sürümlerinde mtp desteğini geliştirme planları var mı?

Sorun giderme için bu cevaba bakınız .


libmtpBenim için sistemimdeki en son dosyaların olmaması bir problemdi . Böylece sorunu çözdüm ve bu yazıyı başkalarına yardım etmek için yaptım .

Bağlantının özeti:libmtp Pakette eski Ubuntu sürümleriyle birlikte bir hata oluştu . Bu hata zaten giderilmiştir son kaynağın ait libmtp.


1
Sorun, Ubuntu 12.04 paketlerinde düzeltilmiş görünüyor, bu yüzden eğer yapacak kadar cesursanız bunlar kullanılabilir. Onları launchpad.net/ubuntu/+source/libmtp/1.1.1-1 adresinden aldım ve sistem için paketler hazırladım (ve gmtp için de aynısını yaptım)
Tatu Lahtela

@Shannon. Teşekkürler. Bu en iyi çözümdür. Keşke önce ben bulsaydım.
MountainX

2
ritim kutusu hala donuyor ve hata veriyor (LIBMTP_Send_Representative_Sample (): nesne bilgisi alamadı). Fotoğraf makinesi başlatılırken hata oluştu: -60: Aygıt kilitlenemedi. Kaka.
Waspinator

1.1.1'i değil en son mtp'yi almak için talimatları güncellemek iyi olurdu
Kostiantyn Rybnikov

21

Eğer denediniz Bilal Akhtar en öneriyi omgubuntu ?

Android telefonunuzu veya tabletinizi MTPFS ile Ubuntu'ya bağlama

  1. Kurmak

    İlk önce gerekli araçları yükleyin. sudo apt-get install mtp-tools mtpfs

    Galaxy Nexus'unuzu bilgisayarınıza bağlayın. Telefonunuzda bildirim çekmecesini açın ve "USB Bağlantı tipi" üzerine tıklayın. MTP'nin seçildiğinden emin olun.

    Android USB bağlantı ayarlarını gösteren resim

    Ardından, şu komutları çalıştırın:

    mtp-detect | grep idVendor
    mtp-detect | grep idProduct
    

    Bunun gibi bir çıktı alacaksınız: görüntü tanımını buraya girin

    Şimdi bu komutları çalıştırın:

    gksu gedit /etc/udev/rules.d/51-android.rules
    

    Bir Gedit penceresi açılmalıdır. Bu metni, hepsini tek bir satıra yazın :

    SUBSYSTEM=="usb", ATTR{idVendor}=="VENDORID", ATTR{idProduct}=="PRODUCTID", MODE="0666"
    

    Değiştir VENDORIDile idVendordaha önce aşağı not almıştı. Benzer şekilde, yerine PRODUCTIDile idProductaşağı not almıştı. Benim durumumda, sırasıyla 04e8ve onlardı 685c, ama sizin için farklı olabilirlerdi.

    Dosyayı kaydedin ve kapatın. Ardından, telefonunuzun bağlantısını kesin ve şu komutları çalıştırın:

    sudo service udev restart
    sudo mkdir /media/GalaxyNexus
    sudo chmod a+rwx /media/GalaxyNexus
    sudo adduser $USER fuse
    

    $USERvarsayılan bir kabuk değişkenidir ve eklemek istediğiniz kullanıcı olmalıdır (genellikle kendiniz). Şimdi bu komutu çalıştırın:

    gksu gedit /etc/fuse.conf
    

    Gedit penceresinde, #son satırın başlangıcını (ile başlayan satır) şu şekilde kaldırın #user_allow_other:

    görüntü tanımını buraya girin

    Neredeyse bitti! Şimdi bilgisayarınızı yeniden başlatın ve sonra şu üç komutu çalıştırın:

    echo "alias android-connect=\"mtpfs -o allow_other /media/GalaxyNexus\"" >> ~/.bashrc
    echo "alias android-disconnect=\"fusermount -u /media/GalaxyNexus\"" >> ~/.bashrc
    source ~/.bashrc
    
  2. kullanım

    Telefonunuzu bağlayın, telefonunuzun MTP kullandığından emin olun ve çalıştırın android-connect.

    İşte bu kadar! Artık Nautilus'u kullanarak Android telefonunuzun içeriğine göz atabilirsiniz. Dosya yöneticisini başlatmanız yeterlidir, ardından yan çubukta telefonunuzun içeriğine göz atmak için tıpkı bir USB çubuğu ile yaptığınız gibi GalaxyNexus öğesine tıklayın. Ayrıca normal bir dosya sistemi gibi dosyaları da ekleyebilir, kaldırabilir ve değiştirebilirsiniz.

    telefon içeriğini gösteren nautilus ekran görüntüsü

    Telefonu güvenle kaldırmak için, sadece çalıştırın android-disconnect.

  3. Sonuç

    Şu andan itibaren, android-connecttelefonunuzu monte etmek için çalıştırmanız ve ardından telefonunuzu android-disconnectgüvenli bir şekilde çıkarmanız yeterlidir . Her şey otomatik olarak ele alınmalıdır. Kablo bağlantısında montajı ve sökme işlemini otomatik olarak gerçekleştirmenin birçok yolunu denedim, ancak bulabildiğim en iyi çözüm buydu.

    Bu iki komut çalıştırmak için kök izinleri gerektirmez . Sigorta kullanıcı grubunun üyesi olan tüm kullanıcılar bu komutları root erişimi olmadan çalıştırabilmelidir.

    Bu kadar! Ice Cream Sandwich telefonunuzu Ubuntu bilgisayarınıza başarıyla bağladınız. Süreci bir acemi için uzun olabilir, ama eminim ki birileri gelip tüm bunlar için bir GUI yapacak, böylece her şey sorunsuz bir şekilde gerçekleşecek. :)


Evet, zaten mtpfs araçlarını kullanmanın birçok yolunu denedim. Shannon’un öğrendiği gibi, libmtp’de tam olarak bir hataydı.
Leo

İşe yarıyor ama bazı sorularım var. 1. Bu udev yapılandırması ne işe yarıyor, neden onsuz çalışmıyor? 2. Hangi sihirle, hangi cihazı ne zaman monte edeceğini biliyor mu mtpfs, yoksa bir seferde yalnızca 1 bağlı cihazı destekliyor mu?
Bart van Heukelom 23:12

Ayrıca büyük bir dosyayı kopyalarken (Nautilus ile) çok hızlı (50MB / s) kopyalayacak gibi görünmektedir, ancak bu sırada hiçbir şey kopyalamamaktadır. Sadece ilerleme çubuğu% 100'e ulaştığında gerçek kopyayı başlatır (ve arayüz kilitlenir). Belki bir tür tampon seçeneği devre dışı bırakılabilir?
Bart van Heukelom

Maalesef istediğiniz cevapları bilmiyorum. Üzgünüm.
desgua

Bunları yaptım, ancak android-connect yapmaya çalışırken bu mesajı alıyorum: fusermount: /etc/fuse.conf dosyasını açamadı: İzin reddedildi fusermount: seçenek allow_other, yalnızca 'user_allow_other' /etc/fuse.conf 'da ayarlanmışsa izin verir Yine de /etc/fuse.conf dosyasını talimatlarda belirtildiği gibi düzenledim.
Dmitry Shvedov

21

GVFS ile cihazları MTP üzerinden bağlama

Ubuntu 13.04'ten beri MTP özellikli cihazlara depolama erişimi, bir GVFS arka uç aracılığıyla kutusundan çıkar . Lütfen bir göz atın Gelecekteki Ubuntu sürümlerinde mtp desteğini iyileştirme planları var mı? 13.04'ten önceki kurulum talimatları için.

Bu çözüm, MTP işlevselliği sağlayan tüm Android cihazları ve muhtemelen Windows Telefonları ve Taşınabilir Medya Oynatıcıları gibi MTP işlevselliğine sahip tüm Android olmayan cihazları kullanmalıdır .

Kafan karışmasın

Bazı karışıklıklar oldu, hadi işleri düzeltmeye çalışalım:

  • Sen yok garantinizi geçersiz kılabilir şey yapmama gerek!

    • Cihazınızı rootlamanıza gerek yok.
    • Bootloader kilidini açmanız gerekmez. (Android için talimatlar bulabilirsiniz . E )

    Kilit açma sadece bu cevaptaki işletim sistemi kilit ekranına işaret eder.

  • ADB, fastboot veya belirli udev kuralları aracılığıyla benzer bir şey gibi cihazınıza geliştirici erişimini yapılandırmanız gerekmez. (Sen bölümde Android için talimatlar bulabilirsiniz USB erişin Yapılandırılması onun e ya da onu e .)

  • Bildiğim kadarıyla FUSE'e ihtiyacınız yok veya FUSE ile ilgili seçenekleri yapılandırın.

Sorun giderme sorunları

  1. Dosyaları cihaza koyamıyorum.

    MTP üzerinden Ubuntu ile cihazın deposuna erişmek için cihazınızın kilidi açılmış olmalıdır .

    cihaz kilitli ve açık durumda nautilus'ta gösteriliyor

  2. Aygıtın monte edilemediğini belirten bir hata mesajı alıyorum.

    Aşağıdaki hata mesajını alırsanız, cihazı bir kez değiştirmeyi deneyin .

    bağlanırken ortaya çıkabilecek hata mesajı

    Hata mesajı tekrar belirirse, başlatıcıdan yeni bir nautilus penceresi açın (cihazın simgesini tıklatarak tercih edilir) ve muhtemelen mevcut nautilus penceresini kapatır. Muhtemelen ilgili: Android cihazlardan birini devre dışı bırakmak için bir udev kuralı nasıl oluşturulur?

  3. Cihazınız için udev kuralları olup olmadığını kontrol edin

    Bir terminal açın ve yazın lsusb. Çıkışta cihazınızı bulun ve kimliğinizi not edin (örn. 0fce:01b1). İlk bölüm, satıcı kimliği, ürün kimliğinin son bölümüdür.

    İlgili mtp udev kural dosyasını açın ve nano /lib/udev/rules.d/69-libmtp.rulesürün kimliğinizi araştırın ( Ctrl+ kullanın W). Bulamazsanız, /etc/udev/rules.d/69-libmtp.rulesaşağıdaki deseni izleyerek özel bir giriş oluşturmanız ve yeniden başlatmanız gerekir .

    # SONY Xperia Z2 MTP
    ATTR{idVendor}=="01b1", ATTR{idProduct}=="01b1", SYMLINK+="libmtp-%k", MODE="660", GROUP="audio", ENV{ID_MTP_DEVICE}="1", ENV{ID_MEDIA_PLAYER}="1"
    

    Sen düşünmelisiniz bir hata kaydı karşı libmtp paketinin (daha doğrusu libmtp-ortak bu sizin için çalışmış eğer, cihazınız gelecekteki sürümlerinde dahil ettik kadar).

  4. Hala bağlanamıyorum

    Cihazınız altta yatan sistem tarafından desteklenmiyor libmtpya da Lumia 620 cihazımla aynı sorunu yaşayabilirsiniz, lütfen LP # 1247572’de yayınladığım geçici çözümü (çoğaltma adımları) izleyin : Nokia Lumia 620 cihazının (WP8) güvenli bir şekilde monte edilememesi nautilus'ta gvfs-mtp . (Cihaz burada hala kusursuz çalışmıyor, ancak mtp-detectyardım kullanarak .)

    Sen aramalıyız libmtp hata izleyici cihazınız için ve yeni cihazlar için yönergeleri izleyin proje sayfasında bir hata raporu açın.

  5. Hata izleyici cihazımı desteklendiği şekilde listeliyor ancak yine de çalışmıyor

    Bazı durumlarda, cihazınızla ilgili bir hata raporu daha önce yayımlanmış bir sürümde dağıtımınızın gönderildiğinden daha önce dosyalanmış ve çözülmüş olabilir (örneğin: Motorola Moto G ). Böyle bir durumda, resmi depoların güncellenmesini beklemeniz veya güncellenmiş bir PPA aramaya gitmeniz gerekecektir.

    Resmi Ubuntu yazılım kanalları ve özel PPA'lar aracılığıyla sunulan tüm libmtp sürümlerinin güncellenmiş bir listesi burada bulunabilir ( güvenilmeyen arşivlerde 'libmtp' nin diğer sürümlerini genişlettiğinizden emin olun ). 2014/02/13 itibariyle Matthieu Baerts'in bu PPA'sı Ubuntu için mevcut olan en yeni libmtp paketini sunuyor.

    Uyarı : Bu PPA çeşitli ve muhtemelen dengesiz paketler içerir. Sisteminize eklemeyi tavsiye ederim. Bunun yerine, libmtp paketlerini ayrı ayrı indirebilir ve bunları sisteminize manuel olarak yükleyebilirsiniz.

    Daha ileri gitmeden önce lütfen PPA'ları ve risklerini öğrenin . Aşağıdaki adımlara devam etmeden önce lütfen orijinal paketlerinizi geri yüklemekle ilgili aşağıdaki paragrafı okuyun:

    1. Baş PPA paket detay sayfası ve libmtp girişini genişletmek
    2. Aşağıdaki paketleri indirin libmtp-common, libmtp-runtime, libmtp9, mtp-tools. Sisteminiz için doğru mimariyi seçtiğinizden emin olun (bu genellikle olacaktır amd64).

      İşte 2014/02/13 itibariyle paket bağlantılar: libmtp-common , libmtp-runtime , libmtp9 , mtp-tools

    3. Güncellenen paketleri dpkg ile manuel olarak kurmaya devam $HOME/Downloadsedin (indirme klasörünüzü değiştirin ve başka deb dosyaları bulunmadığından emin olun:

      cd "$HOME/Downloads"
      sudo dpkg -i *.deb
      
    4. Her şey başarıyla kurulduktan sonra, bilgisayarınızı yeniden başlatın, Android cihazınızın kilidini açın, USB ile bağlayın ve dosya yöneticinizde görünmelidir.

    Bu benim için (@Glutanimate) Motorola Moto G'imde gayet iyi çalıştı. Çünkü Ubuntu 12.04 LTS kullanıyordum gnome-gvfs. Lütfen daha fazla bilgi için üstteki 13.04'ten önceki kurulum talimatlarına bakın .

    Bir şeyler ters giderse veya cihaz hala tanınmıyorsa, değişiklikleri geri almak için orijinal paketleri el ile yüklemeniz gerekir. Kafa libmtp kaynak genel ve Ubuntu salınımını bulabilirsiniz. Söz konusu girişi genişletin ve daha önce 2. adımda yaptığınız gibi paketleri indirmeye devam edin. Kuruluma 3. adımda anlatıldığı gibi devam edin ve sisteminizi yeniden başlatın. Artık her şey normale dönmeli.


1
'
Kafanız

Android 4.1.2 ile Samsung Galaxy tabletim için çalıştı, ancak hareket halindeyken dosyaları düzenleyemiyorum. Bunun için de bir çözümünüz var mı?
Vesnog

“Bazı rehberler udev kurallarını 51-android.rules adlı bir dosyaya eklemeyi öneriyor. Bunlar MTP için değil,…” Bunu söylediğinde tüm güvenilirliğini kaybettin. Udev / rules.d / 'daki kurallar tamamen esnektir. 51-android-kuralları onlar için mükemmel bir yer. Kuralı makul bir şekilde 52-telefon kurallarına
koyabilirsiniz

@Apepex Satır daha iyi yazılmış olabilirdi, ancak şikayet etmek yerine (yazının tamamını okumayı ve anlamayı gerektirecek) veya daha iyi bir cevap vermeyi isteyebilirdiniz. Profilinize bakarken, SE sitelerinin nasıl çalışması gerektiğini bildiğinizi varsayıyorum. Dosyalarınızı nasıl (yanlış) yönettiğiniz /etctamamen size bağlıdır. Yukarıda açıklandığı gibi, ideal olarak tüm udev kurallarına ootb verilmelidir. Değilse, eksik kuralı dahil etmek için bir hata verilmelidir /lib/.../69-libmtp.rules, böylece herkes bir sonraki sürümden memnun olacaktır.
LiveWireBT

1
@Auspex Burada ne elde etmeye çalıştığınızı anlamıyorum. Tekrar ediyorum: dosyalarınızı nasıl yöneteceğiniz /etcsize kalmış. /lib/udev/rules.d/69-libmtp.rulesPaket bakımcılarının seçtiği şey budur ve bu sorunla karşılaşan kullanıcılar için bu pakete karşı bir hata bildirmeyi öneriyorum (cevabımı güncelledim). Bununla ilgili hala bir sorununuz varsa, bakıcılarla konuşun veya kendi cevabınızı gönderin. Şimdi sizinle bu konuyla ilgili bu konuşmayı dinliyorum.
LiveWireBT

5

Tüm programların libmtphala Galaxy Nexus ile ilgili problemleri var gibi görünüyor (libmtp 1.1.3'ten itibaren). gphoto2Benim için işe dayalı programlar .

Şahsen ben gphotofsaynı isimde bir paket içinde mevcut kullanıyorum .

gphotofs ~/mymountpointBağlamak için kullanın , ardından fusermount -u ~/mymountpointişiniz bittiğinde bağlantısını kesmek için kullanın .


Sadece 12.04'e yükselttikten sonra, libmtp 1.1.3'ün dediğiniz gibi doğru şekilde çalışmadığı görülüyor. Bunu biraz daha araştırmak zorunda kalacağım. Gphotofs mükemmel bir şekilde çalışıyor, bu yüzden öneri için teşekkürler!
Leo

1
Kullanmak gphotofsbeni boş bir tek dizine bırakıyor.
Nathan Osman,

4

Aşağıdakini takın ve yeniden başlatın:

sudo apt-get install gvfs-backends mtpfs jmtpfs libmtp-common mtp-tools libmtp-dev libmtp-runtime libmtp9 gmtp libdbus-cpp5 libgflags2v5 libgoogle-glog0v5 libmtp-dbg libmtp-doc libmtpserver-dev libmtpserver1 libprocess-cpp3 mtp-server

Ve evet, bu cevap aynı zamanda "Ubuntu 13.04 [ve üstü; MTP aracılığıyla harici cihazlara depolama erişiminin bir GVFS-MTP modülü aracılığıyla kutudan çıkması bekleniyor" için de geçerlidir . Çünkü kutudan çıkarılmamış olabilir. MTP cihazınız bir şekilde zaten otomatik olsa bile! (Ama size salt okunur erişim veya diğer problemler
veriyor

1
@tanius MTP'nin o kadar acı verici bir şekilde yavaş olduğunu söylemeliyim ki artık kullanmıyorum bile. esfile explorer bir ftp sunucusuna sahip ve sadece yerel ağımdaki cihaza dosya yüklemek için curl kullanıyorum.
mchid

Bu komut, sorunun kaynağına işaret eder:The following packages have unmet dependencies: gvfs-backends : Depends: gvfs (= 1.28.2-1ubuntu1~16.04.2) but 1:1.20.3-4salbabix27trusty is to be installed Depends: gvfs-daemons (= 1.28.2-1ubuntu1~16.04.2) Depends: gvfs-libs (= 1.28.2-1ubuntu1~16.04.2) but 1:1.20.3-4salbabix27trusty is to be installed Depends: gvfs-common (= 1.28.2-1ubuntu1~16.04.2) but 1:1.20.3-4salbabix27trusty is to be installed E: Unable to correct problems, you have held broken packages.
NoBugs,

1
Bu, yukarıdaki yorumdaki gibi başarısız olduğunda, "ubuntu-desktop" uygulamasını ve yukarıdakileri sudo apt-get install --reinstall ile kaldırıp yeniden kurun. ve sonra yeniden başlatın.
NoBugs,

0

İlk adım olarak jmtpfs( + + sudo apt-get install jmtpfsterminalinde ) kurar, sonra bir klasör oluşturur ve sonra cihazı monte eder , sonra nautilus'a (Dosyalar) giderim.CtrlAltTmkdir foldernamejmtpfs foldername

Cihazınız libmtpubuntu'daki sürümle uyumlu değilse . Aşağıdakilibmtp gibi yeni bir (> 1.1.12) indirip kurmanız gerekiyor : libmtp'nin en son sürümünü nasıl kurabilirim?

mtp-foldersBir terminalde veya grafik arayüzü ile de kullanan klasörleri görebilmelisiniz gmtp.

Onları çalıştırmazsanız önceki adımlar bir hata gösterebilir sudo:

libusb_open() failed!: Permission denied

/etc/udev/rules.d/51-android.rulesSudo kullanmaktan kaçınmak için cihazınızı yukarıdaki gibi dosyaya eklemelisiniz (bkz. Desgua) ve yeniden yükleme kuralları veya yeniden başlatma.


-1

Sadece küçük bir geçici çözüm, ICS tabanlı telefonunuzu iyi eski MASS STORAGE ile bağlayın http://forum.xda-developers.com/showthread.php?t=1556367

adb install UMS1.0.apk

1
Bu bazı telefonlar için iyi bir çözüm olsa da, bu yalnızca bir telefonun ayrı bir sd kartı olması durumunda çalışır. Asıl soru ile ilgili olarak bu Galaxy Nexus ile işe yaramaz.
covernail

Ayrı bir sd kartla bile, toplu depolama aygıtı olarak montajın Android'in daha yeni sürümlerinde bir seçenek olduğunu düşünmüyorum. "Her zaman bir yerlerde bir arka kapı var" olsa da, mümkün olmadığını söyleyecek kadar ileri gitmeyeceğim.
mchid

Bu 4 yıl önceydi;)
jflaflamme
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.