ZaLinux.ru

Cloud Commander – веб файловый менеджер для управления файлами и программами Linux через браузер

Cloud Commander – двухпанельный веб файловый менеджер с консолью и редактором. Он поможет вам управлять сервером и работать с файлами, каталогами и программами в браузере на любом компьютере, смартфоне или планшете.

Преимущества

  • Открытый код (MIT License).
  • Две классические панели.
  • Возможность авторизации.
  • Клиент работает в веб браузере.
  • Сервер работает под Windows, Linux, Mac OS и Android (при помощи Termux).
  • Может использоваться локально или удаленно.
  • Адаптируется под размер экрана.
  • 3 встроенных редактора с поддержкой подсветки синтаксиса: Dword, Edward и Deepword.
  • Консоль с поддержкой стандартной командной строки ОС.
  • Написан на JavaScript/Node.js.

Как установить Cloud Commander в Linux

Начните с установки последней версии node.js как показано ниже.

На Debian/Ubuntu/Linux Mint

curl -sL https://deb.nodesource.com/setup_6.x | sudo -E bash -
-------- Для версии Node.js v7 --------
curl -sL https://deb.nodesource.com/setup_7.x | sudo -E bash -
sudo apt-get install -y nodejs

На RHEL/CentOS/Fedora

curl - -silent - -location https://rpm.nodesource.com/setup_6.x | bash -
-------- For Node.js v7 Version --------
curl - -silent - -location https://rpm.nodesource.com/setup_7.x | bash -
yum -y install nodejs
dnf -y install nodejs [Fedora 22+]

На Gentoo и Arch Linux

emerge nodejs         [На Gentoo]
sudo pacman -S nodejs npm  [На Arch Linux]

После установки пакетов nodejs и npm перейдём к установке Cloud Commander следующими командами

sudo npm i cloudcmd -g
# ИЛИ
sudo npm i cloudcmd -g --force

Как использовать Cloud Commander на Linux

Для его запуска просто наберите:

cloudcmd

Вы можете запустить программу под обычным пользователем или под рутом:

sudo cloudcmd

Запуск от суперпользователя позволит вам выполнять любые операции и работать с любыми файлами.

По умолчанию файловый менеджер доступен в браузере по адресу http://localhost:8000

Интерфейс интуитивно понятен, мы вернёмся к нему чуть позже.

Двухпанельный файловый менеджер для сервера без иксов (без графического окружения рабочего стола)

По умолчанию файловый менеджер доступен только на localhost. Если вы хотите использовать его для управления веб-сервером или любой другой удалённой машины, нам нужно настроить его. Нам нужно:

  • Заставить его прослушивать на внешнем IP
  • Установить логин и пароль для входа, чтобы кто-угодно не мог зайти на наш сервер.

Настройки можно указать в опциях командной строки и в файлах настроек. Обратимся к опциям командной строки:

Cloud Commander поддерживает параметры командной строки:

Параметр Действие
-h, --help помощь
-v, --version вывести версию и выйти
-s, --save сохранить настройки
-o, --online загружать скрипты с удаленных серверов
-a, --auth включить авторизацию
-u, --username установить имя пользователя
-p, --password установить пароль
-c, --config путь к файлу с настройками
--editor назначить редактор: “dword”, “edward” или “deepword”
--root установить корневой каталог
--prefix установить url префикс
--port назначить порт
--minify включить минификацию
--progress показывать состояние файловых операций
--html-dialogs показывать html диалоги
--open открыть веб браузер после старта сервера
--one-panel-mode включить однопанельный режим
--config-dialog включить диалог конфигурирования
--console включить консоль
--no-server не запускать сервер
--no-auth выключить авторизацию
--no-online загружать скрипты с локального сервера
--no-open не открывать веб браузер после старта сервер
--no-minify выключить минификацию
--no-progress не показывать состояние файловых операций
--no-one-panel-mode выключить однопанельный режим
--no-config-dialog выключить диалог конфигурирования
--no-console выключить консоль

Если просмотреть внимательно эту таблицу, то в ней отсутствует опция для указания IP адреса. Хотя это не сказано в документации, но по умолчанию Cloud Commander «виден» не только на локалхосте, он также доступен из внешней сети. Т.е. устанавливать IP адрес необязательно.

Для администрирования безголового сервера через графический интерфейс запустите примерно следующую команду:

sudo cloudcmd --port порт -a -u пользователь -p пароль

Если не задано параметров, Cloud Commander читает информацию с файла ~/.cloudcmd.json и использует порт оттуда (8000 по умолчанию), если переменных PORT или VCAP_APP_PORT не существует.

В файле ~/.cloudcmd.json можно установить следующие параметры:

{
    "auth"              : false,            /* разрешить http авторизацию                                      */
    "username"          : "root",           /* имя пользователя для авторизации                                */
    "password"          : "toor",           /* хеш пароля в sha-1 для авторизации                              */
    "algo"              : "sha512WithRSAEncryption", /* криптографический алгоритм                             */
    "editor"            : "edward",         /* по умолчанию, может быть "dword" или "edward"                   */
    "diff"              : false,            /* при сохранении - отсылает патч, а не весь файл                  */
    "zip"               : false,            /* zip текст перед отсылкой / unzip перед сохранением              */
    "localStorage"      : true,             /* локальное хранилище                                             */
    "buffer"            : true,             /* буфер для копирования файлов                                    */
    "dirStorage"        : true,             /* сохранить листинг каталога в localStorage                       */
    "minify"            : false,            /* минификация js, css, html и изображений                         */
    "online"            : true,             /* загрузить файлы js из cdn или Local path                        */
    "open"              : false,            /* открыть веб браузер после старта сервера                        */
    "cache"             : true,             /* кеширование                                                     */
    "showKeysPanel"     : true,             /* показать классическую панель с кнопками функциональных клавиш   */
    "port"              : 8000,             /* http порт                                                       */
    "ip"                : null,             /* ip или null(по умолчанию)                                       */
    "root"              : "/",              /* корневой каталог                                                */
    "prefix"            : "",               /* url префикс                                                     */
    "progress"          : true,             /* показывать состояние файловых операций                          */
    "onePanelMode"      : false,            /* включить однопанельный режим                                    */
    "configDialog"      : true,             /* включить диалог конфигурирования                                */
    "console"           : true              /* включить консоль                                                */
}

Обратите внимание, что в реальном файле настроек вам нужно удалить комментарии, иначе будет возникать ошибка.

Для редактирования файла откройте его в вашем любимом редакторе:

vim ~/.cloudcmd.json

Без комментариев файл выглядит так:

{
    "auth"              : false, 
    "username"          : "root",
    "password"          : "toor",
    "algo"              : "sha512WithRSAEncryption",
    "editor"            : "edward",
    "diff"              : false,
    "zip"               : false,
    "localStorage"      : true,
    "buffer"            : true,
    "dirStorage"        : true,
    "minify"            : false,
    "online"            : true,
    "open"              : false,
    "cache"             : true,
    "showKeysPanel"     : true,
    "port"              : 8000,
    "ip"                : null,
    "root"              : "/",
    "prefix"            : "",
    "progress"          : true,
    "onePanelMode"      : false,
    "configDialog"      : true,
    "console"           : true
}

Вам необязательно указывать все опции, можете выбрать только те, которые вам нужны:

{
    "ip"                : "IP",
    "port"              : 8000,
    "auth"              : true, 
    "username"          : "root",
    "password"          : "toor"
}

Обратите внимание, что IP адрес необходимо взять в кавычки.

Кстати, вместо пароля в ввиде простого текста вам необходимо ввести его кеш. Пароль в файле ~/.cloudcmd.json хранится в зашифрованном виде, шифруется он алгоритмом, указанным в поле algo, по-умолчанию это: sha512WithRSAEncryption.

Не стоит вручную прописывать пароль, лучше воспользоваться командой:

cloudcmd --username hello --password world

Для пользователя hello с паролем world. Изменения будут действовать одну сессию, до выхода из Cloud Commander. Для сохранения данных авторизации, без запуска файлового менеджера, можно воспользоваться следующей командой:

cloudcmd --auth --username hello --password world --save --no-server

Так же, можно воспользоваться графическим интерфейсом настройки Cloud Commander, запускаемым клавишей F10

Обновление Cloud Commander

Если Вы установили Cloud Commander при помощи npm, остановите приложение и переустановите его:

npm update cloudcmd -g

Горячие клавиши

Клавиша Действие
F1 помощь
F2 переименовать
F3 просмотр
Shift + F3 просмотр в markdown
F4 редактировать
F5 копировать
F6 переименовать/переместить
F7 новый каталог
Shift + F7 новый файл
F8, Delete удалить текущий файл
Shift + Delete удалить без запроса о подтверждении
F9 меню
F10 настройки
(*) выделить/снять выделение со всех файлов
(+) расширить выделение
(-) сузить выделение
Ctrl + x вырезать в буфер
Ctrl + с копировать в буфер
Ctrl + v вставить из буфера
Ctrl + r обновить
Ctrl + d очистить локальное хранилище
Ctrl + a выбрать (выделить) все файлы на панели
Ctrl + u поменять панели местами
Up, Down, Enter перемещение по файловой системе
Alt + Left/Right показать содержимое каталога под курсором в целевой панели
Alt + g перейти к каталогу
Ctrl + \ перейти в корневой каталог
Tab переключение между панелями
Page Up вверх на одну страницу
Page Down вниз на одну страницу
Home в начало списка
End в конец списка
Space выделить текущий файл (и получить размер каталога)
Insert выделить текущий файл (и перейти к следующему)
Shift + F10 контекстное меню
~ консоль
Ctrl + Click открыть файл в новой вкладке

Просмотр

Возможности

  • Просматривать изображения.
  • Просматривать текстовые файлы.
  • Проигрывать аудио.
  • Проигрывать видео.

Горячие клавиши

Клавиша Действие
F3 открыть
Esc закрыть

Редактор

Горячие клавиши

Клавиша Действие
F4 открыть
Esc закрыть

Консоль

Горячие клавиши

Клавиша Действие
~ открыть
Ctrl + p вставить путь текущего каталога
Esc закрыть

Настройки

Горячие клавиши

Клавиша Действие
F10 открыть
Esc закрыть

Меню

Щелчок правой кнопкой мыши вызывает контекстное меню с такими пунктами:

  • Просмотр
  • Правка
  • Переименовать
  • Удалить
  • Запаковать
  • Извлечь
  • Выгрузить в облако
  • Скачать
  • Вырезать
  • Копировать
  • Вставить
  • Новый (Файл, Каталог)
  • Выгрузить
  • Выгрузить с облака
  • Выделить всё / снять выделение
  • Выйти (доступно в случае включенной авторизации)

Горячие клавиши

Клавиша Действие
F9 открыть
Esc закрыть

Режим одной панели

Cloud Commander может работать в режиме одной панели, в том случае, если размер экрана не позволяет разместить вторую панель. Такое может случится в случае использования мобильного, планшета или маленького окна браузера для взаимодействия с файловым менеджером.

Минусы и плюсы Cloud Commander

Из-за показываемого стандартного URL с localhost возникает впечатление, что Cloud Commander доступен только из локальной сети. Хотя это нигде не указано в документации, но Cloud Commander стазу после запуска становится доступным по внешнему IP.

К сожалению, в программе не предусмотрена работа по протоколу HTTPS.

Плюсом программы является простота установки. Cloud Commander не требует какого-либо веб-сервера и настройки для простейшей работы.

Вторым колоссальным плюсом является сама функциональность файлового менеджера – мы можем на безголовом сервере управлять файлами с удобством будто работает на локальном компьютере.

Cloud Commander богат функциями и имеет интуитивно понятный интерфейс. На мой взгляд, программа может заменить сразу несколько менее удобных программ – FTP файловые менеджеры, SSH клиент и другие, которые администраторы обычно применяют для загрузки и выгрузки файлов с/на сервер.

Рекомендуемые статьи:

Оставить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *