Я когда-то ставил mc на nas4free, но та инсталляция не подружилась с virtualbox. Сегодня поставим mc.
Источник на форуме nas4free/
UPD от 01 февраля 2015 Изменена ссылка на Источник строкой выше. Работает в сборке 1310 /UPD
1) Нам надо определиться - куда ставить mc. Я ранее использовал раздел данных на флешке, но позже разочаровался в этой идее. Буду использовать датасет /Ext/Extensions на главном пуле (/mnt/Pool/), где создам папку mc
2) Идем в консоль через putty
3)Теперь нам надо создать и подправить скрипт.
Идём по ссылке Источник выше. Выделяем мышкой и копируем в буфер скрипт из этого поста темы (не первого)
4) Прим. Советую развернуть окно консоли на весь экран.
создаём файл скрипта
Копируем в него скрипт из форума
5)
Прим, Если не будет качаться - значит снова сменилась версия. Открываем тот путь, что содержится в сообщении об ошибке, в ftp-клиента и ищем как называется актуальная версия mc.
6) Даём права на исполнение
7) Запускаем, ОБЯЗАТЕЛЬНО с полным маршрутом
_________
UPD от 12 окт 2013 Если у вас полезли ошибки - то 99% проблема в том, что при переносе скрипта те строки, которые должны были быть одной строкой превратились в две. Например
ln -s ${DIR}/share/locale/${i}/LC_MESSAGES/mc.m o
/usr/local/share/locale/${i}/LC_MESSAGES; fi;
Это одна строка в оригинале - но если её разложить на две - будет чушь.
Дальше советую при переделках начинать с чистого листа для этого стереть всё
А затем при вставке в nanо развернуть его на весь экран (и не пользоваться windows редакторами) /UPD
_________
8)
9) Запускать командой
10) Задаём в System|Advanced|Command scripts как Postinit скрипт
Перегружаемся, чтобы убедиться, что всё ОК.
Прим. Русские буквы читаются нормально. Если в клиенте выставить кодировку UTF-8
Отредактированный файл:
Источник на форуме nas4free/
UPD от 01 февраля 2015 Изменена ссылка на Источник строкой выше. Работает в сборке 1310 /UPD
1) Нам надо определиться - куда ставить mc. Я ранее использовал раздел данных на флешке, но позже разочаровался в этой идее. Буду использовать датасет /Ext/Extensions на главном пуле (/mnt/Pool/), где создам папку mc
2) Идем в консоль через putty
mkdir mkdir /mnt/Pool/Ext/Extensions/mc
chmod -R 777 /mnt/Pool/Ext/Extensions/mc
cd /mnt/Pool/Ext/Extensions/mc
3)Теперь нам надо создать и подправить скрипт.
Идём по ссылке Источник выше. Выделяем мышкой и копируем в буфер скрипт из этого поста темы (не первого)
4) Прим. Советую развернуть окно консоли на весь экран.
создаём файл скрипта
nano mcommander.sh
Копируем в него скрипт из форума
Прим, Если не будет качаться - значит снова сменилась версия. Открываем тот путь, что содержится в сообщении об ошибке, в ftp-клиента и ищем как называется актуальная версия mc.
6) Даём права на исполнение
chmod a+x mcommander.sh
7) Запускаем, ОБЯЗАТЕЛЬНО с полным маршрутом
/mnt/Pool/Ext/Extensions/mc/mcommander.s h
_________
UPD от 12 окт 2013 Если у вас полезли ошибки - то 99% проблема в том, что при переносе скрипта те строки, которые должны были быть одной строкой превратились в две. Например
ln -s ${DIR}/share/locale/${i}/LC_MESSAGES/mc.m
/usr/local/share/locale/${i}/LC_MESSAGES;
Это одна строка в оригинале - но если её разложить на две - будет чушь.
Дальше советую при переделках начинать с чистого листа для этого стереть всё
rm -rf /mnt/Pool/Ext/Extensions/mc/
А затем при вставке в nanо развернуть его на весь экран (и не пользоваться windows редакторами) /UPD
_________
8)
rehash
9) Запускать командой
mc
10) Задаём в System|Advanced|Command scripts как Postinit скрипт
/mnt/Pool/Ext/Extensions/mc/mcommander.s h
Перегружаемся, чтобы убедиться, что всё ОК.
Прим. Русские буквы читаются нормально. Если в клиенте выставить кодировку UTF-8
Отредактированный файл:
#!/bin/sh# filename: mcommander.sh# author: Dan Merschi# date: 2009-07-28 ; Add multiplatform support# author: Graham Inggs <graham@nerve.org.za># date: 2012-04-11 ; Updated for NAS4Free 9.0.0.1# date: 2013-02-09 ; Updated for ftp.freebsd.org restructuring and latest mc-light version# date: 2013-05-05 ; Switch from mc-light to mc ; drop compat7x; add libslang# purpose: Install Midnight Commander on NAS4Free (embedded version).# Note: Check the end of the page.##----------------------- Set variables ------------------------------------------------------------------DIR=`dirname $0`;PLATFORM=`uname -m`RELEASE=`uname -r | cut -d- -f1`URL="ftp://ftp.obit.ru/pub/FreeBSD/ports/i386/packages-8-stable/All"MCLIGHTFILE="mc-4.8.1.4_1.tbz"LIBSLANGFILE="libslang2-2.2.4_5.tbz"PCREFILE="pcre-8.34.tbz"GETTEXTFILE="gettext-0.18.3.1.tbz"LIBICONVFILE="libiconv-1.14_1.tbz"#----------------------- Set Errors ---------------------------------------------------------------------_msg() { case $@ in0) echo "The script will exit now."; exit 0 ;;1) echo "No route to server, or file do not exist on server"; _msg 0 ;;2) echo "Can't find ${FILE} on ${DIR}"; _msg 0 ;;3) echo "Midnight Commander installed and ready! (ONLY USE DURING A SSH SESSION)"; exit 0 ;;4) echo "Always run this script using the full path: /mnt/.../directory/mcommander.sh"; _msg 0 ;;esac ; exit 0; }#----------------------- Check for full path ------------------------------------------------------------if [ ! `echo $0 |cut -c1-5` = "/mnt/" ]; then _msg 4 ; ficd $DIR;#----------------------- Download and decompress mc files if don't exist --------------------------------FILE=${MCLIGHTFILE}if [ ! -d ${DIR}/bin ]; thenif [ ! -e ${DIR}/${FILE} ]; then fetch ${URL}/${FILE} || _msg 1; fiif [ -f ${DIR}/${FILE} ]; then tar xzf ${DIR}/${FILE} || _msg 2; rm ${DIR}/+*; rm -R ${DIR}/man; fiif [ ! -d ${DIR}/bin ]; then _msg 4; fifi#----------------------- Download and decompress libslang files if don't exist --------------------------FILE=${LIBSLANGFILE}if [ ! -d ${DIR}/lib ]; thenif [ ! -e ${DIR}/${FILE} ]; then fetch ${URL}/${FILE} || _msg 1; fiif [ -f ${DIR}/${FILE} ]; then tar xzf ${DIR}/${FILE} || _msg 2}; rm ${DIR}/+*;rm -R ${DIR}/libdata; rm -R ${DIR}/man; rm -R ${DIR}/include; rm ${DIR}/lib/*.a;rm ${DIR}/bin/slsh; rm ${DIR}/etc/slsh.rc; fiif [ ! -d ${DIR}/lib ]; then _msg 4; fifi#----------------------- Download and decompress pcre files if don't exist --------------------------FILE=${PCREFILE}#if [ ! -d ${DIR}/lib ]; thenif [ ! -e ${DIR}/${FILE} ]; then fetch ${URL}/${FILE} || _msg 1; fiif [ -f ${DIR}/${FILE} ]; then tar xzf ${DIR}/${FILE} || _msg 2}; rm ${DIR}/+*; fiif [ ! -d ${DIR}/lib ]; then _msg 4; fi#fi#----------------------- Download and decompress gettext files if don't exist --------------------------FILE=${GETTEXTFILE}#if [ ! -d ${DIR}/lib ]; thenif [ ! -e ${DIR}/${FILE} ]; then fetch ${URL}/${FILE} || _msg 1; fiif [ -f ${DIR}/${FILE} ]; then tar xzf ${DIR}/${FILE} || _msg 2}; rm ${DIR}/+*; fiif [ ! -d ${DIR}/lib ]; then _msg 4; fi#fi#----------------------- Download and decompress gettext files if don't exist --------------------------FILE=${LIBICONVFILE}#if [ ! -d ${DIR}/lib ]; thenif [ ! -e ${DIR}/${FILE} ]; then fetch ${URL}/${FILE} || _msg 1; fiif [ -f ${DIR}/${FILE} ]; then tar xzf ${DIR}/${FILE} || _msg 2}; rm ${DIR}/+*; fiif [ ! -d ${DIR}/lib ]; then _msg 4; fi#fi#----------------------- Create symlinks ----------------------------------------------------------------if [ ! -e /usr/local/share/mc ]; then ln -s ${DIR}/share/mc /usr/local/share; fiif [ ! -e /usr/local/libexec/mc ]; then ln -s ${DIR}/libexec/mc /usr/local/libexec; fiif [ ! -e /usr/local/etc/mc ]; then ln -s ${DIR}/etc/mc /usr/local/etc;fifor i in `ls $DIR/bin/`do if [ ! -e /usr/local/bin/${i} ]; then ln -s ${DIR}/bin/$i /usr/local/bin; fi; donefor i in `ls $DIR/share/locale`do if [ ! -e /usr/local/share/locale/${i} ]; then ln -s ${DIR}/share/locale/${i} /usr/local/share/locale;else if [ ! -e /usr/local/share/locale/${i}/LC_MESSAGES/mc.mo ];thenln -s ${DIR}/share/locale/${i}/LC_MESSAGES/mc.mo /usr/local/share/locale/${i}/LC_MESSAGES; fi;fi; done;for i in `ls $DIR/lib`do if [ ! -e /usr/local/lib/${i} ]; then ln -s $DIR/lib/$i /usr/local/lib; fi; done_msg 3 ; exit 0;#----------------------- End of Script ------------------------------------------------------------------# 1. Keep this script in his own directory.# 2. chmod the script u+x,# 3. Always run this script using the full path: /mnt/share/directory/mcommander# 4. You can add this script to WebGUI: Advanced: Commands as Post command (see 3).# 5. To run Midnight Commander from shell type 'mc'.