
Комментарии 37
Классика вечна, знать надо. Но удобнее:
sudo apt install far2l
Сейчас это ещё и полноценный терминал, буфер обмена, и почти что ни возьми в нем - мощнее, даже файловая возня: поиск файлов + врем панели + сортировка + пометка по маске = любая задача с файлами. Тут вам и цвет, и поддержка всех кодировок, и нормальный редактор. А если вспомнить NetRock и работу с архивами - то и подавно.
Это не классика, а база. Классика - это mc )
vi жеж классика ))!
Для новичка это вообще ловушка, выходить из которой придётся путём жёсткой перезагрузки или хардовым отключением питания компа. Зато после этого можно узнать про nano)
Я согласен что mc и nano удобнее в юзабилити, но по дефолту их во многих сборках нет, а vi есть в каждой наверное...и да vi появился в конце 70х годов прошлого века, а mc и nano в 90х.
emacs !!!111 )))
Если чисто текстовые конфиги немного поправить, можно ещё:
sudo snap install msedit
mcedit
Зы. Snap тянуть ради одного пакета - такое себе.
Не, я именно про реинкарнацию edit.com от microsoft
Но его и без Snap поставить можно - просто скопировав исполняемый файл (майки в своём духе).
Впрочем местами оно и нормальным образом в репозитории уже попало.
ИМХО, вообще лучше snap не пользоваться когда есть flatpak
/tmp чистится автоматически после перезагрузки ровно потому, что в большинстве дистрибутивов монтируется в озу, по-умолчанию. Это полезно знать
не совсем так. в системд есть юнит чистящий по таймеру. неприятная вещь на самом деле
Это оно?
--clean
If this command is passed, all files and directories with an age
parameter configured will be cleaned up.
Не надо конфигурировать, чтобы тёрло.
systemctl show systemd-tmpfiles-clean.timer
Unit=systemd-tmpfiles-clean.service
TimersMonotonic={ OnUnitActiveUSec=1d ; next_elapse=2d 15min 6.587628s }
TimersMonotonic={ OnBootUSec=15min ; next_elapse=15min }
OnClockChange=no
OnTimezoneChange=no
NextElapseUSecMonotonic=2d 15min 6.587628s
LastTriggerUSec=Tue 2026-03-03 09:11:42 MSK
LastTriggerUSecMonotonic=1d 15min 6.577352s
Result=success
AccuracyUSec=1min
RandomizedDelayUSec=0
FixedRandomDelay=no
Persistent=no
WakeSystem=no
RemainAfterElapse=yes
Id=systemd-tmpfiles-clean.timer
Names=systemd-tmpfiles-clean.timer
Requires=sysinit.target
WantedBy=timers.target
Conflicts=shutdown.target
Before=shutdown.target systemd-tmpfiles-clean.service timers.target
After=sysinit.target
Triggers=systemd-tmpfiles-clean.service
Documentation="man:tmpfiles.d(5)" "man:systemd-tmpfiles(8)"
Description=Daily Cleanup of Temporary Directories
LoadState=loaded
ActiveState=active
FreezerState=running
SubState=waiting
FragmentPath=/usr/lib/systemd/system/systemd-tmpfiles-clean.timer
UnitFileState=static
UnitFilePreset=enabled
StateChangeTimestamp=Tue 2026-03-03 09:11:43 MSK
StateChangeTimestampMonotonic=87306735936
InactiveExitTimestamp=Mon 2026-03-02 08:56:45 MSK
InactiveExitTimestampMonotonic=6052419
ActiveEnterTimestamp=Mon 2026-03-02 08:56:45 MSK
ActiveEnterTimestampMonotonic=6052419
ActiveExitTimestampMonotonic=0
InactiveEnterTimestampMonotonic=0
CanStart=yes
CanStop=yes
CanReload=no
CanIsolate=no
CanFreeze=no
StopWhenUnneeded=no
RefuseManualStart=no
RefuseManualStop=no
AllowIsolate=no
DefaultDependencies=yes
SurviveFinalKillSignal=no
OnSuccessJobMode=fail
OnFailureJobMode=replace
IgnoreOnIsolate=no
NeedDaemonReload=yes
JobTimeoutUSec=infinity
JobRunningTimeoutUSec=infinity
JobTimeoutAction=none
ConditionResult=yes
AssertResult=yes
ConditionTimestamp=Mon 2026-03-02 08:56:45 MSK
ConditionTimestampMonotonic=6052410
AssertTimestamp=Mon 2026-03-02 08:56:45 MSK
AssertTimestampMonotonic=6052413
Transient=no
Perpetual=no
StartLimitIntervalUSec=10s
StartLimitBurst=5
StartLimitAction=none
FailureAction=none
SuccessAction=none
InvocationID=6ad8fb2abc5d46dd8b2e1af09c2598d9
CollectMode=inactive
Всё верно с юнитом. Скопируйте /usr/lib/tmpfiles.d/tmp.conf в /etc/tmpfiles.d/ и обрежьте шестой аргумент у /tmp и /var/tmp.
я знаю как им пользоваться. для многих существование и включение по умолчанию такого юнита вендором операционки станет неприятностью
я знаю как им пользоваться
С этого и надо было начинать.
А кому-то станет неприятностью отсутствие места в /tmp.
Стоит уточнить про mkdir -p
Это не только создание вложенных каталогов.
Без этого флага mkdir вернет ошибку, если требуемый каталог уже существует или не существует промежуточных каталогов. Аmkdir -pполезен не только для создания вложенных каталогов, но и просто для создания каталога с игнорированием ошибки существующего каталога.
«Если каталог уже есть, всё в порядке, иначе создай его и все промежуточные»
Вместо locate лучше использовать plocate, т.к. он более быстрый.
То есть ни про шифрование, ни про разницу ext32 vs btrs vs xfs vs ramfs вы решили не рассказывать. Про виды разделов тоже. Статья имеет такое же отношение к файловым системам как "Война и мир" к книгопечатанию.
но
moreгарантированно есть на любой Unix-системе.
отдельно стоит заметить вот это. Linux это не Unix, но оба следуют стандарту POSIX. Для чего эта ремарка про Unix?
Спасибо за замечание. Про ext4/btrfs/xfs, шифрование и виды разделов – это сознательно за рамками данной серии, она ориентирована на работу в терминале, а не на глубокое погружение в устройство файловых систем(Вообщем это уже исправили поскольку замечание такое же было. Название у статьи сделали точнее). Если тема вызовет интерес — рассмотрю в отдельном материале. По поводу more и Unix — Поправлю. Спасибо большое что делаете статью лучше!
Зашёл почитать про файловые системы Linux, почему нельзя (и как можно) сделать undelete, а тут совсем не то. Заголовок бы поменять на "Утилиты для работы с файлами, filetools" или что-то в этом роде.
Для редактирования конфигов с низким порогом вхождения может подойти micro.
Ctrl+C, Ctrl+V, X и прочие стандартные привычные буквы.
Плюс подсветка кода и все такое.
Надо же, про Editable Text Configuration слышу впервые, все время удивлялся, почему так, потому что etc это общепринятое et cetera. Понятно, что уже не исправить, но прямо просится замена etc на cfg или conf. А var и usr это вообще одна большая помойка, в зависимости от дистрибутивов и сборок там можно найти всё, что угодно, начиная от контейнеров docker, html nginx и например медиафайлов asterisk. Данные контейнеров docker совсем не вписываются в variable, а /usr допустим ок, но продолжение в виде /usr/lib, что вроде подразумевает какие-то бинарники меня путает. В целом, эту иерархию скорее всего уже не исправить, также как не исправить русский и английский язык, полные противоречий и исключений, остается только запоминать или гуглить. Ну, хорошо что хотя бы с остальными каталогами более-менее все логично и ясно-понятно
Общепринятой(хотя даже официальной) расшифровкой является et cetera, но про бэкронимы тоже стоит знать чтобы не столкнуться с недопониманиями(как пример видел вопрос в одном форуме про линукс и там первоначально не поняли о чём речь поскольку назвали etc как Editable Text Configuration(не буквально так но суть понятна), и чаще замечал именно этот бэкроним в обсуждении)
Ещё для навигации можно добавить pushd и popd
если скрипт редачили на винде часто выручает sed -i 's/\r$//' script.sh
Учим Linux: Файлы, навигация и поиск