Bagaimana saya bisa menginstal s3cmd di Mac OS X Yosemite?

11

Saya menggunakan Mac OS X Yosemite dan ingin menginstal s3cmddari S3Tools . Berikut ini ringkasan dari apa yang telah saya lakukan sejauh ini:

  1. Mengunduh dan mengekstrak .tar.gz.
  2. Pindahkan direktori yang dihasilkan ke /usr/local/src
  3. cd /usr/local/src/s3cmd-1.5.0
  4. sudo python setup.py install
  5. s3cmd --configure, menampilkan pesan kesalahan yang mengatakan Please install the python dateutil module
  6. Homebrew Terpasang
  7. brew install python (untuk menginstal pip)
  8. pip install python-dateutil
  9. s3cmd --configure, atau s3cmd du s3://bucket-name

Pada langkah 9 saya masih mendapatkan pesan kesalahan tentang dateutilmodul:

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 
ImportError trying to import dateutil.parser. 
Please install the python dateutil module: 
$ sudo apt-get install python-dateutil
   or 
$ sudo yum install python-dateutil
   or 
$ pip install python-dateutil
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
mpavey
sumber
Hmm bekerja dengan baik untuk saya, saya baru saja melakukan git clone github.com/s3tools/s3cmd kemudian menjalankan sudo python setup.py install dari folder itu
Optichip

Jawaban:

22

Atau Anda dapat membuatnya tetap sederhana dan menggunakan Homebrew untuk menginstal / mengelola banyak alat AWS, termasuk s3cmd

  1. Instal Homebrew dengan menjalankan perintah ini

    ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
    
  2. Cari kode yang Anda inginkan

    $ brew search s3
    s3-backer  s3cmd      s3fs   s3sync     unfs3
    
  3. Instal s3cmd

    brew install s3cmd
    

Pemasang akan melakukan semua pekerjaan kotor termasuk mendapatkan ketergantungan dan symlink ke folder / Aplikasi Anda (tergantung pada aplikasi yang Anda instal).

  1. Ingin versi terbaru?

    brew update
    

Saya telah menggunakan ini untuk alat awscli selama berbulan-bulan dengan sukses besar. GL.

SaxDaddy
sumber
0
  1. Unduh sumber python-dateutil
  2. Ekstrak ke, misalnya, /usr/local/src/python-dateutil-2.4.0
  3. cd /usr/local/src/python-dateutil-2.4.0 (atau direktori apa pun yang Anda ekstrak)
  4. sudo python2.7 setup.py install
  5. s3cmd --configure

(Menjawab pertanyaan saya sendiri di sini. Jika seseorang dapat memberi tahu saya mengapa ini berhasil dan pendekatan sebelumnya saya tidak ingin tahu!)

mpavey
sumber
Apa versi sistem python default Anda? Menggunakan versi 2.7 dan bukan 3 mungkin adalah semua yang perlu Anda lakukan.
Optichip
Homebrew tidak menimpa versi python yang diinstal OSX (yang ditautkan dari / usr / bin /), ia menginstal salinan baru di / usr / local / bin. Jika / usr / bin adalah sebelum / usr / local / bin di $ path Anda maka Anda akan menggunakan versi python OSX, bukan yang homebrew. Anda juga harus me-restart shell Anda setelah menginstal python homebrew untuk memperbarui variabel lingkungan. Coba which pythonlihat apa yang sebenarnya Anda jalankan.
stib
Terima kasih keduanya @Optichip, versi 2.7 adalah versi default. Ketika saya menjalankan which pythonsaya mendapatkan: /Library/Frameworks/Python.framework/Versions/2.7/bin/python@stib, itu info yang sangat membantu, terima kasih. Saya kira saya masih sedikit tidak yakin mengapa saya sebelumnya bisa berjalan dengan pipsukses tetapi belum dateutilsmenginstalnya. Apakah karena satu-satunya yang pipterinstal adalah versi Homebrew, dan (pada langkah 8) diinstal dateutilske python Homebrew?
mpavey