<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title><![CDATA[Linux Forum &mdash; Маленькие хитрости в Linux]]></title>
		<link>https://linuxforum.ru/viewtopic.php?id=22365</link>
		<atom:link href="https://linuxforum.ru/extern.php?action=feed&amp;tid=22365&amp;type=rss" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «Маленькие хитрости в Linux».]]></description>
		<lastBuildDate>Tue, 29 Dec 2020 14:33:16 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: Маленькие хитрости в Linux]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=468252#p468252</link>
			<description><![CDATA[<p>Иногда нужно запустить графическое приложение под пользователем root, но как правило через sudo доступ запрещён, и приложение как правило не запускается.<br />Решение проблемы: <br />Пред запуском:<br /><div class="termtitle" style="font-family: sans-serif; position:relative; height:auto; width:auto; background:#3A4061; color:#FFFFFF; padding: 1px;"><b> Консоль:</b></div>
<div class="termcont" style="font-family: Terminus; position:relative; height:auto; width:auto; overflow-x:scroll; white-space: nowrap ; overflow-y:auto;background:#000000; color:#4EF44E; line-height:1.2; padding: 3px; font-size: 1rem; max-height: 60vh">$ sudo guiprogram</div><br />Выполнить:<br /><div class="termtitle" style="font-family: sans-serif; position:relative; height:auto; width:auto; background:#3A4061; color:#FFFFFF; padding: 1px;"><b> Консоль:</b></div>
<div class="termcont" style="font-family: Terminus; position:relative; height:auto; width:auto; overflow-x:scroll; white-space: nowrap ; overflow-y:auto;background:#000000; color:#4EF44E; line-height:1.2; padding: 3px; font-size: 1rem; max-height: 60vh">$ xhost local:root</div><br />После этого графические приложения станут запускаться через <strong>sudo</strong>.</p>]]></description>
			<author><![CDATA[null@example.com (ormorph)]]></author>
			<pubDate>Tue, 29 Dec 2020 14:33:16 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=468252#p468252</guid>
		</item>
		<item>
			<title><![CDATA[Re: Маленькие хитрости в Linux]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=468086#p468086</link>
			<description><![CDATA[<div class="quotebox"><cite>Vascom пишет:</cite><blockquote><p>Добавь, чтобы было у всех автоматом.</p></blockquote></div><p>Ну а надо ли?<br />Как много используют ос на флешке, не считая тех кто использует Raspberry PI и т.п.<br />Ну и так и приняли моё предложение мейнтейнеры gentoo, кому надо сам включит, ну и есть оверлеи.<br />Для ssd есть свои опции монтирования, которые делают то же самое, но на флешках они как правило не работают.</p>]]></description>
			<author><![CDATA[null@example.com (ormorph)]]></author>
			<pubDate>Thu, 12 Nov 2020 12:21:17 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=468086#p468086</guid>
		</item>
		<item>
			<title><![CDATA[Re: Маленькие хитрости в Linux]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=468085#p468085</link>
			<description><![CDATA[<p>Добавь, чтобы было у всех автоматом.</p>]]></description>
			<author><![CDATA[null@example.com (Vascom)]]></author>
			<pubDate>Thu, 12 Nov 2020 12:08:15 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=468085#p468085</guid>
		</item>
		<item>
			<title><![CDATA[Re: Маленькие хитрости в Linux]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=468083#p468083</link>
			<description><![CDATA[<div class="quotebox"><cite>Vascom пишет:</cite><blockquote><p>Я имею в виду, почему это приходится делать руками, а не присутствует в дистрибутиве по умолчанию?</p></blockquote></div><p>Ну так по тому что в Gentoo это отсутствует в дистрибутиве по умолчанию. Вроде есть в оверлее <a href="https://gpo.zugaina.org/sys-apps/fstrimDaemon">reagentoo</a>&nbsp; демон, но я его не пробовал.</p>]]></description>
			<author><![CDATA[null@example.com (ormorph)]]></author>
			<pubDate>Thu, 12 Nov 2020 11:14:22 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=468083#p468083</guid>
		</item>
		<item>
			<title><![CDATA[Re: Маленькие хитрости в Linux]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=468082#p468082</link>
			<description><![CDATA[<p>Я имею в виду, почему это приходится делать руками, а не присутствует в дистрибутиве по умолчанию?</p>]]></description>
			<author><![CDATA[null@example.com (Vascom)]]></author>
			<pubDate>Thu, 12 Nov 2020 11:07:31 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=468082#p468082</guid>
		</item>
		<item>
			<title><![CDATA[Re: Маленькие хитрости в Linux]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=468081#p468081</link>
			<description><![CDATA[<div class="quotebox"><cite>Vascom пишет:</cite><blockquote><p>Почему таймер fstrim не включён по умолчанию?</p></blockquote></div><p>А зачем?&nbsp; у меня этим занимается cron.<br />Но реализовать вполне реально.</p>]]></description>
			<author><![CDATA[null@example.com (ormorph)]]></author>
			<pubDate>Thu, 12 Nov 2020 11:05:48 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=468081#p468081</guid>
		</item>
		<item>
			<title><![CDATA[Re: Маленькие хитрости в Linux]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=468080#p468080</link>
			<description><![CDATA[<p>Почему таймер fstrim не включён по умолчанию?</p>]]></description>
			<author><![CDATA[null@example.com (Vascom)]]></author>
			<pubDate>Thu, 12 Nov 2020 10:53:05 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=468080#p468080</guid>
		</item>
		<item>
			<title><![CDATA[Re: Маленькие хитрости в Linux]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=468075#p468075</link>
			<description><![CDATA[<p>Некоторые используют флешку для установки ОС на нее. Ну и как результат это сильно сокращает срок работы флешки, так как удалёные блоки не очищаются. Актуально при использовании на raspberry pi.<br />Для решения этой проблемы необходимо переодически запускать следующую команду:<br /><div class="termtitle" style="font-family: sans-serif; position:relative; height:auto; width:auto; background:#3A4061; color:#FFFFFF; padding: 1px;"><b> Консоль:</b></div>
<div class="termcont" style="font-family: Terminus; position:relative; height:auto; width:auto; overflow-x:scroll; white-space: nowrap ; overflow-y:auto;background:#000000; color:#4EF44E; line-height:1.2; padding: 3px; font-size: 1rem; max-height: 60vh"># fstrim -v смонтированный раздел</div><br />Например:<br /><div class="termtitle" style="font-family: sans-serif; position:relative; height:auto; width:auto; background:#3A4061; color:#FFFFFF; padding: 1px;"><b> Консоль:</b></div>
<div class="termcont" style="font-family: Terminus; position:relative; height:auto; width:auto; overflow-x:scroll; white-space: nowrap ; overflow-y:auto;background:#000000; color:#4EF44E; line-height:1.2; padding: 3px; font-size: 1rem; max-height: 60vh"># fstrim -v /</div><br />В первый раз команда выполняется долго, следующие разы уже быстро.<br />Для Gentoo написал скрипт:<br /></p><div class="fancy_spoiler_switcher"><div class="fancy_spoiler_switcher_header" data-lang-open="открыть спойлер" data-lang-close="скрыть спойлер"><strong>+</strong>&nbsp;открыть спойлер</div><div class="fancy_spoiler"><div class="codebox"><pre><code>#!/sbin/openrc-run

start() {
        local CURTIME TIME dir logdir
        logdir=&quot;/var/log/fstrimd&quot;
        CURTIME=`date -u +%s`
        dir=&quot;/var/run/fstrimd&quot;
        if ! [ -d ${dir} ] ; then
                mkdir -p ${dir}
                echo ${CURTIME} &gt;${dir}/time
                mkdir -p ${logdir}
                ionice -c 3 fstrim -v / &gt;&quot;${logdir}/fstrimd.log&quot;
        else
                TIME=`cat ${dir}/time`
                if [ ${CURTIME} -ge  $((${TIME}+86400)) ] ; then
                        ionice -c 3 fstrim -v / &gt;&quot;${logdir}/fstrimd.log&quot;
                        echo ${CURTIME} &gt;${dir}/time
                fi
        fi

}

restart() {
        start
}</code></pre></div></div></div><p>И поставил его в автозагрузку.<br />Ну и можно добавить правило в cron, которое позволяло бы каждый час перезагружать данный демон, который в свою очередь будет в момент перезагрузки&nbsp; проверять сколько времени прошло с момента последнего запуска очистки. И как только этот передел будет равен более 24 часам, будет произведена новая очистка блоков(обрезка).<br />Это позволит продлить срок службы флешки.</p>]]></description>
			<author><![CDATA[null@example.com (ormorph)]]></author>
			<pubDate>Wed, 11 Nov 2020 18:08:16 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=468075#p468075</guid>
		</item>
		<item>
			<title><![CDATA[Re: Маленькие хитрости в Linux]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=467980#p467980</link>
			<description><![CDATA[<p><strong>Файл как жёсткий диск.</strong></p><p>Обычный файл можно использовать так же как жёсткий диск. Т.е. можно разбить файл на разделы и каждый из разделов использовать как отдельный диск(форматирование, монтирование, запись).<br />Как пример создаём&nbsp; файл размером 2Гб.<br /><div class="termtitle" style="font-family: sans-serif; position:relative; height:auto; width:auto; background:#3A4061; color:#FFFFFF; padding: 1px;"><b> Консоль:</b></div>
<div class="termcont" style="font-family: Terminus; position:relative; height:auto; width:auto; overflow-x:scroll; white-space: nowrap ; overflow-y:auto;background:#000000; color:#4EF44E; line-height:1.2; padding: 3px; font-size: 1rem; max-height: 60vh">$ dd if=/dev/zero of=test.img bs=1G count=2</div><br />Далее можно создать таблицу разделов, например с помощью cfdisk либо fdisk.<br /><div class="termtitle" style="font-family: sans-serif; position:relative; height:auto; width:auto; background:#3A4061; color:#FFFFFF; padding: 1px;"><b> Консоль:</b></div>
<div class="termcont" style="font-family: Terminus; position:relative; height:auto; width:auto; overflow-x:scroll; white-space: nowrap ; overflow-y:auto;background:#000000; color:#4EF44E; line-height:1.2; padding: 3px; font-size: 1rem; max-height: 60vh">$ cfdisk test.img</div><br />После разметки файла и создания разделов на нем, остаётся сделать так, чтобы с файлом можно было работать как с блочным устройством. Для этого выполняем команду под рутом:<br /><div class="termtitle" style="font-family: sans-serif; position:relative; height:auto; width:auto; background:#3A4061; color:#FFFFFF; padding: 1px;"><b> Консоль:</b></div>
<div class="termcont" style="font-family: Terminus; position:relative; height:auto; width:auto; overflow-x:scroll; white-space: nowrap ; overflow-y:auto;background:#000000; color:#4EF44E; line-height:1.2; padding: 3px; font-size: 1rem; max-height: 60vh"># losetup -Pf test.img</div><br />Проверяем:<br /><div class="termtitle" style="font-family: sans-serif; position:relative; height:auto; width:auto; background:#3A4061; color:#FFFFFF; padding: 1px;"><b> Консоль:</b></div>
<div class="termcont" style="font-family: Terminus; position:relative; height:auto; width:auto; overflow-x:scroll; white-space: nowrap ; overflow-y:auto;background:#000000; color:#4EF44E; line-height:1.2; padding: 3px; font-size: 1rem; max-height: 60vh"># losetup -a<br />/dev/loop0: [0045]:22910278 (/path/test.img)</div><br />В данном случае получилось так, что диск это устройство /dev/loop0 а его разделы будут называться /dev/loop0p1, /dev/loop0p2 и т.д. И эти устройства можно форматировать, монтировать и т.д.<br />Чтобы удалить данное блочное устройство, нужно выполнить команду:<br /><div class="termtitle" style="font-family: sans-serif; position:relative; height:auto; width:auto; background:#3A4061; color:#FFFFFF; padding: 1px;"><b> Консоль:</b></div>
<div class="termcont" style="font-family: Terminus; position:relative; height:auto; width:auto; overflow-x:scroll; white-space: nowrap ; overflow-y:auto;background:#000000; color:#4EF44E; line-height:1.2; padding: 3px; font-size: 1rem; max-height: 60vh"># losetup -d /dev/loop0</div></p>]]></description>
			<author><![CDATA[null@example.com (ormorph)]]></author>
			<pubDate>Wed, 21 Oct 2020 06:33:06 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=467980#p467980</guid>
		</item>
		<item>
			<title><![CDATA[Re: Маленькие хитрости в Linux]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=465019#p465019</link>
			<description><![CDATA[<p>Вывод прогресса ffmpeg, через yad.<br /><strong>progress.sh</strong><br /></p><div class="fancy_spoiler_switcher"><div class="fancy_spoiler_switcher_header" data-lang-open="открыть спойлер" data-lang-close="скрыть спойлер"><strong>+</strong>&nbsp;открыть спойлер</div><div class="fancy_spoiler"><div class="codebox"><pre><code>#!/bin/bash

CONV(){
    stdbuf -o0 tr &#039;\r&#039; &#039;\n&#039; | while read video_out
    do
        MASS=($video_out)

        if  [ &quot;${MASS[0]}&quot; = &#039;Duration:&#039; ] ; then
            DURATION=&quot;${MASS[1]:0:8}&quot;
        fi

        if [[ &quot;$video_out&quot; =~ ^[[:print:]]+time=+[[:print:]]*$ ]] ;then
        MASS=${video_out//*time=/}
        MASS=(${MASS//./ })
          TIME=$MASS
          echo &quot;# The compression process takes $DURATION&quot;
                echo &quot;# The compression process takes $DURATION&quot;

                HMS1=(${DURATION//:/ })
                HMS2=(${TIME//:/ })

          #Remove the first zero
          HMS1=(${HMS1[@]#0})
                HMS2=(${HMS2[@]#0})

        #calculation percentage
                SEK1=$((${HMS1[0]}*3600+${HMS1[1]}*60+${HMS1[2]}))
                SEK2=$((${HMS2[0]}*3600+${HMS2[1]}*60+${HMS2[2]}))
                PERCENT=$(($SEK2*100/$SEK1))
                echo &quot;$(($PERCENT))&quot;
        fi
    done
}

process(){
    CONV
    echo &quot;# Compression completed!&quot;
    echo &quot;100&quot;
}

process|yad --progress \
    --auto-close \
    --title=&quot;videofile processing&quot; \
    --text=&quot;Compression process start&quot; \
    --percentage=0</code></pre></div></div></div><p>Перемещаем скрипт в каталог, относящийся к переменной <strong>PATH</strong><br />И даем команду конвертирования файла:<br /><div class="termtitle" style="font-family: sans-serif; position:relative; height:auto; width:auto; background:#3A4061; color:#FFFFFF; padding: 1px;"><b> Консоль:</b></div>
<div class="termcont" style="font-family: Terminus; position:relative; height:auto; width:auto; overflow-x:scroll; white-space: nowrap ; overflow-y:auto;background:#000000; color:#4EF44E; line-height:1.2; padding: 3px; font-size: 1rem; max-height: 60vh">$ ffmpeg -i input.avi -vf scale=-1:720 output.avi 2&gt;&amp;1|progress.sh</div><br />Далее наблюдаем за ходом прогресса.<br />Это вырезка из <a href="https://github.com/ormorph/xgrab">xgrab</a></p>]]></description>
			<author><![CDATA[null@example.com (ormorph)]]></author>
			<pubDate>Sat, 10 Aug 2019 15:16:36 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=465019#p465019</guid>
		</item>
		<item>
			<title><![CDATA[Re: Маленькие хитрости в Linux]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=460649#p460649</link>
			<description><![CDATA[<p>Простой монитор порта:<br /></p><div class="codebox"><pre><code>#!/bin/bash
stty -F /dev/ttyUSB0 raw ispeed 9600 ospeed 9600 min 0 
tail -f /dev/ttyUSB0</code></pre></div><p>Где 9600 скорость передачи подключенного устройства. <br />Скорость обязательно должна быть известна, иначе вывод не будет соответствовать истине.</p>]]></description>
			<author><![CDATA[null@example.com (ormorph)]]></author>
			<pubDate>Wed, 14 Mar 2018 16:38:23 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=460649#p460649</guid>
		</item>
		<item>
			<title><![CDATA[Re: Маленькие хитрости в Linux]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=459967#p459967</link>
			<description><![CDATA[<p>Ну да под строчкой:<br /><strong>[Default Applications]</strong><br />Можно добавить строчку:<br /></p><div class="codebox"><pre><code>inode/directory=file.desktop</code></pre></div><p>со своим ФМ, и попробовать запустится ли он через <strong>xdg-open .</strong><br /><strong>*** Добавлено: 01.02.2018 13:46:59 ***</strong></p><div class="quotebox"><cite>algri14 пишет:</cite><blockquote><p>Но меня больше волнует поведение мозилы, когда по дефолту стоит долфин, а она сволочь, открывает в PCManFM (но не всегда, избирательно как-то, иногда)</p></blockquote></div><p>Тут скорее всего создается свой файл в системном каталоге:<br /></p><div class="codebox"><pre><code>/usr/share/dbus-1/services/</code></pre></div><p>В котором прописан PCManFM, если прописать в локальном каталоге, то локальный файл перекроет системный, это уже проверено.<br /></p>]]></description>
			<author><![CDATA[null@example.com (ormorph)]]></author>
			<pubDate>Thu, 01 Feb 2018 10:46:59 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=459967#p459967</guid>
		</item>
		<item>
			<title><![CDATA[Re: Маленькие хитрости в Linux]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=459966#p459966</link>
			<description><![CDATA[<div class="quotebox"><cite>ormorph пишет:</cite><blockquote><p>В некоторых ос это файл .local/share/applications/mimeapps.list.</p></blockquote></div><p>В Магее это похоже что /home/algri/.config/mimeapps.list с содержимым:<br /></p><div class="fancy_spoiler_switcher"><div class="fancy_spoiler_switcher_header" data-lang-open="открыть спойлер" data-lang-close="скрыть спойлер"><strong>+</strong>&nbsp;открыть спойлер</div><div class="fancy_spoiler"><div class="codebox"><pre><code>[Added Associations]
audio/flac=qmmp.desktop;kde4-amarok.desktop;qmmp_enqueue.desktop;foobnix.desktop;smplayer_enqueue.desktop;audacity.desktop;vlc.desktop;xine.desktop;easytag.desktop;deadbeef.desktop;smplayer.desktop;
audio/mpeg=qmmp.desktop;kde4-amarok.desktop;qmmp_enqueue.desktop;smplayer_enqueue.desktop;audacity.desktop;vlc.desktop;xine.desktop;clementine.desktop;smplayer.desktop;
audio/x-wavpack=deadbeef.desktop;
text/html=firefox.desktop;vivaldi-stable.desktop;kde4-kfmclient_html.desktop;kde4-kwrite.desktop;libreoffice-writer.desktop;kde4-okularApplication_txt.desktop;abiword.desktop;geany.desktop;qupzilla.desktop;calibre-ebook-edit.desktop;yandex-browser-beta.desktop;calibre-gui.desktop;cr3.desktop;calibre-ebook-viewer.desktop;
video/mp4=smplayer.desktop;smplayer_enqueue.desktop;kde4-dragonplayer.desktop;vlc.desktop;xine.desktop;
video/x-flv=smplayer.desktop;smplayer_enqueue.desktop;kde4-dragonplayer.desktop;vlc.desktop;xine.desktop;

[Default Applications]
audio/flac=qmmp.desktop;
audio/mpeg=qmmp.desktop;
audio/x-wavpack=deadbeef.desktop;
text/html=firefox.desktop;
video/mp4=smplayer.desktop;
video/x-flv=smplayer.desktop;</code></pre></div></div></div><p><strong>*** Добавлено: 01.02.2018 13:38:18 ***</strong></p><p>Но меня больше волнует поведение мозилы, когда по дефолту стоит долфин, а она сволочь, открывает в PCManFM (но не всегда, избирательно как-то, иногда)</p>]]></description>
			<author><![CDATA[null@example.com (algri14)]]></author>
			<pubDate>Thu, 01 Feb 2018 10:38:18 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=459966#p459966</guid>
		</item>
		<item>
			<title><![CDATA[Re: Маленькие хитрости в Linux]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=459965#p459965</link>
			<description><![CDATA[<div class="quotebox"><cite>algri14 пишет:</cite><blockquote><p>может быть потому, что кроме Dolhpin в системе нет другого ФМ ?</p></blockquote></div><p>Кто знает, у меня несколько ФМ, но не все их показывает эта утилита, при правке файла <strong>mimeapps.list</strong> все получается...</p>]]></description>
			<author><![CDATA[null@example.com (ormorph)]]></author>
			<pubDate>Thu, 01 Feb 2018 10:30:15 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=459965#p459965</guid>
		</item>
		<item>
			<title><![CDATA[Re: Маленькие хитрости в Linux]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=459964#p459964</link>
			<description><![CDATA[<div class="quotebox"><cite>ormorph пишет:</cite><blockquote><p>Ну тут нет в списке, очень печально...</p></blockquote></div><p>может быть потому, что кроме Dolhpin в системе нет другого ФМ ?</p>]]></description>
			<author><![CDATA[null@example.com (algri14)]]></author>
			<pubDate>Thu, 01 Feb 2018 10:27:36 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=459964#p459964</guid>
		</item>
	</channel>
</rss>
