# переключиться в tty консоль ctrl+alt+f1 ввести логин и пароль (у ubuntu livecd дистрибутивов имя пользователя совпадает с названием дистрибутива, например xubuntu, и с пустым паролем)
# переключить консоль на рута (
sudo -i
# обновить индексы репозитария и установить x11vnc
apt update; apt install -y x11vnc
# Запуск VNC сервера без пароля
x11vnc -forever -shared -display :0
теперь можно подключиться по ip:5900 хоть с винды, простейший vncviewervncviewer -listen 5500
x11vnc -display :0 -connect IP_КЛИЕНТА:5500
Родился на улице Герцена, в гастрономе номер двадцать два. Известный экономист, по призванию своему — библиотекарь. В народе — колхозник. В магазине — продавец. В экономике, так сказать, необходим. Это, так сказать, система… э-э-э… в составе ста двадцати единиц.
Числа - время выполнения в секундах, антивирус отключен. Не вижу смысла что то еще добавлять.MethodsFor this experiment, I used Windows Version 2004 build 19035.1000 on a ThinkPad X1 Extreme with 32GB of RAM and a Samsung 970 Evo Plus 1TB NVMe SSD.
The four tests are:
yarn build create-react-app: Use webpack and babel to build the basic open source create-react-app. This generates about 40KB of gzipped code.
yarn build tsnsi: Use webpack and typescript to build a large proprietary application that I work on most days. This generates about 40MB of minimized javascript code. This repo contains just over 100000 files. THANKS node_modules!
du -sh tsnsi: Calculate disk usage over the 100000 small files in the proprietary project.
du -sh cpbotha.net: Calculate disk usage over my personal blog’s hugo source files. 4700 files of varying sizes occupying about 780MB.
In all but one case (du tsnsi on WSL2 NTFS, because the spread was just too great), I ran the test multiple times, and recorded the average time in seconds. After the first run, standard deviation was low.
In all cases, the built-in Microsoft anti-virus real-time protection was disabled, as that can have a significant effect on IO-based benchmarks.
Test WSL 1 ntfs WSL 2 ntfs WSL 2 samba WSL 1 lxfs WSL 2 ext4 native linux yarn build c-r-a 11.89 63.14 13 7.38 5.8 4.63 yarn build tsnsi 45.25 263.71 65 31.70 28.75 24.13 du tsnsi 4.9 70 - 155 (4x) 13.5 8.6 0.19 0.19 du cpbotha.net 0.24 3.7 0.5 0.074 0.011 0.015
<!DOCTYPE html>
<html>
<head>
<title>Текстовая форма</title>
</head>
<body>
<form action="script.php" method="post">
<textarea name="text" rows="10" cols="50"></textarea>
<br>
<input type="submit" value="Отправить">
</form>
</body>
</html>
<?php ... код ... ?>
. Вот пример сохранения введенного сообщения пользователем в файл, имя которого будет содержать номер сессии пользователя и время (timestamp, это сделано намеренно что бы показать проблему именования файла в данной задаче при многопользовательском доступе, если использовать просто timestamp, т.е. время в секундах, то несколько одновременно посланных сообщений заменят друг друга и останется только последнее, в приведенном примере эта проблема сохранится только для одного 'пользователя' т.е. сессии браузера - открытой страницы что даже локально сложно добиться, естественно правильно делать индекс со списком файлов но зачем, задача то простая):<?php
define("STOREPATH","/my_cool_file_database");
session_start();
if ($_SERVER["REQUEST_METHOD"] == "POST" && isset($_POST["text"])) {
// Получаем текст из POST запроса
$text = $_POST["text"];
// Создаем имя файла: session_id + _ + timestamp
$filename = STOREPATH . "/" . session_id() . "_" . time() . ".txt";
try {
// Пытаемся записать файл
if (file_put_contents($filename, $text) !== false) {
echo "Успешно";
} else {
throw new Exception("Ошибка при записи файла");
}
} catch (Exception $e) {
echo "Ошибка: " . $e->getMessage();
}
} else {
echo "Ошибка: Неверный запрос или отсутствуют данные";
}
?>
<?php
define("STOREPATH","/my_cool_file_database");
define("REMOVE_INTERVAL",3600); // интервал в секундах для старых сообщений
// Получаем все txt файлы из директории
foreach (glob(STOREPATH . "/*.txt") as $file) {
// Извлекаем timestamp из имени файла
if (preg_match('/_([0-9]+(?:\.[0-9]+)?)\.txt$/', $file, $matches)) {
$fileTimestamp = (int)$matches[1];
// Если файл старше часа - удаляем
if (time() - $fileTimestamp > REMOVE_INTERVAL) {
unlink($file);
}
}
}
?>
Use WSL2 applications to edit your files
It is also recommended to move the project folder outside of a Windows filesystemпросто из windows не нужно вообще заглядывать в каталог linux контейнера