SORU
1 ŞUBAT 2010, PAZARTESİ


Emacs ile SSH ve Sudo ile Dosya Aç

Sunucuda sudo yetkileri ile uzak bir sunucu üzerinde yer alan Emacs içinde bir dosya açmak istiyorum. Böyle Serseri üzerinden sudo ile yerel dosyaları açabilirsiniz:

C-x C-f /sudo::/home/user/file

Ama sunucuda sudo kullanmak istiyorum:

C-x C-f /sudo::user@server/home/user/file

Ama bu benim yerel makinede sudo güçler verir, yerel makinede sudo Şifremi sorar. Bir şekilde sunucuda sudo var mı acaba?

BTW: Emacs sunucuda yüklü değil

CEVAP
6 Mayıs 2013, PAZARTESİ


Olarak Emacs 24.3, bir analog eski multi: sözdizimi oldu katmanlı üstüne modern tramp-default-proxies-alist yaklaşım, anlamı o olabilir bir kez daha gerçekleştirmek çoklu atlama olmadan önce herhangi bir yapılandırma. Ayrıntılı bilgi için:

C-hbeng(tramp) Ad-hoc multi-hopsRET

Yeni bir sözdizimi ile, her 'hop' | ile ayrılır. El kitabındaki örnek:

C-xC-f/ssh:bird@bastion|ssh:you@remotehost:/pathRET

* *9, you@remotehost:/path oradan birincisi bağlayan

/su: /sudo: uzak bilgisayarlar üzerinde

Ayrıca, bu sözdizimi uzaktaki bir ana kök (veya başka bir kullanıcı)/su sudo için kullanabilirsiniz:

C-xC-f/ssh:you@remotehost|sudo:remotehost:/path/to/fileRET

Önemli: konak adını açıkça belirtmek için emin olun: sudo:: (aşağıya bakınız) yerine. sudo:remotehost:

Bu hala proxy mekanizması olarak kullanır altında, tramp-default-proxies-alist 15 ** değer içermelidir

Proxy /ssh:you@remotehost: anlam root@remotehost gibi bir dosya talep ettiğinizde kullanılan olacak.

root bu yöntemler için varsayılan kullanıcı, ancak root olmayan bir kullanıcı için tabii ki de ile değiştirebilirsiniz:

C-xC-f/ssh:you@remotehost|sudo:them@remotehost:/path/to/fileRET

Her zaman uzak ana bilgisayar adı açıkça belirtin

Muhtemelen sudo:: su:: kullanma ve hostname atlama için kullanılır. Eğer varsakalıyorumo zaman bu hala iyi, ama eğer daha sonra bir uzak sunucuya atlamalı eğer localhost üzerindegerekireğer önceki hop için aynı bile olsa her hop için ana bilgisayar adı belirtin. Her zaman, uzak bilgisayarlar ile sudo:hostname: su:hostname: kullanın.

Buradaki tuzak sudo::yokaslında iş gibi görünüyorancakdinamik proxy girişi için ANA makine adını sen olacaksın o zamankökenliyerine ana bağlı. Bu sadece bakmak kafa karıştırıcı gibi yanlış ana bilgisayar içinde görüntülenir dosya yolları), ama aynı zamanda yani bir sonraki girişimi için kullanın sudo:: üzerinde localhost yerine vekalet olmak için uzak sunucu! (ve vekil de muhtemelen ikinci bir sunucuda aynı şey, daha fazla sorunlara neden yaptıysan sorun olurdu).

Kısacası, hop seni çok :: kullanmayın!

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Machinima

    Machinima

    17 Ocak 2006
  • mipd1980

    mipd1980

    25 EKİM 2006
  • WePlayWeWatch

    WePlayWeWatc

    3 Temmuz 2013