Серьезно, если Ваш поставщик не предлагает свободный (или по крайней мере дешевый) ручная помощь для крайних случаев, пора переключиться. Иначе я думаю, что Вы соглашаетесь в значительной степени со своей установкой.
Когда Ваша система так повреждается, что fsck не может зафиксировать ее, нет очень еще, чтобы сделать, кроме полного переустанавливают. Я на самом деле не видел, что это происходит, если не был фатальный отказ оборудования.
Одна вещь отметить. Для машины как это выберите стабильное распределение (Debian, RHEL, SLES), и определенно обновите только после соответственно длительного периода (новая версия, стабилизированная в течение по крайней мере 6 месяцев).
Попытайтесь использовать SimpleHTTPServer
в Python.
mkdir ~/public_html
command_to_generate_output > ~/public_html/output.txt
(cd ~/public_html; python -c 'import SimpleHTTPServer,BaseHTTPServer; BaseHTTPServer.HTTPServer(("", 8080), SimpleHTTPServer.SimpleHTTPRequestHandler).serve_forever()')
Первые две строки являются установкой для веб-сервера. Последняя строка создает простой веб-сервер, открытый на порте 8080, который только служит файлам от ~/public_html
. Если только один файл находится в том каталоге, то только, который выставляется: http://localhost:8080/output.txt
.
.py
файл, затем выполняет его с python
(или сделайте это исполняемым файлом). Следует иметь в виду, что необходимо работать с Python 2.x интерпретатор.
– Hanan N.
20.02.2012, 23:40
Начиная с версии 5.4.0 PHP также имеет встроенный веб-сервер:
php -S localhost:8000
Можно Указать каталог документов веб-сервера с -t
, например:
php -S localhost:8000 -t /var/lib/www
Если Вы хотите смочь получить доступ к серверу по сети затем:
php -S 0.0.0.0:8000 -t /var/lib/www
Использовать node.js
, быстро и легкий вес.
Или
просто используйте простой nc
netcat управляют, чтобы запустить быстрый веб-сервер на порте и служить содержанию файла включая заголовки ответа сервера.
Ссылка из Википедии:
{ echo -ne "HTTP/1.0 200 OK\r\n\r\n"; cat some.file; } | nc -l -p 8080
{ echo -ne "HTTP/1.0 200 OK\r\nContent-Length: $(wc -c <some.file)\r\n\r\n"; cat some.file; } | nc -l -p 8080
nc
основанное решение :). Обратите внимание что -ne
флаги для echo
может не быть портативным, с помощью printf
команда вместо этого может быть лучшей альтернативой. спасибо
– WhiteWinterWolf
05.11.2016, 11:35
Попытка SimpleHTTPServer:
python -m SimpleHTTPServer
# or the Python 3 equivalent
python3 -m http.server
Это должно служить тому, что находится в CWD (например, index.html) по http://0.0.0.0:8000.
python3 -m http.server 1337
. Вы не можете указать, какой IP связать с тем, насколько я могу сказать.Примечание: Для слушания порта 80, у Вас должны быть полномочия пользователя root, например: sudo python3 -m http.server 80
– Hubro
30.10.2014, 12:49
twistd -n web -p 8000 --path .
– Greg Dubicki
14.07.2015, 11:49
Простой netcat пример, чтобы вставить сценарий удара:
while true ; do nc -l 80 <index.html ; done
while [ 1=1 ] ; do echo "TEST" | nc -l 80; done
- движение к 127.0.0.1 действительно возвраты содержание. Я должен был сделать это как корень все же. Таким образом чрезвычайно сырым способом - это могло сделать задание, и мне нравится этот. Я пытался идти в мой-hostnname.local на другой машине в LAN, и она работала также.
– unfa
11.12.2017, 13:33
HISTCONTROL=ignorespace
Если этот параметр еще не установлен для bash
, это может быть именно то, что вам нужно. Это менее изнурительно, чем отключение всей истории. При таком наборе любая командная строка, начинающаяся с пробела, не будет сохранена в списке истории.
Из этих связанных ссылок:
Почему bash имеет параметр HISTCONTROL = ignorespace?
Почему bash не хранит команды, начинающиеся с мест?
-121--8782- Я подозреваю, что вы используете systemd. Если это так, используйте встроенный инструмент systemctl
:
systemctl suspend
systemctl hibernate
systemctl hybrid-sleep
systemctl reboot
systemctl poweroff
systemctl halt
Как всегда можно создать псевдоним для любой из этих команд.
-121--75845-Узел имеет простой, быстрый, легкий модуль HTTP-сервера. Установка:
sudo npm install http-server -g
(Предполагается, что уже установлены узел
и npm
.)
Для ее запуска используется текущий каталог в качестве корня веб-сайта:
http-server
Создается сервер на http ://0.0.0.0: 8080/
.
Это можно сделать за два шага, например, сначала удалить расширение, затем заменить префикс VTS _ 01
:
$ for i in VTS_01_[1-4]*B; do b="${i%.VOB}"; echo "${b/VTS_01/Movie}.avi"; done
Movie_1.avi
Movie_2.avi
Movie_3.avi
-121--199974-
systemctl disable
не работает, если источником является скриптinit.d
. Что вместо этого делать, чтобы отключитьlightdm
начиная с загрузки?
По иронии судьбы, ни один из «официальных» способов сделать это до сих пор не был упомянут ни в одном ответе. Так что для полноты, вот они:
Вы «маскируете» сервис:
systemctl mask lightdm.service
Или вы создаете собственный файл единиц как /etc/systemd/system/lightdm.service
, который затем становится надлежащим первоклассным системным гражданином, который может быть включен и отключен с помощью команд enable
и disable
. Файлы единиц измерения заменяют файлы init.d
с тем же базовым именем. Вы можете выбрать lightdm.service
, который был написан людьми Debian, если хотите. ☺
Oldschool Ruby WEBrick HTTP-сервер:
#!/usr/bin/env ruby
require 'webrick'
server = WEBrick::HTTPServer.new(:Port => 8000,
:DocumentRoot => '~/webrickroot')
# stop server with Ctrl-C
trap('INT') { server.stop }
server.start
Измените DocumentRoot
для установки. См. также это .
Существует Большой список однострочных статических HTTP-серверов :
Чтобы попасть в этот список, решение должно:
- обслуживают статические файлы, используя ваш текущий каталог (или указанный каталог) в качестве корневого каталога сервера
- , который может быть запущен с помощью одной однострочной команды (зависимости допустимы, если они разовые)
- обслуживают основные типы файлов (html, css, js, изображения) с соответствующими типами mime, не требует настройки (из файлов или иным образом), кроме самой команды (без серверов, специфичных для платформы и т. Д.)
- должен работать или иметь режим, в котором он может работать, на переднем плане (т.е. без демонов)
Например:
twistd -n web -p 8000 --path.
Erlang :
erl -s inets -eval 'inets: start (httpd, [{server_name, "NAME"}, {document_root, "."}, {Server_root, " . "}, {порт, 8000}, {mime_types, [{" html "," text / html "}, {" htm "," text / html "}, {" js "," text / javascript "}, {"css", "text / css"}, {"gif", "image / gif"}, {"jpg", "image / jpeg"}, {"jpeg", "image / jpeg"}, {" png "," image / png "}]}]). '
cpan Plack
plackup -MPlack :: App :: Directory -e' Plack :: App :: Directory-> new (root => "."); ' -p 8000
webfsd -F -p 8000
ruby -run -ehttpd. -p8000
Другой вариант - установить lighttpd. Ниже приведены предлагаемые шаги по установке lighttpd на Unbuntu 12.04 LTS.
apt-get update
apt-get upgrade --show-upgraded
apt-get install lighttpd
ifconfig
http://[your-ip-address]:80
/etc/lighttpd/lighttpd.conf (Edit to add server.port)
server.port = "8080"
Примечание: Documentroot - это место, где будут размещены все файлы, доступные в Интернете. Расположение: / var / wwww
. На этом шаге будет установлен базовый веб-сервер lighttpd. Для получения дополнительной информации см. Следующие ссылки
Ссылки:
Простой Ruby one liner для обслуживания каталога:
ruby -run -e httpd . -p 8080
SFK, о котором стоит упомянуть
http://stahlworks.com/dev/swiss-file-knife.html
отличный многоцелевой инструмент с нет зависимостей
, доступных как для deb, так и для rpm
sfk httpserv -port 1234
будет обслуживать текущий каталог
sfk httpserv -port 1234 -rw
также разрешит загрузку файлов
{{ 1}} ./ devd -o -a -P devd: devd.
Вы можете использовать xinetd. Поместите следующий файл конфигурации в /etc/xinetd.d/ и service xinetd reload:
service http
{
flags = REUSE IPv4
protocol = tcp
socket_type = stream
port = 80
wait = no
user = nobody
server = /bin/echo
server_args = -e HTTP/1.0 301 Moved Permanently\nContent-Length: 0\nLocation: https://goo.gl/\n\n
disable = no
}
Работает для моих целей перенаправления:
# wget 127.0.0.1
--2016-04-04 22:56:20-- http://127.0.0.1/
Connecting to 127.0.0.1:80... connected.
HTTP request sent, awaiting response... 301 Moved Permanently
Location: https://goo.gl/ [following]
...
Чистый bash: Веб-сервер в сценарии оболочки .
Также вам понадобится xinetd (Я считаю, что доступен в любом дистрибутиве), чтобы прослушивать порт и запускать скрипт при необходимости, поэтому вам не нужно кодировать стек TCP и т. Д. В bash.
Простое исправление / улучшение слегка несправедливого (imho) ответа, проголосованного против, также может сработать. Давайте сначала настроим html-файл ...
echo '<html><head><title>My Test File</title></head><body><h1>OK!</h1></body></html>' > my_file.html
(Спасибо Стиву Фолли за обнаружение моей опечатки в приведенном выше HTML. Исправлено.)
Теперь вы можете обработать его с помощью этого однострочника:
while true; do echo -e "HTTP/1.1 200 OK\r\nContent-Type: text/html\r\n\r\n" | cat - my_file.html | nc -l -p 8080; done
Этот базовый idea поддается другим уловкам, которые могут сработать для вас через другие cat
или идеи подоболочки, такие как:
while true; do echo -e "HTTP/1.1 200 OK\r\nContent-Type: text/html\r\n\r\nI think the date is $(date), Have a good day!" | nc -l -p 8080; done
попробуй кэдди
curl https://getcaddy.com | bash
обслуживать контент из /var/wwwcaddy -root /var/www "browse"
теперь вы найдете сервер по адресу http ://localhost :2015
Мои пять копеек, написанные ракушкой:https://gitlab.com/mezantrop/supermatic
Supermatic can run on FreeBSD and any other OS which has Bourne Shell and inetd-like daemon. It serves static HTML and TXT files along with GIF, JPEG and PNG image formats. What's about any other standards and features? No, never heard of them.
Один лайнер на основе докера, поэтому вам не нужно устанавливать какой-либо конкретный язык:
docker run --rm -i -p 8000:8000 -v $(pwd):/app -w /app ruby:alpine ruby -run -ehttpd. -p8000
В nweb.c добавлена функция вывода списка каталогов.https://github.com/jbabuc/nweb
nweb.c, простой http-сервер со списком каталогов.
nwebs, статически скомпилированный бинарный файл для Linux.