Ubuntu 14.04 — How to connect to Apple’s Time Capsule?
I have this http://i193.photobucket.com/albums/z287/dguyse/IMG_0108.jpg in my living room. It’s connected to my router and I connect to it (because it has greater WiFi range than my internet provider’s crap of a router) to go to internet. The Time Capsule also has 2TB drive in it, so it’s a nice storage location. There is Airport Utility that can be downloaded for Mac to connect to that storage and its settings. There is also an Airport Utility software for Windows that can do the same. For Linux (Ubuntu), there is no such software, at least not to my knowledge. There ARE ways to connect to it, but those methods work only for earlier Ubuntu distros. Is there a way for me to connect to that Time Capsule’s storage on Ubuntu 14.04? Thank you very much.
3 Answers 3
Make sure you have mount.cifs
sudo apt-get install cifs-utils
I had a hard time with this too until I hit on this
In short, I added this line to my /etc/fstab file
//10.0.1.1/Data /media/timecapsule cifs password=,uid=1000,sec=ntlm,user 0 0
10.0.1.1 is your TC IP address. uid is your user id to set the permissions and user allows you to mount it without being root. Then from a terminal you can «mount /media/timecapsule» and it will work.
A year later, thanks! It worked! I didn’t respond earlier because I’ve given up on Linux at that time. Until now!
cool — glad it helped! If you are using a graphical desktop in 15.10 you can go to File -> Connect to Server while in the file manager. This might also work in 14.04 but I can’t test that.
For Ubuntu 20.04, I don’t believe the other methods work (Ubuntu 20.04 was released long after both the question and previous answer). I’ve tested this and it seems to work:
1. Install cifs-utils
This installs the necessary utilities to mount Common Internet File System (CIFS) volumes, like the Time Capsule.
sudo apt install cifs-utils
2. Create a mount point
This is where your Time Capsule volume will be mounted and appear in your filesystem
sudo mkdir -p /media/timecapsule
3. Mount the Time Capsule
This actually mounts the Time Capsule to the mount point.
sudo mount.cifs //TIME_CAPSULE_IP/TIME_CAPSULE_NAME /media/timecapsule -o sec=ntlm,vers=1.0,uid=$USER
In this command you should set:
- TIME_CAPSULE_IP to the IP address of your Time Capsule. If you’re using it as your router this is likely to be 10.0.1.1 , otherwise you can look in your router’s settings for connected clients or use a network scanning tool like nmap to find this (e.g. nmap -sn 192.168.1.0/24 ). If you get this wrong you are likely to get a long pause, then mount error(2): No such file or directory .
- TIME_CAPSULE_NAME to the name your Time Capsule’s volume. This is likely either Data or of the form Joe Bloggs Time Capsule (using your name). You should escape spaces with backslash e.g. //Joe\ Bloggs\ Time\ Capsule/Data . This name may also be discovered in file browsers like Nautilius in ‘Other locations’. If you get this wrong you are likely to quickly get mount error(2): No such file or directory .
Older instructions will omit the important vers=1.0 parameter here (as this used to be the default). Without this you are likely to get one of these errors depending on your OS version, TC version and TC firmware version:
- Unable to access location
- Got error «kFPAuthContinue» from server
- Could not connect to Time-Capsule-Name.local: No route to host
- Failed to retrieve share list from server: No route to host
- mount error(2): No such file or directory
Similarly, without the sec=ntlm option newer versions default to the ntlmssp security mode. Without this you are likely to get the error:
If you have already mounted the volume, you are likely to get the error:
Without the uid=$USER the volume will be mounted so only the root user can modify files. Trying to edit files will likely result in permissions errors.
If you struggle to login, it’s likely your password is wrong. This will result in the mount error(13): Permission denied message. On usernames, generally Time Capsules don’t seem to verify them whatsoever and anything can be used for it. However, you can try changing the user with the user=Joe option.
4. Browse files on your mounted volume
You should now be able to browse around /media/timecapsule and see and edit your files
5. Unmount the Time Capsule and remove the directory
To close the connection and cleanup the /media folder, you can run:
sudo umount /media/timecapsule sudo rmdir /media/timecapsule
➜ ~ sudo mount.cifs //192.168.0.16/epidisc /media/epinux/TC -o sec=ntlm,vers=1.0,uid=$USER Password for root@//192.168.0.16/epidisc: mount error(22): Invalid argument Refer to the mount.cifs(8) manual page (e.g. man mount.cifs) and kernel log messages (dmesg)
Nov 9 10:32:50 epinux kernel: [127450.319206] bad security option: ntlm Nov 9 10:32:50 epinux kernel: [127450.319206] Nov 9 10:32:50 epinux kernel: [127450.319213] CIFS: VFS: bad security option: ntlm
I don’t have enough reputation to reply to user1013346’s comment, but I wanted to add some info for Ubuntu 22.
domdomegg’s answer will no longer work due to NTLM being removed from cifs — see discussion here. One option is to downgrade your kernel; but what worked for me was to use a Raspberry Pi as a bridge. You could do the same with any other Linux device running an older version. The current RPi OS (Bullseye) has the same issue with NTLM being removed, but you can get still RPi Buster here. Once you have Buster installed on a Pi, you can join your AirPort’s WiFi network and mount it with:
sudo mount -t cifs —verbose -o vers=1.0,uid=1000,gid=1000,password=,sec=ntlm ///Data ~/
. assuming you have a uid 1000 user on the Pi. Replace with the AirPort’s password, with its name or IP, and with some mount point you create on the Pi.
Once you’ve done that you can SSH to your Pi from Ubuntu 22 and access ~/ . You can of course also use scp , rsync , etc. to move files around, but I found it handy to open a GUI file explorer via nautilus sftp://@/ .
So if your Pi username is the default «pi», your pi is at 192.168.1.10, and your AirPort is mounted on the Pi at ~/airport , the command would be nautilus sftp://pi@192.168.1.10/home/pi/airport ; I ran into issues trying to use a truncated directory path here, so I recommend typing out the full path.
Как получить доступ к Apple Time Capsule в Ubuntu 18.04.1
Я вижу свою капсулу времени в сети, но не могу в нее попасть. Может ли кто-нибудь помочь мне решить проблему? Информация для входа верна, но на скриншотах показаны ошибки.
7 ответов
На Ubuntu 18.04 я видел тот же экран, что и у вас. Попробовав различные поиски, я нашел решение для командной строки. Это не полностью автоматизированное решение с графическим интерфейсом, но это правильно для Linux.
Сначала подготовьте точку монтирования (только один раз)
Затем каждый раз, когда вы хотите смонтировать капсулу:
Если у вас, как и у меня, одно и то же имя пользователя на вашем Mac и Linux,
$ sudo mount -t cifs //10.0.1.1/Data /media/$USER/capsule -o username=$USER,sec=ntlm,uid=$USER,vers=1.0
$ sudo mount -t cifs //10.0.1.1/Data /media/$USER/capsule -o username=MyCapsuleUsername,sec=ntlm,uid=MyCapsuleUsername,vers=1.0
Вам будет предложено ввести два пароля: первый от sudo, т.е. ваш пароль Linux, второй от капсулы.
Обратите внимание, я создал псевдоним в моем файле.bashrc для удобства.
Заметка, //10.0.1.1 является локальным IP-адресом вашей капсулы по умолчанию, при условии, что вы ничего особенного не сделали при его настройке.
Добавьте это в глобальный раздел /etc/samba/smb.conf:
[global] . client use spnego = no .
Вы можете смонтировать его по команде
Или CTRL + L в наутилусе и напиши полный адрес
Во всех ответах здесь, к сожалению, отсутствует следующая очень важная информация. Имя, которое вы дали своей капсуле времени , не совпадает с именем .
Имя капсулы времени соответствует NetBIOS или имени хоста. Таким образом, его можно использовать в качестве альтернативы IP-адресу. Допустим, это «ТЦ Питер». Это будет переведено утилитой Apple Airport в TC-PETER .
Значение /Data соответствует названию тома капсулы времени . В этом случае это будет теперь «AirPort-Laufwerk Peter», что равно /AirPort-Laufwerk Peter . В других языках это, конечно, по-другому, поэтому в английском это было бы /AirPort-Drive Peter или же /AirPort-Volume Peter
Однако в моем примере это даст следующие две возможные команды:
sudo mount.cifs //TC-PETER/'Airport-Laufwerk Peter' /mnt/timecapsule/ -o password='yourpassword',sec=ntlm,uid=1000,vers=1.0 sudo mount.cifs //x.x.x.x/'Airport-Laufwerk Peter' /mnt/timecapsule/ -o password='yourpassword',sec=ntlm,uid=1000,vers=1.0
Обратите внимание: апострофы необходимы, если имя тома капсулы времени содержит пробел !
Значение uid 1000 правильно в моем случае для Kubuntu 18.04. Это может отличаться от других дистрибутивов Linux и других пользователей. Проверьте это с помощью команды id -u .
Эта команда монтирования отлично работает, когда Time Capsule настроен с одним паролем (администратор устройства или сетевой пароль). Это не работает, когда учетные записи пользователей настроены как режим доступа в Time Capsule.
Итак, это все. Подтверждаю, работает ОТЛИЧНО. Мне потребовалось почти несколько дней, чтобы понять этот правильный синтаксис. 😉
Дополнительная полезная информация:
Установите необходимые пакеты:
sudo apt-get install cifs-utils sudo apt-get install keyutils
Определите свою рабочую группу и включите поддержку NTLMv1 в файле smb.conf:
sudo nano /etc/samba/smb.conf workgroup = ntlm auth = ntlmv1-permitted
Дополнительное дополнение, связанное с fstab :
Ниже приведены два примера конфигурации fstab для автоматического монтирования при каждой перезагрузке. Я проверил это, и они работают ОТЛИЧНО.
//TC-PETER/Airport-Laufwerk\040Peter /mnt/timecapsule cifs _netdev,users,vers=1.0,sec=ntlm,password=yourpassword,rw,uid=1000,gid=1000,iocharset=utf8 0 0 //x.x.x.x/Airport-Laufwerk\040Peter /mnt/timecapsule cifs _netdev,users,vers=1.0,sec=ntlm,password=yourpassword,rw,uid=1000,gid=1000,iocharset=utf8 0 0
Следует отметить, что странное \040 требуется, когда имя общего ресурса содержит пробел. Используемые ранее апострофы не работают в синтаксической схеме fstab!
Интересно, что часто предлагаемый параметр auto не работает и ломает всю команду монтирования в моем случае. Я понятия не имею, почему это так. Это может быть из-за параметра . Этот связан с общим сетевым ресурсом и задерживает монтирование до тех пор, пока сеть не будет запущена и активна. Тем не менее, я также нашел информацию о том, что _netdev флаг не работает в более новых дистрибутивах Linux на основе systemd . Так что его тоже можно опустить. Как бы то ни было, общий ресурс монтируется сразу после его выбора. (Сообщения об ошибках в dmesg отсутствуют.)
Дополнительные параметры rw , который разрешает доступ для чтения и записи. (Ну, не все примеры конфигурации общих ресурсов SMB включают его, так что один из них может быть необязательным). iocharset=utf8 сообщает Linux о совместимости с UTF (Windows?). Также здесь это может быть (настоятельно?) рекомендовано, но не обязательно. Параметр vers=1.0 а также sec=ntlm довольно небезопасны, но, к сожалению, абсолютно необходимы, потому что Apple использует в своих капсулах времени очень древний стандарт SMB.
Особенность users разрешает монтирование/размонтирование всем доступным пользователям Linux при установленном флаге user разрешает это только учетной записи владельца root / fstab. Этот принцип следует рассматривать как несколько непоследовательный, и он может не работать должным образом на акциях малого и среднего бизнеса. Обратите внимание, что все файлы и папки, созданные (пользователями Linux) на общем ресурсе SMB, будут содержать uid=1000 а также gid=1000 пользовательские ценности.
В некоторых примерах SMB fstab также используется nounix флаг,- он четко определяет, что общий ресурс несовместим с Linux. Ну, в моем случае я не заметил никакой разницы, поставил я его или нет.
Наконец, действительно единственная неприятная вещь заключается в том, что у меня в dmesg несколько уведомлений, вызванных CIFS VFS: bogus file nlink value 0 . Некоторые предлагают установить флаг noserverino чтобы исправить это. Однако в моем случае с общим ресурсом Apple Time Capsule SMB1 это ничего не помогло, уведомления остались. Как бы то ни было, поскольку все работает как надо, я просто игнорирую это. 😉